• 締切済み

JCLでの文字列操作

jclで、ある変数に取得した文字列(例えばabcdefg)の最初の4文字だけとって、それに別の文字列(例えば20090716)をくっつける・・・なんてことはできないでしょうか? 手元にマニュアルがなく、ネットでいろいろ検索しているのですが、調べることができずに困っています。よろしければお願いします。

みんなの回答

回答No.4

コマンドプロシジャとかいうモノでJCLを書き換えて実行、てなことをむかーしやってた記憶があります。 外していたらごめんなさい。

  • lv4u
  • ベストアンサー率27% (1862/6715)
回答No.3

JCLのみでは無理です。例えば、PL/I等のプログラムと、プログラムカタログプロシージャの合わせ技、あるいは全てのJCLをプログラムで生成すれば可能ですね。(これがやりたいことか不明ですが) 1)実行したいJCLの必要な部分をカタログに登録する  JCLで置き換えたい部分を"&DSN"のように記述しておく。 2)PL/I等のプログラムで、置き換える文字列を取得する  プログラムで、置き換えたい文字列を取り出す。 3)カタプロのパラメータに変数名を指定して、JCLを生成する  例えば以下のような感じ  //STEP01 EXEC CATPRC,DSN=ABC 4)生成したJCLを実行する  できあがったJCLをなんらかの方法でシステムのキューに渡す。例えば、JCLをどっかのファイルに書き込んでおいてシステムコマンドを実行するなど。実行時に、システムのほうで、パラメータが置き換えられてJOBが実行される。 カタログプロシージャを作るのがいやなら、全てのJCLをプログラムで生成すればいいのですが、JCLの変更時に、プログラム修正になってしまいます。

  • notnot
  • ベストアンサー率47% (4900/10359)
回答No.2

JCLの機能ではできません。 本当にやりたいことを具体的に書けば別の解決策があるでしょう。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

JCLてメインフレームコンピュータ(大型汎用機)で使われる Job Control Language の事ですか? //STEP1 EXEC PGM=PROG01,REGION=4096k //FILE1 DD DSN=XX.HHH.FILE みたいなやつ。 だとすると、JCL自体におっしゃるようなスクリプト的な機能はありません。  ※IBM(MVS,Z/OS)富士通(MSP)には無いです。

関連するQ&A

専門家に質問してみよう