## Sales Order Manager Web Service

This chapter provides an overview of the Sales Order Manager web service, lists prerequisites, and discusses these web service operations:

- processSalesOrder

- processSalesPriceAdjustment

- getItemPriceAndAvailability

- getCustomerItemPrice

- getSalesOrder

- getItemListPrice

- getSalesOrderPriceHistory

### Understanding the Sales Order Manager Web Service

The SalesOrderManager web service (JP420000) manages the execution of sales order-related web service operations. This table includes a description of the sales order web service operations:

Operation | Description
processSalesOrder (J4200010) | Use this operation to process sales order information in the JD Edwards EnterpriseOne Sales Order Management system. This operation enables you to add, change, or cancel a sales order.
processSalesPriceAdjustment (J4200020) | Use this operation to process sales price adjustment data in the JD Edwards EnterpriseOne Advanced Pricing and Sales Order Management systems. This operation enables you to: Add or update price adjustment definition records. Add or update price adjustment detail records. Add or update adjustment schedule records.
getItemPriceAndAvailability (J4200030) | Use this operation to retrieve item pricing and availability information from the JD Edwards EnterpriseOne Inventory Management system. Note. There are several operations that provide item pricing information to the consumer. Use this operation to review item availability information in addition to item pricing.
getCustomerItemPrice (J4200040) | Use this operation to retrieve item pricing for a specified customer from the JD Edwards EnterpriseOne Inventory Management system. Note. There are several operations that provide item pricing information to the consumer. Use this operation to review item prices, including line-level discounts and markups, for specific customers.
getSalesOrder (J4200050) | Use this operation to review sales orders that exist in the JD Edwards EnterpriseOne Sales Order Management system.
getItemListPrice (J4200060) | Use this operation to retrieve a list of base prices from the JD Edwards EnterpriseOne Inventory Management system for a specified item. Note. There are several operations that provide item pricing information to the consumer. Use this operation to review base prices for specified items. This operation does not provide customer-specific prices or availability information.
getSalesOrderPriceHistory (J4200070) | Use this operation to retrieve historical pricing information from the JD Edwards EnterpriseOne Sales Order Management system.

Accessing Javadoc for the Sales Order Manager Web Service Operations

To access Javadoc for the Sales Order Manager web service and its related operations, review these Javadoc packages:

- JP420000 (SalesOrderManager)

- J4200010 (processSalesOrder)

- J4200020 (processSalesPriceAdjustment)

- J4200030 (getItemPriceAndAvailability)

- J4200040 (getCustomerItemPrice)

- J4200050 (getSalesOrder)

- J4200060 (getItemListPrice)

- J4200070 (getSalesOrderPriceHistory)

See Accessing Javadoc for Business Services.

Reviewing Input and Response Interfaces

To review information about the classes and fields that are used by these web service operations, you can review the input and response interface tables. Input and response interface tables list the classes and fields used by each operation, the key fields, the data types of each fields, and which fields or classes are required for each action.

See Accessing Additional Information about Business Services, Appendix A: Input and Response Interfaces.

### Prerequisites

Before you use the Sales Order Manager web service, or any of the related operations, you must install and set up these JD Edwards EnterpriseOne systems:

- Sales Order Management

- Inventory Management

Note. Many of these operations managed by the SalesOrderManager web service process pricing information. If you want these operations to process pricing information using advanced pricing functions, you must install and set up the JD Edwards EnterpriseOne Advanced Pricing system. If you do not set up this system, these operations will process, but they will not include advanced pricing calculations.

See Getting Started with JD Edwards EnterpriseOne Advanced Pricing.

See Getting Started with JD Edwards EnterpriseOne Sales Order Management.

See Getting Started with JD Edwards EnterpriseOne Inventory Management.

### processSalesOrder

This section provides an overview of the processSalesOrder web service operation and lists prerequisites.

#### Understanding the processSalesOrder Web Service Operation

The processSalesOrder web service operation is an inbound transaction operation that enables consumers to add, change, and cancel these order types in the JD Edwards EnterpriseOne Sales Order Management system:

- Sales orders

- Blanket orders

- Credit orders

- Direct ship orders

- Quote orders

- Transfer orders

- Transportation orders

If the operation encounters errors during processing, the system returns those errors to the consumer.

#### Supported Functionality

This section discusses the functionality that the processSalesOrder operation supports.

