diff --git a/01_Internal_Tables.md b/01_Internal_Tables.md index e8be538..95bb8bf 100644 --- a/01_Internal_Tables.md +++ b/01_Internal_Tables.md @@ -62,7 +62,8 @@ Internal Tables ... |`HASHED`|Hash algorithm ||Always unique||| -**Key Attributes** + +**Key Attributes** - There are two types of table keys: a [primary table key](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abenprimary_table_key_glosry.htm) and [secondary table keys](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abensecondary_table_key_glosry.htm). - Table keys ... diff --git a/02_Structures.md b/02_Structures.md index e1b3551..6daceee 100644 --- a/02_Structures.md +++ b/02_Structures.md @@ -701,6 +701,7 @@ TYPES BEGIN OF address_type. TYPES END OF address_type. ``` +

⬆️ back to top

## Executable Example diff --git a/03_ABAP_SQL.md b/03_ABAP_SQL.md index d5b5ba4..1a2cc74 100644 --- a/03_ABAP_SQL.md +++ b/03_ABAP_SQL.md @@ -128,6 +128,7 @@ Views](https://help.sap.com/doc/abapdocu_latest_index_htm/latest/en-US/index.htm

⬆️ back to top

+ ## Reading Data Using SELECT ### Basic Syntax diff --git a/04_ABAP_Object_Orientation.md b/04_ABAP_Object_Orientation.md index 2908c9e..a97977a 100644 --- a/04_ABAP_Object_Orientation.md +++ b/04_ABAP_Object_Orientation.md @@ -66,6 +66,7 @@ Classes ...

⬆️ back to top

+ ### Creating Classes You can either create local or global classes: diff --git a/05_Constructor_Expressions.md b/05_Constructor_Expressions.md index 74e19c5..247548d 100644 --- a/05_Constructor_Expressions.md +++ b/05_Constructor_Expressions.md @@ -932,6 +932,7 @@ DATA(a) = COND #( LET b = c IN

⬆️ back to top

## Executable Example + [zcl_demo_abap_constructor_expr](./src/zcl_demo_abap_constructor_expr.clas.abap) Note the steps outlined [here](README.md#-getting-started-with-the-examples) about how to import and run the code. diff --git a/06_Dynamic_Programming.md b/06_Dynamic_Programming.md index 164d192..556a790 100644 --- a/06_Dynamic_Programming.md +++ b/06_Dynamic_Programming.md @@ -1270,6 +1270,7 @@ CREATE DATA dref_cr TYPE HANDLE tdo_ref. generation or execution of programs at runtime. They are not part of this cheat sheet. Find more details on the related syntax (e. g. `GENERATE SUBROUTINE POOL`, `READ REPORT` and `INSERT REPORT` in the ABAP Keyword Documentation for Standard ABAP: [Dynamic Program Development (F1 docu for standard ABAP)](https://help.sap.com/doc/abapdocu_latest_index_htm/latest/en-US/index.htm?file=abenabap_language_dynamic.htm) ## Executable Example + [zcl_demo_abap_dynamic_prog](./src/zcl_demo_abap_dynamic_prog.clas.abap) Note the steps outlined [here](README.md#-getting-started-with-the-examples) about how to import and run the code. \ No newline at end of file diff --git a/07_String_Processing.md b/07_String_Processing.md index 0576220..4e9f0f9 100644 --- a/07_String_Processing.md +++ b/07_String_Processing.md @@ -1663,6 +1663,7 @@ REPLACE PCRE `(.*?)PP(.*)` IN s1 WITH `$2#$1` IGNORING CASE. "pc app#ab a

⬆️ back to top

## Executable Example + [zcl_demo_abap_string_proc](./src/zcl_demo_abap_string_proc.clas.abap) Follow the steps outlined [here](README.md#-getting-started-with-the-examples) to import and run the code. diff --git a/08_EML_ABAP_for_RAP.md b/08_EML_ABAP_for_RAP.md index 054120e..8a37be5 100644 --- a/08_EML_ABAP_for_RAP.md +++ b/08_EML_ABAP_for_RAP.md @@ -1369,6 +1369,7 @@ The following restrictions apply to operations and/or statements in the individu

⬆️ back to top

## Executable Examples + This cheat sheet is supported by different executable examples demonstrating various scenarios: - Demo RAP scenario with a managed RAP BO, external numbering: [zcl_demo_abap_rap_ext_num_m](./src/zcl_demo_abap_rap_ext_num_m.clas.abap) - Demo RAP scenario with an unmanaged RAP BO, external numbering: [zcl_demo_abap_rap_ext_num_u](./src/zcl_demo_abap_rap_ext_num_u.clas.abap) diff --git a/09_Bits_and_Bytes.md b/09_Bits_and_Bytes.md index a82f746..948f460 100644 --- a/09_Bits_and_Bytes.md +++ b/09_Bits_and_Bytes.md @@ -10,6 +10,7 @@ is usable in its context (procedure, class, program) according to its type. For example, a numeric data object can be assigned the result of a calculation: + > **💡 Note**
> For checking out the code snippets in an SAP BTP ABAP environment, you can use the interface `if_oo_adt_classrun` in a class by implementing the method `if_oo_adt_classrun~main`. diff --git a/10_ABAP_SQL_Hierarchies.md b/10_ABAP_SQL_Hierarchies.md index ac12f4b..59c3d09 100644 --- a/10_ABAP_SQL_Hierarchies.md +++ b/10_ABAP_SQL_Hierarchies.md @@ -719,5 +719,6 @@ can check that the calculated values are correct.

⬆️ back to top

