【SAP ABAP】プログラムのテキストシンボル、選択テキストの一括取得ツールを自作!

登場人物紹介

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

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

この記事を読むメリット

  • ABAPプログラムで定義されているテキストシンボルや選択テキストを一括で取得できる便利ツールを作成することができます。
レイナ

プログラムの中で定義されているテキストシンボルを一括で検索したいのに、どうやれば良いのか分からないわね…

博士

おそらくSAPではプログラムのテキストシンボルや選択テキストを検索するプログラムは無いのじゃ。

ワシが使っておるアドオンプログラムをコッソリ伝授するので使ってみるとよいぞ!

SAPの保守プロジェクト等では、プログラム内で”ある文字列”が使用されていないか確認したい場合があります。
その際にプログラムのテキストエレメント(テキストシンボルや選択テキスト)等の設定値も調べた方が良い場合もありますが、標準の機能だけでは良い調べ方は現状無さそうです…。

本記事ではそんな調査をする際に使えるツールとして、“プログラムに設定されているテキスト情報を取得できる”アドオンプログラムを紹介します。

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

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

【FI】

S/4HANAへのバージョンアップ支援(Jrコンサル可)

要スキル:
・FIの標準機能と会計業務に関する知識 ・FIのプロジェクトにおけるコンサルとしての業務経験 【尚可】 FI-AAの業務経験
月額単価:
~800,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
S/4HANAへバージョンアップに向けた、会計領域の要件定義を行っております。 要件定義後の移行設計や作業も行っていただく想定です。 ・現行の業務の整理 ・移行要件定義 ・現行のアドオン調査と設計 ・移行設計 ・移行作業 など

【PP】

メーカー向けSAP移行プロジェクト支援

要スキル:
・PPモジュールでのコンサルとしての業務経験 ・SAPプロジェクトにおける総合テストやユーザテストの対応経験 ・チームリーダーとしての経験
月額単価:
~1,500,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
ECCからS/4HANAへのバージョンアップを行っています。業務自体も見直し再構築する流れとなっており2026年の稼働に向けてプロジェクトが進んでおります。 ・インターフェース設計 ・ジョブ設計 ・総合テスト対応(不具合調査など含む) ・ユーザテスト対応(不具合調査など含む) など

【MM】

【SD】

製造業向けロジ領域の運用保守支援

要スキル:
・SDもしくはMMでのコンサルとしての業務経験 ・アドオン機能(ABAP)の調査経験 ・改善提案の経験
月額単価:
~900,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
フルモジュール稼働しているシステムにおける運用保守業務を担当頂きます。 ・顧客からのQA対応 ・不具合の調査や改善提案 ・顧客要望による機能拡張調査や実装~テスト など ※今後、S/4HANAへのバージョンアッププロジェクトも控えております。  そのプロジェクトにもアサイン頂く可能性がございます。

【BASIS】

【MM】

【SD】

製造業向け運用保守支援支援

要スキル:
・SDもしくはMMもしくはBASISでのコンサルとしての業務経験
月額単価:
~900,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
製造業のクライアント向けの運用保守業務を担当頂きます。 ・顧客からのQA対応 ・不具合の調査や改善提案 ・顧客要望による機能拡張調査や実装~テスト

【CO】

【FI】

【MM】

【PP】

【SD】

大手メーカー社向けSAP導入支援

要スキル:
・SAPコンサルとしてロジ領域もしくは会計領域での要件定義から本番稼働まで担当した経験
月額単価:
~1,400,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
複数の子会社を持つ大手メーカーでのSAP導入プロジェクトになります。 まずは数年かけ本社へのSAP導入を実施し、その後子会社へ展開する予定となります。 ・要件定義 ・プロトタイプの作成 ・アドオン設計 ・開発チームへの依頼や受け入れ等 ・総合テストやユーザテスト など

【FI】

商社向け基幹システムバージョン支援

要スキル:
(必須) SAP S/4HANA FIモジュールの保守開発経験(障害対応など) ABAP開発経験 (尚可) 商社関連案件の経験 リーダー経験
月額単価:
~1,000,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
SAPベースの基幹システムのバージョンアップ(S/4HANA1909⇒S/4HANA2023)に伴う調査を行っていただきます。 担当いただくモジュールはFIになります。機能毎の影響度や動作確認を行います。 また、SAP案件でのリーダー経験がある場合は上記のバージョンアップ調査ではなく 通常の保守チームにアサインいただく可能性もございます。(ユーザー窓口対応、問合せ調査・障害対応、マスタメンテナンス) バージョンアップ調査のチーム構成としては、SD、MM担当が1名、FI担当が1名となります。 そのため、基本的に1人称で調査を行い報告まで行っていただきます。 バージョンアップのスケジュール感 調査:2024年1月まで 実施:2024年2月から

