Just another IT site ※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。At Your Own Risk!! TURN BACK WHILE YOU CAN
PR

【JP1/AJS】サンプルジョブネット作成

※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。スクリプトはAI生成のものも多いのでコピー&ペーストの際は文字コードに注意ください!
スポンサーリンク
バッチ処理の自動化スキルは市場価値が高いです。今の自分の単価を調べてみませんか?
顧客常駐はもう嫌だ!社内SEへ転職するなら【社内SE転職ナビ】
Cursor・Claude Code・Codex AIスキルを学ぶなら
環境構築不要!AIエージェント開発を非エンジニアでも即実践【AI Agent Camp】

サンプルジョブネット作成用

構造

AJSROOT1 (スケジューラーサービス)
└─ JG1 (ジョブグループ)
    ├─ Cal (ジョブグループ/カレンダー用)
    │ └─ Cal1 ~ Cal4 (カレンダーユニット)
    ├─ JN1 (ジョブネット)
    │ └─ PCジョブ (PCジョブ)
    ├─ JN2 (ジョブネット)
    │ └─ PCジョブ (PCジョブ)
    ├─ JN3 (ジョブネット)
    │ └─ PCジョブ (PCジョブ)
    └─ JN4 (ジョブネット)
    │ └─ PCジョブ (PCジョブ)
    └─ defout (ジョブネット)
      └─ PCジョブ (PCジョブ defout.bat) 

defout.bat(JG1配下の定義出力用)

@echo off
setlocal
set DATE_STR=%date:/=%%
set TIME_STR=%time: =0%%
set TIME_STR=%TIME_STR::=%%
set TIME_STR=%TIME_STR:.=%%
set TIME_STR=%TIME_STR:~0,6%%
set OUTPUT_FILE=C:\Users\Administrator\Documents\defout_%DATE_STR%_%TIME_STR%.txt
ajsprint -F AJSROOT1 -a /JG1 > "%OUTPUT_FILE%"
endlocal

取り込む時は以下を実行

ajsdefine -F AJSROOT1 -d / C:\Users\Administrator\Documents\defout_yyyymmdd_hhmmss.txt

定義の中身(初期状態)

unit=JG1,,jp1admin,;
{
	ty=g;
	el=Cal,g,+0+0;
	el=JN1,n,+0+0;
	el=JN2,n,+0+0;
	el=JN3,n,+0+0;
	el=JN4,n,+0+0;
	el=defout,n,+0+0;
	unit=Cal,,jp1admin,;
	{
		ty=g;
		el=Cal1,g,+0+0;
		el=Cal2,g,+0+0;
		el=Cal3,g,+0+0;
		el=Cal4,g,+0+0;
		unit=Cal1,,jp1admin,;
		{
			ty=g;
		}
		unit=Cal2,,jp1admin,;
		{
			ty=g;
		}
		unit=Cal3,,jp1admin,;
		{
			ty=g;
		}
		unit=Cal4,,jp1admin,;
		{
			ty=g;
		}
	}
	unit=JN1,,jp1admin,;
	{
		ty=n;
		sz=10x8;
		el=PCジョブ,pj,+240+144;
		sd=1,en;
		st=1,+00:00;
		sh=1,ca;
		shd=1,2;
		unit=PCジョブ,,jp1admin,;
		{
			ty=pj;
			tho=0;
		}
	}
	unit=JN2,,jp1admin,;
	{
		ty=n;
		sz=10x8;
		el=PCジョブ,pj,+240+144;
		sd=1,en;
		st=1,+00:00;
		sh=1,ca;
		shd=1,2;
		unit=PCジョブ,,jp1admin,;
		{
			ty=pj;
			tho=0;
		}
	}
	unit=JN3,,jp1admin,;
	{
		ty=n;
		sz=10x8;
		sd=1,en;
		st=1,+00:00;
		sh=1,ca;
		shd=1,2;
	}
	unit=JN4,,jp1admin,;
	{
		ty=n;
		sz=10x8;
		sd=1,en;
		st=1,+00:00;
		sh=1,ca;
		shd=1,2;
	}
	unit=defout,,jp1admin,;
	{
		ty=n;
		sz=10x8;
		el=PCジョブ,pj,+240+144;
		sd=1,en;
		st=1,+00:00;
		sh=1,ca;
		shd=1,2;
		unit=PCジョブ,,jp1admin,;
		{
			ty=pj;
			sc="defout.bat";
			wkp="C:\Users\Administrator\Documents";
			tho=0;
		}
	}
}

 

【参考】 実行した日から三日間を可動日登録するスクリプト

register_cal1.bat

@echo off
setlocal
set AJS_ROOT=AJSROOT1
set TARGET_CAL=%AJS_ROOT%:/JG1/Cal/Cal1

:: PowerShellで当日から3日間の日付を個別に取得し、ajscalendarをループで実行する
for /f "tokens=*" %%i in ('powershell -Command "$d=[DateTime]::Today; for($j=0;$j -lt 3;$j++){ $d.AddDays($j).ToString('yyyy/MM/dd') }"') do (
    echo 稼働日 %%i を登録中...
    ajscalendar -op %%i %TARGET_CAL%
)

echo すべての処理が完了しました。
endlocal

 

 

タイトルとURLをコピーしました