Create sales order with reference to service order

Hi
I need to create sales order based on the service order . Is there any BAPI function module available for this ?
Please help...
Regards
Sujith

** プログラムID       : ZBAPI_SALESORDER_CREATE               *
** プログラム名称         : Upload Sales Order Creation                   *
** 処理概要           :                                       *
** 作成者           : Karthik.P                             *
** 作成日           : 2006/08/10                            *
REPORT  ZBAPI_SALESORDER_CREATE LINE-SIZE 132 MESSAGE-ID ZMMBAPI .
       Internal table definition                                     *
****<<<<<Communication Fields: Sales and Distribution Document Header>>>>>>>>
DATA: GT_ORDER_HEADER_IN LIKE BAPISDHD1,
*******<<<Checkbox Fields for Sales and Distribution Document Header>>>>>>>>>
      GT_ORDER_HEADER_INX  LIKE    BAPISDHD1X,
*****<<<<<Return Parameter>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
      GT_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE,  " Return Messages
*********<<<Communication Fields: Sales and Distribution Document Item<>>>>>
      GT_ORDER_ITEMS_IN LIKE BAPISDITM OCCURS 0 WITH HEADER LINE, " Item Data
*********<<<Communication Fields: Sales and Distribution Document Item>>>>>>>
      GT_ORDER_ITEMS_INX LIKE BAPISDITMX OCCURS 0 WITH HEADER LINE, "Item Data Checkbox
*********<<<Communication Fields: Sales and Distribution Document Item>>>>>>>
      GT_SALESDOCUMENT LIKE BAPIVBELN-VBELN , "Number of Generated Document
*********<<<Communications Fields: SD Document Partner: WWW>>>>>>>>>>>>>>>>>>
      GT_ORDER_PARTNERS  LIKE BAPIPARNR OCCURS 0 WITH HEADER LINE, "Document Partner
********<<<<Communications Fields: SD Document Partner: WWW>>>>>>>>>>>>>>>>>>
      GT_ORDER_SCHEDULES_IN LIKE BAPISCHDL OCCURS 0 WITH HEADER LINE, "Schedule Line Data
****<<<<<<<<Checkbox List for Maintaining Sales Document Schedule Line>>>>>>>>
      GT_ORDER_SCHEDULES_INX LIKE BAPISCHDLX OCCURS 0 WITH HEADER LINE, " Checkbox Schedule Line Data
*******Communication Fields for Maintaining Conditions in the Order
      GT_ORDER_CONDITIONS_IN  LIKE BAPICOND OCCURS 0 WITH HEADER LINE,
******Communication Fields for Maintaining Conditions in the Order
      GT_ORDER_CONDITIONS_INX LIKE BAPICONDX OCCURS 0 WITH HEADER LINE.
       Data definition                                               *
DATA:  BEGIN OF GT_FT_SALES OCCURS 0,
       DOC_TYPE(4)  ,        "Sales Document Type
       SALES_ORG(4) ,        "Sales Organization
       DISTR_CHAN(2)  ,      "Distribution Channel
       DIVISION(2)   ,       "DIVISION(2)
       SALES_DIST(6)  ,      "Sales district
       INCOTERMS1(3)  ,      "Incoterms (part 1)
       INCOTERMS2(28)  ,     "Incoterms (part 2)
       PMNTTRMS(4)  ,        "Terms of payment key
       PRICE_DATE(8) ,       "Date for pricing and exchange rate
       PURCH_NO_C(35)  ,     "Customer purchase order number
       PURCH_NO_S(35)  ,     "Ship-to Party's Purchase Order Number
       EXCHG_RATE(8)  ,      "Directly quoted exchange rate for pricing and statistics
       CURRENCY(5) ,         "SD document currency
       MATERIAL(18),         "MATERIAL
       TARGET_QTY(13)  ,     "Target quantity in sales units
       ITEM_CATEG(4)  ,      "Sales document item category
       MATL_GROUP(8)  ,      "Material Group
       PURCH_NO_C1(35),      "Customer purchase order number
       SALES_DIST1(6)  ,     "Sales district
       INCOTERMS11(3)  ,     "Incoterms (part 1)
       INCOTERMS21(28),     "Incoterms (part 2)
       PMNTTRMS1(4)  ,     "Terms of payment key
       EXCHG_RATE1(8) ,    "Directly quoted exchange rate for pricing and statistics
       PRICE_DATE1(8) ,    "Date for pricing and exchange rate
       TRG_QTY_NO(5)    , "Factor for converting sales units to base units (target qty)
       DIVISION1(2)     ,                                   "DIVISION1
       SALQTYNUM(5)     , "Numerator (factor) for conversion of sales quantity into SKU
       GROSS_WGHT(3)    , "Gross Weight of the Item
       NET_WEIGHT(15)    , "Net Weight of the Item
       UNTOF_WGHT(3)    ,"Weight Unit
       PARTN_ROLE(2)   ,"Partner function
       PARTN_NUMB(10)   ,"Customer Number 1
********<<<<Communications Fields: SD Document Partner: WWW>>>>>>>>>>>>>>>>>>
       ITM_NUMBER(6) ,"Item number of the SD document
       REQ_QTY(8)  , "Schedule line date
       DLV_DATE(8)  , "Schedule line date
       MS_DATE(8)  , "Material availability date
       LOAD_DATE(8) , "Loading time (local time with reference to a shipping point)
       GI_DATE(8), "Time of goods issue (local DATE, with reference to a plant)
       TP_DATE(8)  , "Transportation planning -time (local w/ref. to shipping pnt)
       ITM_NUMBER2(6) , "Condition item number
