# バージョンアップ前（Ver.7）の状態へのロールバック

バージョンアップなどの移行作業で変更したHULFTの動作環境やOS環境を、移行前の状態に戻すことをロールバックといいます。

ロールバックは、HULFTの移行作業で何らかの問題が発生した場合のみ行ってください。

ロールバックは、移行前にバックアップしたファイルや環境を使用して実施します。そのため、移行前の状態が正しくバックアップされていることが前提となります。

HULFTのバックアップについては、「バックアップ」を参照してください。

移行前にバックアップしたファイルを復元すると、以下のHULFTの設定も復元されます。

- 外字テーブル

- EBCDICユーザーテーブル

- システム動作環境設定

- プロダクトキー、シリアル番号

- 要求受付定義ファイル

- JCLへ追加したXRSYSIN定義カード

- XRHOSTまたはXRLOG2の定義

- HULFT 暗号オプションのバージョン

なお、HULFTの移行後に、操作ログなどを新たに出力するように変更している場合は、操作ログファイルの削除や退避を手動で行ってください。

ここでは、バージョンアップを行った後で、HULFT移行前（HULFT Ver.7）の状態に戻す手順について説明します。

## HULFTのシステムファイルのロールバック

移行前にバックアップした以下のHULFT Ver.7のシステムファイルをロールバックします。

- HULFT JCLライブラリー（PO）

- HULFT ロードモジュールライブラリー（PO）

- HULFT ISPFパネルライブラリ（PO）

- HULFT ISPFメッセージライブラリ（PO）

- HULFTパラメーターライブラリー（PO）

- 集配信管理ファイル（VSAM）

- 詳細ホスト情報ファイル（VSAM）

- 集配信履歴ファイル（VSAM）

- IP管理ファイル（PS）

- PORT管理ファイル（PS）

なお、HULFT Ver.7では、集配信履歴ファイルの編成を以下の2種類から選択できます。

- クラスター編成（REUSE属性）

- 代替インデックス編成

Ver.7へのロールバックでは、ロールバック後の集配信履歴ファイルをどちらの編成にするかを選択できます。

以下に、集配信履歴のファイル編成の種類ごとにロールバック用のJCLの例を示しますので、お客様の運用にあわせてJCLの内容を修正し、ロールバックを実行してください。

### クラスター編成（REUSE属性）の集配信履歴ファイルを使用して戻す場合