Note. If functionality is not explicitly documented as supported functionality, it is to be understood that the functionality is not supported by the integration solution.

The processSalesOrder operation supports inventory/stock items, configured items, non-stock items such as miscellaneous, text lines and freight, and direct ship items. An order may contain one or more of these line types.

Blanket Orders

Though the solution does support the addition, change or cancellation of blanket orders, the solution does not support automatic blanket order release. Additionally, the solution does not support blanket orders for configured items.

Advanced Pricing

The solution supports advanced pricing for line, basket, and order-level pricing. The operation does not support advanced pricing when an override price is passed in by the consumer.

Kit Items

The solution does not support kit items. If the consumer enters a kit item, the system will process the information, but kit processing is not initiated in the JD Edwards EnterpriseOne system. The operation returns aKit Components Are Not Processed message to the consumer.

If a kit parent item is entered by the consumer, the system processes the parent, but does not initiate kit processing for components. To resolve the issue, the consumer must use the JD Edwards EnterpriseOne Sales Order Entry program (P4210) to choose the kits components.

Configured Items

The solution does support the processing of configured items. The operation provides the consumer with a field structure that enables the specification of configured items and their segments.

Configured items may be pre-evaluated and passed into the JD Edwards EnterpriseOne system as they are, which is known as bypass. Alternatively, consumers can pass items into the JD Edwards EnterpriseOne system and have the item evaluated using JD Edwards EnterpriseOne defined rules and logic.

Configured parent items may contain child items of varying types, such as stock, non-stock and configurable.

Configured items are enabled for sales orders and quote orders only at the configured item parent level.

The solution does not support blanket orders for configured items.

When processing configured items, be aware of the following items:

- The stocking type for a configured item is hard-coded as C.

- The consumer must provide segment answers when adding or changing a configured item.

- To utilize the JD Edwards EnterpriseOne rules and logic for evaluation, segment answers and configured components are required when adding or changing a configured item.

- To bypass evaluation in the JD Edwards EnterpriseOne system, the consumer must provide the segment answers and all components when adding or changing a configured item.

- The solution does not validate segment answers and cross-segment editing rules.

- The consumer must sequence the configuration by children before siblings.

  For example, configured item A has components A1 and A2. Component A1 has another child component, A11. Using this example, the input to the operation should follow this sequence:

  1. parentItem = null, childItem = A

  2. parentItem = A, childItem = A1

  3. parentItem = A, childItem = A2

  4. parentItem = A1, childItem = A11

- The solution does not support the changing or cancellation of individual components of a configured item.

- When processing the cancellation of a configured item, the operation also cancels the components from the sales order details.

- The solution does not support back orders, transfer orders, direct ship orders, and inter-branch orders for configured items.

- The price will be overridden when the isZeroPriceOverride field is set to true, or there is a price (domestic/foreign) in the input document.

- The solution does not support:

  - Dynamic rules validation during configuration.

  - The limitation of configured selections to include only valid responses.

  - Calculation of pricing rules based on a user-defined date.

#### Setup Considerations

Before using this operation, you can set business service properties to specify how the system processes sales order information. This table includes information about the business service properties that the processSalesOrder web service operation uses:

Group | Key | Description | Default Value
J4200010 | J4200010_SOE_MBF_VERSION | Use this business service property to specify the version of the Sales Order Entry program (P4210) that the operation uses when processing data. | ZJDE0001
J4200010 | J4200010_BYPASS_WARNINGS | Use this business service property to specify whether the operation bypasses warnings that occur during processing. If you choose to bypass warnings, the operation continues processing to the end, and returns all warnings to the consumer. If you choose not to bypass warnings, change the default value to 2. Using this setting, the operation stops processing when a warning is encountered and the warning is returned to the consumer. | 1: Bypass Warnings

See JD Edwards EnterpriseOne 8.98 Business Services Development Methodology Guide, Creating a Business Service, Managing Business Service Properties

See Also

Setting Processing Options for Sales Order Entry (P4210)

#### Implementation Details

The following table includes information that can help determine whether the processSalesOrder operation is functioning correctly:

