Upload
duongthuan
View
306
Download
10
Embed Size (px)
Citation preview
DSHEng4 装置通信エンジン (GEM+GEM300)
ソフトウェア・パッケージ
GEM+GEM300 メッセージ処理について
代表的なメッセージの装置-ホスト間のトランザクションと処理
2009年7月
株式会社データマップ
文書番号 DSHEng4-09-30360-00
[取り扱い注意]
・ この資料ならびにソフトウェアの一部または全部を無断で使用、複製することはできません。
・ 本説明書に記述されている内容は予告なしで変更される可能性があります。
・ Windows は米国 Microsoft Corporation の登録商標です。
・ ユーザーが本ソフトウェアの使用によって生じた遺失履歴、(株)データマップの予見の有無を問わ
ず発生した特別損害、付随的損害、間接損害およびその他の拡大損害に対して責任を負いません。
【改訂履歴】
番号 改訂日付 項 目 概 略
1. 2009.7 初版
2.
3.
4.
目 次
1.はじめに ................................................................................. 1 2.カテゴリ別通信の説明 ..................................................................... 1 2.1 S1F13,14 - Establish Communication Requestによる通信確立(Enable).................. 2 2.2 通信確立状態の解除(Disable)....................................................... 3 2.3 EC装置定数関連メッセージ............................................................ 4 2.4 SV装置状態変数関連メッセージ........................................................ 5 2.5 変数LIMIT関連メッセージ............................................................. 6 2.6 SV装置状態変数トレース関連メッセージ................................................ 8 2.7 CE収集イベント関連メッセージ........................................................ 9 2.8 REPORT関連メッセージ .............................................................. 11 2.9 ALARM関連メッセージ ............................................................... 12 2.10 レシピ関連メッセージ .............................................................. 14 2.11 PRJ プロセス・ジョブ関連メッセージ................................................. 17 2.12 CJ コントロール・ジョブ関連メッセージ.............................................. 20 2.13 リモート・ホスト・コマンド関連メッセージ........................................... 22 2.14 キャリア・アクション関連メッセージ................................................. 23 2.15 ポート・アクション、アクセスモード関連メッセージ................................... 24 2.16 コントロール・モード(オンライン/オフライン)関連メッセージ....................... 25 2.17 時刻設定関連メッセージ............................................................. 26 2.18 スプール関連メッセージ............................................................. 27
1.はじめに
GEM、GEM300 の代表的なメッセージの処理について記述します。
カテゴリ別に下表のメッセージトランザクションについて説明します。
カテゴリ 1 次メッセージ
1 S1F13,14 Establish Connection S1F13
2 通信確立状態の解除 S6F11
3 EC(装置定数)関連 S2F13, S2F15, S2F29
4 SV(装置状態変数)関連 S1F3, S1F11
5 変数リミット関連 S2F45, S6F11
6 SV 状態変数トレース関連 S2F23, S6F1
7 CE 収集イベント関連 S2F35, S2F37, S6F11
8 REPORT 関連 S2F33, S6F19
9 ALARM 関連 S5F1, S5F3, S5F5
10 レシピ関連 S15F3, S15F5, S15F7, S15F9, S15F13, S15F17
11 PRJ プロセスジョブ関連 S16F5, S16F11, S16F15, S16F16, S16F19, S16F21
12 CJ コントロールジョブ関連 S14F9, S14F11, S16F27
13 リモートホストコマンド関連 S2F49
14 キャリアアクション関連 S3F17
15 ポートアクション、アクセスモード関連 S3F25, S3F27
16 コントロールモード S1F15, S1F17
17 時刻設定関連 S2F31
18 スプール関連 S2F43, S16F23, S6F11
(注)DSHEng4 では、他に、PP(S7F3 など), FPP(S7F23 など)、S2F41、S3F23、S3F25, S14F19,
S14F21 メッセージなどのサポートしています。
2.カテゴリ別通信の説明
次ページ以降にカテゴリ別の説明をチャートで示します。
説明の中に出てくる 関数についてですが、
EngAllocRcpInfo()などの頭に、Eng が付く関数は、DSHEng4 の API 関数です。
GemAllocRcpInfo()などの頭に、Gem が付く関数は、DSHGEM-LIB の API 関数です。
なお、DSHEng4 の API 関数、情報格納用構造体の詳細については、下記資料またはデモプログラムに含ま
れるソースファイルを参照ください。
(1)説明書 : DSHEng4 ライブラリ関数説明書 Vol-1~VOL-15
(2)ソースファイル : eng_api.cs, eng_lib.cs, dsh_info.cs (C#)
eng_api.vb, eng_lib.vb, dsh_info.vb (VB)
2
2.1 S1F13,14 - Establish Communication Requestによる通信確立(Enable)
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. 通信確立処理
前提 通信状態 = 未確立
SV_CommunicationState = 0
EngEnable()
通信確立
(1)Enable 実行状態にする。
(2)S1F13 送信
(3)S1F14 受信
①commack=0 ならば(4)に進む。
commack <> 0 ならば
一定時間経過後、(2)を繰り返す
(4)SV_CommunicationState =5
通信確立
(5)CEID = CE_Communicating
S6F11 送信
Callback
S1F13
S1F13
S6F11
S1F14
S1F14
S6F12
GemEnable()なし
S1F13 受信, 確立を期待していなしので
Commack=1 で S1F14 応答
・
(1)Enable 通信確立実行状態にする。
(2)Commack=0 で S1F14 応答
(3)SV_CommunicationState=5
通信確立
Callback
S6F11 受信 Queue in
前提 通信状態
SV_CommunicationState = 0
GemEnable()実行
通信確立確認
Polling CEID=CE_Communicating
の処理、S6F12 応答
2 通信確立処理のキャンセル
前提 EngEnable()による Enable
実行状態
EngCancelEnable()
EngEnable キャンセル終了確認
(Enable 実行状態である条件で)
Enable 実行状態をリセット
Enable()キャンセル終了 Callback
通信確立処理のキャンセル
装置と同じ。
GemCancelEnable()
関連変数 : SV_CommunicationState 装置状態変数、 =5 以外は未確立状態です。CE_Communicating は通信確立通知の CEID です。
3
2.2 通信確立状態の解除(Disable)
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. 通信確立状態の解除
前提 通信確立状態である。
SV_CommunicationState = 5
EngDisable()
引数に Host への通知 CEID
をつける
Disable の完了を確認
(1)通信非確立状態への切替受付、、
(2) SV_CommunicationState =5 ならば
①SV_CommunicatinState = 0
②引数の CEID のイベント通知
S6F11 送信
同応答受信
EngDisable()の Callback
S6F11
S6F12
S6F11(Disab;le 通知 CEID)
SV_CommunicationState = 0
Callback
S6F11 解読、Disable 通知確認
S6F12 応答
GemDisable() で
Enable 状態を破棄
Disable 確認
関連変数 : SV_CommunicationState 装置状態変数
4
2.3 EC装置定数関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S2F13 Equipment Constant
Request
(APP は直接関知しない)
S2F13 受信
S2F13 の ECID リストに従って
EC の値を EC 管理情報から
取得、S2F14 を Encode, 応答
S2F14
S2F13
S2F13 を組立て生成
送信
S2F14 受信、
Callback 関数に EC 値を渡す
(TV_VALUE_LIST 構造体で)
ECID を ecid_list に登録する。
GemSendS2F13(ecid_list, n)
ECID の List
または全 ECID
Callback EC 値情報を処理
2. S2F15 Equipment Constant
Send
(APP は直接関知しない)
S2F15 受信
MSG に含む EC の値を設定する。
EAC を付け、S2F16 応答
S2F16
S2F15
S2F15 を組立て生成送信
S2F16 受信、EAC を APP に
Callback で返す。
ECID,値を TV_VALUE_LIST 構造
体に詰める
GemSendS2F15( val_list)
Callback, EAC を確認
3. S2F29 Equipment Constant
Namelist Request
(APP は直接関知しない)
S2F29 受信
S2F29 の ECID リストの名前情報
を S2F30 に組み立て,S2F30 送信
S2F30
S2F29
S2F29 を組立て生成
送信
S2F30 受信、
Callback 関数に EC 名リストを渡す
(TEC_NAME_LIST 構造体で)
ECID を ecid_list に登録する。
GemSendS2F29(ecid_list, n)
ECID の List
または全 ECID
Callback EC 名情報を処理
EC 管理情報
ID, Name, Value
EC 管理情報
ID, Name, Value
EC 管理情報
ID, Name, Value
5
2.4 SV装置状態変数関連メッセージ 装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S1F3 Equipment Status
Request
(APP は直接関知しない)
S1F3 受信
S1F3 の SVID リストに従って
SV の値を SV 管理情報から
取得、S1F4 を Encode, 応答
S1F4
S1F3
S1F3 を組立て生成
送信
S1F4 受信、
Callback 関数に SV 値を渡す
(TV_VALUE_LIST 構造体で)
SVID を svid_list に登録する。
GemSendS1F3(svid_list, n)
SVID の List
または全 SVID
Callback SV 値情報を処理
2. S1F11 Equipment Status
Namelist Request
(APP は直接関知しない)
S1F11 受信
S1F11 の SVID リストの名前情報
を S1F12 に組み立て,S1F12 送信
S1F12
S1F11
S1F11 を組立て生成
送信
S1F12 受信、
Callback 関数に SV 名リストを渡す
(TSV_NAME_LIST 構造体で)
SVID を svid_list に登録する。
GemSendS1F11(svid_list, n)
SVID の List
または全 SVID
Callback SV 名情報を処理
SV 管理情報
ID, Name, Value
SV 管理情報
ID, Name, Value
6
2.5 変数 LIMIT関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S2F45 Define Variable
Limit Attributes
S2F45 受信
TLIMIT_LIST 構造体にデコー
ドし、それを
EngSetMultiVLimit() 関 数
で DSHEng4 に設定
S2F46 応答情報を準備
TLIMIT_ERR_LIST 構造体に
DshResponseS2F46()
EngSetVVal()関数で変数値
更新
S2F45 受信、APP へ Queue IN
変数リミット情報をDSHEng4内に登録設定
する。そして Limit 監視を行う。
S2F46 をエンコードし、応答
DSHEng4 は Limit 監視対象になった
変数値が更新されるたびに Limit の
チェックを行い、別バンドに遷移したら
S6F11 で通知する。
S2F46
S6F11
S2F45
S6F12
S2F45 を組立て生成
送信
S2F46 受信、TLIMIT_ERR_LIST
構造にデコードし、
Callback 関数で結果を渡す。
S6F11 イベント受信
Limit 情報を TLIMIT_LIST 構造
体に設定する。
GemSendS2F45(svid_list, n)
Limit 情報の List
Callback関数でS2F46の結果を
吟味処理する。
S6F11 受信、レポートの処理し、
S6F12 応答
Check
LIMIT 管理情報
VID, lmtid,
uupedb,lowerdb
変数管理情報
VID, value
7
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
2. S2F47 Equipment Status
Namelist Request
(APP は直接関知しない)
S2F47 受信
S2F47 の VID リストの Limit 情報を
を S2F48 に組み立て,S2F48 送信
2F48
S2F47
S2F47 を組立て生成
送信
S2F48 受信、
Callback 関数に Limit 情報を渡す。
(TLIMIT_RSP_LIST 構造体で)
VID を vid_list に登録する。
GemSendS2F47(vid_list, n)
VID の List
または全 VID
Callback VLimit 情報を処理
LIMIT 管理情報
VID, lmtid,
uupedb,lowerdb
8
2.6 SV装置状態変数トレース関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S2F23 Initialize Send
S2F23 受信
TTRACE_INFO 構造体にデコ
ードし、それを
EngSetTrInfo()関数で
DSHEng4 に設定
S2F24 応答 ACK tiaack 生成
DshResponseS2F24()
EngSetSvVal()関数で
状態変数更新
S2F23 受信、APP へ Queue IN
変数トレース情報を DSHEng4 内に登録設
定する。そして Trace 監視を行う。
S2F24 をエンコードし、応答
TRACE 情報に基づき、指定された SVID
のトレースを行う。(DSHEng4 の自動処理)
Trace 情報が収集できたら
S6F1 メッセージに詰め、送信
(1回目)
・
・
S6F1(2 回目)
・
S6F1(最終回)
S2F24
S6F1
S6F1
S6F1
S2F23
S6F2
S6F2
S6F2
S2F23 を組立て生成
送信
S2F24 受信、TLIMIT_ERR_LIST
構造にデコードし、
Callback 関数で結果を渡す。
S6F1 トレース情報受信
Trace情報を TTRACE_INFO構造
体に設定する。
GemSendS2F23(info)
Trace 情報の List
Callback tiaack 情報を確認
S6F1 受信、トレースで取得した情報
を処理し、S6F2 応答
S6F1 処理
S2F2 応答
S6F1 処理
S6F2 応答
SV TRACE 管理情報
SVID, TOPER,
TOTSMP,..
9
2.7 CE収集イベント関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S2F35 Link Event Report
(APP は直接関知しない)
S2F35 受信 デコード
指定された CEID の Report リンク情報を
CE 管理情報の中に設定する。
設定結果lrack を応答する。
S2f36 応答
S2F36
S2F35
S2F35 を組立て生成
送信
S2F36 受信
Callback 関数で lrack を渡す。
CEID の Report リンク情報を構造体
TCE_LIST に 設 定 す る 。
GemSendS2F35(celist)送信
(複数 CEID あり)
Callback lrack 情報を確認
2. S2F37 Enable/Disable Event
Report
(APP は直接関知しない)
S2F37 受信
S2F37 に含まれている CEID を CEED
の状態にする。 erack を
S2F38 で応答
2F38
S2F37
S2F37 を組立て生成
送信
S2F38 受信、
Callback 関数で erack を渡す。
CEED と CEID リスト準備
GemSendS2F37(id_st, n)
CEID のリスト
または全 CEID
Callback erack 情報を確認
CE 管理情報
CEID, RP Link
CEED
CE 管理情報
CEID, RP Link
CEED
10
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
3. S6F15 Enable/Disable Event
report
(APP は直接関知しない)
S6F15 受信
S6F15に含まれているCEIDのレポートを
組立て(S6F11 と同じ構造)
S6F16 応答
S6F16
S6F15
S6F15 を組立て生成
送信
S6F16 受信、TCE_CONTENT にデコードし、
Callback 関数で渡す。
CEID 選択
GemSendS6F15(ceid)
Callback レポート情報を処理
4. S6F11 Event Report Send
CEID を選択
EngNotifyEvent(ceid)
Callback 関数、ackc6 を
確認
ceid と ceid にリンクされているレポート ID
そして、レポート ID にリンクされた変数の
値で S6F11 を組み立てる
S6F11 送信
S6F12 受信
受信した S6F12 の ackc6 を
Callback 関数で渡す。
S6F11
S6F12
S6F11 受信、QUEUE IN
(受信 MSG キューに)
Polling で S6F11 取得
S6F11 を TCE_CONTENT 構造体
内にデコードし、内容を処理
応答 S6F12 ackc6 を返す
CE 管理情報
REPORT 管理情報
変数管理情報
CE 管理情報
変数管理情報
REPORT 管理情報
11
2.8 REPORT関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S2F33 Define Report
(APP は直接関知しない)
S2F33 受信 デコード
指定された RPID の変数リンク情報を RP
管理情報の中に設定する。
設定結果 drack を応答する。
S2f34 応答
S2F34
S2F33
S2F33 を組立て生成
送信
S2F34 受信
Callback 関数で drack を渡す。
Report の変数リンク情報を構造体
TRP_LIST に 設 定 す る 。
GemSendS2F33(rplist)送信
(複数 RPID あり)
Callback drack 情報を確認
2. S6F19 Enable/Disable Event
Report
(APP は直接関知しない)
S6F19 受信
S6F19 に含まれている RPID のレポート
(変数値)を組立て
S6F20 応答
S6F20
S6F19
S6F19 を組立て生成
送信
S6F20 受信、TRP_CONTENT にデコードし、
Callback 関数で渡す。
RPID 選択
GemSendS6F19(rpid)
Callback レポート情報を処理
REPORT 管理情報
変数管理情報
REPORT 管理情報
RPID, 変数 Link
12
2.9 ALARM関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S5F1 Alarm Report Send
ALID を選択
EngNotifyAlarm(alid)
Callback 関数、ackc5 を確認
alid に指定されたアラーム情報から
S5F1 を組み立てる
S5F1 送信
S5F2 受信
受信した S5F2 の ackc5 を
Callback 関数で渡す。
S5F1
S5F2
S5F1 受信、QUEUE IN
S5F2 組立て
Polling で S5F1 取得
S5F1 を TAL_CONTENT 構造体内
にデコードし、内容を処理
応答 S5F2 ackc5 を返す
2. S5F3 Enable/Disable Alarm
Send
(APP は直接関知しない)
S5F3 受信
S5F3 に含まれている ALID を ALED の
状態にする。ackc5 を
S5F4 で応答
S5F4
S5F3
S5F3 を組立て生成
送信
S5F4 受信、
Callback 関数で ackc5 を渡す。
ALED と ALID リスト準備
GemSendS5F3(id_st, n)
ALID のリスト
または全 ALID
Callback ackc5 情報を確認
ALARM 管理情報
ALID,ALCD,ALTX,
ALED
ALARM 管理情報
ALID,ALCD,ALTX,
ALED
13
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
3. S5F5 List Alarm Request
(APP は直接関知しない)
S5F5 受信
S5F5 の ALID の ALCD,ALID,ALTX
情報を S5F6 に組み立て,S5F6 送信
S5F6
S5F5
S5F5 を組立て生成
送信
S5F6 受信、
Callback 関数に AL 情報リストを渡す
(TAL_S5F6_LIST 構造体で)
ALID を alid_list に登録する。
GemSendS5F5(alid_list, n)
ALID の List
または全 ALID
Callback AL 情報を確認と処理
ALARM 管理情報
ALID,ALCD,ALTX,
ALED
14
2.10 レシピ関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S15F3 Recipe Name Space
Action Request
Polling で S15F3 取得
rcpid, action 取出し
action=1 ならば生成
EngAllocRcpInfo()で登録
action=5 ならば削除
EngDelRcpInfo()で削除
S15F4 rmack を返す
S15F3 受信、QUEUE IN
S15F4 を組立て、応答
S15F4
S15F3
rcpid と action から
S15F3 を組み立て、S15F3 送信
S15F4 受信
受信したS15F4の応答情報をCallback関数
で渡す。
RCPID と Action を選択
GemSendS15F3(rcpid, action)
action 1=Create
5=Delete
Callback 関数、応答情報を
確認
2. S15F5 Recipe Namespace
Rename Request
Polling で S15F5 取得
rcpid, 新 rcpid 取出し
EngRenameRcpId(rcpid,
newrcpid)
S15F6 rmack を返す
S15F5 受信、QUEUE IN
S15F6 を組立て、応答
S15F6
S15F5
現 rcpid と新 rcpid から、
S15F5 を組立て、送信
S15F6 受信
受信したS15F6の応答情報をCallback関数
で渡す。
現 RCPID と新 RCPID をセット
GemSendS15F5(rcpid, newrcpid )
Callback 関数、応答情報を
確認
RECIPE 管理情報
RCPID, PARA,
RCPBODY
RECIPE 管理情報
RCPID, PARA,
RCPBODY
15
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
3. S15F7 Recipe Space
Request
(APP は直接関知しない)
S15F7 受信
rmspace=64KB をセット
S15F8を組立て、応答
S15F8
S15F7
S15F7 を組み立て、S15F7 送信
S15F8受信
受信した S15F8の応答情報を Callback 関
数で渡す。
recipe name space 名セット
GemSendS15F7()
Callback 関数、応答情報を
確認
4. S15F9 Recipe Status
Request
(APP は直接関知しない)
S15F9 受信
S15F10 に State をセット、組立て、応答
S15F10
S15F9
rcpid、
S15F9 を組立て、送信
S15F10 受信
受信した S15F10 の Status 応答情報を
Callback 関数で渡す。
RCPID をセット
GemSendS15F9(rcpid )
Callback 関数、Status 応答情
報を確認
RECIPE 管理情報
RCPID, PARA,
RCPBODY,STATE
16
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
5. S15F13 RecipeCreate
Request
Polling で S15F13 取得
rcpid, rcp情報取出し
(TRCP_INFO 構造体)
EngSetRcpInfo() で設定
S15F14 rmack を返す
S15F13 受信、QUEUE IN
S15F14 を組立、応答
S15F14
S15F13
rcpid と rcpinfo から
S15F13 を組み立て、S15F13 送信
S15F14 受信
受信した S15F14 の応答情報を Callback 関
数で渡す。
RCPID と RCP 情報設定
GemSendS15F13(rcpid,
rcpinfo)
rcpinfo は TRCP_INFO
構造体
Callback 関数、応答情報を
確認
6. S15F17 Recipe Retrieve
Request
(APP は直接関知しない)
S15F17 受信
S15F18に RCP情報をセット、組立て、応
答
S15F18
S15F17
rcpid、
S15F17 を組立て、送信
S15F18 受信
受信した S15F18 の RCP 情報応答情報を
Callback 関数で渡す。
(TRCP_INFO 構造体)
RCPID をセット
GemSendS15F17(rcpid )
(応答は TRCP_INFO 構造体で)
Callback 関数、Rcp 応答情報
を確認
RECIPE 管理情報
RCPID, PARA,
RCPBODY,STATE
RECIPE 管理情報
RCPID, PARA,
RCPBODY
注)レシピ関連メッセージは装置からホストに送信することもできますが、ホストから送信する場合と同様ですでの省略します。
17
2.11 PRJ プロセス・ジョブ関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S16F5 Process Job
Command Request
Polling で S16F5 取得
コマンド情報取出し
(TPRJ_CMD_INFO 構造体)
コマンド実行処理
S16F6 acka を返す
S16F5 受信、QUEUE IN
S16F6 を組立、応答
S16F6
S16F5
prjid と cmdinfo から
S16F5 を組み立て、S16F5 送信
S16F6 受信
TPRJ__CMD_ERR_INFO 構造体にデコート ゙
し、Callback 関数で渡す。
PRJID、CMD 名、パラメータ設定
(TPRJ_CMD_INFO 構造体)
GemSendS16F5(prjid, cmdinfo)
cmdinfoはTPRJ_CMD_INFO
構造体
Callback 関数、応答情報を
確認
2. S16F11 Prj Job CreateEnh
S16F15 PrjJobMultiCreate
Polling で S16F11 取得
prjid, rcp情報取出し
(TPRJ_INFO 構造体)
EngAllocPrjInfo() 生成
EngSetPrjInfo() 設定
S16F12 acka を返す
(S16F15 もほぼ同じ処理)
S16F11 受信、QUEUE IN
S16F12 を組立、応答
S16F12
S16F11
prjid と prjinfo から
S16F11 を組み立て、S16F11 送信
S16F12 受信 TPRJ_ERR_INFO 構造体
にデコードした応答情報を Callback 関数で渡
す。)
PRJID と PRJ 情報設定
GemSendS16F11(prjid,
prjinfo)
prjinfo は TPRJ_INFO
構造体
Callback 関数、応答情報を
確認
PRJ 管理情報
PRJID, キャリア情報
レシピ情報など
PRJ 管理情報
PRJID, キャリア情報
レシピ情報など
18
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
3. S16F17 Prj Job Dequeue
Polling で S16F17 取得
DEQ 情報取出し
(TPRJ_DEQ_INFO 構造体)
EngDelPrjInfo()
(削除)
S16F18 acka を返す
S16F17 受信、QUEUE IN
S16F18 を組立、応答
S16F18
S16F17
prjid と deq_info から
S16F17 を組み立て、S16F17 送信
S16F18 受信
TPRJ__ERR_INFO 構造体にテ ゙ コ ー ト ゙ し 、
Callback 関数で渡す。
Dequeue する PRJID を
TPRJ_DEQ_INFO構造体にセット
GemSendS16F17(deq_info)
deq_infoは TPRJ_DEQ_INFO
構造体
Callback 関数、応答情報を
確認
4. S16F19 Prj Get All Job
(APP は直接関知しない)
S16F19 受信
管理下 PrjJobId, STATE から
S16F20 を組立、応答
S16F20
S16F19
S16F19 を組み立て、S16F19 送信
(header のみ)
S16F20 受信
TPRJ__STATE?LIST 構造体にデコードし、
Callback 関数で渡す。
状態を取得するための構造体
領域 st_list を準備
GemSendS16F19(st_list)
st_list は TPRJ_STATE_LIST
構造体
Callback 関数、応答情報を
確認
PRJ 管理情報
キャリア情報
レシピ情報など
PRJ 管理情報
PRJID,...
state
19
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
3. S16F21 Prj Get Space
S16F21 受信
管理情報内の空きの数を設定
S16F22 を組立、応答
S16F22
S16F21
S16F21 を組み立て、S16F21 送信
(header のみ)
S16F22 受信
デコードし、空き数を Callback 関数で渡す。
GemSendS16F21(st_list)
st_list は TPRJ_STATE_LIST
構造体
Callback 関数、空き数を確認
PRJ 管理情報
PRJID,...
state
20
2.12 CJ コントロール・ジョブ関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S14F9 Create Object
Request
Polling で S14F9 取得
cjid, cj 情報取出し
(TOBJ_INFO 構造体)
EngAllocCjInfo() 生成
EngSetCjInfo() 設定
S14F10 objack を返す
S14F9 受信、QUEUE IN
S14F10 を組立、応答
S14F10
S14F9
cjid と cjinfo から
S14F9 を組み立て、S14F9 送信
S14F10 受信 TOBJ_S14_ERR_INFO 構造体
にデコードした応答情報を Callback 関数で渡
す。)
CJID と CJ 情報設定
GemSendS14F9(cjid, cjinfo)
cjinfo は TOBJ_INFO
構造体
Callback 関数、応答情報を
確認
2. S14F11 Delete Object
Request
Polling で S14F11 取得
DEQ 情報取出し
(TCJ_DEQ_INFO 構造体)
EngDelCjInfo()
(削除)
S14F12 objack を返す
S14F11 受信、QUEUE IN
S14F12 を組立、応答
S14F12
S14F11
cjid と cjinfo から
S14F11 を組み立て、S14F11 送信
S14F12 受信
TOBJ_S14__ERR_INFO 構造体にデコードし、
Callback 関数で渡す。
Delete する CJ 情報を
cjinfo にセット
GemSendS14F11(cjinfo)
cjinfo は TOBJ_NFO
構造体
Callback 関数、応答情報を
確認
CJ 管理情報
CJID, ObjType
属性情報など
CJ 管理情報
CJID, ObjType
属性情報など
21
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
S16F27 Control Job
Command Request
Polling で S16F27 取得
cjid, cj 情報取出し
(TCJ_CMD_INFO 構造体)
コマンドを実行
S16F28 acka を返す
S16F27 受信、QUEUE IN
S16F28 を組立、応答
S16F28
S16F27
cjid と cmdinfo から
S16F27 を組み立て、S16F27 送信
S16F28 受信 TCJ_CMD_ERR_INFO 構造体
にデコードした応答情報を Callback 関数で渡
す。)
CJID と CJ コマンド値とパラメータ
情報を設定
GemSendS16F27(cjid,
cmdinfo)
cmdnfo は TCJ_CMD_INFO
構造体
応答は、
TCJ_CMD_ERR_INFO に受ける。
Callback 関数、応答情報を
確認
3.
CJ 管理情報
CJID, ObjType
属性情報など
22
2.13 リモート・ホスト・コマンド関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S2F49 Enhanced Remote
Command
Polling で S2F49 取得
情報を ercinfo に取出し
(TERCMD_INFO 構造体)
リモートコマンド実行
DshResponseS2F50()
S2F50 hcack を返す
S2F49 受信、QUEUE IN
S2F50 を組立、応答
S2F50
S2F49
ercinfo から
S2F49 を組み立て、S2F49 送信
S2F50 受信 TERCMD_HERR_INFO構造体
にデコードした応答情報を Callback 関数で渡
す。)
command と cpname, cpval
を ercinfo に設定
GemSendS2F49(ercinfo)
ercinfo は TERCMD_INFO
構造体
Callback 関数、応答情報を
確認
キャリア管理情報
CARID,SLOTMAP,..
23
2.14 キャリア・アクション関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S3F17 Carrier Action
Request
Polling で S3F17 取得
情報を cac_info に取出し
(TCACT_INFO 構造体)
キャリアアクション処理
(キャリア情報の設定など)
S3F18 caack を返す
S3F17 受信、QUEUE IN
S3F18 を組立、応答
S3F18
S3F17
cac_info から
S3F17 を組み立て、S3F17 送信
S3F18 受信 TCACT_ERR_INFO構造体
にデコードした応答情報を Callback 関数で渡
す。)
action, carid, port, attribute
等を cac_info に設定
GemSendS3F17(cac_info)
cac_info は TCACT_INFO
構造体
Callback 関数、応答情報を
確認
キャリア管理情報
CARID,SLOTMAP,
MID,...
24
2.15 ポート・アクション、アクセスモード関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S3F25 Port Action Request
Polling で S3F25 取得
情報を pt_info に取出し
(TPORT_INFO 構造体)
ポートアクション処理
(Port 情報の設定など)
S3F26 caack を返す
S3F25 受信、QUEUE IN
S3F26 を組立、応答
S3F26
S3F25
pt_info から
S3F25 を組み立て、S3F25 送信
S3F26 受信 TPORT_ERR_INFO構造体
にデコードした応答情報を Callback 関数で渡
す。)
ptn と Action, Parameter
を pt_info に設定
GemSendS3F25(pt_info)
pt_info は TPORT_INFO
構造体
Callback 関数、応答情報を
確認
2. S3F27 Change Access
Polling で S3F27 取得
情報を ac_info に取出し
(TACCESS_INFO 構造体)
アクセス変更処理
(Port のアクセス変数の設定など)
S3F28 caack を返す
S3F27 受信、QUEUE IN
S3F28 を組立、応答
S3F28
S3F27
ac_info から
S3F27 を組み立て、S3F27 送信
S3F28 受信 TACCESS_ERR_INFO構造体
にデコードした応答情報を Callback 関数で渡
す。)
ptn と accessmode
を ac_info に設定
GemSendS3F27(ac_info)
ac_info は TACCESS_INFO
構造体
Callback 関数、応答情報を
確認
変数情報
変数情報
25
2.16 コントロール・モード(オンライン/オフライン)関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S1F15 Request Offline
Polling で S1F15 取得
OFFLINE 切り替えの処理
S1F16 oflack を返す
切替 Event 通知
EngNotifyEvent()
Callback で ackc6 確認
S1F15 受信、QUEUE IN
S1F16 を組立、応答
S6F11 を組立て
Callback で ackc6 を渡す
S1F16
S6F11
S1F15
S6f12
S1F15 を組み立て、S1F15 送信
S1F16 受信 oflack を Callback 関数で渡す。
S6F11 受信、 QUEUE IN
S6F12 組立て応答
OFFLINE モード選択
S1F15
GemSendS1F15()
Callback 関数、応答情報を
確認
Polling で S6F11 受け取り
内容処理
S6F12 応答
2. S1F17 Request Online
Polling で S1F17 取得
ONLINE 切り替えの処理
S1F18 onlack を返す
切替 Event 通知
S1F15 と同様に行う。
S1F17 受信、QUEUE IN
S1F18 を組立、応答
S1F18
S1F17
S1F17 を組み立て、S1F17 送信
S1F18受信onlack をCallback関数で渡す。
ONLINE モード選択
S1F17
GemSendS1F17()
Callback 関数、応答情報を
確認
変数情報
変数情報
26
2.17 時刻設定関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S2F31 Date and Time Set
Request
(APP は関知しない)
システムの時刻設定 SetLocalTime()
S2F32 tiack 設定組立て 応答
SetLocalTime()関数の返却値が
エラーならば、tiack=1
S2F32
S2F31
S2F31 を組み立て、S2F31 送信
S2F32 受信 tiack を Callback 関数で渡す。
現在時刻を取得し
time_data にセット
GemSendS2F31(time_dat)
Callback 関数、応答情報を
確認
27
2.18 スプール関連メッセージ
装置 通 信 ホスト
APP DSHEng4 DSHGEM-LIB HOST APP
1. S2F43 Reset Spooling
Stream and Function
Polling で S2F43 取得
S2F43 をデコード構造体
TSPOOL_INFO に
EngSetAllSpoolInfo()
設定
DshResponseS2F44()
rsack を応答
S2F43 受信、QUEUE IN
S2F44 rsack 設定組立て 応答
S2F44
S2F43
winfo に従って
S2F43 を組み立て、S2F43 送信
S2F44 受信 rsack を Callback 関数で渡す。
スプール情報設定、
Stream, Function を winfo にセット
GemSendS2F43(winfot)
TSPOOL_INFO 構造体
Callback 関数、応答情報を
確認
2. 回線断で SPOOL 開始
EngNotifyEvent()
EngNotifyAlarm()など
回線復帰
Spool(溜める)
3. S6F23 Request Spooled
Data
(APP は関知しない)
S6F23 受信、
rsdc=1ならば Spooled Data 削除
rsdc=0ならば、Spooled Data 転送
4.を実行
S6F24 rsda を設定応答
S6F24
S6F23
S6F23 を組立て送信
S6F24 受信 callback 関数に rsda を渡す
S6F23 送信
GemSendS6F23( rsdc)
rsdc=0 転送, =削除要求
rsda を確認
4. SpooledData 送信 溜めた SpooledData を順に送信
SxFy
・
終了 S6F11 Spool End 通知
S6F12 受信、確認
SxFy
S6f11
SxFy+1
S6F12
受信 QUEUE IN
S6F11 受信 QUEUE IN
Polling で SxFy 取得、処理
SxFy+1
S6F11 で SpooledData 終了確
認、S6F12 応答
SPOOL 管理情報
SPOOL 管理情報
Spooled Data