メインフレームヒント集

 

汎用系初心者のために、今までの経験から書いてみました。

経験したホスト汎用機
富士通 M、GSシリーズ PRIMEFORCE OS:W/XSP
終了は[×](閉じる)
 
ヒント集
富士通メインフレーム 制御プログラム
エディタ コマンド
開発、運用支援ツール エミュレータ
その他  
 
エラー エラー内容
富士通メインフレーム
今あえて世に問うレガシーシステム!
OS
富士通ハード、ソフトの歴史
汎用機用語
データ管理
新しいシステム部に配属された時のシステム資源分析
 
制御プログラム
SCF(中大型用FSP系)
JCL(中大型用FSP系)
JCL/SORT(中大型用FSP系)
CL(オフコンESP系)
  
 
エディタ
PFD(中大型用FSP系)
EDTFILE(オフコンESP系)
 
 
 
コマンド
操作コマンド(中大型用FSP系)
操作コマンド(オフコンESP系)
FIMPORT、FEXPORT
MLOG
 
 
 
 
開発、運用支援ツール
IFD(画面フォーマット定義体)
EXCIDM(対話データベース操作)
 
 
 
エミュレータ
エミレータを起動したら初期画面が出ず、黒い画面のままになっている。
エミュレーターで「無効な入力です」と表示されて入力できません。 
フルスクリーンを元に戻すには? 
実行キーが[Shit]+[Enter]で面倒なので、[Enter]のみに変更したい 
6680エミュレータ設定 
 
 
 
その他
クリエイトモードとは?
  
  
  
  
  
  
 



 
■富士通メインフレーム


 今あえて世に問うレガシーシステム!
いまさらCOBOLでも無かろうなと思いつつ、
「汎用系プログラム開発」のコーナーを立ち上げて見ました。

オープン系全盛の今日ではあるが、メインフレームが全く無くなった訳ではなく、手堅いシステムとしてその存在感は衰えてはいない。(と思うが?)
銀行は手堅いので、いまだCOBOLが主流です。

オープン系の弱点は、
WindowsのOSはコロコロ変わり、ソフトはバージョンアップが激しい。
数年前に作ったソフトはもう古く、システム別にソフトが違う事態も起こり、古いソフトのメンテナンスも出来ない事もなりかねない。

今現在は最強ソフトでも10年以上たてば古くなっている。
dbMAGIC、Delphi、Lotus 1-2-3、その他数知れず。
10年以上たてばメンテできなく、システムの作り直しも多い。

いつかサポート対象外になる怖れのあるWindowsソフトでは企業としての安定感がない。

とは言え、
時代の波には乗らなくてはならず、いつ全面的にOPEN系に移行するか、 もう少し待って様子を見るか(メインフレーム時代が再度訪れたりして?)

何かの機会で、新システムを開発してOPEN系に移行しようとする企業も多いと思います。

開発費用とシステム要員の問題もあり、日夜悩み続けているシステム部長も多い思いかも?

と言うことで、
新入社員COBOLERのために、この「汎用系プログラム開発」のサイトを 立ち上げました。

一度に全てUP出来ないので、古い資料を再読しつつ随時更新していきます。

(追)
アクセス分析をしてみると、COBOL、JCL、PFD、FIMPORTの検索キーが予想外に多かったので、よりいっそう充実していきます。



 OS
●OSIV/MSP
  富士通の大型汎用計算機用のオペレーティングシステム。

●OSIV/XSP
  富士通の中・大型汎用計算機用のオペレーティングシステム。
   OSIV/X8 FSP (中・大型用)と、
   OSIV/ESP V (中型、オフコン用)が1994年に一本化された。


 富士通ハード、ソフトの歴史

FACOMは「Fuji Automatic Computer」の略

1954.10 リレー式自動計算機「FACOM100」(国産初)
1958.10 リレー式自動計算機「FACOM128」
1959.10 パラメトロン式自動計算機「FACOM212」
1960.04 FACOM138A
1961.02 トランジスタ式大型汎用電子計算機「FACOM222」
1964.05 中型汎用機FACOM 230-30
1965.09 事務用小型機FACOM 230-10(国産ベストセラー機種)
1968.04 FACOM 230-60
1986.03 富士通:大型汎用機FACOM230-60(マルチプロセッサシステム)
1986.08 中〜大型汎用機FACOM 230-25,35,45(全面IC採用)
1970.04 
1970.06 超大型汎用機FACOM 230-75
1973.08 汎用機FACOM 230-8(仮想記憶方式採用)
1974.11 汎用機Mシリーズ
1976.01 超大型汎用機FACOM M-190
1978.01 超大型汎用機FACOM M-200(世界最高速)
1978.01 超大型汎用機FACOM M-200(世界最高速)
1979.04 中型汎用機FACOM M-130F,140F,150F,160F
1980.05 日本語ワードプロセッサ「OASYS100」
1981.05 パソコン「FM-8」(FMシリーズの第1弾)
1981.05 超大型汎用機FACOM M-380/382
1982.07 スーパーコンピュータ「FACOM VP-200/100」(国産初)
1985.11 超大型汎用機FACOM M-780(世界最高速)
1989.02 32ビット・ハイパーメディア・パソコン「FM TOWNS」
1989.06 汎用大型コンピュータ向けOS「MSP-EX」
1990.09 超大型汎用機FUJITSU M-1800(世界最高速)
1992.09 ベクトルパラレル型スーパーコンピュータ「VPP500シリーズ」(世界最高速)
1994.11 オールインワンモデルパソコン「FMV DESKPOWER」
1995.08 GS-8200 OSW/XSP FM-2500SV
1996.01 グローバルサーバ「GS8600シリーズ」
1996.02 超高速スーパーコンピュータ「VPP700シリーズ」
1998.01 FUJITSU GS8800モデルグループ
1999.03 
1999.07 64CPU 搭載の高性能UNIXサーバ「GP7000F モデル2000 」
2000.05 グローバルビジネスの展開に向けたサーバ戦略
     IAサーバを「PRIMERGY(プライマジー)」
     UNIXサーバを「PRIMEPOWER(プライムパワー)」
     マルチサーバ「PRIMEFORCE(プライムフォース)」
     IAワークステーション「CELSIUS(セルシアス)」
2000.05 メインフレーム「GS8000」一新
    エントリ機 「GS8200」→ 「GS8500FXモデルグループ」
    ミッドレンジ機 「GS8400」→ 「GS8500モデルグループ」
    ハイエンド機の「GS8900モデルグループ」
2000.11 マルチサーバー「PRIMEFORCE(プライムフォース)」
     PRIMEFORCE「モデル8007」★
     PRIMEFORCE「モデル8015」
2002.02 大型汎用コンピュータ『GS21 600』(世界最高速)
2002.06 ERPソフトウェア「GLOVIAソリューション」
     受注生産型業務モデル
     決算早期化業務モデル
     連結管理会計モデル
     固定資産業務モデル
     人事・総務ワークフローモデル
2005.06 IAサーバ「PRIMEQUEST」(プライムクエスト)
     PRIMEQUEST 400シリーズ」
2006.04 GS21 500モデル
2007.02 グローバルサーバ「GS21」シリーズ
     超大型機 GS21 1600モデル
     大型機  GS21 1400モデル
     中型機  GS21 200Aモデル
2010.04 IAサーバ「PRIMEQUEST 1000」
     GS21 1600モデルグループ
     GS21 1400モデルグループ
2011.07 ラインナップ
     PCサーバーPRIMERGY(プライマジー)
     UNIXサーバ SPARC Enterprise(スパーク・エンタープライズ)
     基幹IAサーバ PRIMEQUEST(プライムクエスト)
     メインフレーム Global Server(グローバルサーバ)GS21シリーズ
     オフィスコンピュータ PRIMERGY 6000(プライマジー 6000)
2015.04 GS21 2600モデルグループ
     GS21 2400モデルグループ
2018.04 メインフレーム「GS21」シリーズ刷新
     FUJITSU Server GS21 3600モデルグループ
     FUJITSU Server GS21 3400モデルグループ


 汎用機用語

富士通汎用機に関連のある用語を富士通用語集から抜粋しました。

●ADL(エイディーエル)Aim Description Language
 AIMの動作環境を定義するための言語。

●AIM(エイム) Advanced Information Manager
 富士通が開発した総合的なオンラインデータベースシステム。オンラインネットワーク機能、データベース機能、トランザクション管理機能などを結合したソフトウェア製品。

●AIM/RDB(エイム アールデービー) Advanced Information Manager Relational DataBase
AIM配下のリレーショナル型データベース。

●AIM/NDB(エイム エヌデービー) Advanced Information Manager Network DataBase
AIM配下のネットワーク型データベース。

●AIM/VSAM(エイムブイサム)Advanced Information Manager Virtual Storage Access Method
AIM配下で仮想記憶装置アクセス法(VSAM)を用いるデータ格納方式。

●DPCライブラリ(デーピーシー ライブラリ)
ホストコンピュータとパソコン間でプログラム間通信、ファイル転送、及びDB連携を実現する富士通のソフトウェア製品。(一般的な機能は、業務支援機能によりプログラムを作成することなく実現できます。また、富士通製のRDBにアクセス(抽出/更新)するためのRDA機能を提供。)

●EBCDIC(エビシディック) Extended Binary Coded Decimal Interchange Code グローバルサーバの英文字コード。

●EUC(イーユーシー)Extended UNIX Code
UNIX系のシステムで使用される文字コード。

●F6680エミュレータ
対話処理専用端末であるF6680端末の画面出力、対アプリケーションインターフェースを互換保証したパソコン上のエミレーションソフトウェア機能・製品。

●F6680端末
グローバルサーバの対話処理専用端末。

●FENICS(フェニックス) Fujitsu ENhanced Information & Communication Service
ネットワークサービスからアウトソーシングサービスまで、幅広いサービスを提供する富士通ネットワークサービス。

●FNA(エフエヌエー) Fujitsu Network Architecture
富士通が開発した独自のネットワークアーキテクチャ

●JCL(ジェーシーエル) Job Control Language
ジョブ制御文を記述する言語。

●JEF(ジェフ)
富士通が開発した日本語処理拡張機構。

●JSF(ジェーエスエフ)Job Stack File
XSPシステムに投入されたジョブを、スケジューリングのために格納しておくファイル。

●KUIN住所/氏名 (クイーン)
カナの住所及び氏名を漢字に変換するための富士通のソフトウェア製品。辞書と検索ライブラリで構成。

●MQN(メッセージキューノード) message queue node
オンライン処理において、ワークステーションからの入力メッセージや応用プログラムから発行されたメッセージが、応用プログラムの処理を待つために登録される場所。メッセージが格納されているメッセージファイルが登録される。

●MSU(エムエスユー) Main Storage Unit
主記憶装置のことである。MSUは、中央処理装置およびチャネル装置から転送された情報の主記憶へ書込み、または主記憶に書き込まれている情報を読み出してこれらの装置に転送する機能を持つ。

●NetCOBOL(ネットコボル)
富士通のCOBOL開発ツールであるPowerCOBOL97の後継製品。Microsoft .NET Frameworkをサポートする。

●NMC(エヌエムシー) Nihongo Multi Controller
端末制御装置。F6680端末やOPR(オフィスプリンタ)を制御する。

●OSIV/MSP(オーエスフォー エムエスピー) OSIV/Multi dimension System Products
富士通の大型汎用計算機用のオペレーティングシステム。

●OSIV/XSP(オーエスフォー エックスエスピー) OSIV/eXtended dimension System Products
富士通の中・大型汎用計算機用のオペレーティングシステム。

●PowerCOBOL97(パワーコボル97)
Windows上でCOBOLアプリケーションを開発するための、ビジュアルな開発環境を提供する富士通のソフトウェア製品。

●PRIMEFORCE(プライムフォース)
グローバルサーバ「GS8000シリーズ」とUNIXサーバ「PRIMEPOWER(プライムパワー)」とIAサーバ「PRIMERGY(プライマジー)」を組み合わせたマルチサーバ形態の情報システムを一台で実現する新しい情報システムの中核サーバです。

●PRIMEPOWER(プライムパワー)
富士通のグローバルブランド UNIXサーバのこと。

●PRIMERGY(プライマジー)
富士通のグローバルブランド IA(Intel Architecture)サーバのこと。

