Neste exercício, você adicionará documentação à sua codificação para facilitar o trabalho com ela.
Tarefa 1: Copiar modelo (opcional)
Copie a classe modelo /LRN/CL_S4D401_EXS_CLASS. Se você tiver concluído o exercício anterior, pode ignorar esta tarefa e continuar processando sua classe ZCL_##_SOLUTION.
Etapas
Copie a classe /LRN/CL_S4D401_EXS_CLASS para uma classe em seu próprio pacote (nome sugerido: ZCL_##_SOLUTION, onde ## representa seu número de grupo).
No Explorador de projetos, clique com o botão direito do mouse na classe /LRN/CL_S4D401_EXS_CLASS para abrir o menu de contexto.
No menu de contexto, selecione Duplicar....
Insira o nome do seu pacote no campo Pacote. No campo Nome, insira ZCL_##_SOLUTION, em que ## representa seu número de grupo.
Selecione Avançar.
Confirme a ordem de transporte e selecione Concluir.
Ative a cópia.
Pressione Ctrl + F3 para ativar a classe.
Tarefa 2: Adicionar documentação
Adicione a documentação ABAP Doc à classe local LCL_CARRIER e ao método factory GET_INSTANCE.
Textos de documentação sugeridos
| Tipo | Elemento de código | Documentação |
|---|
| Classe local | LCL_CARRIER | Companhia aérea - Uma lógica de fábrica garante que só pode existir uma instância para cada ID da transportadora. |
| Método | GET_INSTANCE | Método factory - retorna uma instância desta classe. |
| Parâmetro | i_carrier_id | Identificação de três caracteres do agente de frete. |
| Parâmetro | r_result | Referência à instância - inicial se a instanciação tiver falhado. |
| Exceção | ZCX_##_FAILED | Instanciação falhada - avaliar o texto de exceção para detalhes. |
Etapas
Utilize uma correção rápida para adicionar documentação ABAP Doc à classe local LCL_CARRIER.
Na sua classe global, navegue para a definição da classe local LCL_CARRIER.
Na instrução CLASS … DEFINITION, posicione o cursor em lcl_carrier e pressione Ctrl + 1 para chamar as correções rápidas disponíveis.
A partir da lista de soluções rápidas disponíveis, selecione Adicionar ABAP Doc.
Resultado
A correção rápida ajusta o código da seguinte forma:
12
CLASS lcl_carrier DEFINITION CREATE PRIVATE.
Atualize a documentação com o texto da tabela.
Dica
Quando você pressiona Enter, o editor insere uma nova linha que começa com "!.
Ajuste o código da seguinte forma:
123
CLASS lcl_carrier DEFINITION CREATE PRIVATE.
Exiba a informação do elemento ABAP para a classe local LCL_CARRIER para ver a saída.
Na instrução CLASS … DEFINITION, posicione o cursor em lcl_carrier e pressione F2 para exibir as informações do elemento.
O texto ABAP Doc é exibido sob o título Documentação.
Utilize uma correção rápida para adicionar a documentação ABAP Doc ao método estático GET_INSTANCE da classe local LCL_CARRIER.
Na classe LCL_CARRIER, navegue para a definição do método GET_INSTANCE.
Na instrução CLASS-METHODS, posicione o cursor em get_instance e pressione Ctrl + 1 para chamar as correções rápidas disponíveis.
A partir da lista de soluções rápidas disponíveis, selecione Adicionar ABAP Doc.
Resultado
A correção rápida ajusta o código da seguinte forma:
12345
CLASS-METHODS get_instance
Atualize a documentação para o método com o texto da tabela.
Ajuste o código da seguinte forma:
12345
CLASS-METHODS get_instance
Atualize a documentação para os parâmetros de método e para a exceção com os textos da tabela.
Ajuste o código da seguinte forma:
12345
CLASS-METHODS get_instance
Exiba a informação do elemento ABAP para o método GET_INSTANCE da classe local LCL_CARRIER para ver a saída.
Na instrução CLASS-METHODS, posicione o cursor em get_instance e pressione F2 para exibir as informações do elemento.
Os textos ABAP Doc são exibidos sob o título Documentação.
Tarefa 3: Adicionar documentação formatada
Adicione a documentação ABAP Doc formatada para o método FIND_PASSENGER_FLIGHT da classe local LCL_CARRIER. Opcionalmente, adicione uma documentação ABAP Doc semelhante para o método FIND_CARGO_FLIGHT.
Textos de documentação sugeridos
| Tipo | Elemento de código | Documentação |
|---|
| Método | FIND_PASSENGER_FLIGHT | Procure um voo de passageiro entre dois aeroportos que - é igual ou posterior a uma determinada data e
- tem um número mínimo de lugares disponíveis restantes
|
| Parâmetro | i_airport_from_id | Aeroporto de partida |
| Parâmetro | i_airport_to_id | Aeroporto de chegada |
| Parâmetro | i_from_date | Primeira data de voo possível |
| Parâmetro | i_assentos | Número mínimo de vagas disponíveis |
| Parâmetro | e_flight | Voo encontrado (referência a objetos) |
| Parâmetro | e_days_later | Número de dias após a data solicitada |
Etapas
Utilize uma correção rápida para adicionar documentação ABAP Doc ao método FIND_PASSENGER_FLIGHT da classe local LCL_CARRIER.
Na classe LCL_CARRIER, navegue para a definição do método FIND_PASSENGER_FLIGHT.
Na instrução METHODS, posicione o cursor em find_passenger_flight e pressione Ctrl + 1 para chamar as soluções rápidas disponíveis.
A partir da lista de soluções rápidas disponíveis, selecione Adicionar ABAP Doc.
Resultado
A correção rápida ajusta o código da seguinte forma:
12345678
METHODS find_passenger_flight
Atualize a documentação para o método com o texto da tabela. Certifique-se de formatar o voo de passageiro como texto forte enfatizado e use uma lista não ordenada para as propriedades do voo.
Dica
Você não precisa se lembrar das diretrizes de formato de cor. Pressione Ctrl + espaço para inserir uma diretiva de formato por meio do preenchimento de código.
Ajuste o código da seguinte forma:
123456789101112
METHODS find_passenger_flight
Atualize a documentação para os parâmetros de método com os textos da tabela. Certifique-se de formatar Partida e Chegada como texto destacado.
Ajuste o código da seguinte forma:
123456789101112
METHODS find_passenger_flight
Exiba a informação do elemento ABAP para o método FIND_PASSENGER_FLIGHT da classe local LCL_CARRIER para ver a saída.
Na instrução METHODS, posicione o cursor em find_passenger_flight e pressione F2 para exibir as informações do elemento.
Os textos ABAP Doc são exibidos sob o título Documentação.
Opcional: adicione documentação ABAP Doc formatada semelhante para o método FIND_CARGO_FLIGHT.
Dica
Copie e cole a documentação ABAP Doc para o método FIND_PASSENGER_FLIGHT e ajuste a mesma ao método FIND_CARGO_FLIGHT.
Ajuste o código da seguinte forma:
123456789101112
METHODS find_cargo_flight
Tarefa 4: Adicionar links
Adicione a seguinte documentação ABAP Doc para a classe local LCL_FLIGHT:
Textos de documentação sugeridos
| Tipo | Elemento de código | Documentação |
|---|
| Classe local | LCL_FLIGHT | Classe superior abstrata para classes lcl_passenger_flight e lcl_cargo_flight Cada instância é identificada exclusivamente pelos atributos carrier_id, connection_id e flight_date. |
Adicione links à documentação das subclasses locais LCL_PASSENGER_FLIGHT e LCL_CARGO_FLIGHT e aos atributos públicos carrier_id, connection_id e flight_date.
Etapas
Utilize uma correção rápida para adicionar documentação ABAP Doc à classe local LCL_FLIGHT.
Em sua classe global, navegue para a definição da classe local LCL_FLIGHT.
Na instrução CLASS … DEFINITION, posicione o cursor em lcl_flight e pressione Ctrl + 1 para chamar as correções rápidas disponíveis.
A partir da lista de soluções rápidas disponíveis, selecione Adicionar ABAP Doc.
Resultado
A correção rápida ajusta o código da seguinte forma:
12
CLASS lcl_flight DEFINITION ABSTRACT.
Atualize a documentação com o texto da tabela.
Ajuste o código da seguinte forma:
12345678
CLASS lcl_flight DEFINITION ABSTRACT.
Adicione uma quebra de linha após lcl_cargo_flight.
Ajuste o código da seguinte forma:
12345678
CLASS lcl_flight DEFINITION ABSTRACT.
Adicione um link à documentação da classe local LCL_PASSENGER_FLIGHT e um link para a documentação da classe local LCL_CARGO_FLIGHT.
Nota
Lembre-se de que esta documentação ABAP Doc se encontra no nível da classe global e não dentro da classe local LCL_FLIGHT. Isso significa que um sinal de período no início de uma ligação aborda a classe global. Para abordar uma classe local na mesma classe global, você deve colocar um sinal de período na frente do nome da classe.
Ajuste o código da seguinte forma:
12345678
CLASS lcl_flight DEFINITION ABSTRACT.
Agora, adicione links aos atributos carrier_id, connection_id e flight_date da classe local LCL_FLIGHT.
Nota
Se você quiser referenciar um atributo ou outro objeto de dados em um link, deve inserir DATA: imediatamente antes do nome do objeto.
Ajuste o código da seguinte forma:
12345678
CLASS lcl_flight DEFINITION ABSTRACT.
Exiba as informações do elemento ABAP para a classe local LCL_FLIGHT para ver a saída. Selecione os links para verificar se funcionam.
Na instrução CLASS … DEFINITION, posicione o cursor em lcl_flight e pressione F2 para exibir as informações do elemento.
O texto ABAP Doc é exibido sob o título Documentação.
Por fim, ative seu código.
Pressione Ctrl + F3 para ativar o código.