END OF GT_FT_SALES,
       MSG(240) TYPE  C,  " Return Message
       E_REC(8) TYPE C,    " Error Records Counter
       REC_NO(8) TYPE C, " Records Number Indicator
       S_REC(8) TYPE C,   " Successful Records Counter
       T_REC(8) TYPE C.   " Total Records Counter
selection block for EXCEL UPLOAD FILE>>>>>>>>>>>>>>>>>>>>>>>>
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
  PARAMETERS FILE TYPE  IBIPPARMS-PATH OBLIGATORY.
SELECTION-SCREEN END OF BLOCK B1.
*<<<<AT SELECTION-SCREEN ON VALUE-REQUEST FOR FILE .>>>>>>>>>>>>
AT SELECTION-SCREEN ON VALUE-REQUEST FOR FILE .
  CALL FUNCTION 'F4_FILENAME'
    EXPORTING
      PROGRAM_NAME  = SYST-CPROG
      DYNPRO_NUMBER = SYST-DYNNR
    IMPORTING
      FILE_NAME     = FILE.
**<<<<<<<<<<<<<<<<<START-OF-SELECTION.>>>>>>>>>>>>>>>>>>>>>>>>>>>
START-OF-SELECTION.
  CALL FUNCTION 'WS_UPLOAD'                                 "#EC *
    EXPORTING
      FILENAME                = FILE
      FILETYPE                = 'DAT'
    TABLES
      DATA_TAB                = GT_FT_SALES
    EXCEPTIONS
      CONVERSION_ERROR        = 1
      FILE_OPEN_ERROR         = 2
      FILE_READ_ERROR         = 3
      INVALID_TYPE            = 4
      NO_BATCH                = 5
      UNKNOWN_ERROR           = 6
      INVALID_TABLE_WIDTH     = 7
      GUI_REFUSE_FILETRANSFER = 8
      CUSTOMER_ERROR          = 9
      NO_AUTHORITY            = 10
      OTHERS                  = 11.
  IF  SY-SUBRC <> 0  .
    MESSAGE E000.
  ENDIF.
  SKIP 3.
  FORMAT COLOR COL_HEADING INVERSE ON.
    WRITE 40 TEXT-001.
  FORMAT COLOR COL_HEADING INVERSE OFF.
  SKIP 1.
  FORMAT COLOR COL_NEGATIVE INVERSE ON.
    WRITE :/ TEXT-002, 13 SY-MANDT , 104 TEXT-003, 111 SY-UNAME,
              / TEXT-004, 13 SY-DATUM , 104 TEXT-005, 111 SY-UZEIT.
  FORMAT COLOR COL_NEGATIVE INVERSE OFF.
  SKIP 3.
  LOOP AT GT_FT_SALES.
      PERFORM SLALE_UPLOAD_DATA.
  ENDLOOP.
  T_REC = E_REC + S_REC.
  SKIP 3.
  FORMAT COLOR COL_TOTAL INVERSE ON.
    WRITE: /38 TEXT-007, T_REC.
  FORMAT COLOR COL_TOTAL INVERSE OFF.
  FORMAT COLOR COL_NEGATIVE INVERSE ON.
    WRITE: /38 TEXT-008, E_REC.
  FORMAT COLOR COL_NEGATIVE INVERSE OFF.
  FORMAT COLOR COL_TOTAL INVERSE ON.
    WRITE: /38 TEXT-009, S_REC.
  FORMAT COLOR COL_TOTAL INVERSE OFF.
*&      Form  SLALE_UPLOAD_DATA
      text
-->  p1        text
<--  p2        text
FORM SLALE_UPLOAD_DATA .
*******<<<<<<<<<<Communication Fields: Sales and Distribution Document Header>>>>>>
    GT_ORDER_HEADER_IN-DOC_TYPE =    'TA'.
    GT_ORDER_HEADER_IN-SALES_ORG =  GT_FT_SALES-SALES_ORG . "'0001'
    GT_ORDER_HEADER_IN-DISTR_CHAN = GT_FT_SALES-DISTR_CHAN. "'01'
    GT_ORDER_HEADER_IN-DIVISION  =   GT_FT_SALES-DIVISION.  " '01'
    GT_ORDER_HEADER_IN-SALES_DIST = GT_FT_SALES-SALES_DIST ."'000001'
    GT_ORDER_HEADER_IN-INCOTERMS1 = GT_FT_SALES-INCOTERMS1.  "'CFR'
    GT_ORDER_HEADER_IN-INCOTERMS2 = GT_FT_SALES-INCOTERMS2 . "'HAMBURG'
    GT_ORDER_HEADER_IN-PMNTTRMS = GT_FT_SALES-PMNTTRMS .    "'0001'
    GT_ORDER_HEADER_IN-PRICE_DATE = GT_FT_SALES-PRICE_DATE ."'20060818'
    GT_ORDER_HEADER_IN-PURCH_NO_C =  '32'.
    GT_ORDER_HEADER_IN-PURCH_NO_S =   '32'.
    GT_ORDER_HEADER_IN-EXCHG_RATE =  GT_FT_SALES-EXCHG_RATE ."'1.00000'
    GT_ORDER_HEADER_IN-CURRENCY = GT_FT_SALES-CURRENCY . " 'EUR'