［ロールバックJCL例］

    //ROLLBACK JOB CLASS=A,MSGCLASS=B
    //*------< LIBRARY RESTORATION >-----------------------
    //DELETE   EXEC PGM=IDCAMS
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         DELETE HULFT.JCL NONVSAM
         DELETE HULFT.LOAD NONVSAM
         DELETE HULFT.PANEL NONVSAM
         DELETE HULFT.MSG NONVSAM
         DELETE HULFT.PARMLIB NONVSAM
         DELETE HULFT.HOSTS.LOCAL NONVSAM
         DELETE HULFT.PROFILE.TCPIP NONVSAM
    //*
    //JCL      EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.JCL.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.JCL,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(1,1,100))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //LOAD     EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.LOAD.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.LOAD,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(35,,100))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //PANEL    EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.PANEL.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.PANEL,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(3,,50))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //MSG      EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.MSG.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.MSG,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(3,,50))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //PARM     EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.PARMLIB.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.PARMLIB,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(1,,10))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //IP       EXEC PGM=IEBGENER
    //SYSUT1   DD   DSN=HULFT.HOSTS.LOCAL.BKUP,DISP=SHR
    //SYSUT2   DD   DSN=HULFT.HOSTS.LOCAL,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,SPACE=(CYL,(1,1))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   DUMMY
    //*
    //PORT     EXEC PGM=IEBGENER
    //SYSUT1   DD   DSN=HULFT.PROFILE.TCPIP.BKUP,DISP=SHR
    //SYSUT2   DD   DSN=HULFT.PROFILE.TCPIP,UNIT=SYSDA,
    //              DISP=(NEW,CATLG),VOL=SER=HUL001,
    //              SPACE=(CYL,(1,1))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   DUMMY
    //*
    //*------< VSAM DEFINE CLUSTER >-----------------------
    //DEFCLSTR EXEC PGM=IDCAMS
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         DELETE HULFT.LOG
         DELETE HULFT.LOG.PATH1
         DELETE HULFT.LOG.PATH2
         DELETE HULFT.FILE
         DELETE HULFT.HOST
         DELETE HULFT.QUEUE
         DELETE HULFT.SYSCNTL
         DEFINE CLUSTER                       -
                (NAME(HULFT.LOG)              -
                 INDEXED                      -
                 REUSE)                       -
                DATA                          -
                (NAME(HULFT.LOG.DATA)         -
                 KEYS(17 0)                   -
                 VOLUMES(HUL001)              -
                 CYLINDERS(5 1)               -
                 SHAREOPTIONS(4 3)            -
                 RECORDSIZE(1000 1000)        -
                 CONTROLINTERVALSIZE(8192))   -
                INDEX                         -
                (NAME(HULFT.LOG.IDX)          -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 SHAREOPTIONS(4 3))
         DEFINE CLUSTER                       -
                (NAME(HULFT.LOG.PATH1)        -
                 INDEXED                      -
                 REUSE)                       -
                DATA                          -
                (NAME(HULFT.LOG.PATH1.DATA)   -
                 KEYS(59 17)                  -
                 VOLUMES(HUL001)              -
                 CYLINDERS(5 1)               -
                 SHAREOPTIONS(4 3)            -
                 RECORDSIZE(1000 1000)        -
                 CONTROLINTERVALSIZE(8192))   -
                INDEX                         -
                (NAME(HULFT.LOG.PATH1.IDX)    -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 SHAREOPTIONS(4 3))
         DEFINE CLUSTER                       -
                (NAME(HULFT.LOG.PATH2)        -
                 INDEXED                      -
                 REUSE)                       -
                DATA                          -
                (NAME(HULFT.LOG.PATH2.DATA)   -
                 KEYS(9 76)                   -
                 VOLUMES(HUL001)              -
                 CYLINDERS(5 1)               -
                 SHAREOPTIONS(4 3)            -
                 RECORDSIZE(1000 1000)        -
                 CONTROLINTERVALSIZE(8192))   -
                INDEX                         -
                (NAME(HULFT.LOG.PATH2.IDX)    -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 SHAREOPTIONS(4 3))
         DEFINE CLUSTER                       -
                (NAME(HULFT.FILE)             -
                 INDEXED)                     -
                DATA                          -
                (NAME(HULFT.FILE.DATA)        -
                 KEYS(12 0)                   -
                 SHAREOPTIONS(4 3)            -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 RECORDSIZE(500 22100))       -
                INDEX                         -
                (NAME(HULFT.FILE.IDX)         -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 SHAREOPTIONS(4 3))
         DEFINE CLUSTER                       -
                (NAME(HULFT.HOST)             -
                 INDEXED)                     -
                DATA                          -
                (NAME(HULFT.HOST.DATA)        -
                 KEYS(51 0)                   -
                 SHAREOPTIONS(4 3)            -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 RECORDSIZE(334 400))         -
                INDEX                         -
                (NAME(HULFT.HOST.IDX)         -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 SHAREOPTIONS(4 3))
          DEFINE CLUSTER                      -
                 (NAME(HULFT.QUEUE)           -
                  INDEXED)                    -
                 DATA                         -
                 (NAME(HULFT.QUEUE.DATA)      -
                  KEYS(59 0)                  -
                  VOLUMES(HUL001)             -
                  CYLINDERS(1 1)              -
                  SHAREOPTIONS(4 3)           -
                  RECORDSIZE(2000 2000)       -
                  CONTROLINTERVALSIZE(8192))  -
                 INDEX                        -
                 (NAME(HULFT.QUEUE.IDX)       -
                  VOLUMES(HUL001)             -
                  CYLINDERS(1 1)              -
                  SHAREOPTIONS(4 3))
    //*
    //*------< VSAM REPRO >-------------------------------
    //LOG      EXEC PGM=IDCAMS
    //U01      DD   DSN=HULFT.LOG.BKUP,DISP=OLD
    //U11      DD   DSN=HULFT.LOG,DISP=OLD
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD *
         REPRO INFILE(U01) OUTFILE(U11)
    //*
    //LOG1SORT EXEC PGM=SORT
    //SORTIN   DD   DSN=HULFT.LOG.BKUP,DISP=OLD
    //SORTOUT  DD   DSN=&&LOG1,DISP=(,PASS),UNIT=SYSDA,
    //              SPACE=(CYL,(45,15),RLSE)
    //SORTWK01 DD   UNIT=SYSDA,SPACE=(CYL,(10,5))
    //SORTWK02 DD   UNIT=SYSDA,SPACE=(CYL,(10,5))
    //SYSOUT   DD   SYSOUT=*
    //SYSIN    DD   *
          SORT FIELDS=(22,59,BI,A)
    //*
    //LOG1     EXEC PGM=IDCAMS
    //U01      DD   DSN=&&LOG1,DISP=OLD
    //U11      DD   DSN=HULFT.LOG.PATH1,DISP=OLD
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         REPRO INFILE(U01) OUTFILE(U11)
    //*
    //LOG2SORT EXEC PGM=SORT
    //SORTIN   DD   DSN=HULFT.LOG.BKUP,DISP=OLD
    //SORTOUT  DD   DSN=&&LOG2,DISP=(,PASS),UNIT=SYSDA,
    //              SPACE=(CYL,(45,15),RLSE)
    //SORTWK01 DD   UNIT=SYSDA,SPACE=(CYL,(10,5))
    //SORTWK02 DD   UNIT=SYSDA,SPACE=(CYL,(10,5))
    //SYSOUT   DD   SYSOUT=*
    //SYSIN    DD   *
          SORT FIELDS=(81,9,BI,A)
    //*
    //LOG2     EXEC PGM=IDCAMS
    //U01      DD   DSN=&&LOG2,DISP=OLD
    //U11      DD   DSN=HULFT.LOG.PATH2,DISP=OLD
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         REPRO INFILE(U01) OUTFILE(U11)
    //*
    //FILE     EXEC PGM=IDCAMS
    //U01      DD   DSN=HULFT.FILE.BKUP,DISP=OLD
    //U11      DD   DSN=HULFT.FILE,DISP=OLD
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         REPRO INFILE(U01) OUTFILE(U11)
    //*
    //HOST     EXEC PGM=IDCAMS
    //U01      DD   DSN=HULFT.HOST.BKUP,DISP=OLD
    //U11      DD   DSN=HULFT.HOST,DISP=OLD
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         REPRO INFILE(U01) OUTFILE(U11)
    //