【FI】

SAP運用業務支援

要スキル:
・SAPにおける運用保守経験(3年以上目安) ・FIまたはMMのユーザーとしての使用経験
月額単価:
~900,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
【作業概要】 現行SAP ECCからS/4 HANAへの移行試験が進行中です。 【作業内容】  現行SAP ECCのAA、FI、MMモジュールにおける運用業務  ・問合せ対応  ・障害対応  ・運用オペレーション

【FI】

SAP導入プロジェクト支援

要スキル:
・FI領域の要件定義書から基本設計書おこしの経験 ・顧客とのコミュニケーションして業務を進めた経験
月額単価:
~1,200,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
ロジ・会計領域をS/4HANAへ刷新に向けた会計領域の基本設計フェーズ作業を行っていただきます。

【FI】

光学機器 S/4HANA導入テスト支援

要スキル:
・FIコンサルとして要件定義~本稼働までの経験 ・FI(AP/AR)の機能、カスタマイズの知識 ・アドオン設計(開発除く)~各種テスト
月額単価:
~1,500,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
生産基幹システムのS/4新規導入プロジェクトです。 既存の会計システムとの連携→ロジデータを送信(AP/AR)と原価計算が対象となりUAT移行を担当頂きます。 スケジュール感:  2024年10月~2024年12月:結合テスト  2025年1月:UAT、移行  2025年2月:サービスパーツ 本稼働  2025年3月以降:展開

【CO】

一般消費財メーカーS/4 HANAバージョンアップ

要スキル:
<必須スキル> ・管理会計(CO)の全般の理解と実装経験、特にCO-PA(収益性分析)に関連した実装経験 ・顧客の業務要件の把握ととりまとめ、それに基づく実装方法検討、S/4での設定・カスタマイズ、アドオン要件の切り出し ・開発要件に関する基本設計、単体テスト仕様書作成、および単体テストの実施経験 ・SAPの予算機能に関する知見 ・課題に対する問題分析および解決策を的確に導いた経験 <あれば尚可> ・CO-PAの原価ベースから勘定ベースへの移行の経験 ・外部からの収益性データに関する取り込み経験 ・顧客が有しているSAP外のシステムとの関係性の整理、適切なソリューション検討経験 ・CO-PC(原価計算)、品目元帳の領域についての実装経験 ・原価周りに関する他モジュール(MM、PPなど)と原価との関わりについての知見
月額単価:
~1,600,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
<業務内容> ・CO-PA領域に関する業務要件の整理と定義書への取りまとめ ・基本設計書の作成 ・開発物の単体テスト受け入れ ・導入プロジェクトでの一連のテスト作業 ・データ移行に関する要件の取りまとめとデータ移行の実施
この記事のポイント

調べられるテキスト情報

当ツールで調べられるテキスト情報はそれぞれのプログラムに紐付く以下の情報を取得することが可能です。

  • プログラムのタイトル
ABAPプログラムのタイトル
  • プログラムのテキストシンボル
ABAPプログラムのテキストシンボル
  • プログラムの選択テキスト
ABAPプログラムの選択テキスト
  • 上記テキストの翻訳情報
    多言語対応されているシステムではプログラムのテキスト情報は複数言語で設定されている可能性があります。(T-CODE:SE38のヘッダメニューの「ジャンプ>翻訳」から参照できます。)
ABAPプログラムの翻訳情報

使用上の注意点

当機能はプログラムのタイトル・テキストシンボル・選択テキストのみが調査可能です。
プログラムで平文で記載されている文字列は対象外となります。

博士

実際のプロジェクトでの調査では、同時にプログラムの中の文字列検索も必要なことが多いのじゃ。
その方法は以下で解説しているので要チェックだぞい!

便利ツールのプログラム

博士

早速じゃが、アドオンプログラムを教えちゃうぞい!

博士

T-CODE:SE38から新規プログラムを作成して以下コードをコピペして使用するのじゃ!

プログラム
REPORT zxxxxxxx.    " 実際のプログラム名に修正してください

TABLES :rs38m,textpool.

* データ定義
DATA : BEGIN OF i_tab OCCURS 0,
         name  TYPE  progname,
         langu TYPE  t002-spras.
         INCLUDE STRUCTURE textpool.
DATA : END OF i_tab.

DATA : texts  LIKE textpool OCCURS 50 WITH HEADER LINE,
       w_text LIKE textpool.

DATA : it          LIKE LINE OF i_tab OCCURS 0,
       lines       TYPE i,
       myalv       TYPE REF TO cl_salv_table,
       myfunctions TYPE REF TO cl_salv_functions_list,
       mycolumns   TYPE REF TO cl_salv_columns_table,
       langu       TYPE t002-spras.

