Skip to Content

Split task to pick different iStocks

Hello,

in the following I would like to describe how you can use the ManageSiteLogisticsTaskIn A2X service to confirm a pick task (one-step) from different iStocks.

In my example I want to pick 3 EA of product SR_FG_02, 1 EA from iStock SR_098204 and 2 EA from iStock SR_0293482.

Of cause first you have to query the corresponding task. You can use the QuerySiteLogisticsTaskIn to do so. In the below example I query the task with ID 813. The payload shown below can be used e.g. in SOAP UI.

<soapenv:Envelope xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/” xmlns:glob=”http://sap.com/xi/SAPGlobal20/Global”>
<soapenv:Header/>
<soapenv:Body>
<glob:SiteLogisticsTaskByElementsQuery_sync>
<SiteLogisticsTaskSelectionByElements>
<SelectionBySiteLogisticsTaskID>
<InclusionExclusionCode>I</InclusionExclusionCode>
<IntervalBoundaryTypeCode>1</IntervalBoundaryTypeCode>
<LowerBoundarySiteLogisticsTaskID>813</LowerBoundarySiteLogisticsTaskID>
</SelectionBySiteLogisticsTaskID>
</SiteLogisticsTaskSelectionByElements>
<ProcessingConditions>
<QueryHitsMaximumNumberValue>50</QueryHitsMaximumNumberValue>
<QueryHitsUnlimitedIndicator>false</QueryHitsUnlimitedIndicator>
<LastReturnedObjectID></LastReturnedObjectID>
</ProcessingConditions>
</glob:SiteLogisticsTaskByElementsQuery_sync>
</soapenv:Body>
</soapenv:Envelope>

In the following you can find the SOAP payload to confirm task 813:

<soapenv:Envelope xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/” xmlns:glob=”http://sap.com/xi/SAPGlobal20/Global”>
<soapenv:Header/>
<soapenv:Body>
<glob:SiteLogisticsTaskBundleMaintainRequest_sync_V1>
<BasicMessageHeader>
<ID>1</ID>
</BasicMessageHeader>
<SiteLogisticsTask>
<SiteLogisticTaskID>813</SiteLogisticTaskID>
<SiteLogisticTaskUUID>00163e0e-25a6-1ed7-83db-9cbc3898d602</SiteLogisticTaskUUID>
<ReferenceObject>
<ReferenceObjectUUID>00163e0e-25a6-1ed7-83db- 9cbc3898f602</ReferenceObjectUUID>
<OperationActivity>
<OperationActivityUUID>00163e0e-25a6-1ed7-83db-9cbc3897b602</OperationActivityUUID>
<MaterialInput>
<MaterialInputUUID>00163e0e-25a6-1ed7-83db-9cbc3897f602</MaterialInputUUID>
<SourceLogisticsAreaID>P1100-20</SourceLogisticsAreaID>
</MaterialInput>
<MaterialOutput>
<MaterialOutputUUID>00163e0e-25a6-1ed7-83db-9cbc38981602</MaterialOutputUUID>
<ProductID>SR_FG_02</ProductID>
<ActualQuantity unitCode=”EA”>1.0</ActualQuantity>
<IdentifiedStockID>SR_098204</IdentifiedStockID>
<SplitIndicator>true</SplitIndicator>
</MaterialOutput>
<MaterialOutput>
<MaterialOutputUUID/>
<ProductID>SR_FG_02</ProductID>
<IdentifiedStockID>SR_0293482</IdentifiedStockID>
<SourceLogisticsAreaIDPostSplit>P1100-20</SourceLogisticsAreaIDPostSplit>
</MaterialOutput>
<MaterialOutput>
<MaterialOutputUUID/>
<ActualQuantity unitCode=”EA”>2.0</ActualQuantity>
</MaterialOutput>
</OperationActivity>
</ReferenceObject>
</SiteLogisticsTask>
</glob:SiteLogisticsTaskBundleMaintainRequest_sync_V1>
</soapenv:Body>
</soapenv:Envelope>

2 Comments
You must be Logged on to comment or reply to a post.
  • Hello Stefan,

    I tried to confirm task document of outbound via this API but it doesn’t work correctly.

    Could you have any sample data?

    I would like to create standard case,

    For exemple:

    Product ID :  PRO1000

    Quantity in the Task document : 5.0 EA

    Source Logistics Area : P1100-20

    Quantity of Outbound : 5.0 EA

     

    This is my Soap UI data, but in this case Task confirm status changed “In process” not “Finished”.

    And Outbound Delivery document didn’t create.

    I am very appreciate if you reply me.

    <soapenv:Envelope xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/” xmlns:glob=”http://sap.com/xi/SAPGlobal20/Global”>
    <soapenv:Header/>
    <soapenv:Body>
    <glob:SiteLogisticsTaskBundleMaintainRequest_sync_V1>
    <BasicMessageHeader> </BasicMessageHeader>
    <!–Zero or more repetitions:–>
    <SiteLogisticsTask>
    <SiteLogisticTaskID>1154</SiteLogisticTaskID>
    <SiteLogisticTaskUUID>00163e0e-4638-1ee9-a08e-ae4c7620c1f6</SiteLogisticTaskUUID>
    <ReferenceObject>
    <ReferenceObjectUUID>00163e0e-4638-1ee9-a08e-ae4c7620e1f6</ReferenceObjectUUID>
    <OperationActivity>
    <OperationActivityUUID>00163e0e-4638-1ee9-a08e-ae4c761f41f6</OperationActivityUUID>
    <MaterialInput>
    <MaterialInputUUID>00163e0e-4638-1ee9-a08e-ae4c761f81f6</MaterialInputUUID>
    <SourceLogisticsAreaID>P1100-20</SourceLogisticsAreaID>
    <ProductID>PRO1000</ProductID>
    <ActualQuantity unitCode=”EA”>5.0</ActualQuantity>
    </MaterialInput>
    </OperationActivity>
    </ReferenceObject>
    </SiteLogisticsTask>
    </glob:SiteLogisticsTaskBundleMaintainRequest_sync_V1>
    </soapenv:Body>
    </soapenv:Envelope>

     

    Thank you and best regards,

    Yumiko

    • Hi Yumiko,

      what is happening in case you confirm the task via normal UI? Normally a task changes to status ‘In process’ in case not the full quantity is confirmed. What is the open quantity before and after you execute the API?

      Best regards,

      Stefan