Siebel eSales Administration Guide > Shopping Service Methods Reference > Siebel eSales Workflow Methods >
Reorder Method
Reorder is the reverse of CreateOrder. It creates a quote from an existing order. Preconditions for Calling the Reorder Method
Arguments for the Reorder Method
The Reorder method has the arguments shown in Table 40.
Table 40. Reorder Arguments
|
|
|
|
|
Return Error Code |
Input |
String |
Y |
If equal to N, the method will not return errors. When a method returns an error, the workflow stops. To avoid stopping the workflow, you can set this input to N. This way the Shopping Service will not return an error, but instead save the error message in the output argument Error Message. You can then handle the error message as you want. |
Error Message |
Output |
String |
Y |
Stores error messages. |
Quote Id |
Output |
String |
Y |
ID of the quote that is created. |
Order Id |
Output |
String |
Y |
Not used. |
ReturnVal |
Output |
String |
Y |
Returns Success or Fail. Not used. |
Pseudo-Algorithm for Reorder
- Get the Order Entry - Orders, Order Entry - Line Items, and Order Item XA business components. Get an instance of the Catalog business object and of the Quote, Quote Item, and Quote Item XA business components from this Catalog business object instance.
The Order Entry - Orders business component is already positioned on the correct record, as the Reorder method is row-sensitive.
- Create a record in the Quote business component. Use Quote|Order FieldMap n to copy fields from the Order Entry - Orders business component to Quote.
- For each record in the Order Entry - Line Items business component, copy it to the Quote Item business component using Quote Item|Order Item FieldMap n field maps. To maintain hierarchical relationships, copy the parent record before copying its child records. Also, copy records from the grandchild business component Order Item XA to Quote Item XA.
NOTE: As Order Entry - Line Items and Quote Item have hierarchies, you cannot simply loop through the records in Order Entry - Line Items and copy them to Quote Item. You need to maintain the hierarchical relationship. To do this, you need to copy the parent record before you copy its child records.
In the Shopping Service implementation, records are first loaded from Order Entry - Line Items and a tree in the memory is generated. The tree is then traversed from the root, so the parent record is copied before the child records.
- When doing step 3, for each record in the Order Entry - Line Items business component:
If the record is a Siebel eTraining item, confirm the registration record in the eTraining business component.
- Set the Error Message output argument if there is any error;
If Return Error Code = N, do not return an error;
Else return an error.
|