********<<<Checkbox Fields for Sales and Distribution Document Header>>>>>>>>>
    GT_ORDER_HEADER_INX-DOC_TYPE   = 'X'.
    GT_ORDER_HEADER_INX-SALES_ORG  = 'X'.
    GT_ORDER_HEADER_INX-DISTR_CHAN = 'X'.
    GT_ORDER_HEADER_INX-DIVISION   = 'X'.
    GT_ORDER_HEADER_INX-SALES_DIST = 'X'.
    GT_ORDER_HEADER_INX-INCOTERMS1 = 'X'.
    GT_ORDER_HEADER_INX-INCOTERMS2 = 'X'.
    GT_ORDER_HEADER_INX-PMNTTRMS =   'X'.
    GT_ORDER_HEADER_INX-PRICE_DATE = 'X'.
    GT_ORDER_HEADER_INX-PURCH_NO_C = 'X'.
    GT_ORDER_HEADER_INX-PURCH_NO_S = 'X'.
    GT_ORDER_HEADER_INX-EXCHG_RATE =  'X'.
    GT_ORDER_HEADER_INX-CURRENCY = 'X'.
*****<<<<<<Communication Fields: Sales and Distribution Document Item>>>
    GT_ORDER_ITEMS_IN-ITM_NUMBER = '000010'.
    GT_ORDER_ITEMS_IN-MATERIAL  =  GT_FT_SALES-MATERIAL .
    GT_ORDER_ITEMS_IN-PO_ITM_NO = '32'.
    GT_ORDER_ITEMS_IN-CUST_MAT22 = 'AGNI-IV'.
    GT_ORDER_ITEMS_IN-BILL_DATE = '20060808'.
    GT_ORDER_ITEMS_IN-PLANT = '0001'.
*GT_ORDER_ITEMS_IN-STORE_LOC = '0001'.
    GT_ORDER_ITEMS_IN-TARGET_QTY = GT_FT_SALES-TARGET_QTY . "'1000'
    GT_ORDER_ITEMS_IN-ITEM_CATEG = GT_FT_SALES-ITEM_CATEG . "'TAN'
    GT_ORDER_ITEMS_IN-MATL_GROUP = GT_FT_SALES-MATL_GROUP . "'01'
    GT_ORDER_ITEMS_IN-PURCH_NO_C = GT_FT_SALES-PURCH_NO_C . "'32'
    GT_ORDER_ITEMS_IN-SALES_DIST = GT_FT_SALES-SALES_DIST . "'000001'
    GT_ORDER_ITEMS_IN-INCOTERMS1 = GT_FT_SALES-INCOTERMS1 . "'CFR'
    GT_ORDER_ITEMS_IN-INCOTERMS2 = GT_FT_SALES-INCOTERMS2 . "'HAMBURG'
    GT_ORDER_ITEMS_IN-PMNTTRMS = GT_FT_SALES-PMNTTRMS  .    "'0001'.
    GT_ORDER_ITEMS_IN-EXCHG_RATE = GT_FT_SALES-EXCHG_RATE . "'1.00000'
    GT_ORDER_ITEMS_IN-PRICE_DATE = GT_FT_SALES-PRICE_DATE . "'20060808'
*GT_ORDER_ITEMS_IN-SALES_UNIT = 'DZ'.
    GT_ORDER_ITEMS_IN-TRG_QTY_NO = GT_FT_SALES-TRG_QTY_NO . "'23'
    GT_ORDER_ITEMS_IN-DIVISION = GT_FT_SALES-DIVISION   .   "'01'
    GT_ORDER_ITEMS_IN-SALQTYNUM = GT_FT_SALES-SALQTYNUM .   "'32'
    GT_ORDER_ITEMS_IN-GROSS_WGHT = GT_FT_SALES-GROSS_WGHT.  " ' 25272000'
    GT_ORDER_ITEMS_IN-NET_WEIGHT = GT_FT_SALES-NET_WEIGHT.  "'24464000'
    GT_ORDER_ITEMS_IN-UNTOF_WGHT = GT_FT_SALES-UNTOF_WGHT . " 'KG'
*GT_ORDER_ITEMS_IN-CURRENCY = 'EUR'.
    APPEND  GT_ORDER_ITEMS_IN.
****<<<<<<Communication Fields: Sales and Distribution Document Item>>>
    GT_ORDER_ITEMS_INX-ITM_NUMBER = '000010'.
    GT_ORDER_ITEMS_INX-MATERIAL = 'X'.
*GT_ORDER_ITEMS_INX-PO_ITM_NO = 'X'.
    GT_ORDER_ITEMS_INX-CUST_MAT22 = 'X'.
    GT_ORDER_ITEMS_INX-BILL_DATE = 'X'.
    GT_ORDER_ITEMS_INX-PLANT = 'X'.
*GT_ORDER_ITEMS_INX-STORE_LOC = 'X'.
    GT_ORDER_ITEMS_INX-TARGET_QTY = 'X'.
    GT_ORDER_ITEMS_INX-ITEM_CATEG = 'X'.
    GT_ORDER_ITEMS_INX-MATL_GROUP = 'X'.
    GT_ORDER_ITEMS_INX-PURCH_NO_C = 'X'.
    GT_ORDER_ITEMS_INX-SALES_DIST = 'X'.
    GT_ORDER_ITEMS_INX-INCOTERMS1 = 'X'.
    GT_ORDER_ITEMS_INX-INCOTERMS2 = 'X'.
    GT_ORDER_ITEMS_INX-PMNTTRMS = 'X'.
    GT_ORDER_ITEMS_INX-EXCHG_RATE = 'X'.
    GT_ORDER_ITEMS_INX-PRICE_DATE = 'X'.