●ROM(リードオンリメモリ)read-only memory
通常状態でデータの読み取りのみができる記憶装置、または記憶素子。

●SAM(サム) Sequential Access Method
ファイルに対するアクセス法の一種で、順次にアクセスする方式。

●SCF(エスシーエフ)System Control Facility
XSPシステムの自動運転を実現する機能。

●SymfoWARE(シンフォウェア)
リレーショナルデータベースと、オブジェクト指向のデータベースを統一的に取り扱う。富士通のデータベースの概念、およびソフトウェア製品の総称。

●UNICODE(ユニコード)
世界中の文字を統一して表現するための文字コード。

●UNIXサーバ
富士通製品では、PRIMEPOWER(プライムパワー)、GP7000F、GP7000D、GP7000Sなどが該当する。

●UPS(ユーピーエス) uninterruptible power supply
無停止電源装置。交流入力が停電しても、ある一定時間、規定の交流出力を供給する装置。

●VSAM(ブイサム) Virtual Storage Access Method
直接アクセス記憶装置(DASD)の装置タイプに依存しないアクセス法。VSAMデータセットに対して順次、直接あるいはスキップ順にデータの読み込み、書き出し、追加、更新、あるいは削除を行うことができる統合されたアクセス法である

●VTAM(ブイタム) Virtual Telecommunication Access Method
応用プログラムと端末間の通信手段を提供するソフトウェアであり、ホスト計算機で動作する。FNA(Fujitsu Network Architecture)に基づく高度な通信ネットワークの管理機能を有する。

●WSMGR(ワークステーション マネージャ)
F6680/3270/5250エミュレーション機能、DUETファイル転送機能などを提供する富士通のソフトウェア製品。

●シフトJIS (Shifted JIS)
Windows等のパソコン上の日本語文字コード。

●ノイマン型計算機 Neumann type computer
プログラムとデータが主記憶装置に格納されており、命令の実行が逐次制御される計算機のこと。

●4GL(フォージエル)
CORBA、FORTRAN、PL/Iなどを3GLと呼び、高生産性を目指した言語を4GLと呼ぶ。当社製品ではYPS、CAPE、PowerAEなどが4GLに該当する。


 データ管理

●ハードディスクの容量
 今では古いが、HDDの機種にもよるが450MBのハードディスクの容量は
  1ディスク-----833シリンダー
  1シリンダー---20トラック
  1トラック-----27051バイト
  833×20×27051=450669660バイト--->450MBとなる


 新しいシステム部に配属された時のシステム資源分析

新しいシステム部に配属された時は、システム資源の分析を行う。

●VTOC
VTOC、LSTVOLでハードディスクの容量、ファイル名を調べる
ボリューム通番(VOL)を調べる
SYS000〜SYS016
000000〜000012

●ソースファイルを調べる
POファイルの分割型順編成又はGEMファイルでソースファイルは作られる。
SLIB、SRCなどのファイル名
プログラム本数、サブシステム調査をして全体のシステムを把握する。

●実行ファイルを調べる
POファイルの分割型順編成で実行ファイルは作られる。

ELIB、LOADなどのファイル名

●制御文を調べる
POファイルの分割型順編成で制御文は作られる。

SCF、JLIB、MACなどのファイル名
CLISTなどのファイル名

●プログラムの分析
軽く、ソースファイルを開いて、プログラムを分析する。
プログラムの作成技術レベル
プログラムの修正頻度
プログラムの本数、作成日付
プログラムの作成と修正担当者




 
■制御プログラム


 SCF(中大型用FSP系)

●SCF(エスシーエフ)System Control Facility
XSPシステムの自動運転を実現する機能。
-----------------------------------
●SYSOPN
コンピュータ立上げから、1日の処理
/ DEFINE SYSOPN,SKP=N,DEBUG=YES
PROC SYSOPN,TYPE=(KEEP)
*********************************************************
** ABCD システム オープン           **
*********************************************************
  MSG '<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>'
  MSG '<<<<< SYSTEM OPEN   >>>>'
  MSG '<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>'
  **
   COMMAND 'CHAM SYS.XSPMAC'
  **
*********************************************************
** 日付セット                  **
*********************************************************
***(トウジツ SET)****
  SET #YMD1=#SYSDATE
  SET #YY=#CHAR(#YMD1,2)
  SET #MD=#CHAR(#YMD1,5,B)
  SET #MM=#CHAR(#MD,2)
  SET #DD=#CHAR(#MD,2,B)
  COMMAND ':ESET X8.DATE1=#YMD1',ID=TOD1
  WAIT CMD(TOD1)
  COMMAND ':ESET X8.DATE2=#YY#MM#DD',ID=TOD2
  WAIT CMD(TOD2)
  COMMAND ':ESET X8.YYMM=#YY#MM',ID=TOD3
  WAIT CMD(TOD3)
  COMMAND ':ESET X8.YY=#YY',ID=TOD4
  WAIT CMD(TOD4)
  COMMAND ':ESET X8.MM=#MM',ID=TOD5
  WAIT CMD(TOD5)
  COMMAND ':ESET X8.DD=#DD',ID=TOD6
  WAIT CMD(TOD6)
*******************************************************
** IDCM START **
*******************************************************
  EVENT WTO(JYM410I)
  COMMAND 'START IDCM'
  WAIT WTO(JYM410I)
  WAIT INTV(10S)
*******************************************************
** AIM START **
*******************************************************
  EVENT WTO(JXAA25I)
  COMMAND 'START AIM'
  WAIT WTO(JXAA25I)
*******************************************************
** SIS START **
*******************************************************
  EVENT WTO(JXJ510I)
  =JALT JC=AIM,S,SIS,SISN=SIS00
  WAIT WTO(JXJ510I)
*******************************************************
** APG START **
*******************************************************
  EVENT WTO(JXJM02I)
  =JALT JC=AIM,S,APG,APGN=APG00
  WAIT WTO(JXJM02I)
*
  EVENT WTO(JXJM02I)
  =JALT JC=AIM,S,APG,APGN=APG01
  WAIT WTO(JXJM02I)
*******************************************************
** DCMS START **
*******************************************************
  EVENT WTO(JXJ550I)
  =JALT JC=AIM,START,DCMS
  WTO(JXJ550I)
*******************************************************
** 処理開始 **
*******************************************************
  MSG '<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>'
  MSG '<<<<< DAILY システム START >>>>>'
  MSG '<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>'
 
  COMMAND ':S ABCD0010'
 
  WAIT TIME(10.00)
  RDYJOB (ABCD0011)

  WAIT TIME(12.00)
  RDYJOB (ABCD0020)

  WAIT TIME(14.00)
  RDYJOB (ABCD0030)

  CALLPROC (ABCD0040,10)
 *
  RDYPROC (ABCD0042)

  JOBS (ABCD0041,10)
  JOBP (ABCD0100,10),
       (ABCD0200,10)

  EVENT WTO('MSG ABCD0050 NORMAL END')
  EVENT WTO('MSG ABCD0060 NORMAL END')
  =\\ ABCD0050
  =\\ ABCD0060
  WAIT WTO('MSG ABCD0060 NORMAL END')
  WAIT WTO('MSG ABCD0050 NORMAL END')

  =:SET WTO('MSG (ABCD0030 NORMAL END'),
       WTO('MSG (ABCD0040 NORMAL END'),
       CMD=':S (ABCD007S',ONCE,ID=TEMP


  JOBS (ABCD0300,10,,(PR1=\PR1,PR2=\PR2,PR3=\PR3))
**
/ IF SKP=Y,SKP02
SKP01: NOP
  JOBS (ABCD0310,10,,(PR1=\PR1,PR2=\PR2,PR3=\PR3))
SKP02: NOP
** 00003200
*******************************************************
** 処理終了 **
*******************************************************

  MSG '<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>'
  MSG '<<<< SYSCLS ジヨウケン ノ SET >>>'
  MSG '<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>'
  =:SET    END(AAA00010),
        END(BBB00010),
        CMD=':S SYSCLS',ONCE,ID=DCLS
  MSG 'MSG SYSOPN NORMAL END'
**
PEEND: NOP
PEND
/ DEFEND
-----------------------------------
●SYSCLS
コンピュータの落とし
/ DEFINE SYSCLS
PROC SYSCLS,TYPE=(KEEP)
*********************************************************
** ABCD システム クローズ           **
*********************************************************
  =STOP DV=L0
  WAIT INTV(10S)
  =CANCEL US=INT0
  =JALT JC=AIM,POST,END,P=ABCD00,MD=E
  =JALT JC=AIM,POST,END,P=ABCD01,MD=E
  WAIT INTV(10S)
  EVENT WTO(JXJ560I)
  =JALT JC=AIM,P,DCMS
  WAIT WTO(JXJ560I)
  WAIT INTV(20S)
  =JALT JC=AIM,P,APG,APGN=APG00
  EVENT WTO(JXJ530I)
  =JALT JC=AIM,P,SIS,SISN=SIS00
  WAIT WTO(JXJ530I)
  WAIT INTV(20S)
  EVENT WTO(JXAA26I)
  =STOP AIM
  WAIT WTO(JXAA26I)
  EVENT WTO(JYM426I)
  =STOP IDCM
  WAIT WTO(JYM426I)
  =STOP DV=C0
  STPAIF
  COMMAND 'STOP GSM'
  PRCF
  STPVTAM
  COMMAND ':START STPLIB'
  COMMAND ':C MRCE'
  COMMAND 'JALT MRCE,STOP'
  COMMAND ':C MTRREQDF'
  PPADIAE
  IF #SYSTIME>04.30,THEN=PEEND
  POFF /
  PEND
**
  MSG 'MSG SYSCLS NORMAL END'
**
  PEEND: NOP
  PEND
  / DEFEND


 JCL(中大型用FSP系)

