【SAP ABAP】ABAP7.4以降のS4HANAでの新構文(変数定義)

登場人物紹介

三崎レイナ
社会人1年目。新卒でITコンサルティングファームに就職。初配属がSAPプロジェクトにアサインされる。SAPがわからないことだらけで悩んでいたところ、会社の先輩にSAPラボの所長を紹介され、毎週末に所長とSAPのお勉強中!

博士
SAPラボの所長。SAP大好き博士!SAP導入プロジェクトを構想策定~運用保守まであらゆるフェーズを数多く経験。
いまは優しきおじいちゃんだが、プロマネバリバリの時代はかなり怖かったらしい。現在は引退し、SAPの後進育成と啓蒙活動に従事中!

この記事を読むメリット

  • ABAP7.4以降の変数定義についての新構文を理解することができます。

ABAP7.4は2013年にリリースされました。多くの便利な構文の追加がされています。
ABAP開発者やプログラムを読む必要のある設計者の方に向けて、ABAP7.4以降で追加された新たな構文を紹介していきます。

ここでは変数の定義についての新構文を解説します!

・ABAP7.4以降でも旧構文は利用可能です。
・同じプログラム内でも旧構文と新構文が同居することもできます。
・どの構文を用いるかはプロジェクトのコーディング規約に則り開発が必要です。

SAPフリーランスバンク SAPフリーランスバンク

新着のSAPフリーランス案件

【CO】

【FI】

製造業様SAP S/4 HANA導入検討支援(コンサルリード)

要スキル:
・会計領域におけるプロジェクト管理の実施 ・10名以上のメンバー管理の経験をお持ちであること ・エンドユーザとの調整を含めたマネジメントスキル ・SAP導入プロジェクトの経験
月額単価:
~1,250,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
SAP新規導入における、プロジェクト管理支援 ・会計・生産領域(FI/CO/PS/PP/QM)におけるプロジェクト管理支援 ・ファシリテート ・領域タスク推進/進捗管理 ・個別課題整理・解決

【CO】

【FI】

【MM】

【PP】

【SD】

【その他】

建設コンサルタント企業向けSAP保守支援(チームリード)

要スキル:
・SAP関連のプロジェクトで複数モジュールでの経験があること 【尚可】 ・ロジから会計に連動するところの知見
月額単価:
~1,300,000円 / 月
稼働場所:
フルリモート
稼働率:
100%
作業内容:
複数モジュールにまたがった保守チームの管理を行っていただきます。 問い合わせや障害等のタスク管理や優先順位付けなどを顧客とやり取りしながら差配していくのが中心となります。

【CO】

【FI】

【MM】

【SD】

製造業会社向けSAP保守支援(会計もしくはロジ)

要スキル:
・会計もしくはロジ領域でのSAPプロジェクトの業務経験 ・ABAPでの開発経験
月額単価:
~950,000円 / 月
稼働場所:
フルリモート
稼働率:
100%
作業内容:
問い合わせ対応や調査等の保守作業(会計/ロジ)

【MM】

【SD】

複数社に対するSAP運用保守とS/4へのVerUp対応支援

要スキル:
SAPロジ領域での保守や導入のプロジェクト経験
月額単価:
~1,300,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
20社前後に対するSAPの保守業務を担当頂きます。 (不具合調査、障害対応、機能追加・改修、法改正対応など) またS/4へのバージョンアップを控えているため、そちらも対応頂きます。

【CO】

【FI】

【MM】

【PP】

【SD】

光学機器製造会社向けSAP導入プロト支援

要スキル:
・SAPの構想策定フェーズからプロジェクトに参画したことがある経験 ・プロト機の設定などをおこなってきた経験
月額単価:
~1,800,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
・業務フローの整理と作成 ・プロト機の準備

【FI】

製造業会社向けS/4導入検討支援(会計リード)

要スキル:
・SAP導入プロジェクトの経験 ・会計領域におけるリード経験(10名以上目安) ・顧客折衝の経験
月額単価:
~1,250,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
海外テンプレート構築検討を進めており、会計チームでのリードを担当頂きます。 ・顧客に対する進捗報告 ・顧客からの相談窓口 ・チーム全体の、品質、進捗、コストの管理 ・領域横断課題の検討(チケット起票単位の整理等)

【SD】

SAP導入コンサル支援(SD)

要スキル:
・SAPプロジェクトにて要件定義経験5年以上 ・要件定義からカスタマイズの設定 ・SAP(SDモジュール)経験5年以上 ・コミュニケーション能力 【尚可】 ・リモート環境での作業経験
月額単価:
~1,300,000円 / 月
稼働場所:
フルリモート
稼働率:
100%
作業内容:
SAP導入コンサルポジションとして要件定義より参画予定となります。 ・要件定義の確認と課題対応 ・残課題の背景・内容を定義 ・SAPソリューションの検討・討議

