JP1/AJS HULFTの定義出力と先月分の集配信履歴を出力する

【PR】
※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。

HULFTの定義や集配信履歴を定期的に取得しておきたい、という時のために作ってみました。
まず以下のバッチを用意。

定義出力用バッチ

・hul_def_out.bat (HULFT定義出力用バッチ)%1にJP1からsnd、rcvなどを渡すことで任意の定義を出力します。出力ファイルには実行日のYYYYMMDDを付けます。

@echo off
"C:\HULFT Family\hulft8\bin\utligen.exe" -f C:\work\tmp\%1_%date:/=%.txt -i %1 -id "*"

集配信履歴出力用バッチ

・hul_lastm_list_out.bat(集配信履歴出力用バッチ)PowerShellを使い、先月のYYYYMMを設定し、先月のYYYYMM01からジョブ実行日までの履歴を出力します。範囲の終わりについては月末は月ごとによって違い、存在しない日付をHULFTのコマンドに渡すとエラーになって面倒なので省略!(笑)%1はJP1から「s」または「r」を与えることで配信履歴、集信履歴を切り替えます。出力ファイルには実行日のYYYYMMDDを付けます。

@echo off
FOR /F "usebackq" %%a IN (`powershell [DateTime]::Today.AddMonths"("-1")".ToString"("'yyyyMM'")"`) DO SET lastmonth=%%a
"C:\HULFT Family\hulft8\bin\utllist.exe" -%1 -from %lastmonth%01 > C:\work\tmp\utllist_%1_%date:/=%.txt

JP1ジョブ構成

JP1はこんな感じ

配信定義出力ジョブはこんな感じでパラメーターをsnd,rcv,hst,tgrp,jobと変えることで同じバッチでそれぞれの定義を出力しています。

集配信履歴は毎月1日に1か月周期で実行させたかったので別ジョブネットでスケジュールしています。

中身はこんな感じ。パラメータが「s」なら配信履歴、「r」なら集信履歴です。

以上です。

 

 

HULFT,JP1/AJS

Posted by admin