*GT_ORDER_ITEMS_INX-SALES_UNIT = 'X'.
    GT_ORDER_ITEMS_INX-TRG_QTY_NO = 'X'.
    GT_ORDER_ITEMS_INX-DIVISION = 'X'.
    GT_ORDER_ITEMS_INX-SALQTYNUM = 'X'.
    GT_ORDER_ITEMS_INX-GROSS_WGHT =  'X'.
    GT_ORDER_ITEMS_INX-NET_WEIGHT = 'X'.
    GT_ORDER_ITEMS_INX-UNTOF_WGHT = 'X'.
*GT_ORDER_ITEMS_IN-CURRENCY = 'x'.
    APPEND  GT_ORDER_ITEMS_INX.
*****<<<<<<Communications Fields: SD Document Partner: WWW
    GT_ORDER_PARTNERS-PARTN_ROLE =   'WE'.
    GT_ORDER_PARTNERS-PARTN_NUMB =  '0000000057'.
***GT_ORDER_PARTNERS-ITM_NUMBER = GT_FT_SALES-ITM_NUMBER . " '000010'.
    APPEND  GT_ORDER_PARTNERS.
*********<<<<Communications Fields: SD Document Partner: WWW>>>>>>>>>>>>>>>>>>
    GT_ORDER_SCHEDULES_IN-ITM_NUMBER = GT_FT_SALES-ITM_NUMBER." '000010'
    GT_ORDER_SCHEDULES_IN-REQ_QTY = GT_FT_SALES-REQ_QTY .   "'234'
    GT_ORDER_SCHEDULES_IN-DLV_DATE = GT_FT_SALES-DLV_DATE  ."  '20060824'.
    GT_ORDER_SCHEDULES_IN-MS_DATE =  GT_FT_SALES-MS_DATE .  "'20060808'
    GT_ORDER_SCHEDULES_IN-LOAD_DATE = GT_FT_SALES-LOAD_DATE.  " '20060822'
    GT_ORDER_SCHEDULES_IN-GI_DATE = GT_FT_SALES-GI_DATE . " '20060823'
    GT_ORDER_SCHEDULES_IN-TP_DATE = GT_FT_SALES-TP_DATE .   "'20060821'
    APPEND  gt_ORDER_SCHEDULES_IN.
*********<<<<Communications Fields: SD Document Partner: WWW FLAG>>>>>>>>>>>>>>>>>>
    GT_ORDER_SCHEDULES_INX-ITM_NUMBER = '000010'.
    GT_ORDER_SCHEDULES_INX-REQ_QTY = 'X'.
    GT_ORDER_SCHEDULES_INX-DLV_DATE = 'X'.
    GT_ORDER_SCHEDULES_INX-MS_DATE = 'X'.
    GT_ORDER_SCHEDULES_INX-LOAD_DATE = 'X'.
    GT_ORDER_SCHEDULES_INX-GI_DATE = 'X'.
    GT_ORDER_SCHEDULES_INX-DLV_DATE = 'X'.
    APPEND  gt_ORDER_SCHEDULES_INX.
********Communication Fields for Maintaining Conditions in the Order
    GT_ORDER_CONDITIONS_IN-ITM_NUMBER = GT_FT_SALES-ITM_NUMBER ." '000010'
    APPEND GT_ORDER_CONDITIONS_IN.
***Communication Fields for Maintaining Conditions in the Order
    GT_ORDER_CONDITIONS_INX-ITM_NUMBER = '000010'.
    APPEND GT_ORDER_CONDITIONS_INX.
    CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
      EXPORTING
   SALESDOCUMENTIN               =
        ORDER_HEADER_IN               = GT_ORDER_HEADER_IN
        ORDER_HEADER_INX              = GT_ORDER_HEADER_INX
  SENDER                        =
  BINARY_RELATIONSHIPTYPE       =
  INT_NUMBER_ASSIGNMENT         =
  BEHAVE_WHEN_ERROR             =
  LOGIC_SWITCH                  =
  TESTRUN                       =
  CONVERT                       = ' '
     IMPORTING
       SALESDOCUMENT                  = GT_SALESDOCUMENT
      TABLES
       RETURN                         = GT_RETURN
        ORDER_ITEMS_IN                = GT_ORDER_ITEMS_IN
        ORDER_ITEMS_INX               = GT_ORDER_ITEMS_INX
        ORDER_PARTNERS                = GT_ORDER_PARTNERS
       ORDER_SCHEDULES_IN            =  GT_ORDER_SCHEDULES_IN
       ORDER_SCHEDULES_INX           =  GT_ORDER_SCHEDULES_INX
       ORDER_CONDITIONS_IN           =  GT_ORDER_CONDITIONS_IN
       ORDER_CONDITIONS_INX          =  GT_ORDER_CONDITIONS_INX
  ORDER_CFGS_REF                =
  ORDER_CFGS_INST               =
  ORDER_CFGS_PART_OF            =
  ORDER_CFGS_VALUE              =
  ORDER_CFGS_BLOB               =
  ORDER_CFGS_VK                 =
  ORDER_CFGS_REFINST            =
  ORDER_CCARD                   =
  ORDER_TEXT                    =
  ORDER_KEYS                    =
  EXTENSIONIN                   =
  PARTNERADDRESSES              =
    IF GT_RETURN-TYPE EQ 'E' .
      E_REC = E_REC + 1.
      READ TABLE GT_RETURN WITH KEY ID = 'V1'.
      FORMAT COLOR COL_NEGATIVE INVERSE ON.
      REC_NO = E_REC + S_REC.
          CONCATENATE TEXT-006 REC_NO ':'
          GT_RETURN-MESSAGE INTO MSG SEPARATED BY SPACE .
          CONDENSE MSG.
          WRITE: / MSG.
      FORMAT COLOR COL_NEGATIVE INVERSE OFF.
  ELSEIF GT_RETURN-TYPE EQ 'S'.
      S_REC = S_REC + 1.
      FORMAT COLOR COL_POSITIVE INVERSE ON.
          MSG = GT_RETURN-MESSAGE.
          CONDENSE MSG.
          WRITE: / MSG .
      FORMAT COLOR COL_POSITIVE INVERSE OFF.
     PERFORM COMMIT_MM.