【FI】

製造業向けS/4新規導入支援(FI-AP/AR)

要スキル:
SAP導入プロジェクトにおいてFI(AP/AR)コンサルタントとしての業務経験
月額単価:
~2,000,000円 / 月
稼働場所:
フルリモート
稼働率:
100%
作業内容:
S/4新規導入PJのFIメ(AP/AR)メンバーとして参画頂きAP/AR領域について以下を担当頂きます。  -業務フロー作成  -プロトシナリオ作成  -プロト用パラメータ設定、プロト実施  -課題対応(SAP標準を使ったソリューション検討)  -議事録作成など

【FI】

SAP HANAバージョンアップにおける会計機能設計支援

要スキル:
・FI領域の要件定義書から基本設計を現行を参考に作成し、  後続作業も出来る方。 ・SAP標準機能と会計業務に関する知識 <尚可> FI-AA経験、TRM経験
月額単価:
~900,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
SAP FIコンサルまたはJrコンサル S/4HANAへバージョンアップに向け、会計領域の要件定義フェーズ作業 ・現行SAPの調査支援(標準機能の含む) ・ToBe詳細業務フロー作成支援 ・現行アドオン調査・整理 ・ToBeアドオンへの置き換え時の実現ポイント調査・整理

【FI】

自動車メーカー向けS4HANA導入支援(FI/CO)

要スキル:
・FIもしくはCOモジュールでの業務要件定義の経験(導入~)
月額単価:
~950,000円 / 月
稼働場所:
広島県
稼働率:
100%
作業内容:
S4導入要件定義フェーズにおいて以下の業務を行っていただきます。 ・要件定義 ・業務フロー作成 ・既存Add-On整理&再設計 ・財務関連コード定義
この記事のポイント

変数等の定義

ABAP7.4以降は変数等を処理前に定義しなくても利用できるようになりました。

ただしローカルの変数としての宣言となるので使いどころに注意。
例えばform~endformの中で新構文で定義された変数は、formの外では利用できません。

新構文で定義された変数等はローカル宣言となる。

博士

ここでは変数定義に関する旧構文と新構文の比較の例を解説していくのじゃ!

変数の定義(新構文の例)

文字列の格納

新構文では処理の中でDATA(変数名)の形で定義することができます。

旧構文
* 変数定義
DATA l_test TYPE char4.

* 変数へ文字列格納
l_test = 'aaaa'.
新構文
* 変数へ文字列格納
DATA(l_test) = 'aaaa'.

新構文では型を自動で判別してくれます。
上記の新構文の例にあるl_testは4文字の文字列として判別されるため、4文字を超える文字列を入れることはできません。

METHODのIMPORTING(新構文の例)

以下のようにMETHODのIMPORTINGでも変数の定義を省略可能です。

旧構文
* 変数定義
DATA:
  l_time      TYPE uzeit,
  l_datE      TYPE datum,
  l_timestamp TYPE tzntstmpl.

* METHOD呼び出し
CALL METHOD cl_reca_date=>get_current_date
  EXPORTING
    id_timezone  = sy-zonlo
  IMPORTING
    ed_time      = l_time
    ed_date      = l_date
    ed_timestamp = l_timestamp.
新構文
* METHOD呼び出し
CALL METHOD cl_reca_date=>get_current_date
  EXPORTING
    id_timezone  = sy-zonlo
  IMPORTING
    ed_time      = DATA(l_time)
    ed_date      = DATA(l_date)
    ed_timestamp = DATA(l_timestamp).

汎用モジュール(CALL FUNCTION)ではMETHODのようにIMPORT変数の定義を省略することはできません。

SELECTから変数への格納(新構文の例)

旧構文
* 変数定義
DATA:
  l_ebeln TYPE ekko-ebeln.

* データ取得
SELECT SINGLE ebeln
  FROM ekko
  INTO l_ebeln
 WHERE ernam = 'TEST'.
新構文
* データ取得
SELECT SINGLE ebeln
  FROM ekko
  INTO @DATA(l_ebeln)
 WHERE ernam = 'TEST'.

SELECTの新構文については、新構文のSELECT文では変数等の頭に「@」を付ける必要があります。詳しくは以下をご確認下さい!

構造の定義(新構文の例)

新構文では処理の中でDATA(構造名)の形で定義することができます。

LOOPでのINTO先の構造

旧構文
* 変数定義
DATA wa_ekko LIKE LINE OF it_ekko.