Question | Answer
How can I tell if the operation completes successfully? | If the operation completes successfully, the system returns a confirmation message to the consumer. The message includes all of the fields that are listed in the response interface for this operation. However, some of those fields can contain blank or zero values, depending on the data that exists in the EnterpriseOne system. At a minimum, the system returns non-zero values for these fields: documentNumber documentTypeCode documentCompany businessUnit entity – soldTo itemId documentLineNumber
If I encounter errors while processing a transaction, do I need to reverse the transaction? | This operation uses standard transaction processing. In the event that the operation encounters errors, all JD Edwards EnterpriseOne tables are returned to their original state, and no updates are performed. No manual updates are necessary.
Does this operation use record reservation? | This operation reserves records in the JD Edwards EnterpriseOne system during the change or cancellation of a sales order.

#### Prerequisites

Before using this operation, you must be familiar with entering, updating and deleting sales orders in the JD Edwards EnterpriseOne system.

See Entering Sales Order Header and Detail Information.

### processSalesPriceAdjustment

This section provides an overview of the processSalesPriceAdjustment web service operation, lists a prerequisite, and discusses how to set processing options for Live Promotions Interface Processing (R45720Z).

#### Understanding the processSalesPriceAdjustment Web Service Operation

The processSalesPriceAdjustment operation is an inbound transaction operation that enables consumers to process sales price adjustment information within the JD Edwards EnterpriseOne system.

The consumer can add this information to the JD Edwards EnterpriseOne Sales Order Management system:

- Price adjustment definition records.

- Price adjustment detail records.

- Price adjustment schedule records.

Consumers are also able to modify existing price adjustment detail records, provided that values for the adjustment name and adjustment ID are passed in.

If the system encounters errors while processing transactions using this operation, error messages are generated and returned to the consumer.

Be aware that this operation updates only the pricing setup records in the JD Edwards EnterpriseOne system. Existing sales orders are not updated with pricing details that are entered into the system using this operation. To reprice existing sales orders using the updated pricing information, you must process the Sales Order Batch Price/Cost Update program (R42950).

See Updating Prices for a Customer.

Note. To add a price adjustment detail record, you must include a unit of measure (UoM). If you do not include a unit of measure, the system returns a hard error to the consumer.
If currency processing is turned on, you must include a currency code. If no currency code is passed in, and currency processing is enabled, the system returns a hard error to the consumer.
If no dates are passed in, the system uses the system date as the effective date, and an expiration date that is generated by business function B4000630.

Supported Functionality

This section discusses the functionality that the processSalesPriceAdjustment operation supports.

Note. If functionality is not explicitly documented as supported functionality, it is to be understood that the functionality is not supported by the integration solution.

When adding price adjustment definition records:

- Item price groups, customer price groups, and order detail groups are not supported.

- Basket, order, and volume level adjustments are not supported.

  Only line level adjustments are supported.

- Weight, amount, and quality level breaks are not supported.

  Only quantity level breaks are supported.

- These adjustment control codes are supported:

  - Blank

  - 2: Print on Invoice

  - 4: Accruals

- When making changes to price adjustment detail records:

  - The From Level value always starts at 1.

  - Basis code 5 (Add on Amount) is supported.

Setup Considerations

Before you use this operation, you can set a business service property to define which version of the Live Promotions Interface Processing program (R45720Z) to use. This table lists the business service properties that the processSalesPriceAdjustment operation uses:

Group | Key | Description | Default Value
J4200020 | J4200020_PROM_MBF_VERSION | Use this business service property to specify the version of the Live Promotions Interface Processing program (R45720Z) that this operation uses. | ZJDE0002

See JD Edwards EnterpriseOne 8.98 Business Services Development Methodology Guide, Creating a Business Service, Managing Business Service Properties

Implementation Details

The following table includes information that can help determine whether the processSalesPriceAdjustment operation is functioning correctly:

Question | Answer
How can I tell if the operation completes successfully? | If the operation completes successfully, the system returns a confirmation message to the consumer. The message includes all of the fields that are listed in the response interface for this operation. However, some of those fields can contain blank or zero values, depending on the data that exists in the JD Edwards EnterpriseOne system. At a minimum, the system returns non-zero values for these fields: adjustmentTypeCode priceAdjustmentId unitOfMeasureTransaction actionType processingVersion
If I encounter errors while processing a transaction, do I need to reverse the transaction? | This operation uses standard transaction processing. Therefore, if you encounter errors during processing, the system does not update any information in the JD Edwards EnterpriseOne system. No manual update is necessary.
Does this operation use record reservation? | No. This operation does not reserve records in the JD Edwards EnterpriseOne system during processing.

#### Prerequisite

