Operation Knowhow タイムスタンプの重要性について 要 初 版 第11版 2007/01/01 2013/03/11 1 Copyright 2007 CYFLEX L.L.C. Operation Knowhow タイムスタンプとは? タイプスタンプとは、ファイルやプログラムを作成した場合の タイプスタンプとは ファイルやプログラムを作成した場合の 作成日付、変更を行った場合の変更日付、使用した場合の 最終使用 な 最終使用日などがシステムにより自動的に記録されます。 シ テ より自動的 記録されます。 タイプスタンプは、システムにより自動更新されるためユー ザ が強制的 変更する とは きま ん ザーが強制的に変更することはできません。 また、更新される日付は、オブジェクトへの処理内容により 異なります。 異なります タイムスタンプは、オブジェクト記述に記録されており、不要 オブジ クトの整理 プログラムリリ ス管理 トラブル対応 オブジェクトの整理、プログラムリリース管理、トラブル対応 などにおいて重要な情報となります。 2 Copyright 2007 CYFLEX L.L.C. Operation Knowhow このような経験はありませんか? 本番環境を別環境に丸ごと 本番環境を別環境に丸ごとコピーしたら本番環境の全オブジェクトの最終使 ピ したら本番環境の全オブジ クトの最終使 用日が変更されてしまった。 →本当に使用していないオブジェクトの検出ができなくなってしまう。 保管テープからデータを復元を行ったが、ファイルレベル識別エラーの メッセージが出てディスク上のファイルがリネームされてしまった。 →本当に復元されたのか不安になってしまう。 →ゴミが残ってしまう。 ゴミが残ってしまう。 マシンリプレースのために、ライブラリーのリストアーを行ったら全オブジェクト の変更日が変わってしまった。 →プログラムリリ ス管理で変更日を使用しているのでオブジェクトが →プログラムリリース管理で変更日を使用しているのでオブジェクトが 変更されたと認識されてしまう。 3 Copyright 2007 CYFLEX L.L.C. Operation Knowhow 作成日の更新 Bの作成日は変わらない。(作成日は元のまま) A SAVLIB/ SAVOBJ RSTLIB/ RSTOBJ A B Bの作成日は変わる。(AとBの作成日は異なる) A CPYLIB B CRTDUPOBJ CPYF CRTFILE(*YES) A ファイル・レベル識別コードが異なるので リストアはできない。 ALWOBJDIF(*ALL)にすればリストアー ALWOBJDIF( ALL)にすればリストア できるがディスク上のファイルはリネーム される。 RSTLIB 4 Copyright 2007 CYFLEX L.L.C. Operation Knowhow 作成日についての注意事項 CPYLIB CPYLIB,CRTDUPOBJ,CPYF CRTDUPOBJ CPYF CRTFILE(*YES)を実行 するとコピー先の作成日は変更される。 保管媒体上の作成日とディスク上の作成日が一 致しないとファイルレ ル識別 ラ になる。 致しないとファイルレベル識別エラーになる。 ALWOBJDIF(*ALL)で強制的に復元できるがディ ( ) スク上のファイル名がリネームされてゴミが 残ってしまう。 5 Copyright 2007 CYFLEX L.L.C. Operation Knowhow ファイル・レベル識別コード 作成日付 時刻で作成 作成日付、時刻で作成 6 Copyright 2007 CYFLEX L.L.C. Operation Knowhow 復元時の警告メッセージ ファイル・レベル識別コード が一致していない旨のメッ セ ジ セージ 古いファイルの名前 がリネームされる。 がリネ ムされる。 7 Copyright 2007 CYFLEX L.L.C. Operation Knowhow 作成日を変更しない方法 Aの作成日は変わる。 A CPYLIB C RNMOBJ B RNMOBJ Aの作成日は変わらない。 B A RNMOBJ B A C RNMOBJ A DLTLIB A RNMOBJ A A B リネームでは作成日、最終使用日は変更されない。 8 Copyright 2007 CYFLEX L.L.C. Operation Knowhow タイムスタンプの重要性 作成日、変更日、最終使用日はシステム変更、MES、資産管 作成日 変更日 最終使用日はシステム変更 MES 資産管 理、リリース管理などにおいて大事な情報となります。 そのタイムスタンプが勝手に更新されてしまうとその情報は役 に立たなくなってしまいます。 そのためには、セキュリティも含めた運用方法を確立しておく 必要があります。 必要があります コマンド別に更新されるタイムスタンプの一覧表を作成しまし たのでご参考にしてください。 9 Copyright 2007 CYFLEX L.L.C. Operation Knowhow コマンド別のタイムスタンプ更新(1/4) ( / ) コマンド 処理 作成ユーザー 作成日 変更日 最終使用日 保管日 復元日 プログラムによる検索 IN 不変 不変 不変 実行日付 不変 不変 プログラムによる更新 I/O 不変 不変 実行日付 実行日付 不変 不変 QUERY IN 不変 不変 不変 実行日付 不変 不変 DFU I/O 不変 不変 実行日付 実行日付 不変 不変 SAVLIB/SAVOBJ IN 不変 不変 不変 不変 実行日付 不変 RSTLIB/RSTOBJ (存在しない場合) OUT 保管媒体上の 作成者 保管媒体上の 作成日 実行日付 ブランク ブランク 実行日付 RSTLIB/RSTOBJ (存在する場合) OUT 不変 不変 実行日付 不変 不変 実行日付 CRTPF OUT 実行ユーザー 実行日付 実行日付 ブランク ブランク ブランク DSPFD IN 不変 不変 不変 不変 不変 不変 DSPFFD IN 不変 不変 不変 不変 不変 不変 DSPOBJD IN 不変 不変 不変 不変 不変 不変 DSPPGMREF IN 不変 不変 不変 不変 不変 不変 10 Copyright 2007 CYFLEX L.L.C. Operation Knowhow NEW コマンド別のタイムスタンプ更新(2/4) ( / ) コマンド DSPPGM 処理 作成ユーザー 作成日 変更日 最終使用日 保管日 復元日 IN 不変 不変 不変 不変 不変 不変 IN 不変(各OBJ) 不変(各OBJ) 不変(各OBJ) 実行日付 (各OBJ) 不変(各OBJ) 不変(各OBJ) OUT 実行ユーザー (各OBJ) 実行日付 (各OBJ) 実行日付 (各OBJ) ブランク*4 (各OBJ) ブランク (各OBJ) ブランク (各OBJ) 不変 不変 不変 実行日付 不変 不変 実行ユーザー 実行日付 実行日付 実行日付 *1 ブランク ブランク 不変 不変 不変 実行日付 不変 不変 実行ユーザー 実行日付 実行日付 実行日付 ブランク ブランク CPYLIB IN CRTDUPOBJ OUT CPYF CRTFILE(*YES) IN CPYF CRTFILE(*NO) IN 不変 不変 不変 実行日付 不変 不変 OUT 不変 不変 実行日付 実行日付 不変 不変 DSPPFM IN 不変 不変 不変 実行日付 不変 不変 ADDPFM I/O 不変 不変 実行日付 不変 不変 不変 RMVM I/O 不変 不変 実行日付 不変 不変 不変 CHGOBJD(TEXT変更) I/O 不変 不変 実行日付 不変 不変 不変 RGZPFM I/O 不変 不変 実行日付 実行日付 不変 不変 CHGPF I/O 不変 不変 実行日付 不変 不変 不変 OUT 11 Copyright 2007 CYFLEX L.L.C. Operation Knowhow コマンド別のタイムスタンプ更新(3/4) ( / ) コマンド 処理 作成ユーザー 作成日 変更日 最終使用日 保管日 復元日 CLRPFM I/O 不変 不変 実行日付 不変 不変 不変 MOVOBJ OUT 不変 不変 実行日付 不変 ブランク ブランク CMPPFM IN 不変 不変 不変 実行日付 不変 不変 不変(各OBJ) LIBは実行 日付になる 不変(各OBJ) 不変(各OBJ) 不変(各OBJ) RNMOBJ(LIBRARY単位) 不変(各OBJ) I/O 不変(各OBJ) RNMOBJ(OBJECT単位) I/O 不変 不変 実行日付 不変 ブランク ブランク RNMM I/O 不変 不変 実行日付 不変 不変 不変 GRTOBJAUT I/O 不変 不変 不変*3 不変 3 不変 *2 2 不変 不変 RVKOBJAUT I/O 不変 不変 不変*3 不変 不変 不変 DSPOBJAUT I/O 不変 不変 不変 不変 不変 不変 FTP(GET) IN 不変 不変 不変 実行日付 不変 不変 FTP(PUT) OUT 不変 不変 実行日付 実行日付 不変 不変 PCOMM(データ転送) IN 不変 不変 不変 実行日付 不変 不変 12 Copyright 2007 CYFLEX L.L.C. Operation Knowhow NEW コマンド別のタイムスタンプ更新(4/4) ( / ) コマンド 処理 作成ユーザー 作成日 変更日 最終使用日 保管日 復元日 DSPDTAARA IN 不変 不変 不変 実行日付 不変 不変 CHGDTAARA I/O 不変 不変 実行日付 実行日付 不変 不変 RTVDTAARA IN 不変 不変 不変 実行日付 不変 不変 SAVRSTLIB/SAVRSTOBJ (存在しない場合) OUT 保管媒体上の作 成者 保管媒体上の 作成日 実行日付 ブランク 実行日付 実行日付 SAVRSTLIB/SAVRSTOBJ (存在する場合) OUT 不変 不変 実行日付 不変 実行日付 実行日付 RTVOBJD IN 不変 不変 不変 不変 不変 不変 RTVCLSRC IN 不変 不変 不変 実行日付 不変 不変 RSTUSRPRF(上書き) OUT 不変 不変 実行日 不変 不変 実行日付 CHGOBJAUD OUT 不変 不変 実行日 不変 不変 不変 CHGOBJOWN OUT 不変 不変 実行日 不変 不変 不変 *1 *2 *3 *4 データを複写しない場合は、使用日はブランクになります。 REFOBJ(参照オブジェクト)を指定した場合は、参照されたオブジェクトの最終使用日は実行日付になります。 *PUBLICについて実行した場合は 変更日は実行日付になります *PUBLICについて実行した場合は、変更日は実行日付になります。 *FILEの場合は、実行日付になります。 13 Copyright 2007 CYFLEX L.L.C. Operation Knowhow プログラム関係のタイムスタンプ SOURCE OBJECT コンパイル 作成日 作成日 変更日 変更日 SRC変更日 SRC変更日 そのまま引き継ぐ CPYSRCF *ADD 作成日 変更日 CRTDUPOBJ そのまま引き継ぐ 作成日 作成日:コピーした日 変更日:コピーした日 SRC変更日:コピーした日 変更日 SRC変更日 同じにはならない 作成日:コンパイルした日 変 変更日:コンパイルした日 パ 作成日:コピーした日 変更日:コピーした日 SRC変更日 SOURCE,OBJECTの変更日は以下の場合にも更新される。 ・テキスト、タイプの変更、RSTOBJ、リネーム テキスト タイプの変更 RSTOBJ リネ ム 14 Copyright 2007 CYFLEX L.L.C. Operation Knowhow ソースメンバーのタイムスタンプ CPYSRCFを実行した場合 タイムスタンプ *REPLACE *ADD ソース作成日 元のまま Copyした日 ソース変更日(PDMのF14) Copyした日 V6R1より元のまま SRCCHGDATE(*NEW) を指定すればCopy日付に なる Copyした日 メンバー作成日 元のまま Copyした日 メンバー変更日 Copyした日 Copyした日 注意:*REPLACEの場合は、テキスト、タイプはコピーされません。 ソース変更日とメンバー変更日が一致しない場合がありますが、これはメンバー変更日だけが更新されるケース があるためです。 メンバー変更日だけが更新されるケース ①RSTOBJによるメンバーのリストアー ②メンバー名の変更 ③テキストの変更 ③ キ 変更 15 Copyright 2007 CYFLEX L.L.C. Operation Knowhow ソースメンバーのタイムスタンプ ソースメンバーをリストアーした場合 RSTOBJ ソース変更日:テープ上のソース変更日 メンバー変更日:リストアーした日 16 Copyright 2007 CYFLEX L.L.C. Operation Knowhow 変更日の確認 ・ソース変更日は、PDMのOPT=8で確認できます。DSPFD TYPE(*MBR)でも可能 ・メンバー変更日は、DSPFD TYPE(*MBRLIST) or TYPE(*MBR)で確認できます。 PDM OPT=8 DSPFD TYPE(*MBR) メンバーの変更日 ソースの変更日 ソースの変更日 PDMのF14で 表示 17 Copyright 2007 CYFLEX L.L.C. Operation Knowhow DSPOBJとDSPFDの変更日 ・DSPOBJDとDSPFDの変更日が異なる場合があります。 ・DSPOBJDの場合は、SAVLIBした後の最初のデータ変更のみで更新されます。 (S (SAVLIBをしなければ更新されない。データベースの場合) をしなければ更新されな デ タベ 場合) ・DSPFDの場合は、データが変更されるたびに更新されます。 18 Copyright 2007 CYFLEX L.L.C. Operation Knowhow ライブラリーの変更日 SAVLIBした場合、ライブラリーのオブジェクト記述の変更日が変更される場合と されない場合があります。 変更日は変わりません。 SAVLIB前 SAVLIB後 19 Copyright 2007 CYFLEX L.L.C. Operation Knowhow ライブラリーの変更日 セーブしたライブラリーの中に、オブジェクトタイプ*FILEが含まれていると ライブラリーのオブジェクト記述の変更日は変更されます。 SAVLIB前 SAVLIB後 20 変更日は変わります。 Copyright 2007 CYFLEX L.L.C. Operation Knowhow タイムスタンプの取得方法 得 法 タイプ タンプは、以下の方法で取得できます。 タイプスタンプは、以下の方法で取得できます。 • RTVOBJD • QUSROBJD OBJD0100 変更日 OBJD0400 変更日,使用日 OBJD0400は、OBJD0100より時間がかかります。 OBJD0400では、メンバーが多い場合は時間がかかります。 例:プログラムソ スの使用日を取得する場合 例:プログラムソースの使用日を取得する場合 21 Copyright 2007 CYFLEX L.L.C. Operation Knowhow CPYおよびCPYSRCFの最新更新日 V5R3M0およびV5R4M0では、ファイル・コピー(CPYF) および では、ファイル ( ) およびソ およびソース・ファ ファ イル・コピー(CPYSRCF) コマンドは、ターゲット・ソース・メンバーの 最新ソース更新日時を、そのコマンドが実行された日時に設定していま した。 V6R1 からは、MBROPT(*ADD) が使用されない限り、ターゲット・ソース ・メンバーの最新ソース更新日時は、コピーされるソース・メンバーの 値を保存す 値を保存することになります。ターゲット・ソース・メンバーの最新ソ り す。 最新 ース更新日時を、コピー・コマンドが実行された日時にしたいならば、 SRCCHGDATE(*NEW) を指定してCPYSRCF コマンドを使用する必要がありま す。 22 Copyright 2007 CYFLEX L.L.C. Operation Knowhow OUTQの最終変更日/時間の更新 V6.1からスプール・ファイルを出力待ち行列に追加したり出力待ち行列 から プ ル ファイルを出力待ち行列に追加したり出力待ち行列 から削除したりする際、出力待ち行列オブジェクトの最終変更日/時間は 更新されなくなりました。こうした操作の際、出力待ち行列オブジェク トには物理的にアクセスしなくなったためです。最終使用日および使用 日数カウントは、こうした操作の際に引き続き更新されます。 23 Copyright 2007 CYFLEX L.L.C. Operation Knowhow DDMファイルのタイムスタンプ DDMファイルの場合は、DDM自身の作成日、変更日、使用日が更新されます。 DDMファイルの場合は DDM自身の作成日 変更日 使用日が更新されます DDMファイル経由でリモートファイルをアクセスした場合は、リモートファ イルのタイムスタンプも更新されます。 SBMRMTCMDでDDMファイルを使用した場合は、DDMファイルとリモ トファイ SBMRMTCMDでDDMファイルを使用した場合は、DDMファイルとリモートファイ ルの使用日は更新されません。 24 Copyright 2007 CYFLEX L.L.C.
© Copyright 2024 Paperzz