* LOOP処理
LOOP AT it_ekko INTO wa_ekko.
  "何かの処理
ENDLOOP.
新構文
* LOOP処理
LOOP at it_ekko INTO data(wa_ekko).
  "何らかの処理
ENDLOOP.

READ TABLEでのINTO先の構造(新構文の例)

旧構文
* 構造定義
DATA wa_ekko LIKE LINE OF it_ekko.

* 内部テーブルから1行目を構造へ格納
READ TABLE it_ekko INTO wa_ekko INDEX 1.
新構文
* 内部テーブルから1行目を構造へ格納
READ TABLE it_ekko INTO DATA(wa_ekko) INDEX 1.

内部テーブルの定義(新構文の例)

新構文では処理の中でDATA(内部テーブル名)の形で定義することができます。

SELECT文から内部テーブルへのデータ取得

旧構文
* 型定義
TYPES:
  BEGIN OF typ_ekko,
    ebeln,
    burks,
  END OF typ_ekko.

* 内部テーブル定義
DATA:
  it_ekko TYPE STANDARD TABLE OF TYP_ekko.

* データ取得
SELECT ebeln
       bukrs
  FROM ekko
  INTO TABLE it_ekko
 WHERE ernam = 'TEST'.
新構文
* データ取得
SELECT ebeln,
       bukrs
  FROM ekko
  INTO TABLE @DATA(it_ekko)
 WHERE ernam = 'TEST'.

SELECTの新構文については別途解説しますが、新構文のSELECT文では項目の区切りで「,」を付ける必要があります。

FIELD-SYMBOLSの定義(新構文の例)

新構文では処理の中でFIELD-SYMBOL(フィールドシンボル名)の形で定義することができます。

LOOPでのASSIGNING先のフィールドシンボル

旧構文
* データ定義
FIELD-SYMBOLS <FS_EKKO> TYPE EKKO.

* LOOP処理
LOOP AT IT_EKKO ASSIGNING <FS_EKKO>.
  "何らかの処理
ENDLOOP.
新構文
* LOOP処理
LOOP AT IT_EKKO ASSIGNING FIELD-SYMBOL(<FS_EKKO>).
  "何らかの処理
ENDLOOP.

READ TABLEでのASSIGNING先のフィールドシンボル

旧構文
* データ定義
FIELD-SYMBOLS <FS_EKKO> TYPE EKKO.

* 内部テーブルから1行目をフィールドシンボルへ格納
READ TABLE IT_EKKO ASSIGNING <FS_EKKO> INDEX 1.
新構文
* 内部テーブルから1行目をフィールドシンボルへ格納
READ TABLE IT_EKKO ASSIGNING FIELD-SYMBOL(<FS_EKKO>) INDEX 1.
博士

変数に関するABAP7.4以降の新構文についての解説は以上じゃ。

他の新構文については他の記事でまとめていくので楽しみにしているのじゃ~!

新着のSAPフリーランス案件

【CO】

【FI】

製造業様SAP S/4 HANA導入検討支援(コンサルリード)

要スキル:
・会計領域におけるプロジェクト管理の実施 ・10名以上のメンバー管理の経験をお持ちであること ・エンドユーザとの調整を含めたマネジメントスキル ・SAP導入プロジェクトの経験
月額単価:
~1,250,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
SAP新規導入における、プロジェクト管理支援 ・会計・生産領域(FI/CO/PS/PP/QM)におけるプロジェクト管理支援 ・ファシリテート ・領域タスク推進/進捗管理 ・個別課題整理・解決

【CO】

【FI】

【MM】

【PP】

【SD】

【その他】

建設コンサルタント企業向けSAP保守支援(チームリード)

要スキル:
・SAP関連のプロジェクトで複数モジュールでの経験があること 【尚可】 ・ロジから会計に連動するところの知見
月額単価:
~1,300,000円 / 月
稼働場所:
フルリモート
稼働率:
100%
作業内容:
複数モジュールにまたがった保守チームの管理を行っていただきます。 問い合わせや障害等のタスク管理や優先順位付けなどを顧客とやり取りしながら差配していくのが中心となります。

【CO】

【FI】

【MM】

【SD】

製造業会社向けSAP保守支援(会計もしくはロジ)

要スキル:
・会計もしくはロジ領域でのSAPプロジェクトの業務経験 ・ABAPでの開発経験
月額単価:
~950,000円 / 月
稼働場所:
フルリモート
稼働率:
100%
作業内容:
問い合わせ対応や調査等の保守作業(会計/ロジ)

【MM】

【SD】

複数社に対するSAP運用保守とS/4へのVerUp対応支援

