Description | Manage Standard Inbound Delivery Notifications |
Name | ManageStandardInboundDeliveryNotificationIn |
Namespace | http://sap.com/xi/A1S/Global |
Process Component Description | Inbound Delivery Processing |
Process Component Name | InboundDeliveryProcessing |
Process Component Namespace | http://sap.com/xi/AP/LogisticsExecution/Global |
Deployment Unit Description | Production and Site Logistics Execution |
Endpoint Activation | By Scoping of Process Component | Operations |
Release Status | Released |
An interface to create standard inbound delivery notifications for supplier delivery scenarios.
The web service ManageStandardInboundDeliveryNotificationIn enables you to connect external applications to your SAP Business ByDesign system and to maintain general information and items for standard inbound delivery notifications, in supplier delivery scenarios. Additionally, this service also supports creation of standard inbound delivery notifications in Third-Party Logistics(3PL) Inbound scenarios, where goods from the supplier will be received in an externally managed location.
The web service interface ManageStandardInboundDeliveryNotificationIn offers the operations MaintainBundle and CheckMaintainBundle.
The MaintainBundle operation is used to create one or more inbound delivery notifications.
The CheckMaintainBundle operation is used to check if one or more inbound delivery notifications can be created. No inbound delivery notifications are created as a result of this operation.
An inbound delivery notification is always sent by a supplier with reference to a purchase order. In this context, this means that a valid reference purchase order which has been ordered must exist in your SAP Business ByDesign system at the time of creation of the inbound delivery notification.
Additionally, due to the stateless behavior of A2X service operations, it is not possible to enforce transactional or logical locking. In spite of this, you may be required to enforce that a modifying operation is not executed because the state of the underlying business object instance in the database has changed since the client read its data.
Items of type kit are not supported via this service.
MaintainBundle operations enable external applications to change business document data. CheckMaintainBundle operations enable external applications to simulate maintain bundle requests without changing business document data. In particular, CheckMaintainBundle operations have the following functions:
Return system messages similar to corresponding maintain bundle operations
Provide the same message type as the corresponding operation MaintainBundle
Do not assign internal numbers from a productive number range interval (number range statuses are not increased)
Do not change business documents
Action codes represent an instruction to the recipient of the web service request to process transmitted message node elements. Following are the existing action codes and their description.
Action Code | Description |
---|---|
01 | Create; the system returns an error message if the node element already exists. |
Maintain bundle and check maintain bundle operations are mass-enabled stateless synchronous web service operations. Transferring or requesting amounts of data that are too large causes communication timeouts. The web service consumer is responsible for ensuring reasonable sizes of data for mass operations.
Maintain bundle and check maintain bundle operations support exactly one execution (idempotency). To ensure exactly one execution of web service requests, the web service consumer has to provide unique values for the elements ID or UUID of the BasicMessageHeader node element.
Many external applications consuming web services have special requirements and restrictions regarding the format of WSDLs. Some external applications require service definition WSDLs describing the web service signature. This is normally sufficient for the creation of static client-side proxies. Other external applications, normally those that do not create static client-side proxies, require binding WSDLs including the endpoint definition and authentication policy information.
In both cases, it may be the case that the external application imposes special restrictions on the structure or the size of WSDLs.
Microsoft InfoPath requires binding WSDLs and considers elements with the attribute "minOccurs=0" as "mandatory". However "minOccurs=0" means "optional" in SAP web services. In order to circumvent this problem, the WSDL must be saved locally and an additional attribute "nillable=true" must be added to make a query parameter optional for Microsoft InfoPath.
For very small clients such as mobile devices, the size of the WSDL itself may become a problem. In most cases the client only requires a very small part of the signature, but due to the complexity of the WSDL they may end up with long runtimes during serialization of the request or deserialization of the response. In order to circumvent this problem, the WSDL must be saved locally and the optional parts of the signature have to be removed before the WSDL is imported or static client-side proxies are generated.
External applications have to take into account that web service request and response message types can be enhanced with additional elements and attributes. Enhancements can be created by SAP, SAP partners, and key users. Enhancements of request message types are always optional elements or attributes. The SAP system does not require the external application to provide values in the request. Enhancements of response message types can contain mandatory elements or attributes. The external application must be able to process the extended response successfully.
XML element and attribute names are always stable. Technical definitions of data types can be enhanced in a compatible way. This may result in changed data type names. External applications can rely on XML element names and attribute names, but should not rely on data type names.
You can download the WSDL file for any web service here:
Application and User Management work center -> Service Explorer view
You can find the documentation of the global data types in the SAP Community Network. Go to http://scn.sap.com/docs/DOC-17516 and click "View Document".
Description | Manage standard inbound delivery notifications |
Name | MaintainBundle |
Synchronous | yes |
Release Status | Released |
To create one or more standard inbound delivery notifications using imported structured data.
The MaintainBundle operation is used to create one or more standard inbound delivery notifications for supplier delivery scenarios. Additionally, this operation also supports creation of standard inbound delivery notifications in Third-Party Logistics(3PL) Inbound scenarios, where goods from the supplier will be received in an externally managed location.
This section explains the structure of the request message payload for this operation, along with the information needed to create a simple inbound delivery notification.
In order to use this operation to create standard inbound delivery notifications, the following elements are to be specified in the StandardInboundDeliveryNotificationBundleCreateRequest message payload:
Elements | Description |
---|---|
BasicMessageHeader | Message header information. For more details, refer to General Rules for Using this Web Service section in the service documentation. |
StandardInboundDeliveryNotification | Standard Inbound Delivery Notification Structure |
The cardinality of the node StandardInboundDeliveryNotification is 1__*, which implies that one or more inbound delivery notifications can be created through a single request message payload.
The StandardInboundDeliveryNotification node elements contain all general information such as ID, delivery dates and business partners. Most of the data of this node is related to General Data in the Inbound Delivery Notifications UI.
Listed below are the attributes and the elements of StandardInboundDeliveryNotification:
Attributes | Description |
---|---|
actionCode | Determine the action that will be executed. Since this service supports creation only, always specify the code '01'. For more information, refer to General Rules for Using this Web Service section in the service documentation. |
cancellationDocumentIndicator | Trigger cancellation of the inbound delivery notification. Default value is 'false', which means no cancellation. (optional) |
releaseDocumentIndicator | Trigger release of the inbound delivery notification. Default value is 'false', which means no release. (optional) |
Elements | Description |
---|---|
DeliveryNotificationID | ID with which the inbound delivery notification can be addressed and found. |
DeliveryNotificationUUID | Universally Unique Identifier (optional). |
ProcessingTypeCode | Business process type of inbound delivery notification(eg. Standard, TPOP, Customer Return). For this service, always use 'SD'. |
DeliveryDate | Supplier delivery date and time period. (optional) |
GrossWeight | Gross weight measure of shipment. (optional) |
GrossVolume | Gross volume measure of shipment. (optional) |
IncotermsClassificationCode | Incoterms classification code. Please find details for the supported codes in table below. (optional) |
IncotermsTransferLocationName | Incoterms transfer location name. (optional) |
FunctionalUnitID | Internal ID of the functional unit. (optional) |
BuyerPartyID | Internal ID of the buying company. |
SellerPartyID | Internal ID of supplier to whom the purchase order is raised. |
ProductRecipientID | Internal ID of the party who will receive the goods. |
VendorID | Internal ID of the vendor party, typically the supplier. |
FreightForwarderID | Internal ID of the freight forwarder party. (optional) |
Item | Item specific details like product, quantity and serial numbers. One or more items can exist for a single inbound delivery notification. Please find details for this node in the section on Item. |
AttachmentFolder | Add and remove inbound delivery notification attachments. Available at item level as well. (optional) |
TextCollection | Maintain notes on header or item level. (optional) |
The coded representation of Incoterms classification code has been given as below:
Incoterms Classification Code Value | Description |
---|---|
CFR | Cost and freight |
CIF | Cost, insurance and freight |
CIP | Carriage and insurance paid to |
CPT | Carriage paid to |
DAF | Delivered at frontier |
DAP | Delivered at place |
DAT | Delivered terminal |
DDP | Delivered duty paid |
DDU | Delivered duty unpaid |
DEQ | Delivered ex quay (duty paid) |
DES | Delivered ex ship |
EXW | Ex works |
FAS | Free alongside ship |
FCA | Free carrier |
FOB | Free on board |
The Item node element has information relevant for the inbound delivery notification items like the product, quantity, serial numbers, and identified stock information. The data on this node can be seen in the Items and Detailed Items view of the Inbound Delivery Notifications UI.
The following are the attributes and elements of Item:
Attributes | Description |
---|---|
actionCode | Determine the action that will be executed. Since this service supports creation only, always specify the code '01'. For more information, refer to General Rules for Using this Web Service section in the service documentation. |
Elements | Description |
---|---|
LineID | ID for the line item. This ID must be unique per inbound delivery notification. |
LineItemUUID | Universally Unique Identifier (optional). |
TypeCode | Type of item. For this service, always use '14', which is the default item type code and stands for 'Delivery Standard Item'. |
ProcessingTypeCode | Type of inbound process. For this service, always use 'INST' which is the default processing type code and stands for 'Standard Inbound Delivery' item. |
DeliveryQuantity | Quantity of the item the supplier has promised to deliver. |
DeliveryQuantityTypeCode | Delivery quantity type code information. (optional) |
SellerPartyID | Internal ID of the supplier to whom the purchase order is raised. |
BuyerPartyID | Internal ID of the buying company. |
IdentifiedStockID | Identified stock ID for the product. (optional) |
IdentifiedStockProductID | Identified stock product ID (optional) |
IdentifiedStockTypeCode | Identified stock type code. (optional) |
ItemProduct | Product ID information of item. |
SerialNumbers | Add one or more serial numbers for serialized products. (optional) |
ItemBusinessTransactionDocumentReference | Referenced business transaction document. Please find more details about this node in the section on ItemBusinessTransactionDocumentReference. |
AttachmentFolder | Add and remove inbound delivery notification attachments, at item level. (optional) |
TextCollection | Maintain notes on item level. (optional) |
ItemBusinessTransactionDocumentReference describes the reference documents with respect to which the inbound delivery notification is to be created.
Standard inbound delivery notifications are created with reference to purchase orders. Thus, a valid reference purchase order which has been ordered must exist in your SAP Business ByDesign system at the time of creation of the inbound delivery notification.
Attributes | Description |
---|---|
actionCode | Determine the action that will be executed. Since this service supports creation only, always specify the code '01'. For more information, refer to General Rules for Using this Web Service section in the service documentation. |
Elements | Description |
---|---|
PurchaseOrder | Purchase order with reference to which inbound delivery notification is to be created. |
Request XML message to create a new Inbound Delivery Notification
<n0:StandardInboundDeliveryNotificationBundleCreateRequest_sync xmlns:n0="http://sap.com/xi/SAPGlobal20/Global"> <BasicMessageHeader> <!-- <ID>TEST1</ID> <UUID>12345678-90AB-CDEF-0123-456789ABCDEF</UUID> <ReferenceID>Token 10</ReferenceID> <ReferenceUUID>12345678-90AB-CDEF-0123-456789ABCDEF</ReferenceUUID>--> </BasicMessageHeader> <StandardInboundDeliveryNotification actionCode="01" cancellationDocumentIndicator="false" releaseDocumentIndicator="false"> <!-- <SenderTechnicalID>Token 14</SenderTechnicalID> <ChangeStateID>Token 15</ChangeStateID>--> <DeliveryNotificationID>IDN_A2X_S103</DeliveryNotificationID> <ProcessingTypeCode>SD</ProcessingTypeCode> <!-- <DeliveryDate> <StartDateTime timeZoneCode="UTC">2018-04-28T12:00:00.1234567Z</StartDateTime> <EndDateTime timeZoneCode="UTC">2018-04-28T12:00:00.1234567Z</EndDateTime> </DeliveryDate>--> <!-- <GrossWeight unitCode="KG">24</GrossWeight> <GrossVolume unitCode="KL">26</GrossVolume>--> <!-- <IncotermsClassificationCode>CIP</IncotermsClassificationCode> <IncotermsTransferLocationName>A2X TEST</IncotermsTransferLocationName>--> <ShipToLocationID>MC64000</ShipToLocationID> <!-- <FunctionalUnitID>MC64920</FunctionalUnitID>--> <ProductRecipientID>MC10000</ProductRecipientID> <VendorID>MC2000-3PL</VendorID> <!-- <FreightForwarderID>MDEC15013</FreightForwarderID>--> <Item actionCode="01" cancellationItemIndicator="false"> <!-- <SenderTechnicalID>Token 55</SenderTechnicalID>--> <LineItemID>10</LineItemID> <TypeCode>14</TypeCode> <ProcessingTypeCode>INST</ProcessingTypeCode> <DeliveryQuantity unitCode="EA">1</DeliveryQuantity> <SellerPartyID>MC2000-3PL</SellerPartyID> <BuyerPartyID>MC10000</BuyerPartyID> <!-- <IdentifiedStockID>Token 76</IdentifiedStockID> <IdentifiedStockProductID>MCF-0001</IdentifiedStockProductID> <IdentifiedStockTypeCode>01</IdentifiedStockTypeCode>--> <ItemProduct actionCode="01"> <ProductID>SP_BOUM2_M01</ProductID> <SerialNumbers actionCode="01"> <!-- <SenderTechnicalID>Token 90</SenderTechnicalID> <ReferenceProductUUID>12345678-90AB-CDEF-0123-456789ABCDEF</ReferenceProductUUID>--> <SerialID>S001</SerialID> </SerialNumbers> </ItemProduct> <ItemBusinessTransactionDocumentReference actionCode="01"> <PurchaseOrder> <ID>1234594</ID> <!-- <UUID>12345678-90AB-CDEF-0123-456789ABCDEF</UUID>--> <TypeCode>001</TypeCode> <ItemID>1</ItemID> <!-- <ItemUUID>12345678-90AB-CDEF-0123-456789ABCDEF</ItemUUID>--> <!-- <ItemTypeCode>18</ItemTypeCode>--> </PurchaseOrder> </ItemBusinessTransactionDocumentReference> </Item> <AttachmentFolder actionCode="01"> <Document actionCode="01"> <!-- <LinkInternalIndicator>true </LinkInternalIndicator>--> <PathName/> <Name>A2X ATTACH</Name> <VisibleIndicator>true</VisibleIndicator> <VersioningEnabledIndicator>true</VersioningEnabledIndicator> <CategoryCode>3</CategoryCode> <TypeCode>10001</TypeCode> <AlternativeName>A2X ATTACH ALTERNATIVE</AlternativeName> <Description languageCode="EN">A2X ATTACH DESCRIPTION</Description> <ExternalLinkWebURI>http://sap.com/anyURI</ExternalLinkWebURI> </Document> </AttachmentFolder> <TextCollection actionCode="01"> <Text actionCode="01"> <TypeCode>10011</TypeCode> <CreationDateTime>2018-05-11T12:00:00.1234567Z</CreationDateTime> <ContentText languageCode="EN">INTERNAL TEXT</ContentText> </Text> </TextCollection> </StandardInboundDeliveryNotification> </n0:StandardInboundDeliveryNotificationBundleCreateRequest_sync>
Response XML message containing ID and UUID data of the newly created Inbound Delivery Notification
<n0:StandardInboundDeliveryNotificationBundleCreateConfirmation_sync xmlns:n0="http://sap.com/xi/SAPGlobal20/Global" xmlns:prx="urn:sap.com:proxy:ACL:/1SAI/TAEFEF82F9055F600402A7B:804"> <StandardInboundDeliveryNotificationConfirmationBody> <ReferenceObjectNodeSenderTechnicalID> </ReferenceObjectNodeSenderTechnicalID> <ChangeStateID>20180604063013.0990510</ChangeStateID> <DeliveryNotificationID>IDN_A2X_S103</DeliveryNotificationID> <UUID>00163e5f-4d76-1ed8-99f8-16f07b45622a</UUID> </StandardInboundDeliveryNotificationConfirmationBody> <Log/> </n0:StandardInboundDeliveryNotificationBundleCreateConfirmation_sync>
Description | Check standard inbound delivery notifications |
Name | CheckMaintainBundle |
Synchronous | yes |
Release Status | Released |
To check whether one or more standard inbound delivery notifications can be created using imported structured data.
This operation can be used to check the consistency of one or more inbound delivery notifications passed in the request message payload. No inbound delivery notifications are created as a result of invoking this operation.
The web service request and response message types of the CheckMaintainBundle operation are the same as those of the MaintainBundle operation. The explanations given can therefore also be applied to the CheckMaintainBundle operation.
For more information on the differences between CheckMaintainBundle operation and MaintainBundle operation, refer to General Rules for Using this Web Service section in the service documentation.