* 選択画面
  SELECT-OPTIONS :
    s_langu FOR langu,
    s_zprg  FOR rs38m-programm.

* 主処理
START-OF-SELECTION.

  SELECT spras
    FROM t002
    INTO TABLE @DATA(it_langu)
   WHERE spras IN @s_langu.

  SELECT progname
    FROM reposrc
    INTO i_tab-name
   WHERE progname IN s_zprg.

    LOOP AT it_langu INTO DATA(wa_langu).
      REFRESH texts.

      READ TEXTPOOL i_tab-name INTO texts LANGUAGE wa_langu-spras.

      LOOP AT texts INTO w_text .
        MOVE-CORRESPONDING w_text TO i_tab.
        i_tab-langu = wa_langu-spras.
        APPEND i_tab TO i_tab.
      ENDLOOP.
    ENDLOOP.

  ENDSELECT.

  it[] = i_tab[].

  TRY.
      CALL METHOD cl_salv_table=>factory
        IMPORTING
          r_salv_table = myalv
        CHANGING
          t_table      = it[].
    CATCH cx_salv_msg.
  ENDTRY.

  DESCRIBE TABLE i_tab LINES lines.

  MESSAGE s001(00) WITH lines '件見つかりました'. 

  mycolumns = myalv->get_columns( ).
  mycolumns->set_optimize( ).
  myfunctions = myalv->get_functions( ).
  myfunctions->set_all( ).

  CALL METHOD myalv->display.

選択項目の「s_langu」や「s_zprg」は必要に応じて選択テキストを設定して下さい。

(※SE38のプログラム編集画面から「ジャンプ->テキストエレメント」で表示可能)

選択テキストの設定
博士

昔拾ったプログラムを必要なところだけを改変したので変数定義やデータ取得の構文にバラつきがあるのじゃ~
あくまで開発機で試せる便利ツールという位置付けで使うとよいぞ!

便利ツールの使い方

選択画面で対象の言語とプログラム名を選択して実行します。
実行結果は以下のようにALV形式で一覧で出力され、テキスト列にプログラム固有に設定されているテキスト情報が出力されます。

プログラムのテキストシンボル、選択テキストの一括取得ツールの使用方法(選択画面と実行結果)

表示項目「ID」について

ID列の値はテキストの種別を現しています。

  • R:プログラムのタイトル
  • S:選択テキスト
  • I:テキストシンボル
博士

あとはALVの結果をダウンロードしてExcelで該当の文字列を探すもヨシ。フィルター機能を使って文字列を探すもヨシなのじゃ!

博士

プログラムに紐付くテキスト情報を取得する便利ツールの作り方は以上じゃ~!

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

【FI】

S/4HANAへのバージョンアップ支援(Jrコンサル可)

要スキル:
・FIの標準機能と会計業務に関する知識 ・FIのプロジェクトにおけるコンサルとしての業務経験 【尚可】 FI-AAの業務経験
月額単価:
~800,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
S/4HANAへバージョンアップに向けた、会計領域の要件定義を行っております。 要件定義後の移行設計や作業も行っていただく想定です。 ・現行の業務の整理 ・移行要件定義 ・現行のアドオン調査と設計 ・移行設計 ・移行作業 など

【PP】

メーカー向けSAP移行プロジェクト支援

要スキル:
・PPモジュールでのコンサルとしての業務経験 ・SAPプロジェクトにおける総合テストやユーザテストの対応経験 ・チームリーダーとしての経験
月額単価:
~1,500,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
ECCからS/4HANAへのバージョンアップを行っています。業務自体も見直し再構築する流れとなっており2026年の稼働に向けてプロジェクトが進んでおります。 ・インターフェース設計 ・ジョブ設計 ・総合テスト対応(不具合調査など含む) ・ユーザテスト対応(不具合調査など含む) など

【MM】

【SD】

製造業向けロジ領域の運用保守支援

要スキル:
・SDもしくはMMでのコンサルとしての業務経験 ・アドオン機能(ABAP)の調査経験 ・改善提案の経験
月額単価:
~900,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
フルモジュール稼働しているシステムにおける運用保守業務を担当頂きます。 ・顧客からのQA対応 ・不具合の調査や改善提案 ・顧客要望による機能拡張調査や実装~テスト など ※今後、S/4HANAへのバージョンアッププロジェクトも控えております。  そのプロジェクトにもアサイン頂く可能性がございます。

【BASIS】

【MM】

【SD】

製造業向け運用保守支援支援