DD名 | 項目名 | 説明
--- | --- | ---
IN | HULFT.JCL.BKUP | HULFT JCLライブラリー（バックアップファイル）
OUT | HULFT.JCL | HULFT JCLライブラリー
IN | HULFT.LOAD.BKUP | HULFTロードモジュールライブラリー（バックアップファイル）
OUT | HULFT.LOAD | HULFTロードモジュールライブラリー
IN | HULFT.PANEL.BKUP | HULFT ISPFパネルライブラリー（バックアップファイル）
OUT | HULFT.PANEL | HULFT ISPFパネルライブラリー
IN | HULFT.MSG.BKUP | HULFT ISPFメッセージライブラリー（バックアップファイル）
OUT | HULFT.MSG | HULFT ISPFメッセージライブラリー
IN | HULFT.PARMLIB.BKUP | HULFTパラメーターライブラリー（バックアップファイル）
OUT | HULFT.PARMLIB | HULFTパラメーターライブラリー
SYSUT1 | HULFT.HOSTS.LOCAL.BKUP | IP管理ファイル（バックアップファイル）
SYSUT2 | HULFT.HOSTS.LOCAL | IP管理ファイル
SYSUT1 | HULFT.PROFILE.TCPIP.BKUP | PORT管理ファイル（バックアップファイル）
SYSUT2 | HULFT.PROFILE.TCPIP | PORT管理ファイル
U01 | HULFT.LOG.BKUP | 集配信履歴ファイルIDキーファイル（バックアップファイル）
U11 | HULFT.LOG | 集配信履歴ファイル
U11 | HULFT.LOG.PATH1 | 集配信履歴ファイルホスト名キーファイル
U11 | HULFT.LOG.PATH2 | 集配信履歴ファイル日付キーファイル
U01 | HULFT.FILE.BKUP | 集配信管理ファイル（バックアップファイル）
U11 | HULFT.FILE | 集配信管理ファイル
U01 | HULFT.HOST.BKUP | 詳細ホスト情報ファイル（バックアップファイル）
U11 | HULFT.HOST | 詳細ホスト情報ファイル

