Practice Free C_ABAPD_2507 Exam Online Questions
As a consultant you are posed the following question from a client who is using SAP S/4HANA Cloud, public edition and also SAP BTP, ABAP environment.
"We are currently using an SAP Fiori app based on SAP Fiori elements that analyzes open orders. We have determined that it should be extended via a new button on the UI which will perform an on-the-fly calculation and display the result in a quick popup for the enduser. We have been informed by SAP that all underlying stack layers for the SAP Fiori app have been extensibility enabled."
Based on this which of the following extension types would you recommend to the customer to add the new button?
- A . RAP BO Behavior Extension
- B . SAP HANA database table extension
- C . RAP BO Node Extension
- D . Business Service Extension
Refer to the exhibit.
The "demo_ods_assoc_spfi data source referenced in line #4 contains a field "connid" which you would like to expose in the element list.
Which of the following statements would do this if inserted on line #8?
- A . demo_ods_assoc_spfli.connid,
- B . demo_ods_assoc_spfli-connid/
- C . spfli-connid,
- D . _spfli.connid/
A
Explanation:
The statement that can be used to expose the field “connid” of the data source
“demo_ods_assoc_spfli” in the element list is
Refer to the exhibit.
The "demo_ods_assoc_spfi data source referenced in line #4 contains a field "connid" which you would like to expose in the element list.
Which of the following statements would do this if inserted on line #8?
- A . demo_ods_assoc_spfli.connid,
- B . demo_ods_assoc_spfli-connid/
- C . spfli-connid,
- D . _spfli.connid/
A
Explanation:
The statement that can be used to expose the field “connid” of the data source
“demo_ods_assoc_spfli” in the element list is
Which function call returns 0?
- A . find( val = ‘FIND Found found’ sub = ‘F’ occ = -2 case = abap_true )
- B . find( val = ‘find FOUND Found’ sub = ‘F’ occ = -2 case = abap_false )
- C . find( val = ‘FIND FOUND Found’ sub = ‘F’ )
- D . find( val = ‘find Found FOUND’ sub = ‘F’ occ = -2 )
b is joined with c
Explanation:
The nested join is evaluated from the top to the bottom in the order of the ON conditions. This means that the join expression is formed by assigning each ON condition to the directly preceding JOIN from left to right. The join expression can be parenthesized implicitly or explicitly to show the order of evaluation. In this case, the implicit parentheses are as follows: SELECT * FROM (a INNER JOIN (b INNER JOIN c ON b~c = c~c) ON a~b = b~b)
This means that the first join expression is b INNER JOIN c ON b~c = c~c, which joins the columns of tables b and c based on the condition that b~c equals c~c. The second join expression is a INNER JOIN (b INNER JOIN c ON b~c = c~c) ON a~b = b~b, which joins the columns of table a and the result of the first join expression based on the condition that a~b equals b~b. The final result set contains all combinations of rows from tables a, b, and c that satisfy both join conditions.
Reference: 1: SELECT, FROM JOIN – ABAP Keyword Documentation – SAP Online Help
Which of the following integration frameworks have been released for ABAP cloud development? Note: There are 3 correct answers to this question.
- A . SOAP consumption
- B . CDS Views
- C . Business Add-ins (BAdls)
- D . Business Events
- E . OData services
A, D, E
Explanation:
The following are the integration frameworks that have been released for ABAP cloud development: SOAP consumption: This framework allows you to consume SOAP web services from ABAP cloud applications. You can use the ABAP Development Tools in Eclipse to create a service consumption model based on a WSDL file or URL. The service consumption model generates the required ABAP artifacts, such as proxy classes, data types, and constants, to access the web service. You can then use the proxy classes to call the web service operations from your ABAP code1
Business Events: This framework allows you to publish and subscribe to business events from ABAP cloud applications. Business events are messages that represent a change in the state of a business object or process. You can use the ABAP Development Tools in Eclipse to create a business event definition based on a CDS view entity or a projection view. The business event definition specifies the event key, the event payload, and the event metadata. You can then use the ABAP Messaging Channel (AMC) framework to publish and subscribe to business events using the AMC API2
OData services: This framework allows you to expose and consume OData services from ABAP cloud applications. OData is a standardized protocol for creating and consuming RESTful APIs. You can use the ABAP RESTful Application Programming Model (RAP) to create OData services based on CDS view entities or projection views. The RAP framework generates the required OData metadata and runtime artifacts, such as service definitions, service bindings, and service implementations. You can then use the SAP Gateway framework to register and activate your OData services. You can also use the ABAP Development Tools in Eclipse to consume OData services from other sources using the service consumption model3
The other integration frameworks are not released for ABAP cloud development, as they are either not supported or not recommended for cloud scenarios.
These frameworks are:
CDS Views: CDS views are not an integration framework, but a data modeling framework. CDS views are used to define data models based on database tables or other CDS view entities. CDS views can have associations, aggregations, filters, parameters, and annotations. CDS views can also be used as the basis for other integration frameworks, such as OData services or business events4
Business Add-ins (BAdls): BAdls are not supported for ABAP cloud development, as they are part of the classic ABAP enhancement framework. BAdls are used to implement custom logic in predefined enhancement spots in the standard SAP code. BAdls are not compatible with the cloud strategy and the clean core paradigm, as they modify the SAP code and can cause upgrade and maintenance issues. For ABAP cloud development, SAP recommends using the key user extensibility tools or the side-by-side extensibility approach instead of BAdls.
Reference: Consuming SOAP Services – ABAP Keyword Documentation, Business Events C ABAP Keyword Documentation, OData Services – ABAP Keyword Documentation, CDS Data Model Views – ABAP Keyword Documentation, [Business Add-Ins (BAdIs) – ABAP Keyword Documentation]
What would be the correct expression to change a given string value ‘mr joe doe’ into ‘JOE’ in an ABAP SQL field list?
- A . SELECT FROM TABLE dbtabl FIELDS
Of1,
upper(left( ‘mr joe doe’, 6)) AS f2_up_left, f3, - B . SELECT FROM TABLE dbtabl FIELDS
Of1,
left(lower(substring( ‘mr joe doe’, 4, 3)), 3) AS f2_left_lo_sub, f3, - C . SELECT FROM TABLE dbtabl FIELDS
Of1,
substring(upper(‘mr joe doe’), 4, 3) AS f2_sub_up, f3,… - D . SELECT FROM TABLE dbtabl FIELDS
Of1,
substring(lower(upper( ‘mr joe doe’ ) ), 4, 3) AS f2_sub_lo_up, f3,
C
Explanation:
The correct expression to change a given string value ‘mr joe doe’ into ‘JOE’ in an ABAP SQL field list is
C. SELECT FROM TABLE dbtabl FIELDS Of1, substring(upper(‘mr joe doe’), 4, 3) AS f2_sub_up, f3,… This expression uses the following SQL functions for strings12:
upper: This function converts all lowercase characters in a string to uppercase. For example, upper(‘mr joe doe’) returns ‘MR JOE DOE’.
substring: This function returns a substring of a given string starting from a specified position and with a specified length. For example, substring(‘MR JOE DOE’, 4, 3) returns ‘JOE’.
AS: This keyword assigns an alias or a temporary name to a field or an expression in the field list. For example, AS f2_sub_up assigns the name f2_sub_up to the expression substring(upper(‘mr joe doe’), 4, 3).
You cannot do any of the following:
What would be the correct expression to change a given string value ‘mr joe doe’ into ‘JOE’ in an ABAP SQL field list?
- A . SELECT FROM TABLE dbtabl FIELDS
Of1,
upper(left( ‘mr joe doe’, 6)) AS f2_up_left, f3, - B . SELECT FROM TABLE dbtabl FIELDS
Of1,
left(lower(substring( ‘mr joe doe’, 4, 3)), 3) AS f2_left_lo_sub, f3, - C . SELECT FROM TABLE dbtabl FIELDS
Of1,
substring(upper(‘mr joe doe’), 4, 3) AS f2_sub_up, f3,… - D . SELECT FROM TABLE dbtabl FIELDS
Of1,
substring(lower(upper( ‘mr joe doe’ ) ), 4, 3) AS f2_sub_lo_up, f3,
C
Explanation:
The correct expression to change a given string value ‘mr joe doe’ into ‘JOE’ in an ABAP SQL field list is
C. SELECT FROM TABLE dbtabl FIELDS Of1, substring(upper(‘mr joe doe’), 4, 3) AS f2_sub_up, f3,… This expression uses the following SQL functions for strings12:
upper: This function converts all lowercase characters in a string to uppercase. For example, upper(‘mr joe doe’) returns ‘MR JOE DOE’.
substring: This function returns a substring of a given string starting from a specified position and with a specified length. For example, substring(‘MR JOE DOE’, 4, 3) returns ‘JOE’.
AS: This keyword assigns an alias or a temporary name to a field or an expression in the field list. For example, AS f2_sub_up assigns the name f2_sub_up to the expression substring(upper(‘mr joe doe’), 4, 3).
You cannot do any of the following:
Which of the following is a generic internal table type?
- A . SORTED TABLE
- B . INDEX TABLE
- C . STANDARD TABLE
- D . HASHED TABLE
B
Explanation:
A generic internal table type is a table type that does not define all the attributes of an internal table in the ABAP Dictionary; it leaves some of these attributes undefined.
A table type is generic in the following cases1:
You have selected Index Table or Not Specified as the access type.
You have not specified a table key or specified an incomplete table key.
You have specified a generic secondary table key.
A generic table type can be used only for typing formal parameters or field symbols. A generic table type cannot be used for defining data objects or constants2.
Therefore, the correct answer is B. INDEX TABLE, which is a generic table type that does not specify the access type or the table key.
The other options are not generic table types, because:
Which type of legacy code does SAP recommend you eliminate when you review modifications as part of an SAP S/4HANA system conversion? Note: There are 2 correct answers to this question.
- A . Code that supports a critical business process
- B . Code that now is identical to a standard SAP object
- C . Code that has less than 10% usage according to usage statistics
- D . Code that can be redesigned as a key user extension
B, D
Explanation:
SAP recommends that you eliminate the following types of legacy code when you review modifications as part of an SAP S/4HANA system conversion:
Code that now is identical to a standard SAP object. This type of code is redundant and unnecessary, as it does not provide any additional functionality or customization. It can also cause conflicts or errors during the system conversion, as the standard SAP object may have changed or been replaced in SAP S/4HANA. Therefore, you should delete this type of code and use the standard SAP object instead.
Code that can be redesigned as a key user extension. This type of code is usually related to UI or business logic adaptations that can be achieved using the in-app tools provided by SAP S/4HANA. By redesigning this type of code as a key user extension, you can simplify and standardize your code base, reduce maintenance efforts, and avoid compatibility issues during the system conversion. Therefore, you should migrate this type of code to the key user extensibility framework and delete the original code.
The other types of legacy code are not recommended to be eliminated, as they may still be relevant or necessary for your business processes. However, you should still review and adjust them according to the SAP S/4HANA simplification items and best practices.
These types of code are:
Code that supports a critical business process. This type of code is essential for your business operations and cannot be easily replaced or removed. However, you should check if this type of code is compatible with SAP S/4HANA, and if not, you should adapt it accordingly. You should also consider if this type of code can be optimized or enhanced using the new features and capabilities of SAP S/4HANA.
Code that has less than 10% usage according to usage statistics. This type of code is rarely used and may not be worth maintaining or converting. However, you should not delete this type of code without verifying its relevance and impact on your business processes. You should also consider if this type of code can be replaced or consolidated with other code that has higher usage or better performance.
Reference: Custom Code Management (CCM) During an SAP S/4HANA Conversion, Custom Code Migration Guide for SAP S/4HANA 2020