You will learn
ABAPDoc
comments.Step 1: Open your ABAP class
First, open your ABAP class.
完成
Step 2: Add an ABAPDoc comment
To improve readability, add an ABAPDoc comment to the class immediately before the method definition, for example:"! Method reads invoice items from database
.
NOTE: You must insert the ABAPDoc comment immediately before the declaration; otherwise you will get a warning from ADT.
ABAPDoc comments can be used to document APIs and are displayed in the Element Info. All ABAPDoc comments begin with "!
.
完成
Step 3: Add parameters to ABAPDoc
You can also use ABAPDoc to document method parameters with a Quick Assist. Place the cursor inside of the ABAPDoc comment. Then choose **Ctrl+1**
to open the Quick Assist menu and double-click on Add missing parameters to documentation:
The ABAPDoc comment is extended by a @parameter ... |
. You can now use this to document the method parameters: To do so, just enter the documentation after the pipe symbol (|
).
完成
Step 4: Synchronize short texts
We have documented our method using ABAPDoc. However, we also want to see the same short texts in the description fields of the form-based Class Builder in SAP GUI.To do this, we need to tag the required text in the ABAPDoc as “synchronized” to ensure that it is synchronized with the Class Builder.
Mark the short text for your method in ABAPDoc as “synchronized” by surrounding it with the tag ...
.
Do the same for the short text of your parameter lt_result
:
完成
Step 5: Save and activate
Save ( Ctrl+S ) and activate ( Ctrl+F3 ) the class.
完成
Step 6: Link with Editor
Finally you will check that the synchronized short texts are also shown in the Class Builder. First we have to open the class in SAP GUI.To easily find the class in SAP GUI, first choose Link with Editor:
完成
Step 7: View the ABAPDoc comments in SAP GUI
In the Project Explorer, select the class ZCL_INVOICE_RETRIEVAL
and choose Open with SAP GUI from the context menu:
The method description shows the text we entered in the ABAPDoc comment in the synchronized tag:
Now choose Parameters. You will see that the description of the parameter has also been synchronized:
Finally, close the class in SAP GUI and return to your ABAP program by choosing Close:
完成
Step 8: Display element info
Back in the ABAP Program, position the cursor on the method call GET_ITEMS_FROM_DB
and display the Element Info of the method by choosing Element Info (F2
). In addition to the method signature it also shows the ABAPDoc you wrote before:
Close the Element Info by choosing ESC.
The code for your class should now look like this:
ABAP
Copy
CLASS zcl_invoice_retrieval DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
TYPES: ty_table_of_zso_invoice_item TYPE STANDARD TABLE OF zso_invoice_item WITH DEFAULT KEY.
"! Read items from DB
"! Method reads invoice items from the database
"! @parameter lt_result | Table of invoice items
"!
METHODS get_items_from_db
RETURNING
VALUE(lt_result) type ty_table_of_zso_invoice_item.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
CLASS zcl_invoice_retrieval IMPLEMENTATION.
METHOD get_items_from_db.
SELECT
snwd_bpa~company_name,
snwd_so_inv_item~gross_amount,
snwd_so_inv_item~currency_code,
snwd_so_inv_head~payment_status
FROM
snwd_so_inv_item
JOIN snwd_so_inv_head ON snwd_so_inv_item~parent_key = snwd_so_inv_head~node_key
JOIN snwd_bpa ON snwd_so_inv_head~buyer_guid = snwd_bpa~node_key
INTO TABLE @lt_result
WHERE
snwd_so_inv_item~currency_code = 'USD'
ORDER BY
snwd_bpa~company_name.
LOOP AT lt_result ASSIGNING FIELD-SYMBOL().
CASE -payment_status.
WHEN 'P'.
-payment_status = abap_true.
WHEN OTHERS.
-payment_status = abap_false.
ENDCASE.
ENDLOOP.
ENDMETHOD.
ENDCLASS.
完成
Step 9: Test yourself
Create an ABAPDoc comment for the parameter PLANETYPE
, including the explanatory text Type of plane
.
Enter the comment in the box below and choose Submit Answer.