パラメーター名 | 項目名 | 説明
--- | --- | ---
VOLUMES | HUL001 | ボリューム名
CYLINDERS | (*1) | 容量
NAME | HULFT.FILE | 集配信管理ファイル
NAME | HULFT.FILE.DATA | 集配信管理ファイル データ・コンポーネント エントリー名
NAME | HULFT.FILE.IDX | 集配信管理ファイル インデックス・コンポーネント エントリー名
NAME | HULFT.HOST | 詳細ホスト情報ファイル
NAME | HULFT.HOST.DATA | 詳細ホスト情報ファイル データ・コンポーネント エントリー名
NAME | HULFT.HOST.IDX | 詳細ホスト情報ファイル インデックス・コンポーネント エントリー名
NAME | HULFT.QUEUE | 配信制御ファイル
NAME | HULFT.QUEUE.DATA | 配信制御ファイル データ・コンポーネント エントリー名
NAME | HULFT.QUEUE.IDX | 配信制御ファイル インデックス・コンポーネント エントリー名
NAME | HULFT.LOG | 集配信履歴ファイルIDキーファイル
NAME | HULFT.LOG.DATA | 集配信履歴ファイルIDキーファイル データ・コンポーネント エントリー名
NAME | HULFT.LOG.IDX | 集配信履歴ファイルIDキーファイル インデックス・コンポーネント エントリー名
NAME | HULFT.LOG.PATH1 | 集配信履歴ホスト名キーファイル
NAME | HULFT.LOG.PATH1.DATA | 集配信履歴ホスト名キーファイル データ・コンポーネント エントリー名
NAME | HULFT.LOG.PATH1.IDX | 集配信履歴ホスト名キーファイル インデックス・コンポーネント エントリー名
NAME | HULFT.LOG.PATH2 | 集配信履歴日付キーファイル
NAME | HULFT.LOG.PATH2.DATA | 集配信履歴日付キーファイル データ・コンポーネント エントリー名
NAME | HULFT.LOG.PATH2.IDX | 集配信履歴日付キーファイル インデックス・コンポーネント エントリー名
UNIT | SYSDA | UNIT
VOL=SER | HUL001 | ボリューム名

*1 | : | (一次要求量 増分量)

注意

- ロールバック用のJCLの内容（ライブラリー名、DD名、容量など）は、ご利用の環境にあわせて修正してください。容量の設定値は、移行前の環境をインストールしたときと同じ容量を設定することを推奨します。

- HULFT.LOG.PATH1は、HULFT.LOG.BKUPのホスト名をキーにしてソートしたものを復元してください。

- HULFT.LOG.PATH2は、HULFT.LOG.BKUPの日付をキーにしてソートしたものを復元してください。

### 代替インデックス編成の集配信履歴ファイルに戻す場合

