<div class="content" name="FaxObs_SetJob" uuid="9f9da633-7698-4074-a2d9-c5aa551df19e"><p>The <b>FaxObs_SetJob (Opnum 9)</b> method is called by the
client to pause, resume, or cancel a fax job. The value for the <i>JobId</i>
parameter can be obtained by calling the <b>FaxObs_EnumJobs</b> (section <a href="e16a0c7e-be32-44ae-977f-2406d937dab2" data-linktype="relative-path">3.1.4.2.9</a>) or <b>FaxObs_SendDocument</b> (section
<a href="21b87199-d4e7-472c-9190-90c6bb16d947" data-linktype="relative-path">3.1.4.2.7</a>) method.</p><p>On success, the server MUST pause, resume, or cancel the
specified fax job and MUST set the <b>job status</b> (section <a href="bd422bcf-7ce8-4576-addb-89345ea84f9f" data-linktype="relative-path">3.1.1</a>) to reflect the new
job state.</p><dl>
<dd>
<div><pre> error_status_t FaxObs_SetJob(
   [in] handle_t hBinding,
   [in] DWORD JobId,
   [in] DWORD Command,
   [in] const FAX_JOB_ENTRY* JobEntry
 );
</pre></div>
</dd></dl><p><b>hBinding: </b>The RPC binding handle for this
call. The client SHOULD reuse the RPC binding handle used as an input <i>hBinding</i>
argument for the <b>FaxObs_ConnectionRefCount</b> (section <a href="9430f7e2-d21d-4a38-a859-367b74f68a1a" data-linktype="relative-path">3.1.4.2.2</a>) method call
used to connect to the fax server.</p><p><b>JobId: </b>A <b>DWORD</b> (<a href="../ms-dtyp/cca27429-5689-4a16-b2b4-9325d93e4ba2" data-linktype="relative-path">[MS-DTYP]</a>
section <a href="../ms-dtyp/262627d8-3418-4627-9218-4ffe110850b2" data-linktype="relative-path">2.2.9</a>)
containing a value that uniquely identifies the fax job to modify.</p><p><b>Command: </b>A <b>DWORD</b> containing a job
command that the fax server is requested to perform. </p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value/code</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>JC_DELETE 0x00000001</td>
  <td>The fax server MUST cancel the specified fax job. This job can be in an active or queued state. This is equivalent to calling the FaxObs_Abort (section 3.1.4.2.14) method.</td>
 </tr><tr>
  <td>JC_PAUSE 0x00000002</td>
  <td>The fax server MUST pause the specified fax job if the job&#39;s status is JS_PENDING or JS_RETRYING.</td>
 </tr><tr>
  <td>JC_RESUME 0x00000003</td>
  <td>The fax server MUST resume the specified fax job if it is in a paused state and return the job status to the value it had when the job was paused: JS_PENDING or JS_RETRYING.</td>
 </tr></tbody></table>
</dd>
<dd>
<p>Note that JC_RESTART is defined to the same value as
<b>JC_RESUME</b>. When receiving a value of 0x00000003 the server MUST treat
this as a JC_RESUME request.</p>
</dd></dl><p><b>JobEntry: </b>A pointer to a <b>FAX_JOB_ENTRY</b> (section
<a href="7c6ea406-edbd-4a5b-b8f2-5ad5084c750d" data-linktype="relative-path">2.2.5</a>) structure. The
fax server MUST validate this pointer to be not NULL and fail to return
ERROR_INVALID_PARAMETER otherwise. Except for this validation requirement, the
fax server SHOULD ignore this parameter. The fax client SHOULD submit the
pointer to a valid <b>FAX_JOB_ENTRY</b>. This structure contains data obtained
from <b>FaxObs_GetJob</b> (section <a href="20c73988-9339-49cf-81e3-d0b43a89a264" data-linktype="relative-path">3.1.4.2.10</a>) or <b>FaxObs_EnumJobs</b> (section
3.1.4.2.9). This data represents the job identified by the <i>JobId</i>
parameter.<a id="Appendix_A_Target_196"></a><a aria-label="Product behavior note 196" href="056171e7-80bc-45ff-8107-66ba3abb2023#Appendix_A_196" data-linktype="relative-path">&lt;196&gt;</a></p><p><b>Return Values: </b>This method MUST return
0x00000000 (ERROR_SUCCESS) for success; otherwise, it MUST return one of the
following error codes, one of the fax-specific errors that are defined in
section <a href="cbe6c4fb-4dda-4f6c-9701-0d490ba0d105" data-linktype="relative-path">2.2.52</a>, or one
of the other standard errors defined in <a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a>
section <a href="../ms-erref/18d8fbe8-a967-4f1c-ae50-99ca8e491d2d" data-linktype="relative-path">2.2</a>.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Return value/code</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>ERROR_ACCESS_DENIED 0x00000005</td>
  <td>Access is denied. This error code is returned under any of the following conditions: § The client&#39;s fax user account does not have the FAX_ JOB_MANAGE access rights. § The client&#39;s fax user account is not the owner of the fax job identified by the JobId parameter.</td>
 </tr><tr>
  <td>ERROR_INVALID_PARAMETER 0x00000057</td>
  <td>The parameter is incorrect. This error code is returned under any of the following conditions: § The fax job indicated by JobId cannot be found by the fax server. § The specified Command parameter value is not JC_DELETE, JC_PAUSE, or JC_RESUME. § The specified Command value is JC_DELETE, the specified JobId represents the job for an outgoing broadcast message, and aborting outgoing broadcast messages is not supported. For more information, see FaxObs_Abort. § The JobId is set to a NULL pointer value.</td>
 </tr></tbody></table>
</dd></dl><p><b>Exceptions Thrown:</b> No exceptions are thrown except
those that are thrown by the underlying <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_8a7f6700-8311-45bc-af10-82e10accd331" data-linktype="relative-path">RPC</a> protocol, <a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a>.</p></div>