public static final class BillingDocumentRequest.BillingDocumentRequestBuilder extends Object
@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder item(BillingDocumentRequestItem... value)
value
- The BillingDocumentRequestItems to build this BillingDocumentRequest with.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder partner(BillingDocReqPartner... value)
value
- The BillingDocReqPartners to build this BillingDocumentRequest with.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder pricingElement(BillingDocReqPrcgElmnt... value)
value
- The BillingDocReqPrcgElmnts to build this BillingDocumentRequest with.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder billingDocumentRequest(@Nullable String billingDocumentRequest)
Original property name from the Odata EDM: BillingDocumentRequest
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder billingDocumentRequestType(@Nullable String billingDocumentRequestType)
Original property name from the Odata EDM: BillingDocumentRequestType
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder proposedBillingDocumentType(@Nullable String proposedBillingDocumentType)
Original property name from the Odata EDM: ProposedBillingDocumentType
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder creationDate(@Nullable LocalDateTime creationDate)
Original property name from the Odata EDM: CreationDate
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder creationTime(@Nullable LocalTime creationTime)
Original property name from the Odata EDM: CreationTime
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder lastChangeDate(@Nullable LocalDateTime lastChangeDate)
Original property name from the Odata EDM: LastChangeDate
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder lastChangeDateTime(@Nullable ZonedDateTime lastChangeDateTime)
Original property name from the Odata EDM: LastChangeDateTime
In order to convert local time into a UTC time stamp, which makes it easier to compare times, the local time must be converted according to your time zone. The ABAP command convert is available for this purpose.Even if the time zone that the conversion is based on can be redetermined from Customizing or master data, we still recommend that you save the time zone.The internal structure of the high-resolution UTC time stamp is logically organized in date and time sections in a packed decimal format (YYYYMMDDhhmmssmmmuuun), which depicts the year, month, day, hour,second, millisecond, microsecond and the first decimal of the nanoseconds. Please note that the hardware that is normally used does not fully support a resolution of 100 nanoseconds, which is available in the structure.See also GET TIME STAMPA UTC time stamp in short form is also available.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder logicalSystem(@Nullable String logicalSystem)
Original property name from the Odata EDM: LogicalSystem
The distribution of data between systems requires that each system in the network has a unique identification. The logical system is used for this purpose.In the SAP System the client corresponds to a logical system. You can assign a logical system to a client in the client maintenance (choose Goto -> Detail).The logical system is relevant in the following SAP areas:ALE general: two or more logical systems communicate with one another.ALE - ALE business processes (for example, cost center accounting): definition of a system where a specific application runs. Changes to master data can only be made in this system, for example.Workflow objects: the logical system in which the object is located is always included in an object's key.When maintaining the logical system, note the following:The logical system must be unique company-wide. It must not be used by any other system in the ALE integrated group. In a production system, the logical system must not be changed. If the logical system of a document reference is not set to initial and does not match your own, the system assumes the document is located in a different system.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder salesOrganization(@Nullable String salesOrganization)
Original property name from the Odata EDM: SalesOrganization
You can assign any number of distribution channels and divisions to a sales organization. A particular combination of sales organization, distribution channel, and division is known as a sales area.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder distributionChannel(@Nullable String distributionChannel)
Original property name from the Odata EDM: DistributionChannel
You can maintain information about customers and materials by sales organization and distribution channel. Within a sales organization you can deliver goods to a given customer through more than one distribution channel.You can assign a distribution channel to one or more sales organizations. If, for example, you have numerous sales organizations, each sales organization may use the "Wholesale" distribution channel.For each combination of sales organization and distribution channel, you can further assign one or more of the divisions that are defined for the sales organization. You can, for example, assign "Food" and "Non-food" divisions to the "Wholesale" distribution channel. A particular combination of sales organization, distribution channel, and division is known as a sales area.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder division(@Nullable String division)
Original property name from the Odata EDM: Division
A product or service is always assigned to just one division. From the point of view of sales and distribution, the use of divisions lets you organize your sales structure around groups of similar products or product lines. This allows the people in a division who process orders and service customers to specialize within a manageable area of expertise.If a sales organization sells food and non-food products through both retail and wholesaledistribution channels each distribution channel could then be further split into food and non-food divisions.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder billingDocumentDate(@Nullable LocalDateTime billingDocumentDate)
Original property name from the Odata EDM: BillingDocumentDate
When you process billing documents in collective processing, you can use the billing date as a selection criterion.If invoice dates are defined for customers, the system proposes the billing date from the invoice date calendar. If no invoice dates are agreed, then the actual goods issue date is formed on the basis of delivery related billing. In order related billing, the billing date of the order forms the basis of the billing date. When billing services, the system proposes the date of services rendered. You can change the date in the sales document manually.If you use a billing plan to bill a project, the system can use the planned and actual dates to propose billing dates for the billing plan in the corresponding partial billing. In a billing plan for a maintenance or rental contract, you can specify rules by which the system determines billing dates on the basis of other dates in the contract.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder totalNetAmount(@Nullable BigDecimal totalNetAmount)
Original property name from the Odata EDM: TotalNetAmount
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder transactionCurrency(@Nullable String transactionCurrency)
Original property name from the Odata EDM: TransactionCurrency
The system proposes the document currency from the customer master record of the sold-to party. You can change the currency manually in the document. If you change the currency, the system recalculates prices for the entire document.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder totalTaxAmount(@Nullable BigDecimal totalTaxAmount)
Original property name from the Odata EDM: TotalTaxAmount
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder totalGrossAmount(@Nullable BigDecimal totalGrossAmount)
Original property name from the Odata EDM: TotalGrossAmount
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder taxDepartureCountry(@Nullable String taxDepartureCountry)
Original property name from the Odata EDM: TaxDepartureCountry
A different country needs to be entered for certain internal European transactions (chain transactions).
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder payerParty(@Nullable String payerParty)
Original property name from the Odata EDM: PayerParty
The payer may differ from the bill-to party who receives the bill.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder contractAccount(@Nullable String contractAccount)
Original property name from the Odata EDM: ContractAccount
The postings in Contract Accounts Receivable and Payable are always assigned to a contract account and a business partner.In the contract account master record, specifically for each business partner, you can define procedures that are to be used for further processing of line items. These include for example, payment methods, dunning procedure, tolerances.NoteFor utility and insurance companies, a contract is assigned to exactly one contract account. However several accounts - depending on contract account type can be assigned to one contract account.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder customerPaymentTerms(@Nullable String customerPaymentTerms)
Original property name from the Odata EDM: CustomerPaymentTerms
It is used in sales orders, purchase orders, and invoices. Terms of payment provide information for:Cash managementDunning proceduresPayment transactionsData can be entered in the field for the terms of payment key in various ways as you enter a business transaction:In most business transactions, the system defaults the key specified in the master record of the customer/vendor in question.In some transactions (for example, credit memos), however, the system does not default the key from the master record. Despite this, you can use the key from the customer/vendor master record by entering "*" in the field.Regardless of whether or not a key is defaulted from the master record, you can manually enter a key during document entry at:item level in sales ordersheader level in purchase orders and invoicesMaster records have separate areas for Financial Accounting, Sales, and Purchasing. You can specify different terms of payment keys in each of these areas. When you then enter a business transaction, the application in question will use the key specified in its area of the master record.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder paymentMethod(@Nullable String paymentMethod)
Original property name from the Odata EDM: PaymentMethod
If you enter a payment method, then only this payment method can be used in automatic payment transactions. Unless you enter a payment method, one of the payment methods that was allowed in the master record is selected in the payment program according to specified rules.For document entry or document changes, you only enter a payment method if you want to switch off the automatic payment method selection of the payment program.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder sEPAMandate(@Nullable String sEPAMandate)
Original property name from the Odata EDM: SEPAMandate
The mandate reference can be specified externally or be determined by internal number assignment. The system determines 12 digit numerical mandate references for the internal number assignment.Whether internal or external number assignment (or both) is possible depends on the application concerned.Once you have created the mandate, you can no longer change its mandate reference.At event 0570, you can implement different logic using your own installation-specific function module. Register the function module in Customizing for Contract Accounts Receivable and Payable under Business Transactions -> Incoming/Outgoing Payment Creation -> Management of SEPA Mandates -> General Settings in the Mandate Reference field.Notes on Assigning Contract Accounts and Contracts to MandatesYou can enter a mandate reference in various FI-CA objects (such as, the document item, the contract account, or the contract). The effect of entering a reference is that the system uses the entered mandate for this object during payment.Notes on Using Alternative PayersIf you want to enter an alternative payer P1 for business partner B1 with contract account C1, you have to enter the mandate for this alternative payer P1. If the mandate is to be used now exclusively for paying postings on B1, then enter B1 in the field Payment for Alternative Debtor/ID on the lower part of the screen. If you want the mandate to be used only for a certain contract account of B1 (for instance, for C1), then enter the ID of this contract account in the Contract Account field on the upper part of the screen.ExampleYou enter mandate M1 in contract account C1. When items of contract C1 are paid, the system uses mandate M1.Using a mandate for one object does not exclude using it for another object. That means, for example, that you could also enter mandate M1 in contract C2 as the mandate to be used. In that case, no contract account is entered in the mandate itself, so that it can be referenced from multiple objects.Example - Assignment of a mandate to multiple contract accountsContract account Mandate (in Contract Acct) MeaningC1 M1 Mandate M1 is valid for C1.C2 M1 Mandate M1 is also valid for C2.C3 M2 Mandate M2 is valid for C3.C4 M2 Mandate M2 is also valid for C4.Another alternative is to enter the contract account in the mandate itself. The result of making this assignment, however, is that the mandate can only be used (exclusively) for the payment of items of this one contract account.Example - Assignment of one contract account per mandateMandate Contract Account (in Mandate) MeaningM1 C1 Mandate M1 is only valid for items of contract account C1.M2 C2 Mandate M2 is only valid for items of contract account C2.If you want a mandate to be used by several FI-CA objects (such as, document, contract account, or contract), enter the mandate only in the given objects.The examples above apply in a similar manner to the assignment of contracts.Even if you do not enter payment data at the contract level in contracts of the various industry components that use Contract Accounts Receivable and Payable, it can be useful to make an assignment between the contract and the mandate. This makes it possible to have the system pay postings assigned to a contract using a specific mandate.If you do not make any assignments between FI-CA objects (such as, document, contract account, or contract) and a mandate, the system determines the mandate from the bank details entered in the payment data of the payer. In doing so, the system compares the IBAN in the mandate with the IBAN of the bank details.If there are several active mandates for the same bank details of the payer, but there are no additional assignments between the mandate and the FI-CA object, you can use event 0653 to specify which of the mandates is used for making the payment.If you do not make any specification, the system uses the first mandate that qualifies for the payment.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder companyCode(@Nullable String companyCode)
Original property name from the Odata EDM: CompanyCode
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder referenceDocument(@Nullable String referenceDocument)
Original property name from the Odata EDM: ReferenceDocument
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder referenceDocumentLogicalSystem(@Nullable String referenceDocumentLogicalSystem)
Original property name from the Odata EDM: ReferenceDocumentLogicalSystem
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder referenceDocSDDocCategory(@Nullable String referenceDocSDDocCategory)
Original property name from the Odata EDM: ReferenceDocSDDocCategory
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder soldToParty(@Nullable String soldToParty)
Original property name from the Odata EDM: SoldToParty
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder purchaseOrderByCustomer(@Nullable String purchaseOrderByCustomer)
Original property name from the Odata EDM: PurchaseOrderByCustomer
The number creates the link between the customer purchase order and the sales document that you create. You can use the number used by the customer during correspondence with the customer to find certain document information. If the number refers to a purchase order, you can also print it on the documents that you send to the customer (e.g. on the delivery note).
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder pricingDocument(@Nullable String pricingDocument)
Original property name from the Odata EDM: PricingDocument
The purchasing and sales departments may want to use the same order number for a document even though different conditions may apply in each area. The system uses the internal number to identify the different conditions.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder billingIssueType(@Nullable String billingIssueType)
Original property name from the Odata EDM: BillingIssueType
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder incotermsVersion(@Nullable String incotermsVersion)
Original property name from the Odata EDM: IncotermsVersion
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder incotermsClassification(@Nullable String incotermsClassification)
Original property name from the Odata EDM: IncotermsClassification
Incoterms specify internationally recognized procedures that the shipper and the receiving party must follow for the shipping transaction to be completed successfully.If goods are shipped through a port of departure, the appropriate Incoterm might be: FOB ("Free On Board"). You can provide further details (for example, the name of the port) in the secondary Incoterm field: FOB Boston, for example.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder incotermsTransferLocation(@Nullable String incotermsTransferLocation)
Original property name from the Odata EDM: IncotermsTransferLocation
If the primary Incoterm is, for example, FOB ("Free on Board"), then the second field provides details of the port from which the delivery leaves (for example, "FOB Boston").
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder incotermsLocation1(@Nullable String incotermsLocation1)
Original property name from the Odata EDM: IncotermsLocation1
1. For sea and inland waterway transport - Port of Shipment2. For any mode of transport - Place of Delivery 2010Incoterms are divided as follows:Group 1: Rules for any mode or modes of transport (including by vessel)Incoterms Incoterms Description Location 1 EXW Ex Works Place of DeliveryFCA Free Carrier Place of DeliveryCPT Carriage Paid To Place of DestinationCIP Carriage & Insurance Paid To Place of DestinationDAF Delivered at Frontier Place of DeliveryDDP Delivered Duty Paid Place of DestinationDDU Delivered Duty Unpaid Place of DestinationGroup 2: Rules for sea and inland waterwaysIncoterms Incoterms Description Location 1 FAS Free Alongside Ship Port of ShipmentFOB Free On Board Port of ShipmentCFR Cost & Freight Port of DestinationCIF Cost Insurance & Freight Port of DestinationDEQ Delivered Eq Quay (Duty Paid) Port of DestinationDES Delivered Ex Ship Port of DestinationIf the primary incoterm is specified as FOB “Free on Board”, the second field provides details of the port from which the delivery leaves, such as FOB Boston.
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder incotermsLocation2(@Nullable String incotermsLocation2)
Original property name from the Odata EDM: IncotermsLocation2
No Version:This field is disabledIncoterm Version 2000This field is disabled as part of standard delivery unless a customer decides to enable it by the way of Customizing for Sales and Distribution under Master Data -> Business Partners -> Customers -> Billing Document -> Incoterms -> Map Incoterms to Versions.Incoterm Version 2010For this version, the field represents:Sea and inland waterway transport - Port of DestinationAny mode of transport - Place of Destination2010 Incoterms are divided as follows:Group 1: Rules for any mode or modes of transport (including by vessel)Incoterms Incoterms Description Location 2CPT Carriage Paid To Place of DestinationCIP Carriage & Insurance Paid To Place of DestinationGroup 2: Rules for sea and inland waterwaysIncoterms Incoterms Description Location 2CFR Cost & Freight Port of DestinationCIF Cost Insurance & Freight Port of Destination
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder overallBillingDocReqStatus(@Nullable String overallBillingDocReqStatus)
Original property name from the Odata EDM: OverallBillingDocReqStatus
this
.@Nonnull public BillingDocumentRequest.BillingDocumentRequestBuilder overallPricingIncompletionSts(@Nullable String overallPricingIncompletionSts)
Original property name from the Odata EDM: OverallPricingIncompletionSts
this
.@Nonnull public BillingDocumentRequest build()
Copyright © 2021 SAP SE. All rights reserved.