SAP C_ABAPD_2309日本語リアル試験問題保証付き更新された問題集
検証済み!合格できるC_ABAPD_2309日本語試験一発合格保証付き
質問 # 31
内部テーブルへのアクセスが高速になるのは次のうちどれですか? 注: この質問には 3 つの正解があります。
- A. ソートされた内部テーブルで、主キーを左から隙間なく部分的に指定します。
- B. ハッシュされた内部テーブルで、主キーを完全に指定します。
- C. ソートされた内部テーブルで、主キーを完全に指定します。
- D. ハッシュされた内部テーブルで、主キーを左から隙間なく部分的に指定します。
- E. 標準の内部テーブルで、主キーを左から隙間なく部分的に指定します。
正解:B、C、D
解説:
The access to internal tables can be optimized by using the appropriate table type and specifying the table key.
The table key is a set of fields that uniquely identifies a row in the table and determines the sorting order of the table. The table key can be either the primary key or a secondary key. The primary key is defined by the table type and the table definition, while the secondary key is defined by the user using the KEY statement1.
The following results in faster access to internal tables:
* B. In a sorted internal table, specifying the primary key completely. A sorted internal table is a table type that maintains a predefined sorting order, which is defined by the primary key in the table definition. The primary key can be either unique or non-unique. A sorted internal table can be accessed using the primary key or the table index. The access using the primary key is faster than the access using the table index, because the system can use a binary search algorithm to find the row. However, the primary key must be specified completely, meaning that all the fields of the primary key must be given in the correct order and without gaps2.
* D. In a hashed internal table, specifying the primary key partially from the left without gaps. A hashed internal table is a table type that does not have a predefined sorting order, but uses a hash algorithm to store and access the rows. The primary key of a hashed internal table must be unique and cannot be changed. A hashed internal table can only be accessed using the primary key, not the table index. The access using the primary key is very fast, because the system can directly calculate the position of the row using the hash algorithm. The primary key can be specified partially from the left without gaps, meaning that some of the fields of the primary key can be omitted, as long as they are the rightmost fields and there are no gaps between the specified fields.
* E. In a hashed internal table, specifying the primary key completely. A hashed internal table is a table type that does not have a predefined sorting order, but uses a hash algorithm to store and access the rows. The primary key of a hashed internal table must be unique and cannot be changed. A hashed internal table can only be accessed using the primary key, not the table index. The access using the primary key is very fast, because the system can directly calculate the position of the row using the hash algorithm. The primary key can be specified completely, meaning that all the fields of the primary key must be given in the correct order.
The following do not result in faster access to internal tables, because:
* A. In a sorted internal table, specifying the primary key partially from the left without gaps. A sorted internal table is a table type that maintains a predefined sorting order, which is defined by the primary key in the table definition. The primary key can be either unique or non-unique. A sorted internal table can be accessed using the primary key or the table index. The access using the primary key is faster than the access using the table index, because the system can use a binary search algorithm to find the row.
However, the primary key must be specified completely, meaning that all the fields of the primary key must be given in the correct order and without gaps. If the primary key is specified partially from the left without gaps, the system cannot use the binary search algorithm and has to perform a linear search, which is slower2.
* C. In a standard internal table, specifying the primary key partially from the left without gaps. A standard internal table is a table type that does not have a predefined sorting order, but uses a sequential storage and access of the rows. The primary key of a standard internal table is the standard key, which consists of all the fields of the table row in the order in which they are defined. A standard internal table can be accessed using the primary key or the table index. The access using the primary key is slower than the access using the table index, because the system has to perform a linear search to find the row.
The primary key can be specified partially from the left without gaps, but this does not improve the access speed, because the system still has to perform a linear search.
References: 1: Internal Tables - Overview - ABAP Keyword Documentation 2: Sorted Tables - ABAP Keyword Documentation : Hashed Tables - ABAP Keyword Documentation : Standard Tables - ABAP Keyword Documentation
質問 # 32
一意のセカンダリ キーの特徴は何ですか? 注: この質問には 2 つの正解があります。
- A. テーブルがいっぱいになると作成されます。
- B. 変更されたテーブルが再度読み込まれると更新されます。
- C. テーブルが変更されると更新されます。
- D. テーブルの最初の読み取りアクセスで作成されます。
正解:C、D
解説:
A unique secondary key is a type of secondary key that ensures that the key combination of all the rows in a table is unique. A unique secondary key has two purposes: firstly, to speed up access to the table, and secondly, to enforce data integrity1.
* It is created with the first read access of a table: This is true. A unique secondary key is created when an internal table is filled for the first time using the statement READ TABLE or a similar statement. The system assigns a name and an index to each row of the table based on the key fields23.
* It is updated when the modified table is read again: This is false. A unique secondary key does not need to be updated when the internal table content changes, because it already ensures data uniqueness. The system uses a lazy update strategy for non-unique secondary keys, which means that it delays updating them until they are actually accessed23.
You cannot do any of the following:
* It is created when a table is filled: This is false. As explained above, a unique secondary key is created only with the first read access of a table23.
* It is updated when the modified table is read again: This is false. As explained above, a unique secondary key does not need to be updated when the internal table content changes23.
References: 1: Improving Internal Table Performance Using Secondary Keys - SAP Learning 2: [Secondary Key - ABAP Keyword Documentation - SAP Online Help] 3: [Secondary Table Key - ABAP Keyword Documentation - SAP Online Help]
質問 # 33
次のアクションのうち、テーブル変換を必要とするデータベース テーブルへの間接的な変更を引き起こすものはどれですか? 注:
この質問には正解が2つあります。
- A. テーブル定義に含まれる構造内のフィールドの名前を変更する
- B. テーブル定義に含まれる構造からフィールドを削除します。
- C. テーブル定義で使用されるデータ要素のフィールド ラベルを変更します。
- D. テーブル定義で使用されるデータ要素で使用されるドメインの長さを短縮します。
正解:A、B
解説:
The following are the explanations for each action:
* A: Renaming a field in a structure that is included in the table definition causes an indirect change to the database table, as the field name in the table is derived from the structure. This change requires a table conversion, as the existing data in the table must be copied to a new table with the new field name, and the old table must be deleted.
* B: Changing the field labels of a data element that is used in the table definition does not cause an indirect change to the database table, as the field labels are only used for documentation and display purposes. This change does not require a table conversion, as the existing data in the table is not affected by the change.
* C: Deleting a field from a structure that is included in the table definition causes an indirect change to the database table, as the field is removed from the table as well. This change requires a table conversion, as the existing data in the table must be copied to a new table without the deleted field, and the old table must be deleted.
* D: Shortening the length of a domain used in a data element that is used in the table definition causes an indirect change to the database table, as the field length in the table is derived from the domain. This change requires a table conversion, as the existing data in the table must be checked for compatibility with the new field length, and any data that exceeds the new length must be truncated or rejected.
References: Converting Database Tables - ABAP Keyword Documentation, Adjustment of Database Structures - ABAP Keyword Documentation
質問 # 34
RESTful アプリケーション プログラミング アプリケーションを生成するためにオブジェクトはどのような順序で作成されますか?
- A. ADCB
- B. サービス定義3
- C. サービスバインディング投影ビュー 4
- D. データベーステーブル1
- E. データモデルビュー 2
- F. BDCA
- G. ダブリュービーシー
- H. CBAB
正解:B
解説:
The order in which objects are created to generate a RESTful Application Programming application is A, D, C, B. This means that the following steps are followed:
* First, a database table is created to store the data for the application. A database table is a CDS DDIC-based view that defines a join or union of database tables. A database table has an SQL view attached and can be accessed by Open SQL or native SQL.
* Second, a data model view is created to define a data model based on the database table or other CDS view entities. A data model view is a CDS view entity that can have associations, aggregations, filters, parameters, and annotations. A data model view can also define the behavior definition and implementation for the business object.
* Third, a service definition is created to define the service interface for the application. A service definition is a CDS view entity that defines a projection on a data model view or another service definition. A service definition can also define service metadata, such as service name, version, description, and annotations.
* Fourth, a service binding is created to define the service binding for the application. A service binding is a CDS view entity that defines a projection on a service definition. A service binding can also define the service protocol, such as OData V2, OData V4, or REST, and the service URL.
References: CDS Data Model Views - ABAP Keyword Documentation, CDS Service Definitions - ABAP Keyword Documentation, CDS Service Bindings - ABAP Keyword Documentation, CDS Projection Views - ABAP Keyword Documentation
質問 # 35
ABAP SQL では、CDS ビューの関連フィールド _Airline-Name を取得するのは次のどれですか。
- A. @_Airline-Name
- B. /_Anine-Name
- C. \ Airnline-Name
- D. *_Airline-Name
正解:A
質問 # 36
次の ABAP SQL ステートメントのうち有効なものはどれですか? 注: この質問には 2 つの正解があります。
- A. SELECT FROM /dmo/connection FIELDS V D MAX(distance) AS dist_max
MIN(distance) AS dist_min INTO TABLE @DATA(It_hits). - B. SELECT FROM /dmo/connection FIELDS carrid O airpfrom,
MAX(distance) AS dist_max, MIN( distance) AS dist_min GROUP BY carrid, airpfrom INTO TABLE
@DATA(It_hits) - C. SELECT FROM /dmo/connection FIELDS \/ O carrid, airpfrom,
MAX( distance) AS dist_max, MIN(distance) AS dist_min INTO TABLE @DATA(It_hits) - D. SELECT FROM /dmo/connection FIELDS r-i carrid, airpfrom u GROUP BY carrid, connid INTO TABLE @DATA(It_hits).
正解:B、C
解説:
The following are the explanations for each ABAP SQL statement:
* A: This statement is valid. It selects the fields carrid, airpfrom, and the aggregate functions MAX(distance) and MIN(distance) from the table /dmo/connection, and groups the results by carrid and airpfrom. The aggregate functions are aliased as dist_max and dist_min. The results are stored in an internal table named It_hits, which is created using the inline declaration operator @DATA.
* B: This statement is valid. It is similar to statement A, except that it does not specify the GROUP BY clause. This means that the aggregate functions are applied to the entire table, and the results are stored in an internal table named It_hits, which is created using the inline declaration operator @DATA.
* C: This statement is invalid. It selects the aggregate functions MAX(distance) and MIN(distance) from the table /dmo/connection, but it does not specify any grouping or non-aggregate fields. This is not allowed in ABAP SQL, as the SELECT list must contain at least one non-aggregate field or a GROUP BY clause. The statement will cause a syntax error.
* D: This statement is invalid. It selects the fields carrid and airpfrom from the table /dmo/connection, and groups the results by carrid and connid. However, the field connid is not included in the SELECT list, which is not allowed in ABAP SQL, as the GROUP BY clause must contain only fields that are also in the SELECT list. The statement will cause a syntax error.
References: SELECT - ABAP Keyword Documentation, GROUP BY - ABAP Keyword Documentation
質問 # 37
次のどれが ABAP クラウド開発モデルのルールですか?
注: この質問には 2 つの正解があります。
- A. ABAP RESTful アプリケーション プログラミング モデル ベースのサービスを構築します。
- B. パブリック SAP API と SAP 拡張ポイントを使用します。
- C. ABAP リスト ビューア (ALV) または SAP Fiori を使用して ABAP レポートを構築します。
- D. 適切なパブリック SAP API が利用可能になったら、変更を元に戻します。
正解:B、D
解説:
* Use public SAP APIs and SAP extension points. This rule ensures that the ABAP Cloud code is stable, reliable, and compatible with the SAP solutions and the cloud operations. Public SAP APIs and SAP extension points are the only allowed interfaces and objects to access the SAP platform and the SAP applications. They are documented, tested, and supported by SAP. They also guarantee the lifecycle stability and the upgradeability of the ABAP Cloud code1.
* Build ABAP RESTful application programming model-based services. This rule ensures that the ABAP Cloud code follows the state-of-the-art development paradigm for building cloud-ready business services. The ABAP RESTful application programming model (RAP) is a framework that provides a consistent end-to-end programming model for creating, reading, updating, and deleting (CRUD) business data. RAP also supports draft handling, authorization checks, side effects, validations, and custom actions. RAP exposes the business services as OData services that can be consumed by SAP Fiori apps or other clients2.
質問 # 38
以下のネストされた結合では、結合はどのような方法で評価されますか?
- A. 表の順序に従って左から右へ:
1.
aはbと結合される
2.
bはcと結合される - B. 条件の順に上から下へ
1.
bはcと結合される
2.
aはbと結合される - C. オン条件の順に下から上へ:
1.
aはbと結合される
2.
bはcと結合される - D. 表の順序に従って右から左へ:
1.
b は c と結合されます。
2.
b は a と結合されます。
正解:B
解説:
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.
References: 1: SELECT, FROM JOIN - ABAP Keyword Documentation - SAP Online Help
質問 # 39
RESTful アプリケーション プログラミング アプリケーションでは、どのオブジェクトに CDS ビューをバインドして値のヘルプを作成しますか? 注: この質問には 3 つの正解があります。
- A. メタデータ拡張
- B. 動作定義
- C. データモデルビュー
- D. サービス定義
- E. 投影ビュー
正解:A、C、E
解説:
In a RESTful Application Programming (RAP) application, you can bind a CDS view to create a value help in the following objects:
* Data model view: A data model view is a CDS view that defines the data structure and the associations of an entity in the RAP application. You can use the annotation @Consumption.valueHelpDefinition to bind a value help provider CDS view to an element of the data model view. The value help provider CDS view must contain the key fields of the value help entity and the fields that are displayed in the value help dialog. The value help annotation specifies the entity name, the element name, and optionally the additional binding conditions for the value help provider1.
* Metadata Extension: A metadata extension is a CDS view that extends the metadata of another CDS view without changing its data structure. You can use the annotation @MetadataExtension.extendView to specify the target CDS view that you want to extend. You can then use the same annotation
@Consumption.valueHelpDefinition to bind a value help provider CDS view to an element of the target CDS view. The metadata extension allows you to add value help definitions to existing CDS views without modifying them2.
* Projection View: A projection view is a CDS view that defines the projection of another CDS view. You can use the annotation @AbapCatalog.sqlViewType: #PROJECTION to specify that the CDS view is a projection view. You can then use the same annotation @Consumption.valueHelpDefinition to bind a value help provider CDS view to an element of the projection view. The projection view allows you to add value help definitions to projected elements of another CDS view3.
You cannot bind a value help provider CDS view to a behavior definition or a service definition, because these objects do not define the data structure or the metadata of an entity in the RAP application. A behavior definition defines the behavior and the validation rules of an entity, such as the create, read, update, and delete (CRUD) operations, the draft handling, the authorization checks, and the side effects4. A service definition defines the service exposure and the service binding of an entity, such as the protocol, the version, the namespace, and the service name5.
References: 1: Value Help with Additional Binding | SAP Help Portal 2: Metadata Extensions - ABAP Keyword Documentation 3: Projection Views - ABAP Keyword Documentation 4: Behavior Definition - ABAP Keyword Documentation 5: Service Definition - ABAP Keyword Documentation
質問 # 40
コンサルタントとして、SAP S/4HANA Cloud パブリック エディションと SAP BTP ABAP 環境を使用しているクライアントから次の質問を受けました。
「現在、未処理の注文を分析する SAP Fiori 要素に基づく SAP Fiori アプリを使用しています。オンザフライ計算を実行し、その結果をエンドユーザー向けのクイック ポップアップで表示する UI 上の新しいボタンを使用して、アプリを拡張する必要があると判断しました。SAP から、SAP Fiori アプリの基礎となるすべてのスタック レイヤーで拡張性が有効になっていることが通知されました。」これに基づいて、新しいボタンを追加するために、次のどの拡張機能タイプを顧客に推奨しますか。
- A. ビジネスサービス拡張
- B. RAP BO 動作拡張
- C. RAP BO ノード拡張
- D. SAP HANA データベース テーブル拡張
正解:C
質問 # 41
有効な文は何ですか? 注: この質問には3つの正解があります
- A. クラス CL1 はインターフェースを実装します。
- B. クラス CL1 はインターフェースを使用します。
- C. クラス CL1 では、インターフェース メソッドの名前は if-ml です。
- D. クラス CL2 では、インターフェース メソッドの名前は ifl-ml です。
- E. クラス CL2 はインターフェースを使用します。
正解:A、D、E
解説:
The following are the explanations for each statement:
* C: This statement is valid. Class CL1 uses the interface. This is because class CL1 implements the interface ifl using the INTERFACES statement in the public section of the class definition. The INTERFACES statement makes the class compatible with the interface and inherits all the components of the interface. The class can then use the interface components, such as the method ml, by using the interface component selector ~, such as ifl~ml12
* E: This statement is valid. Class CL1 implements the interface. This is because class CL1 implements the interface ifl using the INTERFACES statement in the public section of the class definition. The INTERFACES statement makes the class compatible with the interface and inherits all the components of the interface. The class must then provide an implementation for the interface method ml in the implementation part of the class, unless the method is declared as optional or abstract12
* D: This statement is valid. In class CL2, the interface method is named ifl~ml. This is because class CL2 has a data member named m0_ifl of type REF TO ifl, which is a reference to the interface ifl. The interface ifl defines a method ml, which can be called using the reference variable m0_ifl. The interface method ml has the name ifl~ml in the class, where ifl is the name of the interface and the character ~ is the interface component selector12 The other statements are not valid, as they have syntax errors or logical errors. These statements are:
* A: This statement is not valid. In class CL1, the interface method is named ifl~ml, not if-ml. This is
* because class CL1 implements the interface ifl using the INTERFACES statement in the public section of the class definition. The interface ifl defines a method ml, which can be called using the class name or a reference to the class. The interface method ml has the name ifl~ml in the class, where ifl is the name of the interface and the character ~ is the interface component selector. Using the character - instead of the character ~ will cause a syntax error12
* B: This statement is not valid. Class CL2 does not use the interface, but only has a reference to the interface. This is because class CL2 has a data member named m0_ifl of type REF TO ifl, which is a reference to the interface ifl. The interface ifl defines a method ml, which can be called using the reference variable m0_ifl. However, class CL2 does not implement the interface ifl, nor does it inherit the interface components. Therefore, class CL2 does not use the interface, but only references the interface12 References: INTERFACES - ABAP Keyword Documentation, CLASS - ABAP Keyword Documentation
質問 # 42
「???」の代わりに次のどの ON 条件を挿入する必要がありますか?
- A. ON Sprojection Camer=Source2 carrier_id
- B. ON Sprojection. Carrier Source2.carrier
- C. ON Z_Sourcel.camer_id = 7_Source2 carrier_id
- D. ON Sprojection.carrier_id=Z_Source2.carrier_id
正解:D
解説:
The correct ON condition that must be inserted in place of "???" is:
ON Sprojection.carrier_id=Z_Source2.carrier_id
This ON condition specifies the join condition between the CDS view Sprojection and the database table Z_Source2. The join condition is based on the field carrier_id, which is the primary key of both the CDS view and the database table. The ON condition ensures that only the records that have the same value for the carrier_id field are joined together1.
The other options are not valid ON conditions, because:
* A. ON Z_Sourcel.camer_id = 7_Source2 carrier_id is not valid because Z_Sourcel and 7_Source2 are not valid data sources in the given code. There is no CDS view or database table named Z_Sourcel or
* 7_Source2. The correct names are Z_Source1 and Z_Source2. Moreover, the field camer_id is not a valid field in the given code. There is no field named camer_id in any of the data sources. The correct name is carrier_id.
* B. ON Sprojection Camer=Source2 carrier_id is not valid because Sprojection and Source2 are not valid data sources in the given code. There is no CDS view or database table named Sprojection or Source2.
The correct names are Sprojection and Z_Source2. Moreover, the field Camer is not a valid field in the given code. There is no field named Camer in any of the data sources. The correct name is carrier_id. Furthermore, the ON condition is missing the dot (.) operator between the data source name and the field name, which is required to access the fields of the data source1.
* C. ON Sprojection. Carrier Source2.carrier is not valid because Carrier and carrier are not valid fields in the given code. There is no field named Carrier or carrier in any of the data sources. The correct name is carrier_id. Moreover, the ON condition is missing the dot (.) operator between the data source name and the field name, which is required to access the fields of the data source1.
References: 1: ON Condition - ABAP Keyword Documentation
質問 # 43 
有効なステートメントは何ですか? 注: この質問には 2 つの正解があります。
- A. 「zcxl」は辞書構造であり、「paraml」と「param2」はこの構造です。
- B. コードは例外オブジェクトを作成し、例外を発生させます。
- C. 「previous」は前の例外への参照を期待します
- D. 「paraml11」と「param2」は定義済みの名前です。
正解:B、C
解説:
The code snippet in the image is an example of using the RAISE EXCEPTION statement to raise a class-based exception and create a corresponding exception object. The code snippet also uses the EXPORTING addition to pass parameters to the instance constructor of the exception class12. Some of the valid statements about the code snippet are:
* The code creates an exception object and raises an exception: This is true. The RAISE EXCEPTION statement raises the exception linked to the exception class zcxl and generates a corresponding exception object. The exception object contains the information about the exception, such as the message, the source position, and the previous exception12.
* "previous" expects the reference to a previous exception: This is true. The previous parameter is a predefined parameter of the instance constructor of the exception class cx_root, which is the root class of all class-based exceptions. The previous parameter expects the reference to a previous exception object that was caught during exception handling. The previous parameter can be used to chain multiple exceptions and preserve the original cause of the exception12.
You cannot do any of the following:
* "zcxl" is a dictionary structure, and "paraml" and "param2" are this structure: This is false. zcxl is not a dictionary structure, but a user-defined exception class that inherits from the predefined exception class cx_static_check. param1 and param2 are not components of this structure, but input parameters of the instance constructor of the exception class zcxl. The input parameters can be used to pass additional information to the exception object, such as the values that caused the exception12.
* "paraml" and "param2" are predefined names: This is false. param1 and param2 are not predefined names, but user-defined names that can be chosen arbitrarily. However, they must match the names of the input parameters of the instance constructor of the exception class zcxl. The names of the input parameters can be declared in the interface of the exception class using the RAISING addition12.
References: 1: RAISE EXCEPTION - ABAP Keyword Documentation - SAP Online Help 2: Class-Based Exceptions - ABAP Keyword Documentation - SAP Online Help
質問 # 44
特定のアプリに必要なフィールドのみが含まれる RESTful アプリケーション プログラミング オブジェクトは何ですか?
- A. データモデルビュー
- B. データベースビュー
- C. メタデータ拡張
- D. 投影ビュー
正解:D
解説:
A projection view is a RESTful Application Programming object that contains only the fields required for a particular app. A projection view is a CDS view entity that defines a projection on an existing CDS view entity or CDS DDIC-based view. A projection view exposes a subset of the elements of the projected entity, which are relevant for a specific business service. A projection view can also define aliases, virtual elements, and annotations for the projected elements. A projection view is the top-most layer of a CDS data model and prepares data for a particular use case. A projection view can have different provider contracts depending on the type of service it supports, such as transactional query, analytical query, or transactional interface.
A database view is a CDS DDIC-based view that defines a join or union of database tables. A database view has an SQL view attached and can be accessed by Open SQL or native SQL. A database view can be used as a projected entity for a projection view, but it does not contain only the fields required for a particular app.
A metadata extension is a RESTful Application Programming object that defines additional annotations for a CDS view entity or a projection view. A metadata extension can be used to enhance the metadata of a CDS data model without changing the original definition. A metadata extension does not contain any fields, but only annotations.
A data model view is a CDS view entity that defines a data model based on database tables or other CDS view entities. A data model view can have associations, aggregations, filters, parameters, and annotations. A data model view can be used as a projected entity for a projection view, but it does not contain only the fields required for a particular app.
References: CDS Projection Views - ABAP Keyword Documentation, CDS Projection Views in ABAP CDS:
What's Your Flavor, Business Object Projection - ABAP Keyword Documentation
質問 # 45
SAP S/4HANA Cloud プライベート エディション テナントに次のコードがあるとします。
クラス zcl_demo_class は、言語バージョンが「ABAP Cloud」に設定されたソフトウェア コンポーネント内にあります。 ファンクション モジュール ZF1' は、言語バージョンが「Standard ABAP」に設定された別のソフトウェア コンポーネント内にあります。
クラスと関数モジュールは両方とも顧客が作成します。
6 行目に関して、次の記述のうち有効なものはどれですか? 注: この質問には 2 つの正解があります。
- A. ZF1" は、ラッパーが作成されているが、ラッパー自体がクラウド開発用にリリースされていない場合に呼び出すことができます。
- B. 'ZF1' は、ラッパーが作成され、ラッパー自体がクラウド開発用にリリースされている場合に呼び出すことができます。
- C. 「ZF1」はクラウド開発用にリリースされているかどうかに関係なく呼び出すことができます
- D. ZF1' は、クラウド開発用にリリースされている場合にのみ呼び出すことができます。
正解:B、D
解説:
The ABAP Cloud Development Model requires that only public SAP APIs and extension points are used to access SAP functionality and data. These APIs and extension points are released by SAP and documented in the SAP API Business Hub1. Customer-created function modules are not part of the public SAP APIs and are not released for cloud development. Therefore, calling a function module directly from an ABAP Cloud class is not allowed and will result in a syntax error. However, there are two possible ways to call a function module indirectly from an ABAP Cloud class:
* Create a wrapper class or interface for the function module and release it for cloud development. A wrapper is a class or interface that encapsulates the function module and exposes its functionality through public methods or attributes. The wrapper must be created in a software component with the language version set to "Standard ABAP" and must be marked as released for cloud development using the annotation @EndUserText.label. The wrapper can then be called from an ABAP Cloud class using the public methods or attributes2.
* Use the ABAP Cloud Connector to call the function module as a remote function call (RFC) from an ABAP Cloud class. The ABAP Cloud Connector is a service that enables the secure and reliable communication between SAP BTP, ABAP environment and on-premise systems. The function module must be exposed as an RFC-enabled function module in the on-premise system and must be registered in the ABAP Cloud Connector. The ABAP Cloud class can then use the class cl_rfc_destination_service to get the destination name and the class cl_abap_system to create a proxy object for the function module. The proxy object can then be used to call the function module3.
References: 1: SAP API Business Hub 2: Creating an ABAP Cloud Project | SAP Help Portal 3: Calling Remote Function Modules | SAP Help Portal
質問 # 46
/DMO/I_Connection は CDS ビューです。
次のコードに基づくと、接続が完全である変数タイプは何ですか? DATA 接続が完全である TYPE
/DMD/I_接続。
- A. 内部テーブル
- B. 構造
- C. 単純な変数
正解:B
解説:
Based on the following code, the variable type of connection_full is a structure. A structure is a complex data type that consists of a group of related data objects, called components, that have their own data types and names. A structure can be defined using the TYPES statement or based on an existing structure type, such as a CDS view entity or a CDS DDIC-based view. In this case, the variable connection_full is declared using the TYPE addition, which means that it has the same structure type as the CDS view entity /DMO/I_Connection.
The CDS view entity /DMO/I_Connection is a data model view that defines a data model based on the database table /DMO/Connection. The CDS view entity /DMO/I_Connection has the following components:
carrid, connid, airpfrom, airpto, distance, and fltime. Therefore, the variable connection_full has the same components as the CDS view entity /DMO/I_Connection, and each component has the same data type and length as the corresponding field in the database table /DMO/Connection.
References: CDS Data Model Views - ABAP Keyword Documentation, DATA - ABAP Keyword Documentation, Structure Types - ABAP Keyword Documentation
質問 # 47
データ モデリングに対する従来のアプローチよりも Core Data Services が優れている理由は何ですか? 注: この質問には 2 つの正解があります。
- A. コード プッシュダウンを実装します。
- B. アプリケーション サーバー上で結果を計算します。
- C. 計算結果をアプリケーション サーバーに転送します。
- D. データ転送を完全に回避します。
正解:A、C
解説:
Core Data Services (CDS) are preferable to the classical approach to data modeling for several reasons, but two of them are:
* They implement code pushdown. Code pushdown is the principle of moving data-intensive logic from the application server to the database server, where the data resides. This reduces the data transfer between the application server and the database server, which improves the performance and scalability of the application. CDS enable code pushdown by allowing the definition of semantic data models and business logic in the database layer, using SQL and SQL-based expressions1.
* They transfer computational results to the application server. CDS allow the application server to access the data and the logic defined in the database layer by using Open SQL statements. Open SQL is a standardized and simplified subset of SQL that can be used across different database platforms. Open SQL statements are translated into native SQL statements by the ABAP runtime environment and executed on the database server. The results of the computation are then transferred to the application server, where they can be further processed or displayed2.
References: 1: ABAP - Core Data Services (ABAP CDS) - ABAP Keyword Documentation 2: Open SQL - ABAP Keyword Documentation
質問 # 48
2 つの内部テーブル itab1 と itab2 があります。式 itab1 = 対応する #( itab2 ) を使用する場合、正しいのはどれですか? 注: この質問には 2 つの正解があります。
- A. itab1 と itab2 は同じデータ型である必要があります。
- B. 同じ名前と同じタイプのフィールドが itab2 から itab1 にコピーされます。
- C. itab1 と itab2 には少なくとも 1 つの共通フィールド名が必要です。
- D. 同じ名前だが型が異なるフィールドを itab2 から itab1 にコピーできます。
正解:B、C
解説:
The expression itab1 = corresponding #( itab2 ) is a constructor expression with the component operator CORRESPONDING that assigns the contents of the internal table itab2 to the internal table itab1. The following statements are true for using this expression:
* B: itab1 and itab2 must have at least one field name in common. This is because the component operator CORRESPONDING assigns the identically named columns of itab2 to the identically named columns of itab1 by default, according to the rules of MOVE-CORRESPONDING for internal tables. If itab1 and itab2 do not have any field name in common, the expression will not assign any value to itab1 and it will remain initial or unchanged1
* C: Fields with the same name and the same type will be copied from itab2 to itab1. This is because the component operator CORRESPONDING assigns the identically named columns of itab2 to the identically named columns of itab1 by default, according to the rules of MOVE-CORRESPONDING for
* internal tables. If the columns have the same name but different types, the assignment will try to perform a conversion between the types, which may result in a loss of precision, a truncation, or a runtime error, depending on the types involved1 The following statements are false for using this expression:
* A: Fields with the same name but with different types may be copied from itab2 to itab1. This is not true, as explained in statement C. The assignment will try to perform a conversion between the types, which may result in a loss of precision, a truncation, or a runtime error, depending on the types involved1
* D: itab1 and itab2 must have the same data type. This is not true, as the component operator CORRESPONDING can assign the contents of an internal table of one type to another internal table of a different type, as long as they have at least one field name in common. The target type of the expression is determined by the left-hand side of the assignment, which is itab1 in this case. The expression will create an internal table of the same type as itab1 and assign it to itab11 References: CORRESPONDING - Component Operator - ABAP Keyword Documentation
質問 # 49
SAP では、ソートされたテーブルとハッシュされたテーブルをそれぞれいつ使用することを推奨していますか? 注: この質問には 2 つの正解があります。
- A. ループでサブセットを読み取り、キーの一部を隙間なく左から指定するハッシュ テーブル。
- B. ループでサブセットを読み取り、キーの一部を左から隙間なく指定すると、ソートされたテーブルになります。
- C. 単一のレコードを読み取り、キー以外のフィールドを指定する場合のソートされたテーブル。
- D. 単一のレコードを読み取り、完全なキーを指定する場合のハッシュ テーブル。
正解:A、D
質問 # 50
......
今すぐダウンロード!リアルSAP C_ABAPD_2309日本語試験問題集テストエンジン試験問題:https://jp.fast2test.com/C_ABAPD_2309-JPN-premium-file.html