［ロールバックJCL例］

    //ROLLBACK JOB CLASS=A,MSGCLASS=B
    //*------< LIBRARY RESTORATION >-----------------------
    //DELETE   EXEC PGM=IDCAMS
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         DELETE HULFT.JCL NONVSAM
         DELETE HULFT.LOAD NONVSAM
         DELETE HULFT.PANEL NONVSAM
         DELETE HULFT.MSG NONVSAM
         DELETE HULFT.PARMLIB NONVSAM
         DELETE HULFT.HOSTS.LOCAL NONVSAM
         DELETE HULFT.PROFILE.TCPIP NONVSAM
    //*
    //JCL      EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.JCL.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.JCL,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(1,1,100))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //LOAD     EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.LOAD.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.LOAD,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(35,,100))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //PANEL    EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.PANEL.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.PANEL,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(3,,50))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //MSG      EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.MSG.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.MSG,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(3,,50))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //PARM     EXEC PGM=IEBCOPY
    //IN       DD   DSN=HULFT.PARMLIB.BKUP,DISP=SHR
    //OUT      DD   DSN=HULFT.PARMLIB,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,
    //              SPACE=(CYL,(1,,10))
    //SYSUT3   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSUT4   DD   UNIT=SYSDA,SPACE=(CYL,(5))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         COPY OUTDD=OUT,INDD=IN
    //*
    //IP       EXEC PGM=IEBGENER
    //SYSUT1   DD   DSN=HULFT.HOSTS.LOCAL.BKUP,DISP=SHR
    //SYSUT2   DD   DSN=HULFT.HOSTS.LOCAL,DISP=(NEW,CATLG),
    //              UNIT=SYSDA,VOL=SER=HUL001,SPACE=(CYL,(1,1))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   DUMMY
    //*
    //PORT     EXEC PGM=IEBGENER
    //SYSUT1   DD   DSN=HULFT.PROFILE.TCPIP.BKUP,DISP=SHR
    //SYSUT2   DD   DSN=HULFT.PROFILE.TCPIP,UNIT=SYSDA,
    //              DISP=(NEW,CATLG),VOL=SER=HUL001,
    //              SPACE=(CYL,(1,1))
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   DUMMY
    //*
    //*------< VSAM DEFINE CLUSTER >-----------------------
    //DEFCLSTR EXEC PGM=IDCAMS
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         DELETE HULFT.FILE
         DELETE HULFT.HOST
         DELETE HULFT.QUEUE
         DELETE HULFT.SYSCNTL
         DEFINE CLUSTER                       -
                (NAME(HULFT.FILE)             -
                 INDEXED)                     -
                DATA                          -
                (NAME(HULFT.FILE.DATA)        -
                 KEYS(12 0)                   -
                 SHAREOPTIONS(4 3)            -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 RECORDSIZE(500 22100))       -
                INDEX                         -
                (NAME(HULFT.FILE.IDX)         -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 SHAREOPTIONS(4 3))
         DEFINE CLUSTER                       -
                (NAME(HULFT.HOST)             -
                 INDEXED)                     -
                DATA                          -
                (NAME(HULFT.HOST.DATA)        -
                 KEYS(51 0)                   -
                 SHAREOPTIONS(4 3)            -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 RECORDSIZE(334 400))         -
                INDEX                         -
                (NAME(HULFT.HOST.IDX)         -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 SHAREOPTIONS(4 3))
          DEFINE CLUSTER                      -
                 (NAME(HULFT.QUEUE)           -
                  INDEXED)                    -
                 DATA                         -
                 (NAME(HULFT.QUEUE.DATA)      -
                  KEYS(59 0)                  -
                  VOLUMES(HUL001)             -
                  CYLINDERS(1 1)              -
                  SHAREOPTIONS(4 3)           -
                  RECORDSIZE(2000 2000)       -
                  CONTROLINTERVALSIZE(8192))  -
                 INDEX                        -
                 (NAME(HULFT.QUEUE.IDX)       -
                  VOLUMES(HUL001)             -
                  CYLINDERS(1 1)              -
                  SHAREOPTIONS(4 3))
    //*
    //*------< VSAM REPRO >-------------------------------
    //FILE     EXEC PGM=IDCAMS
    //U01      DD   DSN=HULFT.FILE.BKUP,DISP=OLD
    //U11      DD   DSN=HULFT.FILE,DISP=OLD
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         REPRO INFILE(U01) OUTFILE(U11)
    //*
    //HOST     EXEC PGM=IDCAMS
    //U01      DD   DSN=HULFT.HOST.BKUP,DISP=OLD
    //U11      DD   DSN=HULFT.HOST,DISP=OLD
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         REPRO INFILE(U01) OUTFILE(U11)
    //*
    //*------< LOG RESTORATION >-----------------------
    //DEFCLSTR EXEC PGM=IDCAMS
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         DELETE HULFT.LOG
         DEFINE CLUSTER                       -
                (NAME(HULFT.LOG)              -
                 INDEXED)                     -
                DATA                          -
                (NAME(HULFT.LOG.DATA)         -
                 KEYS(17 0)                   -
                 VOLUMES(HUL001)              -
                 CYLINDERS(5 1)               -
                 SHAREOPTIONS(4 3)            -
                 RECORDSIZE(1000 1000)        -
                 CONTROLINTERVALSIZE(8192))   -
                INDEX                         -
                (NAME(HULFT.LOG.IDX)          -
                 VOLUMES(HUL001)              -
                 CYLINDERS(1 1)               -
                 SHAREOPTIONS(4 3))
    //*
    //LOGREST  EXEC PGM=IDCAMS
    //IN       DD   DSN=HULFT.LOG.BKUP,DISP=OLD
    //OUT      DD   DSN=HULFT.LOG,DISP=OLD
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         REPRO INFILE(IN) OUTFILE(OUT)
    //*
    //LOGALT   EXEC PGM=IDCAMS
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
         DELETE   HULFT.LOG.PATH1
         DEFINE   ALTERNATEINDEX              -
                  (NAME(HULFT.LOG.PATH1)      -
                   IMBED                      -
                   UNIQUEKEY                  -
                   UPGRADE                    -
                   KEYS(59 17)                -
                   RECSZ(100 100)             -
                   VOL(HUL001)                -
                   SHR(4 3)                   -
                   RELATE(HULFT.LOG))         -
                   DATA                       -
                  (NAME(HULFT.LOG.PATH1.DATA) -
                   CYLINDERS(5 1))            -
                  INDEX                       -
                  (NAME(HULFT.LOG.PATH1.IDX)  -
                   CYLINDERS(5 1))
         DEFINE PATH                          -
                  (NAME(HULFT.LOG.PATH1)      -
                   PATHENTRY(HULFT.LOG.PATH1) -
                   UPDATE)
         DELETE HULFT.LOG.PATH2
         DEFINE ALTERNATEINDEX                -
                 (NAME(HULFT.LOG.PATH2)       -
                  IMBED                       -
                  UNIQUEKEY                   -
                  UPGRADE                     -
                  KEYS(9 76)                  -
                  RECSZ(40 40)                -
                  VOL(HUL001)                 -
                  SHR(4 3)                    -
                  RELATE(HULFT.LOG))          -
                 DATA                         -
                 (NAME(HULFT.LOG.PATH2.DATA)  -
                  CYLINDERS(5 1))             -
                 INDEX                        -
                 (NAME(HULFT.LOG.PATH2.IDX)   -
                  CYLINDERS(5 1))
         DEFINE PATH                          -
                 (NAME(HULFT.LOG.PATH2)       -
                  PATHENTRY(HULFT.LOG.PATH2)  -
                  UPDATE)
    //*
    //LOGBLI   EXEC PGM=IDCAMS
    //U10      DD   DSN=HULFT.LOG,DISP=OLD
    //U11      DD   DSN=HULFT.LOG.PATH1,DISP=OLD
    //U12      DD   DSN=HULFT.LOG.PATH2,DISP=OLD
    //IDCUT1   DD   VOL=SER=HUL001,UNIT=SYSDA,DISP=OLD,
    //              AMP=AMORG
    //IDCUT2   DD   VOL=SER=HUL001,UNIT=SYSDA,DISP=OLD,
    //              AMP=AMORG
    //SYSPRINT DD   SYSOUT=*
    //SYSIN    DD   *
     BLDINDEX INFILE(U10)                     -
       OUTFILE(U11)
     BLDINDEX INFILE(U10)                     -
       OUTFILE(U12)

