Functionality You can use this method to change or delete a customer quotation withBOS. You can:
- Change header, item, schedule line, configuration and BOS data
- Delete a quotation completely
- Delete a quotation item
- Create, change or delete service lines and outline levels within a BOS
- Create or delete a complete BOS
- Transfer customer fields to fields VBAK>, VBAP>, VBEP
< VBEP> and ESLL> via parameter ExtensionIn>> You cannot change or delete a document item if it has the statuscomplete>.Notes Generally speaking, the following applies:> You enter quantites and dates for a document item with BOS via theschedule line data. You should only enter the fields of a document item, schedule line,service line or outline level that are to be changed. Conditions are the exception to this. If conditions are changed, thecondition records are to be filled completely. The checkbox structures are to be filled for the fields to be changed. Field UPDATEFLAG>> ,,U,,>Change ,,D,,>Delete ,,I,,>Create Checkboxes: the fields to be changed should be selected in theappropriate checkboxes with X>. Minimum Requirement Entries> RESET N1 The quotation number must be entered in parameter SalesDocument>. Key fields must always be entered, also in the checkbox structure. The change indicator UPDATEFLAG >im QuotationHeaderInX >must always be entered. Commit Control> The method does not perform a database commit. This means that thecalling application has to exit the commit so that changes in the database can be made. The method BAPI_TRANSACTION_COMMIT> isavailable for this. Return Values> If errors occur during processing, they are returned in table parameterReturn>. Information messages are also logged in this parameter.Further information SAP note 93091 contains general information on BAPIs in Sales andDistribution (SD). Description This parameter controls how the program reacts if an error occurs. INCLUDE BOS_BAPI_BEHAVEWHENERROR OBJECT DOKU ID TX Default
Space>Description If you set the indicator, the system deletes all old cost items fromsales document mentioned in parameter SALESDOCUMENT>.Value range Space Do not delete old item X Delete old cost item Description Indicator for item number assignment. There are two options for number assignment:
- If you do not set the indicator, you msut assign the item number
manually via field ITM_NUMBER> in table parameter QuotationItemsIn>.
- If you set the indicator, the system assigns the item numbers (internal
number assignment) according to your settings in Customizing. FieldITM_NUMBER> in table parameter QuotationItemsIn> mustremain initial for internal number assignment. Example> In some cases, internal number assignment may be necessary, for examplefor articles for which a BOM is exploded in the quotation. A quotation with two items and a schedule line for each is to becreated. For this, enter item numbers 10 and 20 in QuotationItemsIn > and QuotationSchedulesIn>. If the article for item 10 nowcontains a sales BOM, it can be exploded and a sub- item with itemnumber 20 is created. The refernece schedule line (VBEP>) - item(VBAP>) no longer exists. Internal number assignment is requiredhere.Value range
Space,,>external item number assignment
X,,>internal item number assignmentDefault
Space> INCLUDE BOS_BAPI_LOGICSWITCH OBJECT DOKU ID TXDescription This parameter contains header data for the quotation. INCLUDE BOS_BAPI_ANKREUZLEISTE OBJECT DOKU ID TX Default The following entries are possible for field UPDATEFLAG>:
Space,,>create a new SD document
I,,>create a new SD document
U,,>change an existing SD document
D,,>delete an existing SD documentDescription This parameter contains the document number of the quotation. Description This paramter serves as a test indicator. If the indicator is set, the document is not saved. Value range
Space>,,document is saved.
X>,,document is not saved.Default
Space> INCLUDE BOS_BAPI_EXTENSIONIN OBJECT DOKU ID TX You can find further information in the Online Service System in note143580. INCLUDE BOS_BAPI_KONFIGURATION OBJECT DOKU ID TX INCLUDE BOS_BAPI_KONFIGURATION OBJECT DOKU ID TX INCLUDE BOS_BAPI_KONFIGURATION OBJECT DOKU ID TX INCLUDE BOS_BAPI_KONFIGURATION OBJECT DOKU ID TX INCLUDE BOS_BAPI_KONFIGURATION OBJECT DOKU ID TX INCLUDE BOS_BAPI_KONFIGURATION OBJECT DOKU ID TX INCLUDE BOS_BAPI_KONFIGURATION OBJECT DOKU ID TX INCLUDE BOS_BAPI_ANKREUZLEISTE OBJECT DOKU ID TX If field UPDATEFLAG> contains the value U>, ony thosefields of parameter QuotationConditionsIn> are transferred forwhich the checkbox has been filled with X>.Value range The following entries are possible for field UPDATEFLAG>:
SPACE,,>create a new condition record
I,,>create a new condition record
U,,>change an existing condition record
D,,>delete an existing condition recordDescription This parameter contains the cost items for service lines. A service line or an outline level is identified by the package numberPCKG_NO> and the internal line number LINE_NO >. A cost item is identified via the following fields (key):
- ITM_NUMBER> Quotation Item
- PCKG_NO> Package number
- LINE_NO> Internal Line number
- ITEM_NUMBER> Cost item number
You must transfer further identification fields for a costing item thatyou want to create:
- Item category in field ITEM_CATEGORY>
- Cost element in field COST_ELEM>
- Quantity in field QUANTITY/PRICE_QUNATITY>
If you are dealing with an amount you need to specify:
- Currency in field CURRENCY>
- Price in field PRICE_TOTAL/ PRICE_FIXED>
- Unit of measure BASE_UOM/PRICE_QUANTITY_UNIT>
Note
- For each costing item there must be a corresponding data record (the
same PCKG_NO> and LINE_NO> ) in transfer parameterOrderservices>
- It is not possible to attach costing item with outline and main item.
- LogicSwitch >must have a value in it if you want to transfer cost
back to service line level.Description This parameter contains the costing model for service lines. A service line or an outline level is identified by the package numberPCKG_NO> and the internal line number LINE_NO>. A costing model is identified via the following fields (key):
- ITM_NUMBER> Sales Order Item
- PCKG_NO> Package number
- LINE_NO >Internal Line number
Additionally, you must transfer identification field COSTMODEL>for the costing model which you wish want to create. Note
- For each costing model there must be a corresponding data record, the
same PCKG_NO >and LINE_NO> in transfer parameterOrderServices>.
- It is not possible to attach costing item with outline and main item.
- LogicSwitch> must have a value in it if you wish to transfer cost
back to service line level.Description This parameter contains the item data for the quotation. You can find information on the meaning of the individual parameterfields in the appropriate data element documentation in the ABAPdictionary. INCLUDE BOS_BAPI_ANKREUZLEISTE OBJECT DOKU ID TX If field UPDATEFLAG> contains the value U>, ony thosefields of parameter QuotationItemsIn> are transferred for whichthe checkbox has been filled with X>.Value range The following entries are possible for field UPDATEFLAG>:
SPACE,,>create a new csales document item
I,,>create a new sales document item
U,,>change an existing sales document item
D,,>delete an existing sales document itemDescription This parameter contains condition data for the document item. INCLUDE BOS_BAPI_KONDITION OBJECT DOKU ID TX Description This parameter contains the cost model characteristic for cost model. A service line or an outline level is identified by the package numberPCKG_NO> and the internal line number LINE_NO> . A cost model is identified via the following fields (key):
- ITM_NUMBER> Quotation Item
- PCKG_NO >Package number
- LINE_NO> Internal Line number
You must transfer further identification fields for a cost modelcharacteristic for cost model
- Characteristic field CHARACTERISTIC>
- Characteristic value CHARA_VAL>
Note For each cost model characteristic there must be a corresponding datarecord (the same PCKG_NO> and LINE_NO >) in transferparameter OrderServices> and OrderCostModel.> INCLUDE BOS_BAPI_EINTEILUNGSZEILEN OBJECT DOKU ID TX There must be exactly one schedule line with quantity 1 for a documentitem with a BOS. For this, you must enter the following data (at least): ITM_NUMBER,,>item number SCHED_LINE,,>schedule line number REQ_DATE,,>schedule line date REQ_QTY ,,>quantity in sales unit of measure INCLUDE BOS_BAPI_ANKREUZLEISTE OBJECT DOKU ID TX If value U> is set for field UPDATEFLAG>, only the fieldsof parameter QuotationSchedulesIn> for which the checkbox isfilled with X> are trasnferred.Value range The following entries are possible for field UPDATEFLAG>:
I,,>create new schedule lines
U,,>change existing schedule lines
D,,>delete existing schedule linesDefault Field UPDATEFLAG:,,> Space> Checkboxes: ,,Space>&MEANING&> This transfer parameter contains the service lines and the outlinelevels of the BOS for the quotation that is to be created, changed ordeleted. The top node of a BOS to be changed (uppermost outline level withhierarchy level 0) must exist in the transfer parameter. Transfer thePCKG_NO> and LINE_NO>. The PCKG_NO> must correspondto field PACKNO> of the appropriate document item in transferstructure QuotationItem>. Furthermore, you must enter a corresponding data record for the topnode in trasnfer parameter QuotationServicesX>. INCLUDE BOS_BAPI_SERVICE_IDENTIFY OBJECT DOKU ID TX
- If you want to change or delete a service line or outline level, you
can determine the PCKG_NO> and LINE_NO> by executingGetDetail>-BAPI in advance for the appropriate document. You must create a corresponding data record (the same PCKG_NO>and LINE_NO)> in transfer parameter QuotationServicesX> foreach service line or outline level that you want to create, change ordelete. You can use update indicator UPDATEFLAG> in transfer parameterQuotationServicesX> to control whether you create, change ordelete a service line or outline level.Create> Enter the value I> for update indicator UPDATEFLAG>. Transfer the following fields, at least, when you create servicelines>:
- Internal identification via fields PCKG_NO> and LINE_NO>.
- The assignment of a service line to an outline level via fields
PCKG_NO> of the service line and SUBPCKG_NO> of the outlinelevel. If you want to create a service line within an existing outline levelthat has not yet had any service lines assigned to it (fieldSUBPCKG_NO> is initial), you must assign a SUBPCKG_NO> forthis outline level. You then assign this number to the appropriateservice lines as PCKG_NO>. To assign a SUBPCKG_NO> to the outline level, you must enter thisoutline level in transfer parameter QuotationServices> with thechange to the SUBPCKG_NO>.
- You must transfer the quantity via field QUANTITY>.
If you are dealing with an informatory line, you do not have totransfer a value. You must transfer a quantity of 1> for blanket lines.
- If you transfer a service line from neither a service master record nor
a standard BOS, you must trasnfer the following data: Short text via field SHORT_TEXT> Unit of measure either via field BASE_UOM> or via fieldUOM_ISO> You do not have to transfer a value if you are dealing with aninformatory line.
- If you copy a service master record to a service line, you must
transfer the following data: Service master record number via field SERVICE>
- If you want to copy a serice decriptio from a standard BOS, you must
transfer the following data: Service type description via field SERV_TYPE> Service type edition via field EDITION> Standard BOS item SSC_ITEM> INCLUDE BOS_BAPI_CREATEOUTLINE OBJECT DOKU ID TXChange>> Enter value U> in update indicator UPDATEFLAG>.Furthermore, each of the fields to be changed should be identified assuch in transfer parameter QuotationServicesX>. Internal identification of service ines or outline levels to be changedtakes place via fields PCKG_NO> and LINE_NO>. You can identify a data record as an outline line using fieldsOUTL_IND> and OUTL_LEVEL>. You must enter X> forindicator OUTL_IND>. You transfer the hierarchy level via fieldOUTL_LEVEL>. For changes to service lines or outline levels, transfer only thedelta. In other words, you only transfer the fields that are to bechanged.Delete> Enter the value D> for update indicator UPDATEFLAG>. Internal identification of the service lines or outline levels to bechanged takes place via fields PCKG_NO> and LINE_NO>. A data record is identified as an outline line via fields OUTL_IND > and OUTL_LEVEL>. You must enter X> for indicatorOUTL_IND>. You transfer the hierarchy level via fieldOUTL_LEVEL>. INCLUDE BOS_BAPI_ZEILENART OBJECT DOKU ID TX Field TO_LINE> is allowed as changeable in the uppermost outlinelevel (hierarchy level 0).Description This parameter contains the service conditions for the service lines.You cannot create or change header conditions. A service line or an outline level is identified via the package numberPCKG_NO> and the internal line number LINE_NO>. A service condition record is identified by the following fields(keys): ITM_NUMBER,,>document item PCKG_NO,,>package number LINE_NO,,>internal line number COND_ST_NO,,>condition level COND_COUNT,,>counter within the condition level Minimum Entry Requirements for Creating or Changing a ConditionRecord> You must transfer the following fields in addition to theidentification fields for a condition record that you want to create orchange:
- Condition type in field COND_TYPE>
- Condition amount in field COND_VALUE>
- If you are dealing with an amount:
Currency in field CURRENCY>(in accordance with Customizingsettings) Condition price unit in field COND_P_UNT> Condition unit of measure in field COND_UNIT> Please note:
- If you want to transfer condition records for a new service line, you
have to transfer the basic price of this service line (condition typeof condition category H> in Customizing for Bill of Services > under Pricing for BOS>). Exception: transfer of a serviceline from the service master record. In this case, the conditions canbe read from the service master conditions.
- You must enter a corresponding data record for each condition record in
the transfer parameter QuotationServicesCondX>.
- For each condition record, there must be a corresponding data record
(the same PCKG_NO> and LINE_NO>) in the transfer parametersQuotationServices> and QuotationServicesX>.
- When you trasnfer condition records for the BOS, field PRICING>
in parameter LogicSwitch> must have an entry in it for pricing onservice line level. If you create a service line below an existing outline level thatalready has header conditions, the header conditions from the outlinelevel are not copied to the service line. Therefore, SAP recommends that you do not create service lines oroutline levels below an outline level that has existing headerconditions. Otherwise inconsistencies may arise in pricing. Minimum Entry Requirements for Deleting a Condition Record> If you want to delete a condition record, you must transfer theidentification fields. Please note:
- You must enter a corresponding data record with UPDATEFLAG D> in
transfer parameter QuotationServicesCondX> for each conditionrecord.
- There must be a corresponding data record (the same PCKG_NO> and
LINE_NO>) in transfer parameters QuotationServices> andQuotationServicesX> for each condition record.
- If condition records for the BOS are deleted, field PRICING> in
parameter LogicSwitch> must have a value in it in order ot beable to execute pricing on service line level. INCLUDE BOS_BAPI_LEISTUNGSKONDITION OBJECT DOKU ID TX INCLUDE BOS_BAPI_ANKREUZLEISTE OBJECT DOKU ID TX Via field UPDATEFLAG>, you can determine whether the servicecondition record should be created, changed or deleted. If the value U> has been entered in field UPDATEFLAG>, onlythe fields of parameter QuotationServicesCond> for which thecheckbox contains the value X> will be transferred. Each service condition record is identified via the following fields(key): ITM_NUMBER,,>quotation item PCKG_NO,,>package number LINE_NO,,>internal line number COND_ST_NO,,>condition level COND_COUNT,,>counter within condition level Furthermore, the condition type has to be transferred in fieldCOND_TYPE,,>.Value range The following entries are possible for field UPDATEFLAG>:
I,,>create
U,,>change
D,,>delete The following entries are possible for the checkboxes:
X,,>field can be changed
SPACE,,>field cannot be changedDefault Field UPDATEFLAG>:,,SPACE> Checkboxes:,, SPACE> INCLUDE BOS_BAPI_SERVICESTEXTS OBJECT DOKU ID TX There must be a corresponding data record (the same PCKG_NO> andLINE_NO>) in the transfer parameters
|