
com.sap.cloud.sdk.s4hana.datamodel.odata.services.MaterialDocumentService Maven / Gradle / Ivy
/*
* Copyright (c) 2019 SAP SE or an SAP affiliate company. All rights reserved.
*/
package com.sap.cloud.sdk.s4hana.datamodel.odata.services;
import java.time.LocalDateTime;
import javax.annotation.Nonnull;
import com.sap.cloud.sdk.s4hana.datamodel.odata.helper.batch.BatchService;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.CancelFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.CancelItemFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeader;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeaderByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeaderCreateFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeaderFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentItemByKeyFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentItemFluentHelper;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.batch.MaterialDocumentServiceBatch;
/**
*
* This service enables you to retrieve and create material documents, e.g. to post a goods receipt for a purchase order
* or to document the transfer of materials between two storage locations. Additionally, the service allows to cancel
* existing material documents or single items. It can be consumed by external systems and user interfaces.
*
*
*
* Reference: SAP
* API Business Hub
*
* Details:
*
*
* OData Service:
* API_MATERIAL_DOCUMENT_SRV
*
*
* API Version:
* 1
*
*
* Communication Scenario:
* Material Document Integration (SAP_COM_0108)
*
*
* Scope Items:
* Core Inventory Management (BMC)
*
*
* Authentication Methods:
* Basic, x509
*
*
*
*/
public interface MaterialDocumentService extends BatchService
{
/**
* If no other path was provided via the {@link #withServicePath(String)} method, this is the default service path
* used to access the endpoint.
*
*/
String DEFAULT_SERVICE_PATH = "/sap/opu/odata/sap/API_MATERIAL_DOCUMENT_SRV";
/**
* Overrides the default service path and returns a new service instance with the specified service path. Also
* adjusts the respective entity URLs.
*
* @param servicePath
* Service path that will override the default.
* @return A new service instance with the specified service path.
*/
@Nonnull
MaterialDocumentService withServicePath( @Nonnull final String servicePath );
/**
* Fetch multiple {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeader
* MaterialDocumentHeader} entities.
*
* @return A fluent helper to fetch multiple
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeader
* MaterialDocumentHeader} entities. This fluent helper allows methods which modify the underlying query to
* be called before executing the query itself. To perform execution, call the
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeaderFluentHelper#execute
* execute} method on the fluent helper object.
*/
@Nonnull
MaterialDocumentHeaderFluentHelper getAllMaterialDocumentHeader();
/**
* Fetch a single {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeader
* MaterialDocumentHeader} entity using key fields.
*
* @param materialDocument
* Alphanumeric key uniquely identifying the document.
*
* Constraints: Not nullable, Maximum length: 10
*
* @param materialDocumentYear
* Material Document Year
*
* Constraints: Not nullable, Maximum length: 4
*
* @return A fluent helper to fetch a single
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeader
* MaterialDocumentHeader} entity using key fields. This fluent helper allows methods which modify the
* underlying query to be called before executing the query itself. To perform execution, call the
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeaderByKeyFluentHelper#execute
* execute} method on the fluent helper object.
*/
@Nonnull
MaterialDocumentHeaderByKeyFluentHelper
getMaterialDocumentHeaderByKey( final String materialDocumentYear, final String materialDocument );
/**
* Create a new {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeader
* MaterialDocumentHeader} entity and save it to the S/4HANA system.
*
* @param materialDocumentHeader
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeader
* MaterialDocumentHeader} entity object that will be created in the S/4HANA system.
* @return A fluent helper to create a new
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeader
* MaterialDocumentHeader} entity. To perform execution, call the
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentHeaderCreateFluentHelper#execute
* execute} method on the fluent helper object.
*/
@Nonnull
MaterialDocumentHeaderCreateFluentHelper
createMaterialDocumentHeader( @Nonnull final MaterialDocumentHeader materialDocumentHeader );
/**
* Fetch multiple {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentItem
* MaterialDocumentItem} entities.
*
* @return A fluent helper to fetch multiple
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentItem
* MaterialDocumentItem} entities. This fluent helper allows methods which modify the underlying query to be
* called before executing the query itself. To perform execution, call the
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentItemFluentHelper#execute
* execute} method on the fluent helper object.
*/
@Nonnull
MaterialDocumentItemFluentHelper getAllMaterialDocumentItem();
/**
* Fetch a single {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentItem
* MaterialDocumentItem} entity using key fields.
*
* @param materialDocument
* Alphanumeric key uniquely identifying the document.
*
* Constraints: Not nullable, Maximum length: 10
*
* @param materialDocumentItem
* Material Document Item
*
* Constraints: Not nullable, Maximum length: 4
*
* @param materialDocumentYear
* Material Document Year
*
* Constraints: Not nullable, Maximum length: 4
*
* @return A fluent helper to fetch a single
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentItem
* MaterialDocumentItem} entity using key fields. This fluent helper allows methods which modify the
* underlying query to be called before executing the query itself. To perform execution, call the
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.MaterialDocumentItemByKeyFluentHelper#execute
* execute} method on the fluent helper object.
*/
@Nonnull
MaterialDocumentItemByKeyFluentHelper getMaterialDocumentItemByKey(
final String materialDocumentYear,
final String materialDocument,
final String materialDocumentItem );
/**
*
* Creates a fluent helper for the Cancel OData function import.
*
*
* @param materialDocument
* Material Document
*
*
*
* Constraints: Not nullable, Maximum length: 10
*
*
* Original parameter name from the Odata EDM: MaterialDocument
*
* @param materialDocumentYear
* Material Doc. Year
*
*
*
* Constraints: Not nullable, Maximum length: 4
*
*
* Original parameter name from the Odata EDM: MaterialDocumentYear
*
* @param postingDate
* Posting Date
*
*
*
* Constraints: Nullable, Precision: 0
*
*
* Original parameter name from the Odata EDM: PostingDate
*
* @return A fluent helper object that will execute the Cancel OData function import with the provided
* parameters. To perform execution, call the
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.CancelFluentHelper#execute
* execute} method on the fluent helper object.
*/
@Nonnull
CancelFluentHelper
cancel( final String materialDocumentYear, final String materialDocument, final LocalDateTime postingDate );
/**
*
* Creates a fluent helper for the CancelItem OData function import.
*
*
* @param materialDocument
* Material Document
*
*
*
* Constraints: Not nullable, Maximum length: 10
*
*
* Original parameter name from the Odata EDM: MaterialDocument
*
* @param materialDocumentItem
* Material Doc.Item
*
*
*
* Constraints: Not nullable, Maximum length: 4
*
*
* Original parameter name from the Odata EDM: MaterialDocumentItem
*
* @param materialDocumentYear
* Material Doc. Year
*
*
*
* Constraints: Not nullable, Maximum length: 4
*
*
* Original parameter name from the Odata EDM: MaterialDocumentYear
*
* @param postingDate
* Posting Date
*
*
*
* Constraints: Nullable, Precision: 0
*
*
* Original parameter name from the Odata EDM: PostingDate
*
* @return A fluent helper object that will execute the CancelItem OData function import with the provided
* parameters. To perform execution, call the
* {@link com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.materialdocument.CancelItemFluentHelper#execute
* execute} method on the fluent helper object.
*/
@Nonnull
CancelItemFluentHelper cancelItem(
final String materialDocumentYear,
final String materialDocument,
final String materialDocumentItem,
final LocalDateTime postingDate );
}