DD名 | 項目名 | 説明
--- | --- | ---
IN | HULFT.JCL.BKUP | HULFT JCLライブラリー（バックアップファイル）
OUT | HULFT.JCL | HULFT JCLライブラリー
IN | HULFT.LOAD.BKUP | HULFTロードモジュールライブラリー（バックアップファイル）
OUT | HULFT.LOAD | HULFTロードモジュールライブラリー
IN | HULFT.PANEL.BKUP | HULFT ISPFパネルライブラリー（バックアップファイル）
OUT | HULFT.PANEL | HULFT ISPFパネルライブラリー
IN | HULFT.MSG.BKUP | HULFT ISPFメッセージライブラリー（バックアップファイル）
OUT | HULFT.MSG | HULFT ISPFメッセージライブラリー
IN | HULFT.PARMLIB.BKUP | HULFTパラメーターライブラリー（バックアップファイル）
OUT | HULFT.PARMLIB | HULFTパラメーターライブラリー
SYSUT1 | HULFT.HOSTS.LOCAL.BKUP | IP管理ファイル（バックアップファイル）
SYSUT2 | HULFT.HOSTS.LOCAL | IP管理ファイル
SYSUT1 | HULFT.PROFILE.TCPIP.BKUP | PORT管理ファイル（バックアップファイル）
SYSUT2 | HULFT.PROFILE.TCPIP | PORT管理ファイル
IN | HULFT.LOG.BKUP | 集配信履歴ファイルIDキーファイル（バックアップファイル）
OUT | HULFT.LOG | 集配信履歴ファイル
U10 | HULFT.LOG | 集配信履歴ファイル
U11 | HULFT.LOG.PATH1 | 集配信履歴ファイルホスト名キーファイル
U12 | HULFT.LOG.PATH2 | 集配信履歴ファイル日付キーファイル
U01 | HULFT.FILE.BKUP | 集配信管理ファイル（バックアップファイル）
U11 | HULFT.FILE | 集配信管理ファイル
U01 | HULFT.HOST.BKUP | 詳細ホスト情報ファイル（バックアップファイル）
U11 | HULFT.HOST | 詳細ホスト情報ファイル