Before using the processSalesPriceAdjustment operation, you must install and configure the JD Edwards EnterpriseOne Advanced Pricing system.

See Setting Up EnterpriseOne Advanced Pricing.

#### Setting Processing Options for Live Promotions Interface Processing (R45720Z)

You use processing options to set up default values and processing data for a program.

Preference Hierarchy

1. Enter the preference hierarchy name to be used. (Required) | Use this processing option to specify a preference type or a price adjustment hierarchy defined in user-defined code (UDC) table 40/PR. This value gets stored in the Price Adjustment Type table (F4071) in field ATPRFR (Preference) and its associated hierarchy is used for resolving pricing adjustments.

Adjustment Definition

The processing options on this tab are used to define the adjustment definition. One of the input parameters, such as costTypeCode, determines whether the adjustment is a Bill Back or an Off Invoice adjustment. The value sent in becomes part of the adjustment definition record that is stored in the F4071 table. Adjustment types include 1(Bill Back: Adjustment Control Code = 4, Accruals) or 2 (Off Invoice: Adjustment Control Code = 2, Print on Invoice). If no value is passed in for costTypeCode field, Adjustment Control Code, stored in field ATACNT of the F4071 table, is blank.

1. Enter GL Offset for Bill Back adjustment definition. | Use this processing option to specify the trade account that the system uses as the offset when you post invoices or vouchers. This value gets stored in the Price Adjustment Type table (F4071) in field ATGLC (GLClass).
2. Enter Subledger for Bill Back adjustment definition. | Use this processing option to identify a detailed, auxiliary account within a general ledger account. A subledger can be an equipment item number or an address book number. If you enter a subledger, you must also specify the subledger type. This value is stored in the Price Adjustment Type table (F4071) in field ATSBIF (SubledgerInformation).
3. Enter GL Offset for Off Invoice adjustment definition. | Use this processing option to specify the trade account that the system uses as the offset when you post invoices or vouchers. This value gets stored in the Price Adjustment Type table (F4071) in field ATGLC (GLClass).
4. Enter Subledger for Off Invoice adjustment definition. | Use this processing option to identify a detailed, auxiliary account within a general ledger account. A subledger can be an equipment item number or an address book number. If you enter a subledger, you must also specify the subledger type. This value is stored in the Price Adjustment Type table (F4071) in field ATSBIF (SubledgerInformation).

Schedule Option

1. Enter Schedule Option. | Use this processing option to specify the schedule option. Values are: 1: Single 2: Customer 3: Manual

Single Schedule Option

1. Enter schedule name. (Required) | Use this processing option to specify the name of the schedule.
2. Enter prefix (1 char) for adjustment name. (Required) | Use this processing option to specify the one-character prefix that is used for the adjustment name. The adjustment name is the prefix plus the next number plus the suffix for Bill Back and Off Invoice adjustment names. For example, if the prefix is S and the suffix is B (Bill Back), the adjustment name might be S123456B.
3. Enter suffix (1 char) for adjustment name. (Required) | Use this processing option to specify the one-character suffix that is used for the adjustment name. The adjustment name is the prefix plus the next number plus the suffix for Bill Back and Off Invoice adjustment names. For example, if the prefix is S and the suffix is B (Bill Back), the adjustment name might be S123456B.
4. Enter increment for sequence in schedule. If blank, 1.0 will be used. | Use this processing option to specify the numeric increment for sequence in schedule. If you leave this option blank, the system uses an increment of 1.0.
5. Enter start reserved range of sequence numbers for promotions. | Use this processing option to specify the beginning value in a range of sequence numbers that are reserved for promotions.
6. Enter end reserved range of sequence numbers for promotions. | Use this processing option to specify the ending value in a range of sequence numbers that are reserved for promotions.

Customer Schedule Option

1. Enter prefix (1 char) for adjustment name. (Required) | Use this processing option to specify the one-character prefix that is used for the adjustment name. The adjustment name is the prefix plus the next number plus the suffix for Bill Back and Off Invoice adjustment names. For example, if the prefix is S and the suffix is B (Bill Back), the adjustment name might be S123456B.
2. Enter suffix (1 char) for adjustment name. (Required) | Use this processing option to specify the one-character suffix that is used for the adjustment name. The adjustment name is the prefix plus the next number plus the suffix for Bill Back and Off Invoice adjustment names. For example, if the prefix is S and the suffix is B (Bill Back), the adjustment name might be S123456B.
3. Enter increment for sequence in schedule. If blank, 1.0 will be used. | Use this processing option to specify the numeric increment for sequence in schedule. If you leave this option blank, the system uses an increment of 1.0.
4. Enter start reserved range of sequence numbers for promotions. | Use this processing option to specify the beginning value in a range of sequence numbers that are reserved for promotions.
5. Enter end reserved range of sequence numbers for promotions. | Use this processing option to specify the ending value in a range of sequence numbers that are reserved for promotions.

