|
|||||||||
|
HSSF 文書でのタイム・スタンプの使用 |
| Q: HSSF を使用して Excel スプレッドシートを作成しました。すべてうまくいっているのですが、タイム・スタンプを挿入する必要があります。どうすれば挿入できますか? A: Excel では、日付、時刻、およびタイム・スタンプは数値として保管されます。この数値は、1900 年 1 月 1 日からの日数を表しています。1 日の小数部を使用して、時刻を表現できます。例えば、1.5 は 1900 年 1 月 1 日の正午を表します。これは、この数値が 1 日目から半日経った時刻を示しており、1 日目は 1900 年 1 月 1 日であるからです。 実際に試してみましょう。Excel を開いて、セルに数値 38,736 を入力します。次に、そのセルを右クリックし、「セルの書式設定」オプションを使用して書式を日付に変更します。すると、数値が 2006 年 1 月 19 日と表示されます。小数部を指定して同じ手順を繰り返すと、その小数部が時刻を表します (必ず、時刻を含む数値形式を使用してください)。例えば、38,736.75 は 2006 年 1 月 19 日 18:00 と表示されます。 日付を算出する際には、次の 2 つのことに注意する必要があります。 ・ 1900 年 1 月 1 日が 1 日目です。 ・ Excel は 1900 年を誤ってうるう年と認識しています。 一方、RPG に誤りはありません。1900 年 2 月 28 日より後の RPG 日付を Excel 日付に変換する際には、このことを考慮して 1 日を余分に加算する必要があります。 これらの点を考慮して、図 1 のルーチンは RPG スタイルの日付を Excel スタイルの日付に変換しています。同様に、図 2 のルーチンは、RPG 時刻フィールドを Excel で使用する必要がある数値の小数部に変換します。RPG タイム・スタンプ・フィールドを Excel タイム・スタンプに変換するには、図 3 の例に示すように、これらのルーチンを両方とも呼び出し、結果を合計する必要があります。 正しい数値が得られたら、HSSF を使用して、日付、時刻、またはタイム・スタンプのフィールドとして表示されるように数値の書式を適用します。このためには、数値の書式を正しく設定するセル・スタイルのオブジェクトを作成します (図 4)。それぞれのワークブックごとに 1 回だけこのセル・スタイルを作成しておけば、後でスプレッドシートにセルを追加するときに、必要な数のセルにこのスタイルを適用できます。 myNumber = hssf_ts2xls(myTimestamp); hssf_num(row:col:myNumber:timestamp); |
| ↑このページのトップへ |
|
ファイルを参照しているユーザーの判別 |
Q: 特定のユーザーが機密データや重要データにアクセスしている疑いがある場合は、どうすればよいでしょうか? A: 特定のユーザーによる不正なデータ・アクセスをモニターするには、ユーザーがオブジェクトにアクセスするたびにシステム監査ジャーナル QAUDJRN に監査レコードを送信するように、監査機能を構成できます。図 5 の例では、QAUDJRN を作成し、パラメーターに適切な値を設定する方法を示しています。 ジャーナルを作成した後、次のようにユーザー監査の変更 (CHGUSRAUD) コマンドを発行して、監査対象のユーザーを指定し、*ALL (オブジェクトへのアクセスをすべて記録) または *CHANGE (オブジェクトへの変更のみを記録) を OBJAUD パラメーター値に指定します。 CHGUSRAUD USRPRF(MYUSER) OBJAUD(*ALL) ユーザーの監査値を設定した後、機密ファイルの監査値も設定する必要があります。このためには、オブジェクト監査の変更 (CHGOBJAUD) コマンドを使用して、監査対象のオブジェクトを指定し、OBJAUD パラメーターに値 *USRPRF を指定します。 CHGOBJAUD OBJ(PAYLIB/PAYROLL) OBJTYPE(*FILE) OBJAUD(*USRPRF) このコマンドの組み合わせは、CHGUSRAUD コマンドに指定した個人が CHGOBJAUD コマンドに指定したオブジェクトにアクセスするときに、監査項目をジャーナル QAUDJRN に送信するようにシステムに指示します。基本的に、オブジェクトへのアクセスを監査するには、オブジェクトの監査値を *NONE 以外の値に設定する必要があります。監査値が *NONE ならば、CHGUSRAUD を使用してユーザー監査をオンにし、ユーザーを監査した場合であっても、アクセスは監査されません。 ユーザー・アクティビティーを監査するためには、その前にシステム値 QAUDCTL (図 5) に値 *AUDLVL または *OBJAUD (あるいはその両方) を指定する必要があります。QAUDCTL を設定した後、CHGUSRAUD コマンドを使用して、ジャーナル QAUDJRN に記録するユーザー・アクションを指定します。このコマンドの OBJAUD パラメーターは、オブジェクトへのアクセスの監査のみを操作します。AUDLVL パラメーターを使用すると、このユーザーを対象に、監査するアクティビティーを指定できます。 ユーザーのアクションの追跡に役立つように、CHGUSRAUD コマンドを使用して、そのユーザーによって実行されるすべての CL コマンドを監査するように指定します。ユーザーの AUDLVL 値の 1 つとして *CMD を指定すると、そのユーザーによって実行されるすべての CL コマンドが監査されます。CL プログラム内で *LOG(*NO) および ALWRTVCLSRC(*NO) として作成されたコマンドの場合は、コマンド・ストリング全体ではなくコマンド名がログに記録されます。図 6 は、CHGUSRAUD コマンドのフォーマットを示しています。 |
| ↑このページのトップへ |
| 接続した Telnet クライアントの IP アドレスの取得 |
|
|
| ↑このページのトップへ |
| システム要求:V5R4 での現行ユーザーの変更 |
|
|
| ↑このページのトップへ |
BELLDATA, Inc. Copyright reserved. |