ビジネス・インテリジェンス[BI] のリーディング・カンパニー | SAS Japan SAS Japan
「THE POWER TO KNOW(知る力)」を提供するビジネス・インテリジェンス[BI]のリーディング・カンパニー | SAS Japan  トレーニング マニュアル ユーザー事例 パートナー ユーザー会 求人情報 資料請求・ダウンロード
Home News Products & Solutions Events & Seminer Customer Support Company www.sas.com
 

メインフレーム環境で区分編成データセットのメンバ名を出力する方法

[OS]MVS
[リリース] 6.07, 6.08, 6.09E
[キーワード] SOURCE

[質問]

メインフレーム上の区分編成データセットのメンバ名を、SASデータセットに出力できますか。

[回答]

メインフレーム版のSASには、SOURCE、PDSCOPY、TAPELABELなど、システム運用に役立つ便利なユーティリティプロシジャがあります。

上記質問の場合には、SOURCEプロシジャとDATAステップを利用して、メンバ情報をSASデータセットに出力することができます。
以下にSOURCEプロシジャを使用した、サンプルマクロプログラムを示します。

/*   使用方法 */
%pdsdir(区分データセット名,作成するSASデータセット名)

/*マクロプログラム*/
%macro pdsdir(pds, outds) ;
  filename pdsdd "&pds" disp=shr ;

  proc source indd=pdsdd nodata noprint
              dirdd=sasparm  ;
  run ;

  filename pdsdd clear ;

  data &outds ;
    infile sasparm ;
    input member $8. ttr pib3. ind pib1. @ ;
      datalen = 2 * mod(ind,32) ;
      if datalen=30 then do ;
        input ver pib1.  mod pib1.  blank pib2.
              create pd4. changed pd4. hh pk1.
              mm pk1. size pib2. init pib2.
              mod1 pib2. userid $8. ;
        jcreate = datejul(create) ;
        jchange = datejul(changed) ;
        format jcreate date7. jchange date7. ;
      end ;
  run ;
  proc sort data=&outds ; by member ;
  run ;
%mend ;

注意:ホスト環境により、$マークを\マークに変更する必要があります。

The Power to Know
   Contact Us     Terms of Use & Legal Information     Privacy Statement     個人情報の取り扱いについて   Copyright © 2008 SAS Institute Inc. All Rights Reserved