Skip to Content

Create a New ABAP Dictionary Structure

test
0 %
Create a New ABAP Dictionary Structure
Details
// Explore More Tutorials

Create a New ABAP Dictionary Structure

01/15/2019

Create an ABAP Dictionary structure for retrieving data from a database

You will learn

  • How to create an Data Dictionary structure


Step 1: Create a global Data Dictionary structure

Now, you will create a global Data Dictionary (“DDIC”) structure: In the toolbar, select New, then choose Other ABAP Repository Object.

Image depicting step1a-create-new
Log on to answer question
Step 2: Filter the list of object types

In the wizard that appears, filter the list of ABAP repository object types by entering **struct**.

Image depicting step2-filter-type
Log on to answer question
Step 3: Enter name and description

Then enter the following and choose Finish.
- Name = ZSO_INVOICE_ITEM
- Description = for example, Invoice item structure

Image depicting step10c-define-ddic-structure-finish

A new text editor is opened showing the content of the newly created Data Dictionary structure.

Log on to answer question
Step 4: Remove the generated component

Remove the generated example component component_to_be_changed from the structure:

Image depicting step12-remove-component
Log on to answer question
Step 5: Define fields for the structure

In the item structure, define the fields company_name, amount, currency_code, and payment_status as follows:

  company_name   : snwd_company_name;
  amount         : snwd_ttl_gross_amount;
  currency_code  : snwd_curr_code;
  payment_status : snwd_soi_payment_status_code;
Image depicting step5-define-fields

The editor shows a syntax error because the amount has not yet been bound to the currency code.

Log on to answer question
Step 6: Bind amount to currency code annotation

To bind the amount to the currency code:

  1. Add a new line in front of the field amount, add @ and open code completion, by entering Ctrl+Space. A list of all possible annotations is shown.

  2. Select the annotation @Semantics.amount.currencyCode.

    Image depicting step12a-select-annotation
  3. Trigger the code completion again: enter : ' after @Semantics.amount.currencyCode, then choose Ctrl+Space, then choose the annotation zso_invoice_item.currency_code:

    Image depicting step12b-choose-annotation-currency-code
  4. Finally choose Save (Ctrl+S)

You should no longer get a syntax error.

Log on to answer question
Step 7: Check and activate the structure

Back in the structure ZSO_INVOICE_ITEM, choose Check ABAP Development Object (Ctrl+F2). Then choose Activate (Ctrl+F3).

The Data Dictionary structure ZSO_INVOICE_ITEM is now activated.

Your code should look like this:

@EndUserText.label : 'Invoice Item Structure'
@AbapCatalog.enhancementCategory : #NOT_EXTENSIBLE
define type zso_invoice_item {
  company_name   : snwd_company_name;
  @Semantics.amount.currencyCode : 'zso_invoice_item.currency_code'
  amount         : snwd_ttl_gross_amount;
  currency_code  : snwd_curr_code;
  payment_status : snwd_soi_payment_status_code;

}

Log on to answer question
Step 8: Test yourself

Create a similar field for the netAmount. Copy the following code:

@Semantics.amount.currencyCode : 'zso_invoice_item.currency_code'
netAmount         : snwd_ttl_net_amount;
×

Next Steps

Back to top