Manual Schedule Maintenance Option

1. Enter Adjustment name for Bill Back spending method. | Use this processing option to specify the adjustment name for Bill Back spending method. Note. If you leave options 3 and 4 blank, you must enter a value in this processing option and in option 2.
2. Enter Adjustment name for Off Invoice spending method. | Use this processing option to specify the adjustment name for Off Invoice spending method. Note. If you leave options 3 and 4 blank, you must enter a value in this processing option and in option 1.
3. Enter prefix (1 char) for adjustment name. | Use this processing option to specify the one-character prefix that is used for the adjustment name. The adjustment name is the prefix plus the next number plus the suffix for Bill Back and Off Invoice adjustment names. For example, if the prefix is S and the suffix is B (Bill Back), the adjustment name might be S123456B. Note. If you leave options 1 and 2 blank, you must enter a value in this option and in option 4.
4. Enter suffix (1 char) for adjustment name. | Use this processing option to specify the one-character suffix that is used for the adjustment name. The adjustment name is the prefix plus the next number plus the suffix for Bill Back and Off Invoice adjustment names. For example, if the prefix is S and the suffix is B (Bill Back), the adjustment name might be S123456B. Note. If you leave options 1 and 2 blank, you must enter a value in this option and in option 3.

### getItemPriceAndAvailability

This section provides an overview of the getItemPriceAndAvailability web service operation and lists a prerequisite.

#### Understanding the getItemPriceAndAvailability Web Service Operation

The getItemPriceAndAvailability web service operation is an inbound transaction operation that enables consumers to retrieve pricing, availability, and branch/plant information for items that are stored in the JD Edwards EnterpriseOne Inventory Management system.

Note. There are several operations that return item prices to the consumer. Use this operation if you want to review item availability information in addition to pricing information.

This operation uses the information that the consumer passes in, along with the Price and Availability Header business function (B4204100), to simulate the creation of a sales order header and sales order detail information. The system then uses this simulated sales order to retrieve pricing information. The price is based on the branch/plant that the consumer passes in. If the consumer does not pass in a branch/plant, the system calculates the price using the branch/plant from the processing options of the P4210. The operation then returns to the consumer the unit price and extended price for the item.

Additionally, the operation uses the Retrieve F41021 Records business function (B4204120) to calculate the availability of the item in the specified branch/plant. The operation then returns to the consumer the availability information, along with the address book number and mailing address of the branch/plant.

If the operation encounters errors or warnings during processing, the system returns those errors and warnings to the consumer.

Supported Functionality

This section discusses the functionality that the getItemPriceAndAvailability operation supports.

Note. If functionality is not explicitly documented as supported functionality, it is to be understood that the functionality is not supported by the integration solution.

This operation does not support configured items, as configured items typically do not have availability information.

If you are using advanced pricing, the operation applies markups and discounts. The operation does not apply free goods and rebates.

Setup Considerations

Before you use this operation, you can set business service properties to specify how the system retrieves and calculates price and availability information. This table includes information about the business service properties that the getItemPriceAndAvailability operation uses:

Group | Key | Description | Default Value
J4200030 | J4200030_SOE_MBF_VERSION | Use this business service property to specify the version of the Sales Order Entry program (P4210) that the operation uses when processing price and availability information. | ZJDE0001
J4200030 | J4200030_BYPASS_BSFN_WARNINGS | Use this business service property to specify whether the operation bypasses warnings that occur during processing. If you choose to bypass warnings, the operation continues processing to the end, and returns all warnings to the consumer. If you choose not to bypass warnings, change the default value to 2. Using this setting, the operation stops processing when a warning is encountered and the warning is returned to the consumer. | 1: Bypass Warnings

