jvSetJobStatus(印刷ジョブの状態設定)
プリンタの印刷ジョブの状態を設定します。
[構文]
Function jvSetJobStatus(ByVal printerName As String, ByVal printJobId As Long, ByVal Status As Long) As Long
C言語
int jvSetJobStatus(char *printerName, int printJobId, int Status);
JAVA
int jvSetJobStatus(String printerName, int printJobId, int Status);
Delphi
Function jvSetJobStatus(printerName:PAnsiChar; printJobId, Status:Longint): Longint;
設定項目 |
内容 |
printerName |
プリンタ名称 |
printJobId |
印刷ジョブID |
Status |
印刷ジョブの状態(設定値参照) |
リターンコード
定数 |
値 |
内容 |
|
0 |
正常終了 |
JV_ERR_PRINTERNAME |
-10 |
プリンタ名称エラー |
JV_ERR_OPEN_PRINTER |
-91 |
OpenPrinterエラー |
JV_ERR_PARAMETER |
-2 |
パラメータエラー |
JV_ERR_SET_JOB |
-93 |
SetJobエラー |
[設定値]
Status
には次の値を設定します。
定数 |
値 |
内容 |
JV_JOBCONTROL_PAUSE |
1 |
印刷ジョブを一時停止 |
JV_JOBCONTROL_RESUME |
2 |
一時停止している印刷ジョブを再開 |
JV_JOBCONTROL_CANCEL |
3 |
印刷ジョブを削除 |
JV_JOBCONTROL_RESTART |
4 |
印刷ジョブを再開始 |
[解説]
印刷中のプリンタ名称は、jvGetStringで取得することができます。使用できるプリンタの一覧はjvGetPrinterNameで取得することができます。
印刷中の印刷ジョブIDはjvStartDoc実行直後にjvGetLongで取得することができます。
[コーディング例]
Dim jid&, ret&, Status&, PrinterName$
jid = jvCreate(JV_PRINTER, form1.hWnd, 0, 0,
0, 0, "")
ret = jvSetForm(jid, "c:\JiveReport\納品書.jfm",
1,"", 100, 0, 0)
ret = jvStartDoc(jid, "納品書", "")
'印刷ジョブIDの取得
PrintJobId = jvGetLong(jid, JV_JOB_ID)
'プリンタ名の取得
PrinterName = Space(33)
ret = jvGetString(jid, JV_PRINTER_NAME,PrinterName)
|
ret = jvEndPage(jid)
ret = jvEndDoc(jid)
ret = jvClose(jid)
:
:
:
'印刷ジョブの取消し
Status = JV_JOBCONTROL_CANCEL
ret = jvSetJobStatus(PrinterName, PrintJobId,Status)
:
:
: