見出し画像

2020/06/03 今日の積み上げ

SAP研修3日目

◇SAP環境:
・資料の置いてあるフォルダを開いたり、ECCのSAPを使用するためにつなぐのがVPNで、SAPの操作をする画面がGUI。
・プログラムIDはZかYから始めり、Y始まりが練習、Z始まりが現場で使われたりする。

◇データ型(ABAP編):
C:文字型
D:日付型
F:浮動小数点
I:整数
N:数字文字
P:パック数、10進数
T:時刻
X:16進数
STRING:文字列
※小数点を表示する場合 変数名(整数の桁) TYPE P DECIMALS ?⇦少数点以下の桁

◇コメントアウト(ABAP編):
基本は頭に*&と打つ。
コメントアウトしたい行を指定し、ctrlボタン + [ , ]ボタン

◇改行(ABAP編):
/, で改行できる

◇基本出力(ABAP編):
例)
DATA NUM(10) TYPE C.
NUM = 'ABCDE'.
WRITE NUM.

これにより表示画面には…
ABCDE が表示される。

◇複数データの基本出力(ABAP編):
複数の場合は「:」と「、」を使う
例)
DATA : STR1(2) TYPE C VALUE 'AB' ,
    STR2(2) TYPE C VALUE 'CD',
    STR3(2) TYPE C VALUE 'EF'.
WRITE : STR1,STR2,STR3.

◇システム専用データ:
SPACE:空白
SY-SUBRC:リターン値
SY-UNAME:ログインユーザー
SY-DATUM:処理日付
SY-UZEIT:処理時間
SY-TCODE:トランザクションコード

◇LIKEでの宣言:
例)
DATA : STR LIKE T001-BURKS.

※LIKEでは当然文字数指定ができない
※TYPEの後ろはデータ型CやDとかで使うが、LIKEはもともとあるテーブル変数の型を参照するときに使う。(LIKEの後ろにドメインは使えない)
※現場ではほとんど使わない。

◇CONSTANTSで定義:
「CONSTANTS」でDATAと同じように定数を定義できる(デバッグ時編集できないため定数の時に使う
例)
CONSTANTS :
C_DATA1(5) TYPE C VALUE 'ABCDE',
C_DATA2(2) TYPE C VALUE 'PG'.
WRITE :
DATA1,DATA2.

◇テキストシンボルの登録:
メニューバーから「ジャンプ」「テキストエレメント」「テキストシンボル」からテキストを登録することができる(あらかじめ変数の中身を登録しておくようなもの)
例)
「T01」にテキスト「テキスト」を登録
「T02」にテキスト「テスト」を登録
WRITE :
TEXT-T01,
TEXT-T02.
これにより表示画面には…
テキスト テスト が表示される。
日本語の場合はテキストシンボルで登録したほうがいい

◇構造の定義:
例)
TYPES : (TYPESを使って構造の型を宣言)
BEGIN OF TYP_DATA1,
KEY1(5) TYPE C,
KEY2(5) TYPE C,
END OF TYP_DATA1.

DATA : GST_DATA1 TYPE TYP_DATA1.
(TYPESで宣言した型をDATAで宣言することで変数(作業領域)として使用できる)

GST_DATA1-KEY1 = 'ABC'.
GST_DATA1-KEY2 = 'DEF'.
(作業領域の使用方法は「変数名-項目名」で各項目の値を参照できる)

WRITE :
GST_DATA1-KEY1,
GST_DATA1-KEY2.

◇CONCATENATEの結合(ABAP編):
例)
DATA :
GL_DATA1(5) VALUE 'A B C',
GL_DATA2(5) VALUE 'D E F',
GL_DATA3(10).

CONCATENATE GL_DATA1 GL_DATA2 INTO GL_DATA3.

WRITE : GL_DATA3.
これにより表示画面には…
A B CD E F が表示される。
(スペースも1文字として扱われるためちょうど10文字)

加えて
CONCATENATE 
GL_DATA1
GL_DATA2
INTO GL_DATA3 SEPARATED BY SPACE 追記することにより間にスペースを作ったり、文字を挟むこともできる。この場合表示結果は、
A B C D E となる。

◇PARAMETERSの定義(ABAP編):
例)
PARAMETERS : P_VAR1(5) TYPE C.
WRITE : P_VAR1.
これにより表示画面には…
P_VAR1 =【 】
と表示され、クライアント側で入力できるようになり、値を入力するとその値が改めて表示される。

PARAMETERS : P_VAR1(5) TYPE C DEFAULT 'abcde'.
WRITE : P_VAR1.
デフォルトを追記することにより
P_VAR1 =【abcde】
初期値を出力させることができる。(入力すれば変更可能)
※小文字を入力し実行すると自動的に大文字になる。

PARAMETERS : P_VAR1(5) TYPE C DEFAULT 'abcde' LOWER CASE.
WRITE : P_VAR1.
LOWER CASEを追記することにより実行しても小文字のままにできる。

PARAMETERS : P_VAR1(5) TYPE C
DEFAULT 'abcde' LOWER CASE OBLIGATORY.
WRITE : P_VAR1.
OBLIGATORYを追記することにより入力必須にできる。

◇CHECKBOX(ABAP編):
例)
PARAMETERS : P_VAR1(5) TYPE C AS CHECKBOX.
WRITE : P_VAR1.
これにより表示画面には…
□P_VAR1
とチェックボックスが表示され、チェックをつけて実行すると結果に'X'が表示される。

◇画面項目名の設定:
メニューバーから「ジャンプ」「テキストエレメント」「選択テキスト」から項目名を編集することができる(あらかじめ変数の中身を登録しておくようなもの)
P_VAR1 の項目名を「入力項目」などの名前に編集すると、
例)上記のパラメーターの場合
入力項目 =【 】 と表示させることができる

PARAMETERS : P_VAR1(5) LIKE T001-BUKRS.(テーブルの項目名T001-BUKRSを参照する)
WRITE : P_VAR1.
上記の選択テキストの画面にて、ディクショナリ参照にチェックをつけて保存すると自動的に参照したコードからテーブル項目名が設置される。
会社コード =【 】 と表示させることができる

◇SELECT-OPTIONSの定義(レンジテーブル)(ABAP編):
DATA :
W_VAR1 LIKE T001-BUKRS.()
PARAMETERS : P_VAR1 LIKE T001-BUKRS.
SELECT-OPTIONS S_VAR1 FOR W_VAR1.
WRITE:
P_VAR1.
これにより表示画面には…
S_VAR1  【 】to【 】
が表示され範囲指定も可能となる

◇ブロックの作成:
SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-T01
 PARAMETERS :
 P_DATA TYPE I.
SELECTION_SCREEN END OF BLOCK BLK1.
これによりパラメーター表示がTEXT-T01という項目名のブロック内で記載される。

◇出力位置:
変数の前に数字を入力すると数字の文字数分開けた位置から変数が表示される。

以上。

この記事が気に入ったらサポートをしてみませんか?