パラメーター名 | 項目名 | 説明
--- | --- | ---
VOLUMES | HUL001 | ボリューム名
CYLINDERS | (*1) | 容量
NAME | HULFT.FILE | 集配信管理ファイル
NAME | HULFT.FILE.DATA | 集配信管理ファイル データ・コンポーネント エントリー名
NAME | HULFT.FILE.IDX | 集配信管理ファイル インデックス・コンポーネント エントリー名
NAME | HULFT.HOST | 詳細ホスト情報ファイル
NAME | HULFT.HOST.DATA | 詳細ホスト情報ファイル データ・コンポーネント エントリー名
NAME | HULFT.HOST.IDX | 詳細ホスト情報ファイル インデックス・コンポーネント エントリー名
NAME | HULFT.QUEUE | 配信制御ファイル
NAME | HULFT.QUEUE.DATA | 配信制御ファイル データ・コンポーネント エントリー名
NAME | HULFT.QUEUE.IDX | 配信制御ファイル インデックス・コンポーネント エントリー名
NAME | HULFT.LOG | 集配信履歴ファイルIDキーファイル
NAME | HULFT.LOG.DATA | 集配信履歴ファイルIDキーファイル データ・コンポーネント エントリー名
NAME | HULFT.LOG.IDX | 集配信履歴ファイルIDキーファイル インデックス・コンポーネント エントリー名
NAME | HULFT.LOG.PATH1 | 集配信履歴ホスト名キーファイル
NAME | HULFT.LOG.PATH1.DATA | 集配信履歴ホスト名キーファイル データ・コンポーネント エントリー名
NAME | HULFT.LOG.PATH1.IDX | 集配信履歴ホスト名キーファイル インデックス・コンポーネント エントリー名
NAME | HULFT.LOG.PATH2 | 集配信履歴日付キーファイル
NAME | HULFT.LOG.PATH2.DATA | 集配信履歴日付キーファイル データ・コンポーネント エントリー名
NAME | HULFT.LOG.PATH2.IDX | 集配信履歴日付キーファイル インデックス・コンポーネント エントリー名
UNIT | SYSDA | UNIT
VOL=SER | HUL001 | ボリューム名

*1 | : | (一次要求量 増分量)

注意

ロールバック用のJCLの内容（ライブラリー名、DD名、容量など）は、ご利用の環境にあわせて修正してください。容量の設定値は、移行前の環境をインストールしたときと同じ容量を設定することを推奨します。

## OS環境のロールバック

以下のOS環境の設定を変更している場合は、バックアップしたデータまたは控えた情報をもとに、お客様ご自身でバージョンアップ前の状態に戻してください。

- APF許可ライブラリーへの定義

- HULFT管理画面を起動するためのプロシージャの変更

- OMVSセグメントの定義

- RACFへのユーザーIDおよびパスワードの登録