●JCL(ジェーシーエル) Job Control Language
ジョブ制御文を記述する言語。
-----------------------------------
●JCL処理サンプル1
/EXPAN DEFINE MABC0010,RN=1
\ JOBG DBMENT,MULTI=1,REL
\ JOB MABC0010,ACCT='ABC1',RSTEP=\RN,MULTI,PRTY=(3,5)
\********************************************************
\*  在庫更新処理                   *
\********************************************************
\*
\ EX FDLT
\ FD LIST=DUMMY
\ FD COIN=*
/ F WWABCD31,000010
/ F WWABCD32,000011
/ FIN
\**
\ EX PABCD075
\ FD PRGLIB=DA,FILE=SYSELIB
\ FD  CF=DA,FILE=CALIB
\ FD SYSDBOUT=DA,VOL=WORK,TRK=(30,30,RLSE),SOUT=B
\ FD AIMPED=SSI,SUBSYS=(AIM,PDBCD075,APG00)
\ FD U31=DUMMY
\*
\ EX PABC2030
\ FD PRGLIB=DA,FILE=SYSELIB
\ FD  CF=DA,FILE=CALIB
\ FD SYSDBOUT=DA,VOL=WORK,TRK=(1,1,RLSE),SOUT=B
\ FD AIMPED=SSI,SUBSYS=(AIM,PDABC00A,APG00)
\ FD LIST=DUMMY
\ FD WWW51403=DA,VOL=000010,FILE=WWABCD31,TRK=(270,90,RLSE)
\*
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WWABCD31,DISP=DLT
\ FD SORTOUT=DA,VOL=000011,FILE=WWABCD32,TRK=(90,30,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
  SORT  KEYS=(01,2,CH,A)
  OMIT  COND=(84,1,EQ,C'1',OR,
         01,2,EQ,C'31',OR,
         01,2,EQ,C'10'),
         FORMAT=CH
  END

\ EX ABC12550
\ FD PRGLIB=DA,FILE=SYSELIB
\ FD  CF=DA,FILE=CALIB
\ FD SYSDBOUT=DA,VOL=WORK,TRK=(1,1),SOUT=B
\ FD C124C03B=DA,VOL=000011,FILE=WWABCD32
\ FD LIST0000=DA,VOL=WORK,SOUT=K,TRK=(100,100,RLSE)
\ FD LIST=DUMMY
\********************************************************
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WXYJANNZ,DISP=(DLT,LOCK)
\ FD SORTOUT=DA,VOL=000010,FILE=WWABCD39,TRK=(10,10,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
  SORT FIELDS=(188,1,CH,A,181,7,CH,A,128,6,CH,A,18,10,CH,A)
     INCLUDE COND=(189,1,EQ,C'1'),
     FORMAT=CH
  END
\**
\ EX FSET
\ FD PRGLIB=DA,FILE=SYS.X8SYSTEM.UTYEB
\ PARA BLKS=3600,RCDS=200
\ FD U01=DA,VOL=000010,FILE=WXYJANNZ,TRK=(10,10)
\ FD LIST=DUMMY
\*
\**************************************************************
\ EX ABC12290
\ FD PRGLIB=DA,FILE=SYSELIB
\ FD  CF=DA,FILE=CALIB
\ FD SYSDBOUT=DA,VOL=WORK,TRK=(1,1),SOUT=B
\ FD C124C03B=DA,VOL=000010,FILE=WWABCD39
\ FD C224C03C=DA,VOL=000012,FILE=WXYJANNX,TRK=(100,10,RLSE)
\ FD LIST=DUMMY
\ FD WXYAM010=DA,FILE=(WXYPUMB010,OT)
\ FD UIN=*
0001
\*
\*
\ EX FCPY
\ PARA / FCPY IN=U01,OUT=U05,COUNT=YES
\ FD U01=DA,VOL=000011,FILE=WWWACD12
\ FD U05=DA,VOL=000010,FILE=(WXYJAERR,AD),DISP=LOCK
\ FD LIST=DUMMY
\**EX *
\**PAUSE !!!!!!!! TEST !!!!!!!!!
\ EX PABC123B
\ FD PRGLIB=DA,FILE=SYSELIB
\ FD  CF=DA,FILE=CALIB
\ FD SYSDBOUT=DA,VOL=WORK,TRK=(1,1),SOUT=B
\ FD U30=DA,VOL=000001,FILE=WWABC101,FCB=(OPTCD=X)
\ FD  CF=DA,VOL=000002,FILE=WWABC102,FCB=(OPTCD=X)
\ FD U31=DA,VOL=000001,FILE=WWABC103,TRK=(90,30),DISP=(CONT,DLT)
\ FD U32=DA,VOL=000005,FILE=WWABC104,TRK=(5,5,RLSE)
\ FD U38=DA,VOL=000001,FILE=(WWABC300,AD)
\ FD LIST=DA,VOL=WORK,TRK=(30,30,RLSE),SOUT=K
\*
\ EX *
\ FD U06=DA,VOL=000001,FILEWWABC101,DISP=DLT
\*
\ EX FTOF
\ FD PRGLIB=DA,FILE=SYS.X8SYSTEM.UTYEB
\ FD U01=DA,VOL=000010,FILE=WWABCD35,DISP=DLT
\ FD U02=DA,VOL=000013,FILE=WWABCD36,TRK=(100,100,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
/ FTOF IN=U01,OUT=U02,BLKS=2100,RCDS=210
/ FS 0001DX(200) 0001DX(200)
/ FS         0201 '&X8.DATE2'
/ FIN
\**
\ EX FCPY
\ PARA / FCPY IN=U01,OUT=U05,COUNT=YES
\ FD U01=DA,VOL=000009,FILE=WXYNTHZN,DISP=DLT
\ FD  CF=DA,VOL=000013,FILE=WXYNTHZ5,DISP=DLT
\ FD U05=DA,VOL=000012,FILE=WXYNTHZ6,TRK=(600,200,RLSE)
\ FD LIST=DUMMY
\**
\********************************************************
\ EX *
\ FD CATF=MT,FILE=WWABC2(0),DISP=CONT
\*
\ EX FCPY,COND=10
\ PARA / FCPY IN=U01,OUT=U02
\ FD U01=DA,FILE=WWXYZ002
\ SW U02=CATF,FILE=(WWXYZ002.X&X8.DATE2,FA),DISP=CONT
\ FD LIST=DUMMY
\*
\ EX FCPY,COND=10
\ PARA / FCPY IN=U01,OUT=U02
\ FD U01=DA,VOL=000004,FILE=WWXYZ003
\ SW U02=U02,FILE=(WWXYZ004.X&X8.DATE2,FA)
\ FD LIST=DUMMY
\********************************************************
\*
\********************************************************
\**
\ EX *
\ MSG MABC0010 NORMALEND
\*
\ JEND
\ JGEND
/ DEFEND


●JCL処理サンプル2
/EXPAN DEFINE MABC0020,RN=1,FP=1,SYSYM=,SYSMM=,SYSYY=,DZ=,TZ=
/ SET SYSYM=&X8.YYMM
/ SET SYSMM=&X8.MM
/ SET SYSYY=&X8.YY
/ SET DZ=&X8.ZYYMM
/ SET TZ=&X8.YYMM
\ JOBG ABCDE,REL
\ JOB MABC0020,ACCT='S23A',RSTEP=\RN
\********************************************************
\*  在庫データ保存処理                *
\********************************************************
\ EX FDCV
\ FD U01=F1
\ FD U30=DA,VOL=000004,FILE=WWABCDN2,TRK=(50,50,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
/ OUT U30,WWABCDN2,RL=80,BF=13
/ CNVB *
/ LOAD
/ FIN
\*
\ EX *,COND=(15,60)
\ FD U01=DA,VOL=000004,FILE=WWABCDN2,DISP=DLT
\*
/ IF SYSMM=02,SKP01
\ EX FCPY
\ PARA / FCPY IN=U01,OUT=U02,COUNT=YES
\ FD U01=MT,VOL=MT0104,FILE=WWABCDN3
\ FD U05=DA,VOL=000002,FILE=WWABCDN4,TRK=(60,30)
\ FD LIST=DUMMY
\ FD COIN=*
/ FCPY IN=U01,OUT=U05
/ FIN
\*
/ SKIP SKP02
/SKP01 NOP
\ EX FSET
\ FD PRGLIB=DA,FILE=SYS.X8SYSTEM.UTYEB
\ PARA BLKS=1800,RCDS=600
\ FD U01=DA,VOL=000002,FILE=WWABCDN5,TRK=(60,30)
\ FD LIST=DUMMY
\*
/SKP02 NOP
\*******************************************************
\ EX *
\ FD CATF=MT,FILE=BOISGS(0),DISP=CONT
\*
\ EX ISFG
\ SW U01=CATF,FILE=WWABCDN&X8.ZYYMM
\ FD U05=DA,VOL=000003,FILE=WWABCDN6,FCYL=10
\ FD LIST=DUMMY
\ FD COIN=*
/ ISFG IN=U01,OUT=U05
/ AREA PRIM=25
/ BTYP RKYP=1,KEYS=8,RCDS=200,BLKS=1000,BLKD=80
/ FIN
\**
\*******************************************************
\*
\ EX PABCD200
\ FD PRGLIB=DA,FILE=SYSELIB
\ FD  CF=DA,FILE=CALIB
\ FD SYSDBOUT=DA,VOL=WORK,TRK=(30,30,RLSE),SOUT=B
\ FD LIST=DUMMY
\ FD WWXYZ002=DA,FILE=WWXYZ002
\ FD WWABCDN6=DA,VOL=000003,FILE=WWABCDN6
\ FD AN032111=DA,VOL=000002,FILE=WWABCDN7,TRK=(90,30,RLSE)
\ FD UIN=DA,VOL=000001,FILE=DX23AM03.X0
\*
\*************************************************************
/ IF SYSMM^=02,SKPGG
/ IF SYSYM=0101,SKP0A
/ SKIP SKPGG
\**
/SKP0A NOP
\ EX *
\ FD CATF=MT,FILE=ABCDE(-1),DISP=CONT
\*
\ EX FCPY
\ PARA / FCPY IN=U01,OUT=U02
\ FD U01=*
DUMMY
\ SW U02=CATF,FILE=DUMMY,DISP=CONT
\ FD LIST=DUMMY
\*
\ EX *
\ SW CATF=U02,FILE=ABCDE(+1),DISP=CAT
\*
\ EX *
\ UNCAT FILE=ABCDE(-2)
\****
\ EX *
\ FD CATF=MT,FILE=ABCDE(0),DISP=CONT
\*
\ EX FCPY
\ FD U01=DA,VOL=000002,FILE=WWABCDN7,DISP=DLT
\ SW U05=CATF,FILE=(WWABCDN&X8.ZYYMM,OT),DISP=CONT
\ FD LIST=DUMMY
\ FD COIN=*
/ FCPY IN=U01,OUT=U05
/ FIN
/SKIP SKP22
\*******************************************************************
/SKPGG NOP
\ EX *
\ FD CATF=MT,FILE=ABCDE(0),DISP=CONT
\*
\ EX FCPY
\ FD U01=DA,VOL=000002,FILE=WWABCDN7,DISP=DLT
\ SW U05=CATF,FILE=(WWABCDN&X8.ZYYMM,OT),DISP=CONT
\ FD LIST=DUMMY
\ FD COIN=*
/ FCPY IN=U01,OUT=U05
/ FIN
\*
\*
/SKP22 NOP
\*
\ EX FCPY
\ FD U01=DA,VOL=000003,FILE=WWABCDN6,DISP=DLT
\ SW U05=U05,FILE=(WWABC&X8.ZYYMM,FA)
\ FD LIST=DUMMY
\ FD COIN=*
/ FCPY IN=U01,OUT=U05
/ FIN
\***************************************************************
\ EX *
\ MSG MABC0020 NORMALEND
\*
\ JEND
\ JGEND
/ DEFEND

 JCL/SORT(中大型用FSP系)


●SORT基本形
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WA05FF01,DISP=DLT
\ FD SORTOUT=DA,VOL=000011,FILE=WA05FF02,TRK=(150,90,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
   SORT FIELDS=(27,11,CH,A,54,4,CH,A)

27,11,CH,A    27から11バイトの文字を正順にSORTする
27,11,CH,D    27から11バイトの文字を逆順にSORTする


●SORT抽出形
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WA05FF01,DISP=DLT
\ FD SORTOUT=DA,VOL=000011,FILE=WA05FF02,TRK=(150,90,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
   SORT FIELDS=(27,11,CH,A,54,4,CH,A)
   INCLUDE COND=(60,1,EQ,C'A',AND,24,1,EQ,C'2'),
   FORMAT=CH
   END

60,1,EQ,C'A',AND,24,1,EQ,C'2'
60から1バイトがAで、24から1バイトが2を抽出する

(注)ENDはなくてもよい

●SORT除外形
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WA05FF01,DISP=DLT
\ FD SORTOUT=DA,VOL=000011,FILE=WA05FF02,TRK=(150,90,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
   SORT FIELDS=(27,11,CH,A,54,4,CH,A)
   OMIT COND=(60,1,EQ,C'A',AND,24,1,EQ,C'2'),
        FORMAT=CH
END

60,1,EQ,C'A',AND,24,1,EQ,C'2'
60から1バイトがAで、24から1バイトが2以外を抽出する


○算術判定
EQ   =
NE   NOT=
GT   >   より大きい
GE   >=  等しいかり大きい
LT   <   より小さい
LE   <=  等しいかより小さい


○文字判定
C'A'    文字のA


●SORT出力レイアウト作成形
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WA05FF01,DISP=DLT
\ FD SORTOUT=DA,VOL=000011,FILE=WA05FF02,TRK=(150,90,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
   SORT FIELDS=(27,11,CH,A,54,4,CH,A)
   INCLUDE COND=(60,1,EQ,C'A',AND,24,1,EQ,C'2'),FORMAT=CH
   OUTREC FIELDS=(1,3,4,4,8,5,14,5,20,5,26,5,
          32,5,38,5,44,5,50,5,56,5,
          62,5,68,5,74,5,97,13)


●SORT合計形
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WA05FF01,DISP=DLT
\ FD SORTOUT=DA,VOL=000011,FILE=WA05FF02,TRK=(150,90,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
   SORT FIELDS=(27,11,CH,A,54,4,CH,A)
   INCLUDE COND=(60,1,EQ,C'A',AND,24,1,EQ,C'2'),FORMAT=CH
   SUM FIELDS=(43,4,ZD,53,9,ZD)
   OUTREC FIELDS=(3,2,26,4,43,4,53,9,68,4)


●SORTスキップ形
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WA05FF01,DISP=DLT
\ FD SORTOUT=DA,VOL=000011,FILE=WA05FF02,TRK=(150,90,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
   SORT FIELDS=(27,11,CH,A,54,4,CH,A),SKIPREC=10


SKIPREC=10   最初の10件は読み飛ばし


●SORT応用形 3ファイルマージ
\ EX SORT
\ FD SORTIN=DA,VOL=000010,FILE=WA05FF0A,DISP=DLT
\ FD CF=DA,VOL=000010,FILE=WA05FF0B,DISP=DLT
\ FD CF=DA,VOL=000010,FILE=WA05FF0C,DISP=DLT
\ FD SORTOUT=DA,VOL=000011,FILE=WA05FF02,TRK=(150,90,RLSE)
\ FD LIST=DUMMY
\ FD COIN=*
   SORT FIELDS=(27,11,CH,A,54,4,CH,A)


●もろもろ使用例
----------
   SORT FIELDS=(1,7,CH,A)
   INCLUDE COND=(208,1,NE,C' ',OR,1,1,EQ,C'G'),FORMAT=CH
----------
   SORT FIELDS=(27,11,CH,A,77,6,CH,A)
   INCLUDE COND=(45,6,GE,C'970218'),FORMAT=CH
----------
   SORT FIELDS=(42,7,CH,A)
   INCLUDE COND=(04,2,EQ,C'08',AND,(42,01,EQ,C'8',OR,
            42,01,EQ,C'9')),FORMAT=CH
----------
   SORT FIELDS=(32,1,CH,A)
   INCLUDE COND=(01,2,EQ,C'01',AND,7,2,LT,C'21'),
        FORMAT=CH
----------
   SORT FIELDS=(32,6,CH,A)
   INCLUDE COND=(32,6,EQ,C'F96039',OR,
       32,6,EQ,C'F85321',OR,
       32,6,EQ,C'F84935',OR,
       32,6,EQ,C'ZZZZZZ'),
       FORMAT=CH
----------
   INCLUDE COND=(1,2,EQ,C'01',AND,32,1,EQ,C'F',OR,
       1,2,EQ,C'01',AND,32,1,EQ,C'Q'),
       FORMAT=CH
----------
   SORT FIELDS=(32,1,CH,A,13,6,CH,A,19,4,CH,A)
   INCLUDE COND=((01,02,EQ,C'01',AND,31,1,EQ,C'C'),OR,
       (01,02,EQ,C'01',AND,159,2,EQ,C'7A')),
       FORMAT=CH
----------
   SORT FIELDS=(32,6,CH,A,13,10,CH,A)
   INCLUDE COND=(1,2,EQ,C'01',AND,
      (31,1,EQ,C'C',OR,159,2,EQ,C'7A'),AND,
      32,1,NE,C'E',AND,32,1,NE,C'G'),
      FORMAT=CH
----------
   INCLUDE COND=(1,2,EQ,C'01',AND,17,2,GT,C'15'),
      FORMAT=CH
----------
   INCLUDE COND=(013,04,EQ,C'&X8.ZYYMM'),
       FORMAT=CH
----------
   INCLUDE COND=(001,1,GE,C'D',AND,
      001,1,LE,C'D'),
----------
   INCLUDE COND=(1,2,EQ,C'01',AND,
      (31,1,EQ,C'C',OR,159,2,EQ,C'7A'),AND,
      32,1,NE,C'E',AND,32,1,NE,C'G'),
      FORMAT=CH
----------
   SORT FIELDS=(45,11,CH,A,12,10,CH,A,38,01,CH,A)
   INCLUDE COND=(052,04,EQ,C' ',AND,
      038,01,NE,C'9',AND,
      093,01,NE,C'T'),
      FORMAT=CH
      END
----------
   INCLUDE COND=((52,6,EQ,C'M56930',OR,
      52,6,EQ,C'M55950',OR,
      52,6,EQ,C'ZZZZZZ'),AND,
      12,6,EQ,C'1D735L'),
      FORMAT=CH
----------
   SUM FIELDS=(31,8,PD)PD パツク ZD 10 シン
   OUTREC FIELDS=(11,10,31,8,1,4)
----------
   SORT FIELDS=(24,2,CH,A,1,7,CH,A)
   OMIT COND=(30,9,EQ,000000000),FORMAT=ZD
----------
   SORT FIELDS=(1,1,CH,A),EQUALS
   OMIT COND=(129,2,EQ,C'XX',OR,
      129,2,EQ,C'08',AND,184,1,EQ,C'0',OR,
      129,2,EQ,C'09',AND,184,1,EQ,C'0'),
      FORMAT=CH
      END
----------





 CL(オフコンESP系)

●サンプルCL
001 PROC 0
001 LIB ('C.ALIB')
001 CONTROL NOFLUSH PROMPT NOLIST NOCONLIST NOSYMLIST NOMSG
001 /***************************************************************/
001 * /** プログラムID ABCD0300 **/
001 * /** 概要 在庫データ作成 **/
001 * /** 作成者 山田太郎 2006/01/11 **/
001 /***************************************************************/
009  FREE ALL
009  SET &PRM99=&SUBSTR(1:3,&SYSUID)
009  IF &PRM99=ISK THEN GOTO A3
009  FREE ALL
001 /*
001 * PDT00:  WRITE ABCD0300 在庫データ作成
009  WRITE
009 *  WRITE ※終了するには E を入力して下さい
009  WRITE
009 *  WRITE 処理NOを入力して下さい(例 529842)
009  WRITE
001 * PDT10:  WRITENR 処理NO------->
009  READ &SD
009  IF &SD=E THEN GOTO A3
009  IF &SD=&STR() THEN GOTO PDT10
001 /*
009  WRITE
009  WRITE
009 *  WRITE 処理中です...
009  WRITE
001 /*
009 *  DLTDS 'WWABC020'
009  FREE ALL
009  SET &PRM91=&SUBSTR(1:6,&SD)
009  SET &PRM99=&SYSUID
001 /*
009  EXCCL ASCAIM FILE('MIG.JCL') PARAM('P2 M(SYSTEM.AIM00.MD) +
018   P(RDWWUTRO) A(APGRV00) C1(A) OF(ZZZZSG) D(00)')
009  ALLOC F(RDWWS001) REUSE SPACE(100 10) TRACKS RELEASE
009 *  EXCCL @DLTFILE FILE('MIG.JCL') PARAM('FILE(WWABC020)')
009  DFNFATR ZZZZSG BLKSIZE(4000) LRECL(250) DSORG(PS) RECFM(F B)
009  ALLOC DDNAME(SYSUOUT) UNIT(DA) +
018 *   DSNAME('WWABC020') +
018   NEW REUSE USING(ZZZZSG) VOLUME(VOL006) +
018   SPACE(100 10) TRACKS RELEASE
009  INDATA SYSIN
009  DATA PROMPT
018   UNLOAD TO DDNAME SYSUOUT &STR(+)
018   WITH NONULL NOPRINT &STR(+)
018   AS SELECT * &STR(+)
018   FROM &STR(+)
018   MIGDB.RDBABC010_PF &STR(+)
018 *   WHERE WWWSTS = '1' AND WWWHADT = &PRM91 &STR(+)
018   ORDER BY WWWNBR
009  ENDDATA
009  EXCCL ASCAIM FILE('MIG.JCL') +
018   PARAM('P3 OF(ZZZZSG) D(00)')
009  IF &LASTCC GT 12 THEN GOTO ERRMSG
009  FREE ALL
001 /*
009  ASCLP SYSDBOUT SYSOUT(B)
009  ASCLP SYSOUT SYSOUT(B)
002 EXCCL ASCAIM PARAM('P1 P(RDBABCD2) A(APGRV00) M(SYSTEM.AIM00.MD) +
009  D(00)') FILE('MIG.JCL')
009 *  ASCFILE DDNAME(WWABC020) DSNAME('WWABC020.PF') SHR
009  ASCFILE DDNAME(WWABC030) DSNAME('WWABC030.PF') SHR
009  ASCFILE DDNAME(WWABC040) DSNAME('WWABC040.PF') SHR
009 **  ASCFILE DDNAME(WORKF) DSNAME('WWABC050') SHR
009 *  EXCPGM PABCS7 '&PRM99' FILE('ABCLIB.LOAD')
009  IF &LASTCC NE 0 THEN GOTO ERRMSG
009 *  DLTDS 'WWABC020'
009  FREE ALL
001 * /*
009 *  GOTO PDT00
001 * /*
001 * A3:  FREE ALL
009 *  WRITE
009 *  FREE ALL
009 *  EXIT
001 * ERRMSG:  FREE ALL
009 *  SEND '**** ABCD0300 ERR ***'
009 *  FREFILE ALL
009 *  DLTDS 'WWABC020'
009 *  FREE ALL
009 *  WRITE
009 *  FREE ALL
009 *  SET &MAXCC=999
009 *  EXIT CODE(&MAXCC)



 




 
■エディタ


 PFD(中大型用FSP系)

---------------------------------------------------------------------
●PFDの開始
---------------------------------------------------------------------

LOGON AIF XXXX(ユーザーID)

コンソール画面に戻る
LOGON CONS

---------------------------------------------------------------------
●PFDプライマリオプションメニュー
---------------------------------------------------------------------

------< PFDプライマリオプションメニュー >----------
----------------------------------------------------時刻- 10:48
0 ATTRIBUTES - PFD属性及び端末特性を定義する。 端末- F6650
1 BROWSE - データセットの内容を表示/検索する。 PFキー - 24
2 EDIT - データセットの内容を編集する。 カナ機構 - あり
3 UTILITY - 各種ユティリティを実行する。
4 FOREGROUND - コンパイル、リンクエディットを行うコマンドを実行する。
5 BACKGROUND - コンパイル、リンクエディットを行うバッチジョブを起動する。
6 AIF - AIFコマンド及びコマンドプロシジャを実行する。
7 TEST - メニュー、メッセージ、プログラムをテストする。
H HELP - PFDの使用方法を表示する。
X EXIT - PFDを終了する。
-----------------------------------------------------------

---------------------------------------------------------------------
●PFD 0.3の説明
---------------------------------------------------------------------

PFD 0.3
-----------------------------------------------------------
F9526/F6650端末におけるPFキーの機能を定義
PF1 ==> HELP     PF13 ==> HELP
PF2 ==> SPLIT     PF14 ==> SPLIT
PF3 ==> END      PF15 ==> END
PF4 ==> RETURN    PF16 ==> RETURN
PF5 ==> FIND     PF17 ==> FIND
PF6 ==> CHANGE    PF18 ==> CHANGE
PF7 ==> UP      PF19 ==> UP
PF8 ==> DOWN     PF20 ==> >NULLS
PF9 ==> SWAP     PF21 ==> : COLS
PF10 ==> LEFT     PF22 ==> PRINT
PF11 ==> RIGHT     PF23 ==> >LOC 0
PF12 ==> CURSOR    PF24 ==> >LOC 999999
-----------------------------------------------------------

PFキー説明
PF1 ==> HELP   ヘルプ
PF2 ==> SPLIT  2画面
PF3 ==> END   終了
PF4 ==> RETURN  
PF5 ==> FIND   検索
PF6 ==> CHANGE  変更
PF7 ==> UP    画面上へ
PF8 ==> DOWN   画面下へ
PF9 ==> SWAP   
PF10 ==> LEFT   画面左へ
PF11 ==> RIGHT   画面右へ
PF12 ==> CURSOR  

PF21 ==> : COLS  目盛りを表示   
PF23 ==> >LOC 0    先頭画面
PF24 ==> >LOC 999999  最終画面
-----------------------------------------------------------

標準ではPF13〜PF24はPF1〜PF12と同じなので、自分でアレンジして使い易くする。

PF1〜PF12は変更しない方が良い。

たとえば、ソースを大量に変更する場合などは
PF13 ==> HELP
を変えて
PF13 ==> >C 'AAAAA' 'BBBBB' ALL にすれば
ソースを開いて、PF13を押せば短時間で変更できます。

PF13〜PF24のキー
昔はダムタンと言って専用入力端末でキーボードもPF13〜PF24のキーがありました。
最近はパソコンでエミュレータから使用しているのでパソコンのキーボードはPF13〜PF24のキーがありません。
従って、PF13はShift+PF1で出来ます。
-----------------------------------------------------------


---------------------------------------------------------------------
●PFD 2  EDITの説明
---------------------------------------------------------------------

PFD 2  EDIT、ソースを変更する時

------------------------------------------------
基本操作
------------------------------------------------
PFD 2[ENTER]
-------------------------

●プログラムソースの修正(分割型順編成ファイルのメンバー名の修正)
'SYS.JLIB.CNTL(ABCD0010)'の修正
--------------------------< EDIT データセットメニュー >----------------------------
コマンド ===>
編集するデータセットを指定して下さい。

PFDライブラリデータセット:
プロジェクト名 ===> SYS
ライブラリ名 ===> JLIB
タイプ名 ===> CNTL
メンバ名 ===> ABCD0010

PFDライブラリ以外のデータセット:
データセット名 ===>      
ボリューム通番 ===>       (カタログされていない場合)

パスワード ===>        (パスワード保護されている場合)
プロファイル名 ===>        (何も指定しないとタイプ名が省略値)
日本語データ ===>        (パスワード保護されている場合)

-------------------------

●プログラムソースの修正(分割型順編成ファイルのメンバー名の修正)
'SYS.JLIB.CNTL'の修正でメンバー名が分からない時
--------------------------< EDIT データセットメニュー >----------------------------
コマンド ===>
編集するデータセットを指定して下さい。

PFDライブラリデータセット:
プロジェクト名 ===> SYS
ライブラリ名 ===> JLIB
タイプ名 ===> CNTL
メンバ名 ===>

PFDライブラリ以外のデータセット:
データセット名 ===>      
ボリューム通番 ===>       (カタログされていない場合)

パスワード ===>        (パスワード保護されている場合)
プロファイル名 ===>        (何も指定しないとタイプ名が省略値)
日本語データ ===>        (パスワード保護されている場合)

*メンバー名を入れなくて[ENTER]すれば、メンバー一覧が表示されるので、
対象メンバー名の前に'S'を入れて[ENTER]すれば開けます。

-------------------------

●データファイルの修正(順編成ファイル(テキストファイル)の修正)
パソコンのメモ帳と同じ
--------------------------< EDIT データセットメニュー >----------------------------
コマンド ===>
編集するデータセットを指定して下さい。

PFDライブラリデータセット:
プロジェクト名 ===> SYS
ライブラリ名 ===> JLIB
タイプ名 ===> CNTL
メンバ名 ===>

PFDライブラリ以外のデータセット:
データセット名 ===>'ABCDFILE'      
ボリューム通番 ===>000010   (カタログされていない場合)

パスワード ===>        (パスワード保護されている場合)
プロファイル名 ===>        (何も指定しないとタイプ名が省略値)
日本語データ ===>        (パスワード保護されている場合)

*カタログされている時は、ボリューム通番は不要

------------------------------------------------
操作コマンド
------------------------------------------------
コピー
C---->A  :一行Aの下にコピー

C---->B  :一行Bの上にコピー
例--------
*4行を、8行の前に挿入する。

000003 AAAAAAAAAAAAAAAA
C00004 BBBBBBBBBBBBBBBB
000005 CCCCCCCCCCCCCCCC
000006 DDDDDDDDDDDDDDDD
000007 EEEEEEEEEEEEEEEE
B00008 FFFFFFFFFFFFFFFF
000009 GGGGGGGGGGGGGGGG

*4行にCを入れて、8行にBを入れて[ENTER]する。
----------


CC〜CC---->A  :複数行Aの下にコピー
例--------
*4〜6の行を、8行の後に挿入する。

000003 AAAAAAAAAAAAAAAA
CC0004 BBBBBBBBBBBBBBBB
000005 CCCCCCCCCCCCCCCC
CC0006 DDDDDDDDDDDDDDDD
000007 EEEEEEEEEEEEEEEE
A00008 FFFFFFFFFFFFFFFF
000009 GGGGGGGGGGGGGGGG

*4行と6行にCCを入れて、8行にAを入れて[ENTER]する。
----------

CC〜CC---->B  :複数行Bの上にコピー

2画面にして、別のライブラリーからコピーする
CE---->AE  :一行Aの下にコピー
CE---->BE  :一行Bの上にコピー

CCE〜CCE-->AE  :複数行Aの下にコピー
CCE〜CCE-->BE  :複数行Bの上にコピー

*2画面はPF2(SPLIT)
*AはAFTER、BはBEFORE


移動
M---->A  :一行Aの下に移動
M---->B  :一行Bの上に移動

MM〜MM---->A  :複数行Aの下に移動
MM〜MM---->B  :複数行Bの上に移動

2画面にして、別のライブラリーから移動する
ME---->AE  :一行Aの下に移動
ME---->BE  :一行Bの上に移動

MME〜MME-->AE  :複数行Aの下に移動
MME〜MME-->BE  :複数行Bの上に移動


削除
D    :一行削除

DD〜DD :複数行削除
例--------
*4〜7行を、削除する。

000003 AAAAAAAAAAAAAAAA
DD0004 BBBBBBBBBBBBBBBB
000005 CCCCCCCCCCCCCCCC
000006 DDDDDDDDDDDDDDDD
DD0007 EEEEEEEEEEEEEEEE
000008 FFFFFFFFFFFFFFFF
000009 GGGGGGGGGGGGGGGG

*4行と6行にDDを入れて、[ENTER]する。
----------



複写 R5  :5行複写
挿入 I3  :3行挿入(IよりRの方がNULLが入らなくて良い)


検索
コマンド ===> F 'XXXXX'  [ENTER]

XXXXXを検索 (次はF5をクリック)
デバックに有効、管理人は2回転ぐらい検索するとひらめく。
例--------
コマンド ===> F 'CCCCC'

*'CCCCC'を検索する
次にF5をクリックすると、次の'CCCCC'を検索する
----------


カーソル表示 COLS 目盛りを表示したい時、その行で指定する
カーソル表示を消す 通常の行削除のDやればよい。
例--------
*4行にCOLSを入力すると目盛が表示する。
目盛を消したい時は、通常の削除'D'で消える

000003 AAAAAAAAAAAAAAAA
COLS04 BBBBBBBBBBBBBBBB
000005 CCCCCCCCCCCCCCCC
----------
000003 AAAAAAAAAAAAAAAA
=COLS> ----+----1----+----2----+----3----+----4----+----
000004 BBBBBBBBBBBBBBBB
000005 CCCCCCCCCCCCCCCC
----------


変換
コマンド ===> C 'ABC' 'XYZ' ALL [ENTER]
'ABC'を'XYZ'に変換する ALLは一括変換
チェンジオールは良く使う。ただし間違えないように!

確実にするには、前にスペースを入れると他に影響が少ない
変換 C ' ABC' ' XYZ' ALL 


キャンセル
コマンド ===> CAN    [ENTER]
元に戻す (SAVEする前まで)


直前戻し
コマンド ===> UNDO    [ENTER]
直前の状態に戻す


保存
コマンド ===> SAVE    [ENTER]
セーブ、登録 (PF3と同じ) 長時間編集している時は随時保存する。


列の固定
コマンド ===> FIC C 7   [ENTER]
1〜7列が左に固定される
PF10(LEFT)、PF11(RIGHT)しても左に固定される


行の固定
コマンド ===> FIC L 3,000002  [ENTER]
000002から3行、固定される
PF7(UP)、PF8(DOWN)しても上に固定される


境界定義
 BNDS <   >   [ENTER]
<   >の間が処理対象列になる(変換の時便利)
10〜20列の間のみチェンジオールしたい時などに使う とても便利
例--------
*7〜14列の間のみチェンジオールの対象にしたい。

=COLS> ----+----1----+----2----+----3----+----4----+----
=BNDS>     <     >
000003 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
000004 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
000005 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
000006 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
000007 EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
000008 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
000009 GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG

*=BNDS> <      >    [ENTER]
----------


リナンーバー
コマンド ===> S NUM    [ENTER]
連番の振りなおし


空白
コマンド ===> UNN    [ENTER]
レコード内の行番号部分をすべて空白にする。


FIBジョブ
コマンド ===> FIBJOB SIBMIT    [ENTER]
編集中のデータセット内容をFIBジョブとして起動する


シフトコード除去
コマンド ===> REMOVE ON   [ENTER]
シフトコード除去起動

コマンド ===> REMOVE OFF  [ENTER]
シフトコード除去停止


プロファイル表示
コマンド ===> PRO    [ENTER]
プロファイルの表示

コマンド ===> RESET    [ENTER]
プロファイルの切替


リナンバー
コマンド ===> AUTONUM ON    [ENTER]
保存する時、自動的にリナンバーするか


置換え
コマンド ===> REPLACE    [ENTER]
無い時は新メンバー、ある時は置換え




---------------------------------------------------------------------
●PFD 1  BROWSEの説明
---------------------------------------------------------------------

ソースを表示する時、使用する。更新はできないので安心して使える
コマンドはEDITORと同じ

*MLOGの表示
SYS.SYSTEM.MLOG1
SYS.SYSTEM.MLOG2
SYS.SYSTEM.MLOG3

*DBの内容も見れます
あまり使用しないが、細かい場所はわからないが便利な時もある。



---------------------------------------------------------------------
●PFD 3    UTILITYの説明
---------------------------------------------------------------------

PFD 3    UTILITY ファイル、ライブラリーの操作


---------------------------------------------------------------------
●FIBGET
---------------------------------------------------------------------

FIBGET XXXX D(A) AクラスをDISPLAYに取り込む


---------------------------------------------------------------------
●PROの説明
---------------------------------------------------------------------
-----------------------------------
日本語シフト28--29を入れる
(28--29が入っていれば表示の時、日本語表示される)
-----------------------------------
PRO確認
日本語 YES
ソース修正
REMOVE OFF
ソース修正を元に戻す
SAVE
日本語シフト28--29が入る


-----------------------------------
日本語シフト28--29を取る
(データ読込処理時などは28--29は不要)
-----------------------------------
PRO確認
日本語 YES
ソース修正
REMOVE ON
ソース修正を元に戻す
SAVE
日本語シフト28--29が取れる


-----------------------------------
-----------------------------------

---------------------------------------------------------------------
●PFD 0 の画面説明
---------------------------------------------------------------------
ATTRIBUTES - PFD属性及び端末特性を定義する。 端末- F6650
---------------------------------------------------------------------

1.端末特性---------------------------------------------------------
------------------------------< 端末特性定義 >-------------------------------
コマンド ===>
以下のパラメタを指定して下さい。


端末種別   ===> F6650     (F9525, F9526又はF6650)
PFキーの数  ===> 24      (12又は24)
カナ機構   ===> YES      (YES又はNO)
パディング文字 ===> N      (N又はB)
    
    +--------------------------------------------------------+
     | 英大文字とカナが表示される端末の場合は カナ機構 入力 |
     | フィールドに'YES'を指定して下さい。 |
     | 入力フィールドの空き部分にNULL文字を詰めたい場合は |
     | パディング文字 入力フィールドに'N'を指定して下さい。 |
     | 入力フィールドの空き部分にブランクを詰めたい場合は |
     | パディング文字 入力フィールドに'B'を指定して下さい。 |
     +--------------------------------------------------------+
    
2.LOG/LIST---------------------------------------------------------
------------------< ログ/リストデータセットの定義 >-------------------------
コマンド ===>
以下のパラメタを指定して下さい。
  
+---------------------+--------------------------+--------------------------+
| パラメタ      | ログデータセット    | リストデータセット   |
+---------------------+--------------------------+--------------------------+
| 処置オプション   | ===>           | ===>           |
| SYSOUTクラス    | ===> A          | ===> C          |
| ローカルプリンタID | ===>           | ===> G00         |
| ページ当りの出力行数| ===> 60         | ===> 60         |
| 1次割当てページ数 | ===> 0          | ===> 100         |
| 2次割当てページ数 | ===> 0          | ===> 200         |
+---------------------+--------------------------+--------------------------+

処置オプション:
J - SYSOUTに出力し削除するバッチジョブを起動する。 K - 出力せずに保存する。
L - ローカルプリンタに出力し削除する。 D - 出力せずに削除する。
処置オプションが'J'の場合、JOB文を指定して下さい。
===> \ JOB DSR04X,ACCT=ACCOUNT
===> \*
===> \*
===> \*

3.PFキー-----------------------------------------------------------
------------------------< ファンクションキーの定義 >-------------------------
コマンド ===>
F9526/F6650端末におけるPFキーの機能を定義して下さい。

PF1 ==> HELP                    PF13 ==> HELP
PF2 ==> SPLIT                    PF14 ==> SPLIT
PF3 ==> END                     PF15 ==> END
PF4 ==> RETURN                   PF16 ==> RETURN
PF5 ==> FIND                    PF17 ==> FIND
PF6 ==> CHANGE                   PF18 ==> CHANGE
PF7 ==> UP                     PF19 ==> UP
PF8 ==> DOWN                    PF20 ==> DOWN
PF9 ==> SWAP                    PF21 ==> SWAP
PF10 ==> LEFT                    PF22 ==> LEFT
PF11 ==> RIGHT                    PF23 ==> RIGHT
PF12 ==> CURSOR                   PF24 ==> CURSOR
ファンクションの種類: (空白にすれば省略時の値がとられます)
     HELP  SPLIT   END   RETURN    FIND   CHANGE
     UP   DOWN   SWAP   LEFT     RIGHT   CURSOR
     PRINT  PRINT-HI NOP
又はEDIT/BROWSEのコマンド及びAIFコマンドを定義して下さい。
     >CMD... (コマンド)      例: PF10 ==> >CAPS ON
     :CMD... (EDIT行コマンド)   例: PF11 ==> :D

4.GEM属性----------------------------------------------------------
-------------------------------< GEMの定義 >------------------------------
コマンド ===>
以下のパラメタを指定して下さい。



GEMオプション ===> NO (YES又はNO)


GEMプロジェクトカタログ :

デ−タセット名 ===>

---------------------------------------------------------------------


---------------------------------------------------------------------
●PGメンバーリストをファイルに落とす
---------------------------------------------------------------------
PFD 3.1

--------------------------< LIBRARYユティリティ >----------------------------
オプション ===> X

B - メンバの内容を表示する。   C - 区分データセットを圧縮する。
D - メンバを削除する。      L - データセット全体をプリントする。
E - メンバの内容を編集する。   X - 属性、メンバ名一覧等をプリントする。
P - メンバの内容をプリントする。 空白 - メンバ名選択リストを表示する。
R - メンバ名を変更する。
J - 日本語データを含むメンバの内容を編集する。
N - 日本語データを含むメンバの内容を表示する。

PFDライブラリデータセット:
プロジェクト名 ===>
ライブラリ名 ===>
タイプ名 ===>
メンバ名 ===>      (オプション'B','D','E','P','R'を選択した場合)
新メンバ名 ===>      (オプション'R'を選択した場合)

PFDライブラリ以外のデータセット:
データセット名 ===> 'ABCLIB.SRC'
ボリューム通番 ===>       (カタログされていない場合)

パスワード ===>          (パスワード保護されている場合)


---------------
右ENTER
---------------
PF3  PF3
---------------
---------------------------< PFD終了メニュー >----------------------------
リストデータセットの処置を指定して下さい。

+---------------------+----------------------+----------------------+
|   パラメタ    | ログデータセット  | リストデータセット |
+---------------------+----------------------+----------------------+
| 処置オプション   |           | ===> K        |
| SYSOUTクラス    |  未使用      | ===> C        |
| ローカルプリンタID |           | ===> G00       |
+---------------------+----------------------+----------------------+

処置オプション:
J - SYSOUTに出力し削除するバッチジョブを起動する。 K - 出力せずに保存する。
L - ローカルプリンタに出力し削除する。       D - 出力せずに削除する。

PFDを終了する場合は ENTERキー を押して下さい。
PFDプライマリオプションメニューを表示する場合は ENDキー を押して下さい。

処置オプションが'J'の場合、JOB文を指定して下さい。
===> \ JOB USR01,ACCT=ACCOUNT
===> \*
===> \*
===> \*

---------------
データセットUSR01,PFD2,LISTを保存しました。
---------------
右ENTER
---------------
> FIMPORT 'USR01.PFD2.LIST'
---------------
「テキストファイル受信設定」
---------------
格納ファイル名:E:\システム運用\kitasrcin.txt   「転送開始」
--------------- ファイル転送の処理を開始した.
ファイル転送の処理が終了した.総レコード数=9020
***
「右ENTER」
---------------

---------------------------------------------------------------------
●既存システムを一部コピーして別のシステム(新COBOL)を作る方法
---------------------------------------------------------------------
大量のCOBOLをコピーして、PG名、DB名、COPY名等を修正する方法

1.PFD 0.3でチェンジALLするコマンドを登録する PFD 0.3
-----------------------------------------------------------
F9526/F6650端末におけるPFキーの機能を定義
PF1 ==> HELP     PF13 ==> HELP
PF2 ==> SPLIT     PF14 ==> SPLIT
PF3 ==> END      PF15 ==> END
PF4 ==> RETURN    PF16 ==> RETURN
PF5 ==> FIND     PF17 ==> FIND
PF6 ==> CHANGE    PF18 ==> CHANGE
PF7 ==> UP      PF19 ==> UP
PF8 ==> DOWN     PF20 ==> >NULLS
PF9 ==> SWAP     PF21 ==> : COLS
PF10 ==> LEFT     PF22 ==> PRINT
PF11 ==> RIGHT     PF23 ==> >LOC 0
PF12 ==> CURSOR    PF24 ==> >LOC 999999
-----------------------------------------------------------

PF13〜PF24 にチェンジALLを入れる -----------------------------------------------------------
F9526/F6650端末におけるPFキーの機能を定義
PF1 ==> HELP     PF13 ==> >C 'ABC01' 'ABC02' ALL
PF2 ==> SPLIT     PF14 ==> >C 'ABT01' 'ABT02' ALL
PF3 ==> END      PF15 ==> >C 'ABX01' 'ABX02' ALL
PF4 ==> RETURN    PF16 ==> RETURN
PF5 ==> FIND     PF17 ==> FIND
PF6 ==> CHANGE    PF18 ==> CHANGE
PF7 ==> UP      PF19 ==> UP
PF8 ==> DOWN     PF20 ==> >NULLS
PF9 ==> SWAP     PF21 ==> : COLS
PF10 ==> LEFT     PF22 ==> PRINT
PF11 ==> RIGHT     PF23 ==> >LOC 0
PF12 ==> CURSOR    PF24 ==> >LOC 999999
-----------------------------------------------------------

2.閉じてPF13、PF14、PF15を押せば変更されます

チェンジALLは慎重にしないと他も変更してしまうので注意が必要です

ポイントは
スペースを前に入れる    C ' CKU' ' CKX' ALL

F 'CKU' FINDで事前に確認する

●「C ' CKU' ' CKX' ALL」これのグループ分けが重要なポイントになります。
何桁でするか?

C ' CKU010' ' CKX010' ALL
C ' CKU01' ' CKX01' ALL
C ' CKU0' ' CKX0' ALL
C ' CKU' ' CKX' ALL


●「C ' CKU' ' CKX' ALL」これのグループ分けが重要なポイントになります。


●標準定義に戻したい時は

変更したが標準設定に戻したい時は、すべて空白にすると標準に戻ります。


PF13 ==> >C 'ABC01' 'ABC02' ALL

PF13 ==>     

再立上すると
PF13 ==> HELP
の標準に自然に戻る



 EDTFILE(オフコンESP系)

PFD(中大型用FSP系)を使い慣れている人には、かったるいエディタ(ENTERを押す回数が多い)だが、慣れれば使える

●PFキーの説明
-----------------------------------
SHOW=01:
END=02:END、終了キーといい、原則一つ前に戻る
RETURN=03*:復帰キーといい、コマンドを入力した画面まで戻す
*F2キー(END)とF3キー(RETURN)の違いを確認しましょう

BACKWARD=04*:上スクロール↑
FORWARD=05*:下スクロール↓
HELP=06:ヘルプ
LEFT=07*:左スクロール←
RIGHT=08:右スクロール→
MARK=09*:マーク
RESET=10*:マーク解除
TARGET=11:ターゲット
INSERT=13:行挿入
SEARCH=14*:文字列検索  HOME--AAA--
CHANGE=15:文字列置換
DELETE=17:削除
COPY=20:複写
MOVE=21:移動
DUPLICAT=22 -=23:繰返し
SWAP=24:
-----------------------------------
HIDE:*行の非表示
LDIVIDE:行の分割
LINE:*ラインモードへの切換え
LIST:*印刷
LOCATE:*位置付け
LPASTE:転送行複写
LSHIFT:左シフト
LXCHANGE:行の交換
SAVE:ファイル又はメンバの格納
UNDO:編集操作の取消
-----------------------------------

●操作例

○文字'ABC'の検索(SEARCH=14)
上段に'ABC'を入力 → [SHIFT]+[F2]

○'ABCD0'を'ABCD1'に置換える(CHANGE=15)
上段に'ABCD0' 'ABCD1'を入力 → [SHIFT]+[F3]

○行の挿入(INSERT=13)
カーソルを001800に置く → [SHIFT]+[F1]

○行の削除(DELETE=17)
カーソルを001800に置く → [SHIFT]+[F5]

○行の複写(COPY=20)
001510 *1  カーソルを置いてPF9(MARK=09)
001520 *2
001530 *3  カーソルを置いてPF11(TARGET=11)
[SHIFT]+[F8](COPY=20)

結果
001540 *1  追加された

○複数行の複写(COPY=20)
001510 *1  カーソルを置いてPF9(MARK=09)
001520 *2 001530 *3  カーソルを置いてPF9(MARK=09)
001540 *41  カーソルを置いてPF11(TARGET=11)
[SHIFT]+[F8](COPY=20)

結果
001550 *1  追加された
001560 *2  追加された
001570 *3  追加された

○マークの解除(RESET=10)
[F10]

○フルスクリーンモードに戻る場合は,FSコマンドを入力する


---------------------------------------------------------------------
●オフコンESP系でもPFDは使える
---------------------------------------------------------------------
以前はPFDは中大型用FSP系、EDTFILEはオフコンESP系に固定されていたが、OSIV/XSPにOSが統合されたので、オフコン系でもEDTFILEだけでなくPFD も使用できるようになりました。
----------------------------
●OSIV/XSP
 富士通の中・大型汎用計算機用のオペレーティングシステム。
OSIV/X8 FSP (中・大型用)と、OSIV/ESP V (中型、オフコン用)が1994年に一本化された。
-----------------------------
ただ注意事項として、
オフコン系でPFDを使うとメンバー一覧の更新日付が正常に表示されず*印が表示されてしまう。
面倒だが後でEDTFILEで適当な個所を更新して更新日付を正しくする。


 




 
■コマンド


 操作コマンド(中大型用FSP系)

=STACK DA、SYS.JCL.ABC、MEM=XXXXXX
=\\ XXXXXX
RELS JC-XXX
RELS JG-XXX  JG解除
RELS JN-ABCD001,QT-OH

ユーザー名が受付しなくて、キャンセルしたい時
CAN US-ユーザー名

CAN ALL、QT-I
JAL=JG-TEST,JM=2
HOLD ALL、QT-K
DSPLAY SJ R EJ T
:U ALL  HOLD解除
:M XXXXL  HOLD解除
-----------------------------------
JAL DV-WS100、K、B、J
DSP PFM,SYSTEM=YES
DSP PFM、TIME=1、JOBCOUNT=255
-----------------------------------
JALT JC=AIM、SLOGOFF、WS100
JALT JC=NET、V、TERM、W100、INACT
SOUT W100、L、SP=NO
STOP DV=W100
JALT JC=NET、V、TERM、W100、ACT、NLOG
JALT JC=AIM、SLOGON、WS100、ABC00
JALT JC=AIM、LDON、LD=RLDABC00/RLDABC01、WS=WS100,MD=PTL
-----------------------------------
JALT DSPWTR、S、P(ALL)
JALT DSPWTR、INACT、P(P21)
JALT DSPWTR、ACT、P(ALL)
JALT DSPWTR、C、P(ALL)
-----------------------------------
JALT NET、V、TERM、P21、INACT
JALT NET、V、TERM、P21、ACT
-----------------------------------
JALT NET、D、LINE、ABC00、ACT
-----------------------------------


 操作コマンド(オフコンESP系)

-----------------------------------------------------------
●コンパイル
-----------------------------------------------------------
○CRT (コンパイル起動)
ソースID:ABCD0300
ソースライブラリ:SLIB
4
T
Y

ENTER

○INFJOB (リスト一覧起動)
選択   PF11  リスト表示
選択   PF17  F5   削除

○正常終了
最大重大度コードは 10 で,翻訳したプログラム数は 1 本です.
0** MEMBER NAME ** ABCD0300 WAS NOT FOUND BUT HAS BEEN ADDED TO LIBRARY.

-----------------------------------------------------------
●CPYFILE ファイル又はメンバの複写
-----------------------------------------------------------
CPYFILE ...................... ファイル又はメンバの複写 ......................

入力ファイル名又は入力ファイル名(メンバ名)
    : 'ABCLIB.SRC(ABCD01)'
メンバ名に*を指定するとメンバ一覧を表示
入力ボリューム通し番号
:
〜〜〜〜〜〜〜〜〜〜〜〜

出力ファイル名又は出力ファイル名(メンバ名)
    : 'XXXLIB.SRC(TTTT01)'
省略するとファイル一覧を表示
出力ボリューム通し番号
:
同一メンバの置き換え
   : 1 1 NOREPLACE - 置き換えない (省略値)
2 REPLACE - 置き換える
メンバABCD01を複写しました


-----------------------------------------------------------
●INFJOB
-----------------------------------------------------------

選択   PF11  表示
選択   PF17  F5   削除


-----------------------------------------------------------
●メニュー定義DFNWRKとメニュー登録DFNUWRK
-----------------------------------------------------------
●メニュー定義DFNWRK
「DFNWRK」入力

DFNWRK ........................... 業務/処理定義 .............................

業務ID : ABCD011 (業務ID又は関連IDを指定する. 削除の時,
省略すると業務ID/関連IDの一覧を表示)

英語名称 : ABCD011
各国語名称 : 在庫データ伝送
パスワード :

関連ID : 旧関連ID :
表示順番 : (1〜9999)

詳細情報 : P.#AIF.XYZLOGON.CMD(ABCD011).SIZE(2048)

模写業務ID :

処理モード : 1 1 - 登録(省略) 2 - 変更 3 - 置換え 4 - 削除

削除モード : 1 NO - ユーザ登録名との関連情報を削除しません(省略)
2 YES - ユーザ登録名との関連情報を削除します

処理終了しました


以下の業務IDを登録しました.
業務ID : ABCD011
英語名称 : ABCD011
各国語名称 : 在庫データ伝送
 言語属性 : JAPANESE
詳細情報  : P.#AIF.XYZLOGON.CMD(ABCD011).SIZE(2048)
***

●メニュー定義DFNWRK
「DFNUWRK」入力

DFNUWRK ........................ ユーザ使用業務の登録 .........................

ユーザ登録名 : AAA01

業務ID : 省略すると業務IDの一覧を表示

模写ユーザ登録名 : 指定された利用者と同じ業務が使用可能となる

表示順番     : 業務IDの表示順番を1〜9999の範囲で指定


SHOW=01 END=02 RETURN=03 BACKWARD=04 FORWARD=05 HELP=06 MEMO=09 READMEMO=10


ENTER

DFNUWRK .................. ユーザ使用業務の登録 ...................... V: FULL
業務ID 表示順番

01 ABCD0001
02 ABCD0002
03 ABCD0003
04 * ABCD0004
05 * ABCD0005
06 ABCD0011 ←*をつける

表示したいJOBに*をつける

F5で下  F4で上に移動する


-----------------------------------------------------------
●ライタの起動STRWTRとライタの停止STPWTR 
-----------------------------------------------------------
●ライタの起動STRWTR

「STRWTR」入力
>
STRWTR ............................ ライタの起動 ............................

ライタ名     : WTR01     属性表示 : 1 表示しない(省略値)
ジョブ選択                    2 表示する
出力クラス列    :
用紙コード     : 用紙コード/*CLR
行先識別名     : 行先識別名/*CLR
用紙形式                
行制御イメージ名  :
オーバレイ名    : オーバレイ名/*CLR
用紙コード     :
文字セット       :
印刷形式(印刷モードと用紙サイズは,共に指定する)
印刷モード     : 1 LP 2 PORT 3 LAND 4 LZOOM 5 PZOOM
用紙サイズ     : 1 A4 2 A3 3 A5 4 B4 5 B5 6 LTR
セパレータ      : 1 TOPEND 2 TOP 3 END 4 NO
マークフォーム    : 1 NOSIGN 2 SIGN
装置異常の扱い    : 1 PAUSE 2 STOP
データ異常の扱い
一時停止      : 1 CONT 2 PAUSE
ダイナミックロード : 1 PARA 2 DYNLOAD 3 NODYNLOAD
試し打ち       : 0-3
SHOW=01 END=02 RETURN=03 BACKWARD=04 FORWARD=05 HELP=06 MEMO=09 READMEMO=10
-----------------------------------------------------------
KDI050I WTR01(WTR001) STARTED
***

●ライタの停止STPWTR

STPWTR
-----------------------------------------------------------
>
STPWTR ............................ ライタの停止 ............................

ライタ名      : WTR01

ジョブの扱い    : 3  1 NORMAL - ジョブの出力完了後に停止(省略値)
              2 CANCEL - 出力中ジョブをキャンセルして停止
              3 SAVE - ジョブを中断かつ保存して停止

出力前進/後進(ジョブの扱いで,SAVEを指定した時だけ有効)
ファイル単位    : 1 BACK-再出力  2 SKIP-打ち切り
ジョブ単位     : 1 BACK-再出力
ページ指定
開始ページ   : +/- :現在出力位置の前後 符号なし:先頭
キー指定 キー値 : 開始位置 :   1-255(省略値 - 1)


SHOW=01 END=02 RETURN=03 BACKWARD=04 FORWARD=05 HELP=06 MEMO=09 READMEMO=10
-----------------------------------------------------------
KDI065I USR01(T02) ON WTR01(WTR001) RE-ENQUEUED
KDI052I WTR01(WTR001) TERMINATED
***


-----------------------------------------------------------
●ホストのソースリストをパソコンに取り込む方法
-----------------------------------------------------------
INFFILE
ファイル名:'SLIB.SRC'    ENTER

選択  カーソルをその場にする
SHIFT+F2 → ソースが表示される
「FIMPORT &」 (コマンドラインに「FIMPORT &」を入力して ENTER)

「ファイル転送の処理を開始した。」表示

「テキストファイル受信設定」 クリック
格納ファイル:   参照  (D:\ホストソース\abc0000.txt)
メンバー名.txt   保存
転送開始  クリック

------------------------------
ファイル転送の処理を開始した。
ファイル転送の処理を終了した。 総レコード数=186
***
------------------------------

ENTERで抜ける
ソース表示  メンバー確認   「FIMPORT &」をDELする
F2で一覧に戻る
--------------------------------


-----------------------------------------------------------
●ホストのリストファイルをパソコンに取り込む方法
-----------------------------------------------------------
INFJOB
------------------------
ユーザ登録名    : * (*を指定すると,全ユーザのジョブを処理
                 省略すると,自分のジョブのみを処理)

ジョブ状態      : 3       (省略すると,全ジョブ状態のジョブを処理)
              1 IN - 実行待ちジョブ
              2 EXEC - 実行中ジョブ
              3 OUT - 出力ジョブ
------------------------

F5で下へ

19 ABC9180C 出力中 停止     C   WTR11 0000 12
------------------------

*
F11 表示    (出力中 停止は見れない)

ソースが表示される

「FIMPORT &」入力  ENTER

「ファイル転送の処理を開始した。」表示

「テキストファイル受信設定」 クリック
格納ファイル:   参照  (D:\000ソース前\abc0000.txt)
メンバー名.txt   保存
転送開始  ENTER

------------------------------
ファイル転送の処理を開始した。
ファイル転送の処理を終了した。 総レコード数=1057
***
------------------------------

ENTERで抜ける
ソース表示  メンバー確認   「FIMPORT」をDEL
F2で一覧に戻る


-----------------------------------------------------------
●VTOCユティリティ
-----------------------------------------------------------
ボリュームごとのファイル情報が見れる

------------------< VTOCユティリティ >-----------------------------
オプション ===>

P - VTOCの内容をプリントする。
空白 - VTOCの内容を表示する。

以下のパラメタを指定して下さい。

ボリューム通番 ===> SYS001
プロジェクト名 ===> ABC

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
VOLUME SERIAL: SYS001


FREE SPACE: 5223 TRACKS
DATA SETS: 1

DATASET NAME DSORG TRACKS %USED EXTENTS
------------------------------------------------------------------------------
JWL.FDUMP.WK PS 100 TRKS 9 % 1 X

END OF DATASET LIST


-----------------------------------------------------------
● 
-----------------------------------------------------------


-----------------------------------------------------------
● 
-----------------------------------------------------------


-----------------------------------------------------------
● 
-----------------------------------------------------------




 FIMPORT、FEXPORT デュエットファイル(PLFファイル)の使い方

パソコンとホスト間のデータのやり取りを行う。
C:\windows7\ProgramFiles\WSMGR\ABC370.plf

●FEXPORT PC---->ホスト
FEXPORT 'XXXXXX'   1回目、ホストにXXXXXXなくても作られる
FEXPORT 'XXXXXX',REP 2回目、ホストにXXXXXXあるとエラーになるのでリプレースをつける
-----------------------------------
●FIMPORT ホスト---->PC
FIMPORT 'XXXXXX'   ホストにXXXXXXないとエラーになる
-----------------------------------
●デュエットファイル(PLFファイル)とは
FEXPORT、FIMPORTのファイルのパラメータ
C:\WSMGR\XXXXXX.PLFに保存される
-----------------------------------
●FEXPORT、FIMPORT実行文
FIMPORT 'ABCD010' REPLACE USING(ABCD00.PLF 1 NOOPERATE)
-----------------------------------
●PLFパラメータリストファイルの見方
エミレータ----FEXPORT 'XXXXX'----ファイル送信設定がでる
「パラメータリストファイル指定」----
パラメータリストファイル名:C:\WSMGR\WWPARA.PLF----[オープン]
WWTEST01クリックすると、パラメータリスト識別番号と設定情報が表示される
-----------------------------------
●パラメータリスト内容
送信
テキスト     そのまま
C:\FILE21.txt  修正
なし       そのまま
デフォルト    そのまま
固定長      修正
101バイト    修正
8文字      そのまま
新JIS      そのまま
未サポート    そのまま
-----------------------------------
●パラメータリストファイルの追加
1.FEXPORT 'XXXXX',REP
2.「テキストファイル送信設定」
3.送信ファイル名:C:\FILE30
デフォルト そのまま
固定長 修正
101バイト 修正
8文字 そのまま
新JIS そのまま
未サポート そのまま
4.登録
5.パラメータリストファイル名:C:\WSMGR\FILEX.PLF
6.オープン
7.パラメータリスト識別番号:10
8.パラメータリスト識別名 :TEXT30
9.登録
10.キャンセル
-----------------------------------
●パラメータリストファイルの変更
1.FEXPORT 'XXXXX',REP
2.「パラメータリストファイル指定」
3.参照---C:\WSMGR\FILEX.PLF---オープン
4.リストパラメータ識別番号 10 (10入力 又は 識別名リスト選択)
5.設定
6.送信ファイル名:C:\FILE30
7.登録
8.オープン
9.パラメータ識別名:TEXT30
10.登録
11.登録
12.キャンセル
13.キャンセル

---------------------------------------------
FIMPORT、FEXPORTのパラメータ
---------------------------------------------
パラメータの選択が出来るのは以下である

格納方法:新規/入替え
英数カナ変換:デフォルト
漢字変換:新JIS
拡張漢字のサポート:未サポート

---------------------------------------------
FIMPORTでは改行(0D0A)とEOF(1A)は削除できない
---------------------------------------------
エディタでデータを見ると

11111↓
22222↓
33333↓
44444↓
55555↓


「↓」は改行で16進で見ると「0D0A」
「←」はEOF(エンドオブファイル ファイル終端コード)で16進で見ると「1A」

したがって、このデータをバイナリーエディタで見ると
31313131310D0A
32323232320D0A
33333333330D0A
34343434340D0A
35353535350D0A
1A

となり、データの最後に0D0A1Aが表示される

FIMPORTでは改行(0D0A)とEOF(1A)は削除できないので、受信のパソコン側で対処する事。



MLOG

●MLOGとは
システムの実行結果の履歴が保存されているメッセージファイルで通常は
'SYS.SYSTEM.MLOG1'
'SYS.SYSTEM.MLOG2'
'SYS.SYSTEM.MLOG3'
の3ファイルで回している。MLOG1→MLOG2→MLOG3→MLOG1→
一杯になると自動的に切り替わる。
1ファイルは1週間分とかだが、これはメッセージの量や容量によって各社異なる
切り替わる時にMTに吸い上げて分析用に使用する。

●MLOGの見方
PFD 1 (BROWSE)で内容を照会できます。
稼働中でも可能

●MLOGをパソコンに取り込む
ここではホストのMLOGをパソコンに取り込む方法を記入します
稼働中でも問題ありません

○MLOG1のファイル情報
VOL:SYS002
データセット:PS
レコード形式:FB
論理レコード長:255
ブロック長:5610
第1エクステントトラック数:72
増分トラック数:0
割当てトラック:72
割当てエクステント:1
使用トラック:72
使用エクステント:1

○MLOG1をコピーしてパソコンに取り込む
1.MLOG1のコピー
PFD  3  3  
----------

'SYS.SYSTEM.MLOG1'
000001
----------

2.パソコンにコピー
ホスト−−−−−→PC
FIMPORT 'WWW.KITA'
----------
「テキストファイル受信設定」
----------
格納ファイル名:「D:\mlog\mlog.txt」
格納方法:「新規/入替え」
英数かな変換:「EBCDICカナ有り」
漢字変換:「新JIS」
拡張漢字のサポート:「未サポート」
[転送開始]
----------
11088件
[ENTER]





 




 




 




 
■開発、運用支援ツール


 IFD(画面フォーマット定義体)

IFD画面登録
-----------------------------------
............ 業務支援画面 ...........
 1 開発支援
 2 運用/操作支援
 3 管理支援
-----------------------------------
●「0」 IFDの環境を定義する
......... IFDプライマリオプションメニュー ....
機能項目の選択 : 0
 0 IFDの環境を定義する
 1 フォーマット定義ソースを作成・編集する
 2 フォーマット定義体をFOREGROUNDにて作成する
 3 フォーマット定義体をBACKGROUNDにて作成する
 4 画面を表示・確認する
 5 チェックリストを出力する
 6 画面帳票定義体を移入する
 X IFDを終了する
-----------------------------------
●「1」 基本環境定義
. 環境定義 ..............................
 環境設定の指定 : 1
 1 基本環境定義
 2 応用環境定義
-----------------------------------
●基本環境定義
フォーマット定義ソースライブラリ
ファイル名 : 'ABCLIB.FMTSRC'
パスワード :
COPYライブラリ
ファイル名 : 'ABCLIB.COPY'
パスワード :
フォーマットライブラリ
ファイル名 : 'ABCLIB.FORMAT'
-----------------------------------
●「Enter」「F2」「F2」
-----------------------------------
●「1」 フォーマット定義ソースを作成・編集する
機能項目の選択 : 1
0 IFDの環境を定義する
1 フォーマット定義ソースを作成・編集する
2 フォーマット定義体をFOREGROUNDにて作成する
-----------------------------------
●「2」 レコード自動生成
ソース編集機能の指定 : 2
-----------------------------------
●レコード自動生成
メンバ名 : ABCD010 - *を指定するとメンバ一覧を表示
フォーマットID : - 3を選択した場合
サブウィンドウID : - 3を選択した場合
-----------------------------------
●「ENTER」を5回押す 画面が戻るまで
-----------------------------------
●LINE CODE DIAGNOSTIC MESSAGE
JYB373I-W レコード自動生成が依頼されたが,既にレコードが存在する.
軽度のエラーがあったがレコードを自動生成した
-----------------------------------
●「PF2」
-----------------------------------
●「2」 フォーマット定義体をFOREGROUNDにて作成する
-----------------------------------
● そのまま ABCD010
-----------------------------------
●「ENTER」を5回押す 画面が戻るまで
  JYB240I-I ライブラリ(FORMAT)中のメンバ(ABCD010)を置換した.
  フォーマット定義体を登録した
-----------------------------------
● 「PF2」
-----------------------------------
●「4」 画面を表示・確認する
-----------------------------------
●「PF2」「PF2」
-----------------------------------
●「X」 IFDを終了する


 EXCIDM(対話データベース操作)

ABCD0010のDB更新
-----------------------------------
●「EXCIDM」 「ENTER」
-----------------------------------
●物理/論理ファイル名 : 'ABCD0010'
 処理 : 2 (更新)
 「ENTER」 「PF2」
-----------------------------------
● 物理/論理ファイル名  : 'ABCD0010'
メタデータベースのファイル名 : 'SYSDB'
AIM環境の指定
PED名 : ABCPD
APG名 : ABC00
AIMディレクトリID : (省略値 - 00)
処理 : 2 1 RETRIEVE - 照会処理(省略値)
2 MAINTENANCE - 保守処理 3 CREATE - 作成処理
中間ファイル容量(初期値): (拡張値):
検索データ値域長 : (省略値 - 1)
タイトル名 :
不当データ文字 : (省略値 - *)
文字項目の左づめ : 1 する(省略値) 2 NOSHIFT - しない
レコード順序番号出力 : 1 しない(省略値) 2 SEQNO - する
レコード相対番号出力 : 1 しない(省略値) 2 RELNO - する
レコード分離出力 : 1 しない(省略値) 2 RSPLIT - する
データ項目分離出力 : 1 しない(省略値) 2 ISPLIT - する
データ項目名出力 : 1 毎ぺージ(省略値) 2 HEAD - 初ぺージのみ
リスト出力先 : 1 1 NOPRINT(省略値) 2 PRINT 3 SYSPRINT
ファイル名 : クラス名 :
-----------------------------------
● AAAA01 = 50
AAAA02 = 15
「ENTER」

比較 データ値
A AAAA01 = 50
AAAA02 = 15
AAAA03
AAAA04     08
-----------------------------------
●AAAA04に10
「ENTER」
-----------------------------------
●検索操作が正常終了しました 
U 更新 D 削除 A 追加 R 解除 C 切替 B 一括 S 単一 E 抽出 P 印刷
-----------------------------------
●「U」 「ENTER」
更新操作が正常終了しました 
-----------------------------------
●「F2」戻る
-----------------------------------
-----------------------------------
★照会の時は「1」照会



 




 




 
■エミュレータ


 エミレータを起動したら初期画面が出ず、黒い画面のままになっている。


 実行キー【Enter】を押せば画面が表示されます。

 エミュレーターを終了する時、初期画面ではなく、途中の画面で終了した時、次回立上でこの現象が起きます。
 エミュレーターは終了時点の画面を覚えているため、次回の起動では実行キー【Enter】の待ちの状態になります。
 実行キー【Enter】を押せば、前回終了時点の画面が出ます。


 エミュレーターで「無効な入力です」と表示されて入力できません。


【Esc】を押せば「無効な入力です」が消えて、入力できます。



 フルスクリーンを元に戻すには?


 【Alt】+【V】で戻ります。
 『表示』→「フルスクリーン」で画面がフルスクリーンになった時の戻し方は
 【Alt】+【V】→上の「フルスクリーン」クリックしてチェックを取る。



 実行キーが[Shit]+[Enter]で面倒なので、[Enter]のみに変更したい


実行キー:[Shit]+[Enter]、改行キー:[Enter]

実行キー:[Enter]、改行キー:[Shit]+[Enter]
に変更する。

同じのがあると変更できないのでいったん「改行」の[Enter]を削除する。
「改行」を削除して、「実行」を変更して、「改行」を追加する

1.エミュレーターを立ち上げる

2.「改行」の[Enter]を削除
エミュレーター → ツール → オプション → キーボード

キー種別:カーソル制御キー

改行 [Enter]を選択する(下の方にある)、選択すると青帯になる → [削除] → [OK]

3.「実行」を変更する
エミュレーター → ツール → オプション → キーボード

キー種別:プログラム・アテンション・キー

実行 [Shit]+[Enter]を選択 → [変更] → 「キー設定の変更」 変更したいキーを押す[Enter] 押すと表示がEnterになる → [OK] → [OK]

4.「改行」を追加する
エミュレーター → ツール → オプション → キーボード

キー種別:カーソル制御キー

改行を選択 → [追加] → 「キー設定の追加」 追加したいキーを押す[Shit]+[Enter] → [OK] → [OK]



 6680エミュレータ設定


[スタート] → [すべてのプログラム] → [アクセサリ] → [コマンドプロンプト]
「コマンドプロンプト」
「CsAdmin CONFIG /localfile」を入力  → [Enter]
「CsAdmin CONFIG now」を入力  → [Enter]
「ココマンドプロンプト」を「×」閉じる

[スタート] → [すべてのプログラム] → [通信制御サービス] → [セットアップユーティリティ]
「コンフィグレーションの選択」
「コンフィグレーションの格納先を選択してください」 → [このコンピュータ] → [OK]

「CsConfig」
[コンフィグレーション] → [マイコンピュータ情報+] → [管理a{] → [通信制御サービス+]  → [通信サーバ接続+] → [TCP/IP接続] → [DISPLAY]Wクリック  → 「画面右側に表示」

「通信サーバ接続−TCP/IP接続の設定」
[ローカル情報]タブ → 「端末名」に「wxxxxx」 → 「CsConfig」を「×」閉じる → 保存しますか[はい]

[スタート] → [すべてのプログラム] → [WSMGR] → [エミュレータ] → 
「エミュレータ−DSPEMU」
[ファイル] → [プロパティ] → 「エミュレータのプロパティ」 → [セッション]タブ → 
「プロファイル」 → [標準2] → [詳細設定]タブ → 「警告メッセージ」 → 「ログオン状態の場合に」チェックを外す → [OK]
「エミュレータ−DSPEMU」「×」閉じる

[スタート] → [すべてのプログラム] → [WSMGR] → [プリンター] → 「プリンタ−PRNEMU」 → 「ファイル」 →  「プロパティ」 → 「プリンターのプロパティ」 → [詳細設定]タブ → 「ウィンドウの位置」 → [システムに従う] → [OK]

「プリンター−PRNEMU」 → 「ツール」 → 「オプション」 → 「6685標準のプロパティ」 → [プリンタマトリクス]タブ →  「デバイス種別」 → [GDI印刷] → 「GDI印刷」 → 「スプール最大ページ」 → [100] → 「プリンタ」 →  「名前」 → [WSMGR(ESC/P)] → 「WSMGR(ESC/P)」を登録しない場合、「XXXX」を選択する → 「プリントモード」タブ → 「最大桁長」 → [136]桁に変更  → [OK]
「プリンター−PRNEMU」を「×」閉じる

 




 
■その他


 クリエイトモードとは?


●クリエイトモード処理とは
ログなし処理の事です
DBの更新処理で通常はログを出力しますが、クリエイトモードではログを出しません。

●どのような時に使うか?
DBの大量一括更新の時に使用します(年末の不要DB削除処理など)
ログを出さないので処理時間が早く、ログの領域が入りません。
ログ領域が足りなくてアベンドすることはありません

●どこで指定するか
クリエイトモードのPEDを作り、そのPEDを指定したJCLを実行します。

●処理例
1.DBの吸い上げ(異常時のリカバリー用)
2.DB更新処理(クリエイトモード・ログなし処理)
  ここで異常処理になった時は、「1.DBの吸い上げ」で吸い上げたDBを戻す
3.DBの吸い上げ(通常処理の開始DBセーブ)
4.通常処理(ログあり処理)



 




 




 




 




 




 
このページTOPへ
ACCESSヒント         COBOLヒント 

SEプログラマー・ヒント集メニューへ

Copyright © 2006-2022 s-kitagawa hosthint