【SAP小ワザ】複数プログラムから文字列を一括検索する方法

登場人物紹介

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

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

レイナ

“ある文字列”がSAPのどこで使われているかを調べたいんだけど、どのプログラムでその文字列が使われているんだろう…

博士

そんな時に使える、便利なSAP標準プログラムがあるのじゃ!

この方法を使えば複数のプログラムを横断して文字列を検索できるぞい!

この記事のポイント

はじめに

SAPの保守プロジェクトでは以下のような要件が上がることがあります。

  • 会社内で使用している用語が変わり、SAPの画面上でも表示を変えたい
  • ある項目の定義を変えたいので影響を調査したい

などなど。

その要件への影響調査をする時に「詳細設計書などのドキュメント内を検索すれば大丈夫!」というプロジェクトは少ないのが現状だと思います。

影響調査の観点の一つとして、用語や項目名などの対象の文字列をどのプログラム内で使用しているかを調査することが有効である場合があります。今回はその方法を解説します!

文字列検索の標準プログラム

プログラム名

T-CODE:SE38から以下のプログラムを実行することで、複数プログラムを横断して文字列検索することができます。

文字列検索プログラム

  • RPR_ABAP_SOURCE_SCAN
  • RS_ABAP_SOURCE_SCAN

※いずれも全く同じ機能です。

使用方法

検索画面

よく使う項目だけ解説します。

ABAPプログラムの文字列検索プログラムRPR_ABAP_SOURCE_SCANの使用方法(検索画面)

入力項目

①検索文字列

検索したい文字列を入力。

②プログラムの条件

検索したいプログラムの条件を入力。
※アドオン機能を調べたい時はプログラム名を「Z*」と入力したくなりますが、アドオン機能でもsmartformsのようにZ始まりではないプログラムもあることに注意!

③パッケージ

プログラムの中でも検索したいパッケージがあればパッケージ名を入力。

④汎用グループ

ある汎用グループに属する汎用モジュールを検索したい場合に入力。

⑤クラス/インターフェイス

検索したいクラス/インターフェイスを入力。

⑥前後表示行数

文字列が使用されている行の前後の行も検索結果として出力したい場合に、前後に出力させる行数を入力。

⑦インクルード展開

検索対象のプログラムで呼び出されているインクルードプログラムも検索対象としたい場合にチェック。

⑧コメント行を無視

コメント行を無視したい場合にチェック。

検索結果画面

プログラム毎に文字列が使われている行が表示されます。
検索結果をローカルファイルにダウンロードすることもできます。Excelで確認し調査結果としてまとめる時に便利です。

ABAPプログラムの文字列検索プログラムRPR_ABAP_SOURCE_SCANの使用方法(検索結果画面)

使用上の注意点

当機能はプログラム内で平文で記載されている文字列のみが検索可能です。
プログラムに設定されている、テキストシンボルや選択テキスト等は検索対象外となります。

博士

テキストシンボルや選択テキストを一括で調査したい場合は以下を要チェックじゃ!

補足:プログラム内を検索するだけでは不十分なことも

実際の調査ではプログラム内の文字列を検索するだけでは不十分ということも多々あります。
調査観点の例としては以下も考えられるので参考にしてみて下さい。

  • カスタマイズに設定されている値
  • テーブルの項目名
  • マスタ系テーブルの項目に設定されている値
  • メッセージの文言
  • T-CODE:LSMWやExcelマクロ等のツールでデータ投入をマニュアル化している場合、そのフォーマットに設定されている値
  • 各種ドキュメント(設計書や定義書やマニュアル等)内のテキスト

などなど

博士

複数プログラムから文字列を一括検索する方法の解説は以上じゃ!

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

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

SAPラボのライターの特徴 

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

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

募集要項

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

ご応募/お問合せ先

info@sap-career.com

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

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

この記事を書いた人

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

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

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

この記事のポイント