要スキル:
SAPロジ領域での保守や導入のプロジェクト経験
月額単価:
~1,300,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
20社前後に対するSAPの保守業務を担当頂きます。 (不具合調査、障害対応、機能追加・改修、法改正対応など) またS/4へのバージョンアップを控えているため、そちらも対応頂きます。

【CO】

【FI】

【MM】

【PP】

【SD】

光学機器製造会社向けSAP導入プロト支援

要スキル:
・SAPの構想策定フェーズからプロジェクトに参画したことがある経験 ・プロト機の設定などをおこなってきた経験
月額単価:
~1,800,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
・業務フローの整理と作成 ・プロト機の準備

【FI】

製造業会社向けS/4導入検討支援(会計リード)

要スキル:
・SAP導入プロジェクトの経験 ・会計領域におけるリード経験(10名以上目安) ・顧客折衝の経験
月額単価:
~1,250,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
海外テンプレート構築検討を進めており、会計チームでのリードを担当頂きます。 ・顧客に対する進捗報告 ・顧客からの相談窓口 ・チーム全体の、品質、進捗、コストの管理 ・領域横断課題の検討(チケット起票単位の整理等)

【SD】

SAP導入コンサル支援(SD)

要スキル:
・SAPプロジェクトにて要件定義経験5年以上 ・要件定義からカスタマイズの設定 ・SAP(SDモジュール)経験5年以上 ・コミュニケーション能力 【尚可】 ・リモート環境での作業経験
月額単価:
~1,300,000円 / 月
稼働場所:
フルリモート
稼働率:
100%
作業内容:
SAP導入コンサルポジションとして要件定義より参画予定となります。 ・要件定義の確認と課題対応 ・残課題の背景・内容を定義 ・SAPソリューションの検討・討議

【FI】

製造業向けS/4新規導入支援(FI-AP/AR)

要スキル:
SAP導入プロジェクトにおいてFI(AP/AR)コンサルタントとしての業務経験
月額単価:
~2,000,000円 / 月
稼働場所:
フルリモート
稼働率:
100%
作業内容:
S/4新規導入PJのFIメ(AP/AR)メンバーとして参画頂きAP/AR領域について以下を担当頂きます。  -業務フロー作成  -プロトシナリオ作成  -プロト用パラメータ設定、プロト実施  -課題対応(SAP標準を使ったソリューション検討)  -議事録作成など

【FI】

SAP HANAバージョンアップにおける会計機能設計支援

要スキル:
・FI領域の要件定義書から基本設計を現行を参考に作成し、  後続作業も出来る方。 ・SAP標準機能と会計業務に関する知識 <尚可> FI-AA経験、TRM経験
月額単価:
~900,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
SAP FIコンサルまたはJrコンサル S/4HANAへバージョンアップに向け、会計領域の要件定義フェーズ作業 ・現行SAPの調査支援(標準機能の含む) ・ToBe詳細業務フロー作成支援 ・現行アドオン調査・整理 ・ToBeアドオンへの置き換え時の実現ポイント調査・整理

【FI】

自動車メーカー向けS4HANA導入支援(FI/CO)

要スキル:
・FIもしくはCOモジュールでの業務要件定義の経験(導入~)
月額単価:
~950,000円 / 月
稼働場所:
広島県
稼働率:
100%
作業内容:
S4導入要件定義フェーズにおいて以下の業務を行っていただきます。 ・要件定義 ・業務フロー作成 ・既存Add-On整理&再設計 ・財務関連コード定義

★★★SAPラボのライター募集★★★

SAPラボでは、SAPの知識を活かして副業をしたい方を募集してるのじゃ!

SAPラボのライターの特徴

・ライティング初心者OK!
・報酬高単価!
・業務委託契約なので副業として最適!

SAP記事執筆者としての活動実績として利用可能なので、転職時や案件探しの際に企業へのアピール材料にもなります。

募集要項

・SAP導入や運用保守プロジェクトへの参画経験1年以上

ご応募/お問合せ先

info@sap-labo.com

少しでもご興味ある方、ぜひお気軽にご連絡下さい!

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

株式会社Luxy(https://luxy-inc.com/company_info/)と株式会社アガルートITパートナーズ(https://agaroot-itp.com/about/)の代表取締役。

新卒でSAPエンジニアとして働き始める。副業で事業を開始したのち、2015年に独立しシステム開発会社を設立。SAPの案件に従事しつつシステム開発事業を成長させ、2021年に会社をバイアウト。その後も創業会社とグループ会社で代表を兼任。
SAPエンジニア・コンサルタント歴は10年以上。

一緒に「SAPラボ」を盛り上げてくれる副業ライター(SAP経験者)を募集してますので、お問い合わせよりお願いします!

この記事のポイント