要スキル:
・SDもしくはMMもしくはBASISでのコンサルとしての業務経験
月額単価:
~900,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
製造業のクライアント向けの運用保守業務を担当頂きます。 ・顧客からのQA対応 ・不具合の調査や改善提案 ・顧客要望による機能拡張調査や実装~テスト

【CO】

【FI】

【MM】

【PP】

【SD】

大手メーカー社向けSAP導入支援

要スキル:
・SAPコンサルとしてロジ領域もしくは会計領域での要件定義から本番稼働まで担当した経験
月額単価:
~1,400,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
複数の子会社を持つ大手メーカーでのSAP導入プロジェクトになります。 まずは数年かけ本社へのSAP導入を実施し、その後子会社へ展開する予定となります。 ・要件定義 ・プロトタイプの作成 ・アドオン設計 ・開発チームへの依頼や受け入れ等 ・総合テストやユーザテスト など

【FI】

商社向け基幹システムバージョン支援

要スキル:
(必須) SAP S/4HANA FIモジュールの保守開発経験(障害対応など) ABAP開発経験 (尚可) 商社関連案件の経験 リーダー経験
月額単価:
~1,000,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
SAPベースの基幹システムのバージョンアップ(S/4HANA1909⇒S/4HANA2023)に伴う調査を行っていただきます。 担当いただくモジュールはFIになります。機能毎の影響度や動作確認を行います。 また、SAP案件でのリーダー経験がある場合は上記のバージョンアップ調査ではなく 通常の保守チームにアサインいただく可能性もございます。(ユーザー窓口対応、問合せ調査・障害対応、マスタメンテナンス) バージョンアップ調査のチーム構成としては、SD、MM担当が1名、FI担当が1名となります。 そのため、基本的に1人称で調査を行い報告まで行っていただきます。 バージョンアップのスケジュール感 調査:2024年1月まで 実施:2024年2月から

【FI】

SAP運用業務支援

要スキル:
・SAPにおける運用保守経験(3年以上目安) ・FIまたはMMのユーザーとしての使用経験
月額単価:
~900,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
【作業概要】 現行SAP ECCからS/4 HANAへの移行試験が進行中です。 【作業内容】  現行SAP ECCのAA、FI、MMモジュールにおける運用業務  ・問合せ対応  ・障害対応  ・運用オペレーション

【FI】

SAP導入プロジェクト支援

要スキル:
・FI領域の要件定義書から基本設計書おこしの経験 ・顧客とのコミュニケーションして業務を進めた経験
月額単価:
~1,200,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
ロジ・会計領域をS/4HANAへ刷新に向けた会計領域の基本設計フェーズ作業を行っていただきます。

【FI】

光学機器 S/4HANA導入テスト支援

要スキル:
・FIコンサルとして要件定義~本稼働までの経験 ・FI(AP/AR)の機能、カスタマイズの知識 ・アドオン設計(開発除く)~各種テスト
月額単価:
~1,500,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
生産基幹システムのS/4新規導入プロジェクトです。 既存の会計システムとの連携→ロジデータを送信(AP/AR)と原価計算が対象となりUAT移行を担当頂きます。 スケジュール感:  2024年10月~2024年12月:結合テスト  2025年1月:UAT、移行  2025年2月:サービスパーツ 本稼働  2025年3月以降:展開

【CO】

一般消費財メーカーS/4 HANAバージョンアップ

要スキル:
<必須スキル> ・管理会計(CO)の全般の理解と実装経験、特にCO-PA(収益性分析)に関連した実装経験 ・顧客の業務要件の把握ととりまとめ、それに基づく実装方法検討、S/4での設定・カスタマイズ、アドオン要件の切り出し ・開発要件に関する基本設計、単体テスト仕様書作成、および単体テストの実施経験 ・SAPの予算機能に関する知見 ・課題に対する問題分析および解決策を的確に導いた経験 <あれば尚可> ・CO-PAの原価ベースから勘定ベースへの移行の経験 ・外部からの収益性データに関する取り込み経験 ・顧客が有しているSAP外のシステムとの関係性の整理、適切なソリューション検討経験 ・CO-PC(原価計算)、品目元帳の領域についての実装経験 ・原価周りに関する他モジュール(MM、PPなど)と原価との関わりについての知見
月額単価:
~1,600,000円 / 月
稼働場所:
東京都
稼働率:
100%
作業内容:
<業務内容> ・CO-PA領域に関する業務要件の整理と定義書への取りまとめ ・基本設計書の作成 ・開発物の単体テスト受け入れ ・導入プロジェクトでの一連のテスト作業 ・データ移行に関する要件の取りまとめとデータ移行の実施

★★★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経験者)を募集してますので、お問い合わせよりお願いします!

この記事のポイント