ENDIF.
      CLEAR:  GT_RETURN[], MSG.
ENDFORM.                    " SLALE_UPLOAD_DATA
*&      Form  COMMIT_MM
      text
-->  p1        text
<--  p2        text
FORM COMMIT_MM .
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        WAIT   = 'X'
      IMPORTING
        RETURN = GT_RETURN.
  clear:      GT_ORDER_ITEMS_IN[],GT_ORDER_CONDITIONS_IN[].
ENDFORM.                    " COMMIT_MM

Similar Messages

  • Sales order with reference to Service Notification

    Hi Freinds,
    I have to create a sales order with reference to Service notification (IW51). can someone sugggest me BAPI or Function module to perform this task.
    Appriciate your help.
    Best regards
    Pravin

    no std bapi's as far as i know..when you hit create create repair order(in iw51) system calls QM06_RMA_ORDER_CREATE
    ..whick internally calls SD_ORDER_CREATE..may be this should give some pointers..
    Regards
    Siva

  • Can we create outbound delivery with reference of purchase order

    Hi All,
    can we create outbound delivery with reference of purchase order?

    dear friend,
    as far as i know you can create it with the following references:
    -to sales order;
    -to STO;
    -to subcontract order;
    -to project;
    -without any ref
    are you talking about stock transport order ?
    regards,

  • Function module to create Inbound delivery with reference to Purchase Order

    Hi experts,
    I want to create Inbound delivery with refernce to Purchase Order. But I want to create item wise. For example If one purchase order is there with 10 line items. 10, 20, 30, 40, 50......100.
    If I am showing report for Purchase Order with select option and if I select first 5 line items 10, 20, 30, 40, 50 then my program should be create one Inbound delivery for selected line items only. I have tried BDC for Tcode VL31N, but its not worked. Is there any Function module to create Inbound delivery with reference to Purchase Order for selected line items????????

    Hi,
    Try FM RV_DELIVERY_CREATE or GN_DELIVERY_CREATE.
    For creating a delivery wrt PO u 1st need to have a sales order i guess.
    Regards,
    Amit

  • Repair order with reference to service nitification.

    Hello,
    I want to create repair order with reference to service notification S1. but when I click create repair order in action box nothing happens. could any one of you help me in sloving this. where is the link missing in customizing. can you help.
    thanks in advance

    Hi
    Check out the config in Action box
    Plant Maintenance and Customer Service - Master Data in Plant Maintenance and Customer Service - Maintenance and Service Processing - Maintenance and Service Notifications - Notification Processing - Additional Functions - Define Action Box
    execute it
    Select and execute
    Define Follow-Up Functions (Generated Tasks/Activities)
    Select your notification type, and go for activities, maintain the fields notification type (S1), Fk (0031), scenario, sort no and description.
    - Pithan

  • Purchase Order with reference to Purchase Order

    Dear SAP Gurus,
    Can it be possible to have a purchase order with reference to purchase order.
    Regards
    Vinod Kakade

    Hi,
    there is an option to give document date in the Purchase order selection in Document overview, what you can do here is that you can get a TVARVC variable created with date range of today - Today - 179 Days, in the attributes of the variant enter the TVARVC variable so that when the user uses this variant, he will get PO's only for that date range, if you  have any confusion on this then please speak to your ABAP Consultant.
    Regards
    Chandra Shekhar

  • Debit Memo Request with Reference to Service Order

    Hi Team,
    I need to create the following business process
    Service Notification -> Service Order -> Debit Memo Request -> Debit Memo.
    I'm able to create the notification and the service order. However while creating the debit memo request with reference to the service order I'm stuck. Not sure where and how do I give the reference document number for the data to flow from the Service Order to Debit Memo Request.
    Regards
    Nadarajah Pratheb

    Hi Nadarajah,
    The following may help you.
    1.Check the sales document category of the service order you are using.
    2. Check which kind of document given in the with reference screen has the same sales document category.
    3. For that document type, enter the service order as the reference.
    4. Now you can see the details getting copied to the debit memo request.
    5. Make sure copy controls are properly maintained from service order to debit memo request.
    Please assign reward points if it helps.

  • Create S O with reference to an order

    Hi Friends,
    I am trying to create a sales order with reference to an existing sales order but I am not getting the reference field populated.
    I am using SD_SALESDOCUMENT_CREATE for this purpos and code as below
    Header details
      l_order_header_in-doc_type   = vbak-auart.
      l_order_header_in-sales_org  = vbak-vkorg.
      l_order_header_in-distr_chan = vbak-vtweg.
      l_order_header_in-division   = vbak-spart.
      l_order_header_in-ref_doc_l  = vbak-vbeln.
      l_order_header_inx-doc_type   = 'X'.
      l_order_header_inx-sales_org  = 'X'.
      l_order_header_inx-distr_chan = 'X'.
      l_order_header_inx-division   = 'X'.
      l_order_header_inx-ref_doc_l  = 'X'.
      l_order_header_inx-updateflag    = 'I'.
      CLEAR v_item_no.
      v_item_no = '000010'.
    Item details
      LOOP AT i_unauth.
        i_order_items_in-itm_number  = v_item_no.
        i_order_items_in-material    = i_unauth-matnr.
        i_order_items_in-target_qty  = i_unauth-kwmeng.
        i_order_items_inx-itm_number = i_order_items_in-itm_number.
        i_order_items_inx-material   = 'X'.
        i_order_items_inx-target_qty = 'X'.
        i_order_items_inx-updateflag = 'I'.
        APPEND: i_order_items_in, i_order_items_inx.
        CLEAR: i_order_items_in, i_order_items_inx.
    schedule lines
        i_sales_schedules_in-itm_number = v_item_no.
        i_sales_schedules_in-sched_line = v_item_no+1(4).
        i_sales_schedules_in-req_qty    = i_unauth-kwmeng.
        i_sales_schedules_inx-itm_number = i_sales_schedules_in-itm_number.
        i_sales_schedules_inx-sched_line = i_sales_schedules_in-sched_line.
        i_sales_schedules_inx-req_qty    = 'X'.
        i_sales_schedules_inx-updateflag = 'I'.
        APPEND: i_sales_schedules_in, i_sales_schedules_inx.
        CLEAR: i_sales_schedules_in, i_sales_schedules_inx.
        v_item_no = v_item_no + 10.
      ENDLOOP.
    Partner details
      i_order_partners-partn_role = 'AG'.
      i_order_partners-partn_numb = vbak-kunnr.
      APPEND i_order_partners. CLEAR i_order_partners.
      SELECT SINGLE * FROM vbpa INTO vbpa
      WHERE vbeln = vbak-vbeln AND
            posnr = '000000' AND
            parvw = 'WE '.
      IF sy-subrc = 0.
        i_order_partners-partn_role = vbpa-parvw.
        i_order_partners-partn_numb = vbpa-kunnr.
        APPEND i_order_partners. CLEAR i_order_partners.
      ENDIF.
    I tried to create it with using BAPI_SALESORDER_CREATEFROMDAT2 but was not sucessfull and has to try with the SD_SALESDOCUMENT_CREATE .
    Could somebody please suggest me how to acheive this.
    Thanks,
    Kiran.

    There is an OSS note <a href="https://service.sap.com/sap/support/notes/370988">Note 370988 - BAPIs in SD: Creation with reference</a>
    <i><b>Symptom</b>
    This note describes the problems of the 'Create with reference' function when using BAPIs to create sales documents.
    If you are working online, you can use this function module to create a sales document with reference to an existing sales document or a billing document (for example, a debit or credit memo request) according to fixed rules. The rules for transferring information from the source document to the target document are defined in the copying control on header and item level. The creation with reference permits an item selection.
    When you use BAPIs in SD, a function of this type is not fully available. A reference is only possible for a quantity contract, so that the target quantity of the contract can be reduced by the order quantity of the sales document. Furthermore, the document flow is also updated.
    As an alternative to 'Create with reference' in Transaction VA01, two variants are provided for solving the 'Create with reference' problem in the BAPI.
          1. Create a '1:1 ' - that is, a document copy of a sales document (customer quotation, order) with 'BAPI_SALESDOCUMENT_COPY'. At this point, you cannot create the 1:1 copy of either a billing document or a delivery.
          2. Create a sales document that refers to an existing document with 'BAPISDORDER_GETDETAILEDLIST' and 'BAPI_SALESORDER_CREATEFROMDAT2'.
    <b>Other terms</b>
    BAPI_SALESDOCUMENT_COPY, BAPI_SALESORDER_CHANGE, BAPI_CUSTOMERINQUIRY_CHANGE, BAPI_CUSTOMERQUOTATION_CHANGE, BAPI_SALESORDER_CREATEFROMDAT1, BAPI_SALESORDER_CREATEFROMDAT2, BAPI_SALESORDER_CREATEFROMDATA, BAPISDORDER_GETDETAILEDLIST
    <b>Reason and Prerequisites</b>
    As of yet, no method exists for creating a sales document that refers to an existing document.
    Solution
    For solution No. 1
          1. Create the documents using the BAPI_SALESDOCUMENT_COPY function module. However, this only permits a 1:1 copy without factoring out individual items.
          2. After you have created the document copy, you can use a change BAPI to edit this copy.
    For solution No. 2
          1. Collect the data for the reference document (for example a customer quotation) with the 'BAPISDORDER_GETDETAILEDLIST' function module. In the example code, focus exclusively on the partners, items, schedule lines and conditions.
          2. Prepare the Data. Execute the 'copying control' manually. This way, you decide which values are to be transferred.
          3. Create the sales document using the 'BAPI_SALESORDER_CREATEFROMDAT2' function module by transferring the prepared data.
          4. Finally, you must remove a COMMIT WORK so that the sales document can be written into the database.
    An example of solution 2 is attached as a text file. You are allowed to select items and quantities for example, if you use input parameters. If there are no entries, then transfer 1:1 from the reference document. When you enter the 'condition type' parameter, you can determine whether conditions are copied or recalculated ('G' for transferring from the preceding document; 'B' or ' ' for re-determining, and 'C' for re-determining with transfer of the manual elements).</i>
    Sample : <a href="https://service.sap.com/~sapidb/012003146900000486112004E/BAPI_COPY_WITH_REF.txt">ZZ_MS_BAPI_COPY</a>
    Regards

  • Sales order with reference to purchase order

    Hi
    I have a scenario where i need to create a sales order from PO raised in another company code
    My client has 4 company codes
    1000 company code
    2000 company code
    3000 company code
    4000 company code
    Now
    2000 company will raise a PO on company code 1000
    So in company code 2000 i need to create a sales order with reference to PO from compcode 1000
    where all the data has to copied from PO with schedules
    so when i create a order in VA31 i have to create scheduling agreements with refernce to PO all the schedule line items should be copied?
    Is there any standard process or do i need to go for development?
    Regards

    Hi,
       As per my Understanding,
    I guess, you can do this same as creating Purchase Order-NB ( In ordering Company code)-ME21N,
    Vendor- Plant of Supplying Comp code ( Create this Plant as Vendor in ORdering Comp code)
    Purchase org/Group-
    Comp Code - Ordering Comp Code
    Material-
    Plant - Receiving Plant.
    Try n Revert-
    No Need to go for Userexit,
    My Query is: -
    Why you want to create Scheduling agreement wrt "PO" of Diff Comp Code.
    We can use the PO from Ordering Comp Code is a ref for any dispatches ( To Pass the PO requirements to Production in Supp.Comp code, while creating PO by maintaining Checking rule )

  • Create sales document with reference document

    Hi Experts:
                    In the case of create sales document ,i set that create sales order with reference a billing document.
                    But i have a problem,the Pricing procedure in billing document is A, after coping from it,the sales document
                    Pricing procedure is A also,it can't work using Pricing Procedure Determination in config.
                    Actually,i want the sales document using a new  pricing procedure.
                    Pls help to give me some advice.
                                                      Thank you very much.
                            Best Regards!

    Go to VOFA, select your billing type and execute.  There maintain a different document pricing procedure from what you maintained for your sale order type in VOV8. 
    Next go to OVKK and assign the new pricing procedure to the document pricing procedure of what you maintained in VOFA
    Finally, go to VTAF, select your source billing document type and order type and execute.  There assign routine 053 for the first "DataT"
    Now try how it works.
    thanks
    G. Lakshmipathi

  • Purchase order with reference to internal order

    Dear all
    I am creating a purchase order with reference to a statistical internal order.The total PO value should not exceed the budgeted amount for that statistical internal order.How should i achieve this?
    Thanks in advance.
    Madhavi

    Hello
    First Create Budget Profile.
    Make Specification In Availability Control as Activation Type ''01- Automatic activation during budget allocation''
    Usage 100 and Tick ''Overall'' check box.
    After that Make Setting for your Controlling area in SPRO Path '' Define Tolerance Limit for Availibility control''

  • Create Sales order with reference to purchase order - Help needed

    Hi Gurus
    Purchase order is being created in Oracle system. SAP system will receive the purchase order and creates the sales order for the corresponding purchase order.
    Hoe to create sales order, Through BAPI or through IDOC. Please suggest and give some pointers of existing interface
    Thanks
    Andy.

    Hi,
        If you are working on ECC6.0 check for the BAPI BAPI_SALESORDER_CREATEFROMDAT1 .You can also pass the purchase order number .
    Check the sample code
    REPORT z_bapi_salesorder_create.
    Parameters
    Sales document type
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text FOR FIELD p_auart.
    PARAMETERS: p_auart TYPE auart OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    Sales organization
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text1 FOR FIELD p_vkorg.
    PARAMETERS: p_vkorg TYPE vkorg OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    Distribution channel
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text2 FOR FIELD p_vtweg.
    PARAMETERS: p_vtweg TYPE vtweg OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    Division.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text3 FOR FIELD p_spart.
    PARAMETERS: p_spart TYPE spart OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    SKIP 1.
    Sold-to
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text4 FOR FIELD p_sold.
    PARAMETERS: p_sold  TYPE kunnr OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    Ship-to
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text5 FOR FIELD p_ship.
    PARAMETERS: p_ship  TYPE kunnr OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    SKIP 1.
    Material
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text6 FOR FIELD p_matnr.
    PARAMETERS: p_matnr TYPE matnr   OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    Quantity.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text7 FOR FIELD p_menge.
    PARAMETERS: p_menge TYPE kwmeng  OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    Plant
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(20) v_text9 FOR FIELD p_plant.
    PARAMETERS: p_plant TYPE werks_d OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    Data declarations.
    DATA: v_vbeln            LIKE vbak-vbeln.
    DATA: header             LIKE bapisdhead1.
    DATA: headerx            LIKE bapisdhead1x.
    DATA: item               LIKE bapisditem  OCCURS 0 WITH HEADER LINE.
    DATA: itemx              LIKE bapisditemx OCCURS 0 WITH HEADER LINE.
    DATA: partner            LIKE bapipartnr  OCCURS 0 WITH HEADER LINE.
    DATA: return             LIKE bapiret2    OCCURS 0 WITH HEADER LINE.
    DATA: lt_schedules_inx   TYPE STANDARD TABLE OF bapischdlx
                             WITH HEADER LINE.
    DATA: lt_schedules_in    TYPE STANDARD TABLE OF bapischdl
                             WITH HEADER LINE.
    Initialization.
    INITIALIZATION.
    v_text   = 'Order type'.
    v_text1  = 'Sales Org'.
    v_text2  = 'Distribution channel'.
    v_text3  = 'Division'.
    v_text4  = 'Sold-to'.
    v_text5  = 'Ship-to'.
    v_text6  = 'Material'.
    v_text7  = 'Quantity'.
    v_text9  = 'Plant'.
    Start-of-selection.
    START-OF-SELECTION.
    Header data
    Sales document type
      header-doc_type = p_auart.
      headerx-doc_type = 'X'.
    Sales organization
      header-sales_org = p_vkorg.
      headerx-sales_org = 'X'.
    Distribution channel
      header-distr_chan  = p_vtweg.
      headerx-distr_chan = 'X'.
    *Purchase order number
    header-PURCH_NO_C =  '4000006'.
    headerx-PURCH_NO_C = 'X'.
    Division
      header-division = p_spart.
      headerx-division = 'X'.
      headerx-updateflag = 'I'.
    Partner data
    Sold to
      partner-partn_role = 'AG'.
      partner-partn_numb = p_sold.
      APPEND partner.
    Ship to
      partner-partn_role = 'WE'.
      partner-partn_numb = p_ship.
      APPEND partner.
    ITEM DATA
      itemx-updateflag = 'I'.
    Line item number.
      item-itm_number = '000010'.
      itemx-itm_number = 'X'.
    Material
      item-material = p_matnr.
      itemx-material = 'X'.
    Plant
      item-plant    = p_plant.
      itemx-plant   = 'X'.
    Quantity
      item-target_qty = p_menge.
      itemx-target_qty = 'X'.
      APPEND item.
      APPEND itemx.
      Fill schedule lines
      lt_schedules_in-itm_number = '000010'.
      lt_schedules_in-sched_line = '0001'.
      lt_schedules_in-req_qty    = p_menge.
      APPEND lt_schedules_in.
      Fill schedule line flags
      lt_schedules_inx-itm_number  = '000010'.
      lt_schedules_inx-sched_line  = '0001'.
      lt_schedules_inx-updateflag  = 'X'.
      lt_schedules_inx-req_qty     = 'X'.
      APPEND lt_schedules_inx.
    Call the BAPI to create the sales order.
      CALL FUNCTION 'BAPI_SALESDOCU_CREATEFROMDATA1'
           EXPORTING
                sales_header_in     = header
                sales_header_inx    = headerx
           IMPORTING
                salesdocument_ex    = v_vbeln
           TABLES
                return              = return
                sales_items_in      = item
                sales_items_inx     = itemx
                sales_schedules_in  = lt_schedules_in
                sales_schedules_inx = lt_schedules_inx
                sales_partners      = partner.
    Check the return table.
      LOOP AT return WHERE type = 'E' OR type = 'A'.
        EXIT.
      ENDLOOP.
      IF sy-subrc = 0.
        WRITE: / 'Error in creating document'.
      ELSE.
    Commit the work.
        COMMIT WORK AND WAIT.
        WRITE: / 'Document ', v_vbeln, ' created'.
      ENDIF.
    Reward points if it worked.
    Regards,
    Abhishek
    Edited by: Abhishek Raj on May 14, 2008 9:57 AM

  • Create outbound delivery with reference to purchase order

    Hi,
    I've created new plant and when i make purchase order i cant see the PO in VL10B, and there for i cant create outbound delivery.
    In the PO in Item Detail there is no shipping category.
    What i need to do ?
    Thank you.

    Step1: In SPRO - Materials Management - Purchasing - Purchase Order - Set up Stock Transport Order - Define Shipping Data for Plants.
    Define the Customer number, Sales Org, Distribution channel and Division for the Plant.
    The Customer you are assigning for the Plant has to be created in the System to create the outbound delivery.
    Step2: In SPRO - Materials Management - Purchasing - Purchase Order - Set up Stock Transport Order - Assign Delivery Type and Checking Rule.
        Then Assign the PO type and the supplying plant to the Delivery Type which is NL (for inter company) and Checking Rule.

  • Automatic creation of Sales Order with reference to Purchase Order

    Hi
    I want to create the sales order automatically when we are creating the purchase order.
    kindly guide me how to do it,
    Pramod

    Hi
    U can create BDC for Tcode VA01 in T code SHDB with the validation and ask the ABAPer to create one Y/Z Tcode. Then you input the PO no in the Tcode to create the SO in background.
    Or
    Create BDC for PO AND SO and give logic and validation with input field and ask the ABAPer to crate one Y/Z Tcode to create PO and SO in single execute.
    Thx.

  • Create inbound delivery with reference to purchase orders

    Hi,
    I´d like to create inbound deliveries using BAPI or transactions like vl10x (for outbound deliveries) for different purchase orders, items and quantities.
    Does anyone know the way to do it?
    Thank you in advance
    Best regards

    Hi,
    Is there only that transaction to create inbound deliveries??
    We want to do a load a file and create inbound deliveries. I was looking for bapi mass transactions, but I don´t know if the only way is to create a batch input of transaction VL31n.
    Thanks