+ ## More Information For the complete reference documentation about SQL hierarchies, see [`SELECT, FROM hierarchy_data`](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abenselect_hierarchy_data.htm). diff --git a/11_ABAP_SQL_Grouping_Internal_Tables.md b/11_ABAP_SQL_Grouping_Internal_Tables.md index 976a170..cd5fb6d 100644 --- a/11_ABAP_SQL_Grouping_Internal_Tables.md +++ b/11_ABAP_SQL_Grouping_Internal_Tables.md @@ -174,6 +174,7 @@ SIZE`](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file

⬆️ back to top

## Executable Example + [zcl_demo_abap_sql_group_by](./src/zcl_demo_abap_sql_group_by.clas.abap) Note the steps outlined [here](README.md#-getting-started-with-the-examples) about how to import and run the code. \ No newline at end of file diff --git a/12_AMDP.md b/12_AMDP.md index 91bd265..6e75800 100644 --- a/12_AMDP.md +++ b/12_AMDP.md @@ -439,6 +439,7 @@ relevant in the executable example.

⬆️ back to top

## Executable Example + [zcl_demo_abap_amdp](./src/zcl_demo_abap_amdp.clas.abap) Note the steps outlined [here](README.md#-getting-started-with-the-examples) about how to import and run the code. \ No newline at end of file diff --git a/13_Program_Flow_Logic.md b/13_Program_Flow_Logic.md index 0ca8f02..38becb3 100644 --- a/13_Program_Flow_Logic.md +++ b/13_Program_Flow_Logic.md @@ -655,6 +655,7 @@ ASSERT flag = abap_true.

⬆️ back to top

## Executable Example + [zcl_demo_abap_prog_flow_logic](./src/zcl_demo_abap_prog_flow_logic.clas.abap) Note the steps outlined [here](README.md#-getting-started-with-the-examples) about how to import and run the code. diff --git a/14_ABAP_Unit_Tests.md b/14_ABAP_Unit_Tests.md index 835a9e5..83eea05 100644 --- a/14_ABAP_Unit_Tests.md +++ b/14_ABAP_Unit_Tests.md @@ -510,6 +510,7 @@ For more information about evaluating ABAP unit test results, see [here](https:/

⬆️ back to top

## Executable Example + [zcl_demo_abap_unit_test](./src/zcl_demo_abap_unit_test.clas.abap) Note ... diff --git a/15_CDS_View_Entities.md b/15_CDS_View_Entities.md index 66bce5b..b72acfa 100644 --- a/15_CDS_View_Entities.md +++ b/15_CDS_View_Entities.md @@ -19,6 +19,7 @@ Core data services (CDS) are an infrastructure for defining and consuming semant - [ABAP Data Models Guide](https://blogs.sap.com/2023/05/09/abap-data-models-guide/) ## Executable Example + [zcl_demo_abap_cds_ve](./src/zcl_demo_abap_cds_ve.clas.abap) The example covers the following topics: diff --git a/16_Data_Types_and_Objects.md b/16_Data_Types_and_Objects.md index d93ed00..5b0854e 100644 --- a/16_Data_Types_and_Objects.md +++ b/16_Data_Types_and_Objects.md @@ -1278,6 +1278,7 @@ Find more information in the [cheat sheet about dynamic programming](06_Dynamic_ ## Executable Example + [zcl_demo_abap_dtype_dobj](./src/zcl_demo_abap_dtype_dobj.clas.abap) > **💡 Note**
diff --git a/17_SAP_LUW.md b/17_SAP_LUW.md index 7336a49..445ceba 100644 --- a/17_SAP_LUW.md +++ b/17_SAP_LUW.md @@ -294,6 +294,7 @@ There are RAP-specific [ABAP EML](https://help.sap.com/doc/abapdocu_latest_index

(⬆️ back to top) ## Executable Example + After importing, find the program in ADT using search: Press `CTRL+SHIFT+A` and enter `zdemo_abap_sap_luw`. Open the program and run it by pressing `F8`. > **💡 Note**
diff --git a/18_Dynpro.md b/18_Dynpro.md index 0d8a163..9c50ae1 100644 --- a/18_Dynpro.md +++ b/18_Dynpro.md @@ -710,6 +710,7 @@ PROCESS AFTER INPUT.

⬆️ back to top

## More Information + - [SAP GUI User Dialogs](https://help.sap.com/doc/abapdocu_latest_index_htm/latest/en-US/index.htm?file=abenabap_screens.htm) in the ABAP Keyword Documentation as the entry topic for dynpro-related topics - Documentation about the [screen painter in the Help Portal](https://help.sap.com/docs/ABAP_PLATFORM_NEW/bd833c8355f34e96a6e83096b38bf192/d1801b50454211d189710000e8322d00) - Documentation about the [menu painter in the Help Portal](https://help.sap.com/docs/ABAP_PLATFORM_NEW/bd833c8355f34e96a6e83096b38bf192/d1801ce8454211d189710000e8322d00) diff --git a/README.md b/README.md index c110d0a..e82ad92 100644 --- a/README.md +++ b/README.md @@ -204,8 +204,6 @@ Use the standalone version of the abapGit report to import the demo examples of - Regarding possible code check warnings, e.g. for the many strings in the code, not using an `ORDER BY` clause, or messages regarding using `SELECT *`, the code deliberately avoids [pragmas](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abenpragma_glosry.htm) and [pseudo comments](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abenpseudo_comment_glosry.htm) in order to focus on the available ABAP syntax. See also the [Disclaimer](#%EF%B8%8F-disclaimer). - Regarding the examples to be imported into on-premise systems, note the following: The cheat sheet documents cover ABAP syntax regardless of the ABAP release to avoid scattering information and to have the information in one place. Therefore, the lower the release, the fewer syntax options and examples are available. For example, the RAP examples in particular require at least ABAP version 7.56. - -
## ℹ️ More Information