The getItemPriceAndAvailability operation uses the Sales Order Entry program (P4210) to simulate the creation of a sales order for the purposes of retrieving price and availability information. Typically, the version of the Sales Order Entry program that is used to create and process sales orders is set up to include full editing and validations. The getItemPriceAndAvailability operation does not need to complete these processes. Therefore, to improve performance, you might consider using a different version of the Sales Order Entry program when processing this operation.

In addition to using a separate version of the P4210, it is also recommended that you use these guidelines when setting the processing options for the version used by this operation:

- Order Holds must be blank.

- Activate Availability Checking must be blank.

- Blanket or Quote Processing must be blank.

- Inventory Commitment Preferences must be blank.

- If Preferences are turned on, the following preferences must not be used:

  - Product Allocation

  - Grade and Potency

  - Next Order Status

  - Sales Commissions

See Setting Processing Options for Sales Order Entry (P4210).

See JD Edwards EnterpriseOne 8.98 Business Services Development Methodology Guide, Creating a Business Service, Managing Business Service Properties

Implementation Details

This table includes information that can help determine whether the getItemPriceAndAvailability operation is functioning correctly:

Question | Answer
How can I tell if the operation completes successfully? | If the operation completes successfully, the system does not return errors to the consumer. In some instances, the consumer does not receive a return message. For example, if the item in the query does not have price or availability information, the operation does not return data to the consumer, even though it has successfully processed. If the operation is successful in finding matching data, price and availability information for the items included in the query are returned to the consumer. The records that are returned to the consumer include all of the fields that are listed in the response interface for this operation. However, some of those fields can contain blank or zero values, depending on the data that exists in the JD Edwards EnterpriseOne system. At a minimum, the system returns non-zero values for these fields: priceUnit priceExtended quantityAvailable
If I encounter errors while processing a transaction, do I need to reverse the transaction? | This is a query operation. No transactions occur during the processing of this operation. Therefore, no data updates are necessary if errors are encountered.
Does this operation use record reservation? | No. The operation does not reserve records within the JD Edwards EnterpriseOne system during processing.

#### Prerequisite

Before you can process this operation successfully, you must enter items into the JD Edwards EnterpriseOne Inventory Management system.

See Setting Up the Inventory Management System, Entering Item Information.

### getCustomerItemPrice

This section provides an overview of the getCustomerItemPrice web service operation and lists prerequisites.

#### Understanding the getCustomerItemPrice Web Service Operation

The getCustomerItemPrice web service operation is an inbound transaction operation that enables consumers to retrieve item pricing information that is based on the base pricing or on advanced pricing with line-level discounts or markups.

Note. There are several operations that return item prices to consumers. Use this operation if you want to review the cost of an item for a particular customer.

This operation uses the information that the consumer passes in, along with the Price and Availability Header business function (B4204100), to simulate the creation of a sales order header and sales order detail information. The system then uses this simulated sales order to retrieve pricing information for the specified item and customer.

You can include only one item in each request.

Supported Functionality

This section discusses the functionality that the getCustomerItemPrice operation supports.

Note. If functionality is not explicitly documented as supported functionality, it is to be understood that the functionality is not supported by the integration solution.

The getCustomerItemPrice operation does not include basket or order-level adjustments when calculating the final price of the item.

Consumers can request pricing information for kit and configured items. However, the operation returns prices only for the parent item if one has been specified.

Setup Considerations

Before you use this operation, you can set business service properties to specify how the system retrieves and calculates price and availability information. This table includes information about the business service properties that the getCustomerItemPrice operation uses:

Group | Key | Description | Default Value
J4200030 | J4200030_SOE_MBF_VERSION | Use this business service property to specify the version of the Sales Order Entry program (P4210) that the operation uses when processing price and availability information. | ZJDE0001
J4200030 | J4200030_BYPASS_BSFN_WARNINGS | Use this business service property to specify whether the operation bypasses warnings that occur during processing. If you choose to bypass warnings, the operation continues processing to the end, and returns all warnings to the consumer. If you choose not to bypass warnings, change the default value to 2. Using this setting, the operation stops processing when a warning is encountered and the warning is returned to the consumer. | 1: Bypass Warnings

The getCustomerItemPrice operation uses the Sales Order Entry program (P4210) to simulate the creation of a sales order for the purposes of retrieving price and availability information. Typically, the version of the Sales Order Entry program that is used to create and process sales orders is set up to include full editing and validations. The getCustomerItemPrice operation does not need to complete these processes. Therefore, to improve performance, you might consider using a different version of the Sales Order Entry program when processing this operation.