Maybe you are looking for

  • How to link to a BI publisher report in a dashboard

    I'm trying to link a BIP PDF report in a dashboard but I'm being prompted to login to BIP. I have SSO setup so that if I click on more products -> BI publisher it takes me right into BI Publisher. it uses url https://xxx:7777/analytics/saw.dll?Advanc

  • Finder: Changing from thumbnail view to column view takes me back to the root folder.

    Hi, I was hoping someone could help me with this as it's getting a bit tedious having to re-navigate back to the folder I was in. This problem is only occuring when I am working from an external NAS Drive. I need to switch between thumbnail view and

  • IPhone 4S: In phone conversations, other person cannot hear me unless I'm on speaker

    Anytime I call someone I have to switch to speaker so that the person can hear me.  The odd thing is that Siri works fine - when I put Siri up to my ear or when I enable it just by holding the home button.  Recording voicemail greeting works, too.  A

  • Listing Contents of Folders and Sub Folders

    What I'd like to do is generate some kind of pdf or text file that lists the complete contents of a folder or some folder. For instance, when using iTunes, you can print a list of all albums and song names inside your iTunes. In this case, however, I

  • Attachment with web service

    Hello friends I have little problem I create project with web service and now I need to add attachment to email email I create step by step with tutorial !!! so if anybody know HOWTO please send me any tip!!!