In addition to using a separate version of the P4210, it is also recommended that you use these guidelines when setting the processing options for the version used by this operation:

- Order Holds must be blank.

- Activate Availability Checking must be blank.

- Blanket or Quote Processing must be blank.

- Inventory Commitment Preferences must be blank.

- If Preferences are turned on, the following preferences must not be used:

  - Product Allocation

  - Grade and Potency

  - Next Order Status

  - Sales Commissions

See Setting Processing Options for Sales Order Entry (P4210).

See JD Edwards EnterpriseOne 8.98 Business Services Development Methodology Guide, Creating a Business Service, Managing Business Service Properties

Implementation Details

This table includes information that can help determine whether the getCustomerItemPrice operation is functioning correctly:

Question | Answer
How can I tell if the operation completes successfully? | If the operation completes successfully, the system does not return errors to the consumer. In some instances, the consumer does not receive a return message. For example, if the item in the query does not have price or availability information, the operation does not return data to the consumer, even though it has successfully processed. If the operation is successful in finding matching data, price and availability information for the items included in the query are returned to the consumer. The records that are returned to the consumer include all of the fields that are listed in the response interface for this operation. However, some of those fields can contain blank or zero values, depending on the data that exists in the JD Edwards EnterpriseOne system. At a minimum, the system returns non-zero values for these fields: priceUnitDomestic priceUnitForeign priceExtendedDomestic priceExtendedForeign costUnitDomestic costUnitForeign costExtendedDomestic costExtendedForeign
If I encounter errors while processing a transaction, do I need to reverse the transaction? | This is a query operation. No transactions occur during the processing of this operation. Therefore, no data updates are necessary if errors are encountered.
Does this operation use record reservation? | No. The operation does not reserve records within the JD Edwards EnterpriseOne system during processing.

#### Prerequisites

Before you can use this operation, you must enter item and pricing information into the JD Edwards EnterpriseOne Inventory Management system.

See Entering Item Information.

### getSalesOrder

This section provides an overview of the getSalesOrder web service operation and lists a prerequisite.

#### Understanding the getSalesOrder Web Service Operation

The getSalesOrder web service operation is a database query operation that enables consumers to review sales orders that exist in the JD Edwards EnterpriseOne Sales Order Management system.

The getSalesOrder operation uses the Sales Order Inquiry business view (V4211XBP) to select records from the JD Edwards EnterpriseOne Sales Order Management system based on the information that the consumer enters. If no errors are encountered, the operation searches the database for records that match the consumer's query, adding those records to the result set.

The operation returns one or more sales order header records to the consumer, based on the information that was passed in. In addition, the operation returns all sales order detail lines associated with those sales order header records.

If the operation encounters errors while querying the database, it stops processing and returns the errors to the consumer.

Note. The consumer must enter search criteria in order for the operation to process successfully. If the consumer attempts to query the database without specifying any search criteria, the operation returns an error to the consumer.

Setup Considerations

Before you use this operation, you can set business service properties to specify how many records the system returns when you query the JD Edwards EnterpriseOne database. This table includes information about the business service properties that the getSalesOrder operation uses:

Group | Key | Description | Default Value
J4200050 | J4200050_MAX_ROWS | Use this business service property to specify the maximum number of rows that the query will return. Note. The number of rows includes both sales order header records and sales order detail records. | 0: Return all records.

Note. If you leave this constant set to 0, the system returns all records that match the specified search criteria. To improve processing time, it is recommended that you set the default value for this business service property to a value other than 0.

See JD Edwards EnterpriseOne 8.98 Business Services Development Methodology Guide, Creating a Business Service, Managing Business Service Properties

Implementation Details

This table includes information that can help you determine whether the getSalesOrder operation is functioning correctly:

Question | Answer
How can I tell if the operation completes successfully? | If the operation completes successfully, the system returns records that match your search criteria. The records include all of the fields that are listed in the response interface for this operation. However, some of those fields can contain blank or zero values, depending on the data that exists in the JD Edwards EnterpriseOne system. At a minimum, if the query finds matching records, the system returns non-zero values for these fields: documentNumber documentTypeCode documentCompany Entity – Sold To Entity – Ship To
If I encounter errors while processing the operation, do I need to reverse the transaction? | This is a query operation. No transactions occur during the processing of this operation. Therefore, no data updates are necessary if errors are encountered.
Does this operation use record reservation. | No. The operation does not reserve records that are returned in the query.

#### Prerequisite

Before you can use this operation, sales orders must exist in the JD Edwards EnterpriseOne database.

See Entering Sales Orders, Entering Sales Orders for Customer Service Representatives.

### getItemListPrice

This section provides an overview of the getItemListPrice web service operation and lists prerequisites.

#### Understanding the getItemListPrice Web Service Operation

The getItemListPrice web service operation is a database query operation that enables consumers to view a list of base prices for a specified item. Consumers can also specify the business unit in order to view a list of base prices for an item by business unit.

Setup Considerations

Before you use this operation, you can set business service properties to specify how many records the system returns for a query. This table includes information about the business service properties that the getItemListPrice operation uses:

Group | Key | Description | Default Value
J4200060 | J4200060_MAX_ROWS | Use this business service property to specify the maximum number of records that the system returns for a query. | 0: Return All Records

Note. If you leave this constant set to 0, the system returns all records that match the specified search criteria. To improve processing time, it is recommended that you set the default value for this business service property to a value other than 0.

See JD Edwards EnterpriseOne 8.98 Business Services Development Methodology Guide, Creating a Business Service, Managing Business Service Properties

Implementation Details

This table includes information that can help determine whether the getItemListPrice operation is functioning correctly:

Question | Answer
How can I tell if the operation completes successfully? | If the operation completes successfully, the system returns a list of prices for the item and or business unit specified by the consumer. The records that are returned to the consumer include all of the fields that are listed in the response interface for this operation. However, some of those fields can contain blank or zero values, depending on the data that exists in the JD Edwards EnterpriseOne system. At a minimum, the system returns non-zero values for the priceList field.
If I encounter errors while processing a transaction, do I need to reverse the transaction? | This is a query operation. No transactions occur during the processing of this operation. Therefore, no data updates are necessary if errors are encountered.
Does this operation use record reservation? | No. The operation does not reserve records within the JD Edwards EnterpriseOne system during processing.

#### Prerequisites

Before using this operation, you must enter items and base pricing information in the JD Edwards EnterpriseOne Inventory Management system.

See Entering Item Master Information, Entering Sales Price Information.

### getSalesOrderPriceHistory

This section provides an overview of the getSalesOrderPriceHistory web service operation.

#### Understanding the getSalesOrderPriceHistory Web Service Operation

The getSalesOrderPriceHistory web service operation is a database query operation that enables consumers to inquire on price history information that resides in the JD Edwards EnterpriseOne Price Adjustment Ledger table (F4074). The consumer can search for price history by passing in any combination of these fields:

- Order Number

- Order Type

- Order Company

- Line Number

Note. You must pass in at least one of these fields when entering a query. If you enter a blank query, the system returns an error message.

Setup Considerations

Before you use this operation, you can set business service properties to specify how many records the system returns for a query. This table includes information about the business service properties that the getSalesOrderPriceHistory operation uses:

Group | Key | Description | Default Value
J4200070 | J4200070_MAX_ROWS | Use this business service property to specify the maximum number of records that the system returns for a query. | 0: Return all matching records.

Note. If you enter a default value of 0 for this business service property, the system does not limit the number of rows returned during a query. To improve processing time, it is recommended that you set the default value for this business service property to a value other than 0.

See JD Edwards EnterpriseOne 8.98 Business Services Development Methodology Guide, Creating a Business Service, Managing Business Service Properties

Implementation Details

This table includes information that can help determine whether the getSalesOrderPriceHistory operation is functioning correctly:

Question | Answer
How can I tell if the operation completes successfully? | If the operation completes successfully, the system returns a list of price history records to the consumer. The records that are returned to the consumer include all of the fields that are listed in the response interface for this operation. However, some of those fields can contain blank or zero values, depending on the data that exists in the JD Edwards EnterpriseOne system. At a minimum, the system returns non-zero values for these fields: documentNumber documentTypeCode documentCompany documentLineNumber
If I encounter errors while processing a transaction, do I need to reverse the transaction? | If you encounter errors while processing this operation, verify your business service properties and selection criteria. Then perform your query again. If the system does not return any matching records, verify that matching records exist in the JD Edwards EnterpriseOne database.
Does this operation use record reservation? | No. The operation does not reserve records within the JD Edwards EnterpriseOne system during processing.