Urgent - BDC program to update technical objects using transaction VA42

Hi,
Currently my program updates technical objects details at item level as well as BOM header level.
But my client insists on updating at contract level i.e when u go to va42 transaction and without selecting any item, we need to go to menu,technical objects where the client  wants all the items to be displayed.
How to do this way?, is it possible, please advise on this regard.
Very urgent!
Thanks in advance
Anandh.B

I went into va42 and tried to extras->technical objects but it saying to select the item. Without selecting any item it is not going into technical objects.
You can only do BDC if is possible manually, since its not possible you cannot do BDC for that.
Cheers,
Satya

Similar Messages

  • Update Technical Objects using BAPI

    Hi,
    I need to update the Equipment and Functional Location for an item using the Technical Objects options... in the VA41/42.
    Is there a BAPI which update this Info. I am using the BAPI BAPI_CONTRACT_CREATEFROMDATA, to create it, but it does not accept the Technical objects.
    Regards,
    K

    Try the following function modules for updating equipment / functional location
    ITOB_EQUIPMENT_CREATE,
    ITOB_EQUIPMENT_MODIFY

  • BAPI/FM to update Technical Objects in VA41/42

    Hi,
      I need to update the Equipment and Functional Location for an item using the Technical Objects options... in the VA41/42.
      Is there a BAPI which update this Info. I am using the BAPI BAPI_CONTRACT_CREATEFROMDATA, to create it, but it does not accept the Technical objects.
    Regards,
    K

    Try these BAPI's
    BAPI_LISTING_CONDITIONS,
    BAPI_AGREEMENTS
    Regards,
    Rajasekhar Reddy.

  • How to schedule BDC program in background when we use GUI_UPLOAD

    Hi,
    I need to run the BDC program in the back ground. But my flat file is in presentation server and i am using GUI_UPLOAD F.M to upload data into I.T. How to schedule BDC program in background.
    Will anybody help me in this regards.
    Thanks in advance,
    Mythily

    You will either have to put your data file on the application server or make the directory of the presentation server available as part of the file system so that the background job will have access to it via OPEN DATASET... TRANSFER... CLOSE DATASET.

  • Program name to post document using transaction KB33N.

    Could you tell me the  Program name to post FI document using transaction KB33N.
    Also before document is posted it should appear in SM35
    Edited by: mukesh mahajan on Oct 20, 2009 12:39 PM

    The program name of the T-code is not required.
    I require a standard program which is used to post document in KB33N with data from input file from presentation or application server.
    example is like program RFBIBL00 is used to post document in FB01, FBS1 etc.
    Could any one suggest the name of program for KB33N posting.

  • DI: Update Business Object using XML

    When I try to update a Business Object I loaded from XML, I keep getting an error "1107 - Wrong Object State". Any idea, what's wrong ? I can add objects without any problem.
    Sample Code (VB.NET):
    Dim bp As SAPbobsCOM.BusinessPartners
    bp = cmp.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oBusinessPartners)
    cmp.XmlExportType = SAPbobsCOM.BoXmlExportTypes.xet_ExportImportMode
    cmp.XMLAsString = True
    Dim xmlstr As String
    bp.GetByKey("20001")
    xmlstr = bp.GetAsXML
    bp = Nothing
    Dim bp2 As SAPbobsCOM.BusinessPartners
    bp2 = cmp.GetBusinessObjectFromXML(xmlstr)
    bp2.CardForeignName = "TEST"
    Dim errNo As Integer = bp2.Update

    Hi,
    See you this post:
    Update XML
    Best Regards.

  • Update Master data using transaction data

    Hi Friends,
    we have an interesting requirement wherein while creating a PO(ME21N), the net price which is entered on the screen should update the inforecord(ME12).
    This could be achieved through a user exit which carries the NETPR - net price field. In the user exit a BDC could be used to update the ME12 transaction in the background.
    Could any of you help us with the particular user exit for ME21N which is used to do manipulations with the NETPR(Net price) field. The transaction has numerous user exits though.
    Awaiting your valuable inputs.
    Thank you.
    Regards,
    Gayathri N.

    better to check in SE15 . which are the projects are in active status for Package ME.
    regards
    Prabhu

  • Hi pls give names of some standard BDC program

    thank you
    ravi

    BDC allows you to perform database updates in the background using standard SAP transactions.
    The resultant entries will be as if the user had manually entered the data via SAP. This means
    that you do not bypass any of the standard SAP consistency checks, authorisations etc.
    There are two main methods of ABAP BDC, these are Call Transaction and Batch Input.  
    Other methods of update include Direct update, Idoc and BAPI.
    e
    Example program  :   1
    Report  ZBDC_EXAMPLE                                                *
    *& Example BDC program, which updates net price of item 00010 of a     *
    *& particular Purchase order(EBELN).                                   *
    REPORT  ZBDC_EXAMPLE  NO STANDARD PAGE HEADING
                          LINE-SIZE 132.
    * Data declaration
    TABLES: ekko, ekpo.
    TYPES: BEGIN OF t_ekko,
        ebeln TYPE ekko-ebeln,
        waers TYPE ekko-waers,
        netpr TYPE ekpo-netpr,
        err_msg(73) TYPE c,
    END OF t_ekko.
    DATA: it_ekko  TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_ekko  TYPE t_ekko,
          it_error TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_error TYPE t_ekko,
          it_success TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_success TYPE t_ekko.
    DATA: w_textout            LIKE t100-text.
    DATA: gd_update TYPE i,
          gd_lines TYPE i.
    *Used to store BDC data
    DATA: BEGIN OF bdc_tab OCCURS 0.
            INCLUDE STRUCTURE bdcdata.
    DATA: END OF bdc_tab.
    *Used to stores error information from CALL TRANSACTION Function Module
    DATA: BEGIN OF messtab OCCURS 0.
            INCLUDE STRUCTURE bdcmsgcoll.
    DATA: END OF messtab.
    *Screen declaration
    SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME
                                        TITLE text-001. "Purchase order Num
    SELECT-OPTIONS: so_ebeln FOR ekko-ebeln OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK block1.
    SELECTION-SCREEN BEGIN OF BLOCK block2 WITH FRAME
                                        TITLE text-002. "New NETPR value
    PARAMETERS:  p_newpr(14)   TYPE c obligatory.  "LIKE ekpo-netpr.
    SELECTION-SCREEN END OF BLOCK block2.
    *START-OF-SELECTION
    START-OF-SELECTION.
    * Retrieve data from Purchase order table(EKKO)
      SELECT ekko~ebeln ekko~waers ekpo~netpr
        INTO TABLE it_ekko
        FROM ekko AS ekko INNER JOIN ekpo AS ekpo
          ON ekpo~ebeln EQ ekko~ebeln
       WHERE ekko~ebeln IN so_ebeln AND
             ekpo~ebelp EQ '10'.
    *END-OF-SELECTION
    END-OF-SELECTION.
    * Check data has been retrieved ready for processing
      DESCRIBE TABLE it_ekko LINES gd_lines.
      IF gd_lines LE 0.
    *   Display message if no data has been retrieved
        MESSAGE i003(zp) WITH 'No Records Found'(001).
        LEAVE TO SCREEN 0.
      ELSE.
    *   Update Customer master data (instalment text)
        LOOP AT it_ekko INTO wa_ekko.
          PERFORM bdc_update.
        ENDLOOP.
    *   Display message confirming number of records updated
        IF gd_update GT 1.
          MESSAGE i003(zp) WITH gd_update 'Records updated'(002).
        ELSE.
          MESSAGE i003(zp) WITH gd_update 'Record updated'(003).
        ENDIF.
    * Display Success Report
    *   Check Success table
        DESCRIBE TABLE it_success LINES gd_lines.
        IF gd_lines GT 0.
    *     Display result report column headings
          PERFORM display_column_headings.
    *     Display result report
          PERFORM display_report.
        ENDIF.
    * Display Error Report
    *   Check errors table
        DESCRIBE TABLE it_error LINES gd_lines.
    *   If errors exist then display errors report
        IF gd_lines GT 0.
    *     Display errors report
          PERFORM display_error_headings.
          PERFORM display_error_report.
        ENDIF.
      ENDIF.
    *&      Form  DISPLAY_COLUMN_HEADINGS
    *       Display column headings
    FORM display_column_headings.
      WRITE:2 ' Success Report '(014) COLOR COL_POSITIVE.
      SKIP.
      WRITE:2 'The following records updated successfully:'(013).
      WRITE:/ sy-uline(42).
      FORMAT COLOR COL_HEADING.
      WRITE:/      sy-vline,
              (10) 'Purchase Order'(004), sy-vline,
              (11) 'Old Netpr'(005), sy-vline,
              (11) 'New Netpr'(006), sy-vline.
      WRITE:/ sy-uline(42).
    ENDFORM.                    " DISPLAY_COLUMN_HEADINGS
    *&      Form  BDC_UPDATE
    *       Populate BDC table and call transaction ME22
    FORM bdc_update.
      PERFORM dynpro USING:
          'X'   'SAPMM06E'        '0105',
          ' '   'BDC_CURSOR'      'RM06E-BSTNR',
          ' '   'RM06E-BSTNR'     wa_ekko-ebeln,
          ' '   'BDC_OKCODE'      '/00',                      "OK code
          'X'   'SAPMM06E'        '0120',
          ' '   'BDC_CURSOR'      'EKPO-NETPR(01)',
          ' '   'EKPO-NETPR(01)'  p_newpr,
          ' '   'BDC_OKCODE'      '=BU'.                      "OK code
    * Call transaction to update customer instalment text
      CALL TRANSACTION 'ME22' USING bdc_tab MODE 'N' UPDATE 'S'
             MESSAGES INTO messtab.
    * Check if update was succesful
      IF sy-subrc EQ 0.
        ADD 1 TO gd_update.
        APPEND wa_ekko TO it_success.
      ELSE.
    *   Retrieve error messages displayed during BDC update
        LOOP AT messtab WHERE msgtyp = 'E'.
    *     Builds actual message based on info returned from Call transaction
          CALL FUNCTION 'MESSAGE_TEXT_BUILD'
               EXPORTING
                    msgid               = messtab-msgid
                    msgnr               = messtab-msgnr
                    msgv1               = messtab-msgv1
                    msgv2               = messtab-msgv2
                    msgv3               = messtab-msgv3
                    msgv4               = messtab-msgv4
               IMPORTING
                    message_text_output = w_textout.
        ENDLOOP.
    *   Build error table ready for output
        wa_error = wa_ekko.
        wa_error-err_msg = w_textout.
        APPEND wa_error TO it_error.
        CLEAR: wa_error.
      ENDIF.
    * Clear bdc date table
      CLEAR: bdc_tab.
      REFRESH: bdc_tab.
    ENDFORM.                    " BDC_UPDATE
    *       FORM DYNPRO                                                   *
    *       stores values to bdc table                                    *
    *  -->  DYNBEGIN                                                      *
    *  -->  NAME                                                          *
    *  -->  VALUE                                                         *
    FORM dynpro USING    dynbegin name value.
      IF dynbegin = 'X'.
        CLEAR bdc_tab.
        MOVE:  name TO bdc_tab-program,
               value TO bdc_tab-dynpro,
               'X'  TO bdc_tab-dynbegin.
        APPEND bdc_tab.
      ELSE.
        CLEAR bdc_tab.
        MOVE:  name TO bdc_tab-fnam,
               value TO bdc_tab-fval.
        APPEND bdc_tab.
      ENDIF.
    ENDFORM.                               " DYNPRO
    *&      Form  DISPLAY_REPORT
    *       Display Report
    FORM display_report.
      FORMAT COLOR COL_NORMAL.
    * Loop at data table
      LOOP AT it_success INTO wa_success.
        WRITE:/      sy-vline,
                (10) wa_success-ebeln, sy-vline,
                (11) wa_success-netpr CURRENCY wa_success-waers, sy-vline,
                (11) p_newpr, sy-vline.
        CLEAR: wa_success.
      ENDLOOP.
      WRITE:/ sy-uline(42).
      REFRESH: it_success.
      FORMAT COLOR COL_BACKGROUND.
    ENDFORM.                    " DISPLAY_REPORT
    *&      Form  DISPLAY_ERROR_REPORT
    *       Display error report data
    FORM display_error_report.
      LOOP AT it_error INTO wa_error.
        WRITE:/      sy-vline,
                (10) wa_error-ebeln, sy-vline,
                (11) wa_error-netpr CURRENCY wa_error-waers, sy-vline,
                (73) wa_error-err_msg, sy-vline.
      ENDLOOP.
      WRITE:/ sy-uline(104).
      REFRESH: it_error.
    ENDFORM.                    " DISPLAY_ERROR_REPORT
    *&      Form  DISPLAY_ERROR_HEADINGS
    *       Display error report headings
    FORM display_error_headings.
      SKIP.
      WRITE:2 ' Error Report '(007) COLOR COL_NEGATIVE.
      SKIP.
      WRITE:2 'The following records failed during update:'(008).
      WRITE:/ sy-uline(104).
      FORMAT COLOR COL_HEADING.
      WRITE:/      sy-vline,
              (10) 'Purchase Order'(009), sy-vline,
              (11) 'Netpr'(010), sy-vline,
              (73) 'Error Message'(012), sy-vline.
      WRITE:/ sy-uline(104).
      FORMAT COLOR COL_NORMAL.
    ENDFORM.                    " DISPLAY_ERROR_HEADINGS
    Example  :  2
    Goto transaction SHBD enter a recording name and specify the transaction code.
    Enter the test data and save it , it will actomatically create a bdc program.
    now select that recording name and click create program icon and specify the program name.
    This is the program which was created using transaction SHDB for XD01.
    include bdcrecx1.
    parameters: dataset(132) lower case.
    *** DO NOT CHANGE - the generated data section - DO NOT CHANGE ***
    * If it is nessesary to change the data section use the rules:
    * 1.) Each definition of a field exists of two lines
    * 2.) The first line shows exactly the comment
    * '* data element: ' followed with the data element
    * which describes the field.
    * If you don't have a data element use the
    * comment without a data element name
    * 3.) The second line shows the fieldname of the
    * structure, the fieldname must consist of
    * a fieldname and optional the character '_' and
    * three numbers and the field length in brackets
    * 4.) Each field must be type C.
    *** Generated data section with specific formatting - DO NOT CHANGE ***
    data: begin of record,
    * data element: KUN16
    KUNNR_001(016),
    * data element: BUKRS
    BUKRS_002(004),
    * data element: VKORG
    VKORG_003(004),
    * data element: VTWEG
    VTWEG_004(002),
    * data element: SPART
    SPART_005(002),
    * data element: KTOKD
    KTOKD_006(004),
    * data element: ANRED
    ANRED_007(015),
    * data element: NAME1_GP
    NAME1_008(035),
    * data element: SORTL
    SORTL_009(010),
    * data element: NAME2_GP
    NAME2_010(035),
    * data element: STRAS_GP
    STRAS_011(035),
    * data element: PFACH
    PFACH_012(010),
    * data element: ORT01_GP
    ORT01_013(035),
    * data element: PSTLZ
    PSTLZ_014(010),
    * data element: ORT02_GP
    ORT02_015(035),
    * data element: PFORT_GP
    PFORT_016(035),
    * data element: PSTL2
    PSTL2_017(010),
    * data element: LAND1_GP
    LAND1_018(003),
    * data element: REGIO
    REGIO_019(003),
    * data element: SPRAS
    SPRAS_020(002),
    * data element: TELX1
    TELX1_021(030),
    * data element: TELF1
    TELF1_022(016),
    * data element: TELFX
    TELFX_023(031),
    * data element: TELF2
    TELF2_024(016),
    * data element: TELTX
    TELTX_025(030),
    * data element: TELBX
    TELBX_026(015),
    * data element: URL
    KNURL_027(132),
    * data element: STCD1
    STCD1_028(016),
    * data element: STCD2
    STCD2_029(011),
    * data element: BBBNR
    BBBNR_030(007),
    * data element: BBSNR
    BBSNR_031(005),
    * data element: BUBKZ
    BUBKZ_032(001),
    * data element: BRSCH
    BRSCH_033(004),
    * data element: LZONE
    LZONE_034(010),
    * data element: KUKLA
    KUKLA_035(002),
    * data element: BRSCH
    BRSCH_036(004),
    * data element: UMSA1
    UMSA1_037(020),
    * data element: UWAER
    UWAER_038(005),
    * data element: UMJAH
    UMJAH_039(004),
    * data element: JMZAH
    JMZAH_040(006),
    * data element: JMJAH
    JMJAH_041(004),
    * data element: BANKS
    BANKS_01_042(003),
    * data element: BANKK
    BANKL_01_043(015),
    * data element: BANKN
    BANKN_01_044(018),
    * data element: ABLAD
    ABLAD_01_045(025),
    * data element: KNKAL
    KNFAK_01_046(002),
    * data element: CIVVE
    CIVVE_047(001),
    * data element: ANRED_AP
    ANRED_01_048(030),
    * data element: ANRED_AP
    ANRED_02_049(030),
    * data element: NAMEV_VP
    NAMEV_01_050(035),
    * data element: NAMEV_VP
    NAMEV_02_051(035),
    * data element: NAME1_GP
    NAME1_01_052(035),
    * data element: NAME1_GP
    NAME1_02_053(035),
    * data element: TELF1
    TELF1_01_054(016),
    * data element: TELF1
    TELF1_02_055(016),
    * data element: ABTNR_PA
    ABTNR_01_056(004),
    * data element: ABTNR_PA
    ABTNR_02_057(004),
    * data element: AKONT
    AKONT_058(010),
    * data element: DZTERM
    ZTERM_059(004),
    * data element: MAHNA
    MAHNA_060(004),
    * data element: BZIRK
    BZIRK_061(006),
    * data element: AWAHR
    AWAHR_062(003),
    * data element: WAERS_V02D
    WAERS_063(005),
    * data element: KALKS
    KALKS_064(001),
    * data element: LPRIO
    LPRIO_065(002),
    * data element: KZAZU_D
    KZAZU_066(001),
    * data element: ANTLF
    ANTLF_067(001),
    * data element: PERFK
    PERFK_068(002),
    end of record.
    *** End generated data section ***
    start-of-selection.
    perform open_dataset using dataset.
    perform open_group.
    do.
    read dataset dataset into record.
    if sy-subrc <> 0. exit. endif.
    perform bdc_dynpro using 'SAPMF02D' '0100'.
    perform bdc_field using 'BDC_CURSOR'
    'RF02D-KTOKD'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'RF02D-KUNNR'
    record-KUNNR_001.
    perform bdc_field using 'RF02D-BUKRS'
    record-BUKRS_002.
    perform bdc_field using 'RF02D-VKORG'
    record-VKORG_003.
    perform bdc_field using 'RF02D-VTWEG'
    record-VTWEG_004.
    perform bdc_field using 'RF02D-SPART'
    record-SPART_005.
    perform bdc_field using 'RF02D-KTOKD'
    record-KTOKD_006.
    perform bdc_dynpro using 'SAPMF02D' '0110'.
    perform bdc_field using 'BDC_CURSOR'
    'KNA1-KNURL'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNA1-ANRED'
    record-ANRED_007.
    perform bdc_field using 'KNA1-NAME1'
    record-NAME1_008.
    perform bdc_field using 'KNA1-SORTL'
    record-SORTL_009.
    perform bdc_field using 'KNA1-NAME2'
    record-NAME2_010.
    perform bdc_field using 'KNA1-STRAS'
    record-STRAS_011.
    perform bdc_field using 'KNA1-PFACH'
    record-PFACH_012.
    perform bdc_field using 'KNA1-ORT01'
    record-ORT01_013.
    perform bdc_field using 'KNA1-PSTLZ'
    record-PSTLZ_014.
    perform bdc_field using 'KNA1-ORT02'
    record-ORT02_015.
    perform bdc_field using 'KNA1-PFORT'
    record-PFORT_016.
    perform bdc_field using 'KNA1-PSTL2'
    record-PSTL2_017.
    perform bdc_field using 'KNA1-LAND1'
    record-LAND1_018.
    perform bdc_field using 'KNA1-REGIO'
    record-REGIO_019.
    perform bdc_field using 'KNA1-SPRAS'
    record-SPRAS_020.
    perform bdc_field using 'KNA1-TELX1'
    record-TELX1_021.
    perform bdc_field using 'KNA1-TELF1'
    record-TELF1_022.
    perform bdc_field using 'KNA1-TELFX'
    record-TELFX_023.
    perform bdc_field using 'KNA1-TELF2'
    record-TELF2_024.
    perform bdc_field using 'KNA1-TELTX'
    record-TELTX_025.
    perform bdc_field using 'KNA1-TELBX'
    record-TELBX_026.
    perform bdc_field using 'KNA1-KNURL'
    record-KNURL_027.
    perform bdc_dynpro using 'SAPMF02D' '0120'.
    perform bdc_field using 'BDC_CURSOR'
    'KNA1-LZONE'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNA1-STCD1'
    record-STCD1_028.
    perform bdc_field using 'KNA1-STCD2'
    record-STCD2_029.
    perform bdc_field using 'KNA1-BBBNR'
    record-BBBNR_030.
    perform bdc_field using 'KNA1-BBSNR'
    record-BBSNR_031.
    perform bdc_field using 'KNA1-BUBKZ'
    record-BUBKZ_032.
    perform bdc_field using 'KNA1-BRSCH'
    record-BRSCH_033.
    perform bdc_field using 'KNA1-LZONE'
    record-LZONE_034.
    perform bdc_dynpro using 'SAPMF02D' '0125'.
    perform bdc_field using 'BDC_CURSOR'
    'KNA1-JMJAH'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNA1-KUKLA'
    record-KUKLA_035.
    perform bdc_field using 'KNA1-BRSCH'
    record-BRSCH_036.
    perform bdc_field using 'KNA1-UMSA1'
    record-UMSA1_037.
    perform bdc_field using 'KNA1-UWAER'
    record-UWAER_038.
    perform bdc_field using 'KNA1-UMJAH'
    record-UMJAH_039.
    perform bdc_field using 'KNA1-JMZAH'
    record-JMZAH_040.
    perform bdc_field using 'KNA1-JMJAH'
    record-JMJAH_041.
    perform bdc_dynpro using 'SAPMF02D' '0130'.
    perform bdc_field using 'BDC_CURSOR'
    'KNBK-BANKN(01)'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_field using 'KNBK-BANKS(01)'
    record-BANKS_01_042.
    perform bdc_field using 'KNBK-BANKL(01)'
    record-BANKL_01_043.
    perform bdc_field using 'KNBK-BANKN(01)'
    record-BANKN_01_044.
    perform bdc_dynpro using 'SAPMF02D' '0130'.
    perform bdc_field using 'BDC_CURSOR'
    'KNBK-BANKS(01)'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_dynpro using 'SAPMF02D' '0340'.
    perform bdc_field using 'BDC_CURSOR'
    'KNVA-KNFAK(01)'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_field using 'KNVA-ABLAD(01)'
    record-ABLAD_01_045.
    perform bdc_field using 'KNVA-KNFAK(01)'
    record-KNFAK_01_046.
    perform bdc_dynpro using 'SAPMF02D' '0340'.
    perform bdc_field using 'BDC_CURSOR'
    'RF02D-KUNNR'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_dynpro using 'SAPMF02D' '0370'.
    perform bdc_field using 'BDC_CURSOR'
    'KNA1-CIVVE'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_field using 'KNA1-CIVVE'
    record-CIVVE_047.
    perform bdc_dynpro using 'SAPMF02D' '0360'.
    perform bdc_field using 'BDC_CURSOR'
    'KNVK-ABTNR(02)'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_field using 'KNVK-ANRED(01)'
    record-ANRED_01_048.
    perform bdc_field using 'KNVK-ANRED(02)'
    record-ANRED_02_049.
    perform bdc_field using 'KNVK-NAMEV(01)'
    record-NAMEV_01_050.
    perform bdc_field using 'KNVK-NAMEV(02)'
    record-NAMEV_02_051.
    perform bdc_field using 'KNVK-NAME1(01)'
    record-NAME1_01_052.
    perform bdc_field using 'KNVK-NAME1(02)'
    record-NAME1_02_053.
    perform bdc_field using 'KNVK-TELF1(01)'
    record-TELF1_01_054.
    perform bdc_field using 'KNVK-TELF1(02)'
    record-TELF1_02_055.
    perform bdc_field using 'KNVK-ABTNR(01)'
    record-ABTNR_01_056.
    perform bdc_field using 'KNVK-ABTNR(02)'
    record-ABTNR_02_057.
    perform bdc_dynpro using 'SAPMF02D' '0360'.
    perform bdc_field using 'BDC_CURSOR'
    'KNVK-NAMEV(01)'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_dynpro using 'SAPMF02D' '0210'.
    perform bdc_field using 'BDC_CURSOR'
    'KNB1-AKONT'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNB1-AKONT'
    record-AKONT_058.
    perform bdc_dynpro using 'SAPMF02D' '0215'.
    perform bdc_field using 'BDC_CURSOR'
    'KNB1-ZTERM'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNB1-ZTERM'
    record-ZTERM_059.
    perform bdc_dynpro using 'SAPMF02D' '0220'.
    perform bdc_field using 'BDC_CURSOR'
    'KNB5-MAHNA'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNB5-MAHNA'
    record-MAHNA_060.
    perform bdc_dynpro using 'SAPMF02D' '0230'.
    perform bdc_field using 'BDC_CURSOR'
    'KNB1-VRSNR'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_dynpro using 'SAPMF02D' '0310'.
    perform bdc_field using 'BDC_CURSOR'
    'KNVV-WAERS'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNVV-BZIRK'
    record-BZIRK_061.
    perform bdc_field using 'KNVV-AWAHR'
    record-AWAHR_062.
    perform bdc_field using 'KNVV-WAERS'
    record-WAERS_063.
    perform bdc_field using 'KNVV-KALKS'
    record-KALKS_064.
    perform bdc_dynpro using 'SAPMF02D' '0315'.
    perform bdc_field using 'BDC_CURSOR'
    'KNVV-LPRIO'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNVV-LPRIO'
    record-LPRIO_065.
    perform bdc_field using 'KNVV-KZAZU'
    record-KZAZU_066.
    perform bdc_field using 'KNVV-ANTLF'
    record-ANTLF_067.
    perform bdc_dynpro using 'SAPMF02D' '0320'.
    perform bdc_field using 'BDC_CURSOR'
    'KNVV-PERFK'.
    perform bdc_field using 'BDC_OKCODE'
    '/00'.
    perform bdc_field using 'KNVV-PERFK'
    record-PERFK_068.
    perform bdc_dynpro using 'SAPMF02D' '1350'.
    perform bdc_field using 'BDC_CURSOR'
    'RF02D-KUNNR'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_dynpro using 'SAPMF02D' '0324'.
    perform bdc_field using 'BDC_CURSOR'
    'KNVP-PARVW(01)'.
    perform bdc_field using 'BDC_OKCODE'
    '=ENTR'.
    perform bdc_transaction using 'XD01'.
    enddo.
    perform close_group.
    perform close_dataset using dataset.
    gIRISH

  • Technical objects into Debit memo request

    Hello all,
    we want to link the Debit memo request to the equipments. We sell configurable materials with serial number (equipment).
    Afterwards, we make debit memo request for some components of this equipment and we want to have the complete history into the equipment.
    I have think that into debit memo request, i can go to item "techincal object" and there, to put the serial number of the original configurable material.
    Which is the theoric explanation of this technical object using?.

    unsolved

  • Getting error message while updating Job attributes using PP03 for IT1641

    Hey Guys,
    We are getting error message while updating Job attributes using transaction PP03 for IT1641 (WC Attributes for JOB): 'Client has status not modifiable'.
    Update to the infotype 1641 should not require open SAP system. Would anyone suggest any SAP note/solution?
    Thanks...
    Edited by: Karan Gheewala on Apr 3, 2008 9:06 PM

    Solved using Note 123383 - WC: Customizing worker's compensation tables
    Thanks,..

  • BDC PROGRAM WITH OUT USING A FM?

    Hi Experts,
    I need wirte a BDC program for tcode PA30.
    i did the screen recording part using tcode-shdb.
    i need to use field i recorded as input fields.
    Now the main part is how to write code? with out using a class/method?
    class/method which i earlier used is class : CL_GUI_FRONTEND_SERVICES.
                                                             method: gui_upload.
    am not using ny flat file/xml file to upload?
    are there any function modules which i can use?
    and how to write code with out using FM?
    if any can solve  my issue would be very helpful...plz provide code...which would be more helpful.
    Thanks in Adv.
    Krrish.

    Hi,
       If you are migrating employee data, I would suggest you to do it through PA40 transaction rather PA30. systematic screen validations it will go through. If you dont want to use any FM and wanted to do using recording pls find the below code which will update the employee data through PA40 with call transaction method.
    SELECTION SCREEN
    SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE   text-001.
    PARAMETERS: p_plan TYPE ibipparms-path OBLIGATORY.
    SELECTION-SCREEN: END OF BLOCK b1.
    TYPES: BEGIN OF ty_error,
             pernr TYPE persno,       " Personnel number
             rel_obj_id(12),         " Related Object ID
             msg(200) TYPE c,       " To store Message
           END   OF ty_error.
    DATA: i_tplan TYPE STANDARD TABLE OF alsmex_tabline WITH HEADER LINE,
          i_intern TYPE STANDARD TABLE OF alsmex_tabline WITH HEADER LINE,
          i_error    TYPE ty_error OCCURS 0 WITH HEADER LINE.
    DATA: BEGIN OF w_pa000,
           pernr TYPE persno,
           begda TYPE begda,
          END OF w_pa000.
    DATA: wa_plan LIKE i_plan,
          wa_messtab    TYPE bdcmsgcoll, " Messages
          wa_error      TYPE ty_error.  " Errors
    DATA: it_pa000 LIKE STANDARD TABLE OF w_pa000 WITH HEADER LINE,
          it_pa002 LIKE STANDARD TABLE OF w_pa000 WITH HEADER LINE,
          it_pa001 LIKE STANDARD TABLE OF w_pa000 WITH HEADER LINE.
    DATA:  g_mode LIKE ctu_params-dismode VALUE 'N',
           g_file TYPE ibipparms-path.
    ALV field catalog
    DATA : i_fieldcat TYPE slis_t_fieldcat_alv.
          Batchinputdata of single transaction
    DATA:   i_bdcdata LIKE bdcdata    OCCURS 0 WITH HEADER LINE.
          messages of call transaction
    DATA:   i_messtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.
          error session opened (' ' or 'X')
    Table to hold the return messages
    DATA: BEGIN OF i_errmsg OCCURS 10.
            INCLUDE STRUCTURE bapiret2.
    DATA: END OF i_errmsg.
    ALV List header table
    DATA : i_header1 TYPE slis_t_listheader.
    ALV List header table
    DATA : i_header TYPE slis_listheader.
    ***ALV Events
    DATA: is_layout TYPE slis_layout_alv.
    DATA : it_event TYPE slis_alv_event.
    DATA : it_event1 TYPE slis_t_event.
    To get the F4 help for file
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_plan.
      PERFORM get_filename.
    START  OF SELECTION
    START-OF-SELECTION.
    Initialise data
      PERFORM initialise_events.
    Retrieve data from Excel file
      PERFORM retreive_data.
    Populate final data into an internal table
      PERFORM populate_data.
    Process the excel file data to create a record for IT0007
      PERFORM process_data.
    END  OF SELECTION
    END-OF-SELECTION.
      PERFORM final_output.
    *&      Form  GET_FILENAME
    FORM get_filename .
    *Function module used for F4 help
      CALL FUNCTION 'F4_FILENAME'
        EXPORTING
          program_name  = syst-cprog
          dynpro_number = syst-dynnr
        IMPORTING
          file_name     = p_plan.
    ENDFORM.                    " GET_FILENAME
    *&      Form  INITIALISE_EVENTS
    FORM initialise_events .
      i_header-typ = 'H'.
    i_header-key = 'R'.
      i_header-info = 'BDC Interface for PA Infotypes 0000,0001,0002'.
      APPEND i_header TO i_header1.
      CLEAR i_header.
      i_header-typ = 'S'.
      i_header-info = 'Hiring, Org.Assignment, Personnel Data'.
      APPEND i_header TO i_header1.
      CLEAR i_header.
    ***Events and form name
      it_event-name = 'TOP_OF_PAGE'.
      it_event-form = 'TOP_OF_PAGE'.
      APPEND it_event TO it_event1.
    ENDFORM.                    " INITIALISE_EVENTS
    *&      Form  RETREIVE_DATA
    FORM retreive_data .
      PERFORM upload_data.
    ENDFORM.                    " RETREIVE_DATA
    *&      Form  UPLOAD_DATA
    FORM upload_data .
    FM to upload data from excel sheet to internal table
      CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
        EXPORTING
          filename                = p_plan
          i_begin_col             = g_colbeg
          i_begin_row             = g_rowbeg
          i_end_col               = g_colend
          i_end_row               = g_rowend
        TABLES
          intern                  = i_tplan
        EXCEPTIONS
          inconsistent_parameters = 1
          upload_ole              = 2
          OTHERS                  = 3.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM.                    " UPLOAD_DATA
    *&      Form  POPULATE_DATA
    FORM populate_data .
    processing the internal table generated from the function module
    Passing data from Excel file to internal table
      CLEAR: g_cnt_processed,
             g_cnt_err_processed,
             i_intern,
             i_plan.
      LOOP AT i_tplan.
        AT NEW row.
          CLEAR i_plan.
        ENDAT.
        CASE i_tplan-col.
    Begin Date
          WHEN '0001'.
            i_plan-pernr = i_tplan-value.
    End Date
          WHEN '0002'.
            i_plan-begda = i_tplan-value.
          WHEN '0003'.
            i_plan-massg = i_tplan-value.
    Sign
          WHEN '0004'.
            i_plan-plans = i_tplan-value.
          WHEN '0005'.
            i_plan-werks = i_tplan-value.
          WHEN '0006'.
            i_plan-persg = i_tplan-value.
          WHEN '0007'.
            i_plan-persk = i_tplan-value.
          WHEN '0008'.
            i_plan-anrex = i_tplan-value.
          WHEN '0009'.
            i_plan-nachn = i_tplan-value.
          WHEN '0010'.
            i_plan-vorna = i_tplan-value.
          WHEN '0011'.
            i_plan-gesch = i_tplan-value.
          WHEN '0012'.
            i_plan-gbdat = i_tplan-value.
          WHEN '0013'.
            i_plan-fatxt = i_tplan-value.
          WHEN '0014'.
            i_plan-famdt = i_tplan-value.
          WHEN '0015'.
            i_plan-gblnd = i_tplan-value.
          WHEN '0016'.
            i_plan-anzkd = i_tplan-value.
          WHEN '0017'.
            i_plan-natio = i_tplan-value.
          WHEN '0018'.
            i_plan-btrtl = i_tplan-value.
          WHEN '0019'.
            i_plan-gsber = i_tplan-value.
          WHEN '0020'.
            i_plan-abkrs = i_tplan-value.
        ENDCASE.
    Appending the internal table tb_data, tb_chng
        AT END OF row.
          APPEND i_plan.
          IF i_plan IS INITIAL.
            g_cnt_err_processed = g_cnt_err_processed + 1.
          ENDIF.
        ENDAT.
      ENDLOOP.
    To get the total number of records processed
      DESCRIBE TABLE i_plan LINES g_lines.
      g_cnt_processed = g_cnt_err_processed + g_lines.
      CLEAR g_lines.
    ENDFORM.                    " POPULATE_DATA
    *&      Form  PROCESS_DATA
    FORM process_data .
      CLEAR wa_error.
      REFRESH i_bdcdata.
    Check if the employee numbers from the template has already been hired
      SELECT pernr
             begda
             FROM pa0000
             INTO TABLE it_pa000
             FOR ALL ENTRIES IN i_plan
             WHERE pernr = i_plan-pernr
               AND massn = 'ZA'.
      IF sy-subrc = 0.
        SORT it_pa000 BY pernr.
    Check if employee has a corresponding infotype 0001 record
        SELECT pernr
               begda
               FROM pa0001
               INTO TABLE it_pa001
               FOR ALL ENTRIES IN it_pa000
               WHERE pernr = it_pa000-pernr AND
                     begda = it_pa000-begda.
        IF sy-subrc = 0.
          SORT it_pa001 BY pernr.
    Check if employee has a corresponding infotype 0002 record
          SELECT pernr
               begda
               FROM pa0001
               INTO TABLE it_pa002
               FOR ALL ENTRIES IN it_pa001
               WHERE pernr = it_pa001-pernr AND
                     begda = it_pa001-begda.
          IF sy-subrc = 0.
            SORT it_pa002 BY pernr.
          ENDIF.
        ENDIF.
      ENDIF.
      LOOP AT i_plan.
        REFRESH i_bdcdata.
    ***your recording to be pasted here***
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                      'P0006-BEGDA'.
        PERFORM call_transaction.
        APPEND wa_error TO i_error.
        REFRESH: i_bdcdata, i_messtab.
        CLEAR: wa_error, i_error.
      ENDLOOP.
    ENDFORM.                    " PROCESS_DATA
    *&      Form  BDC_DYNPRO
    FORM bdc_dynpro USING program dynpro.
      CLEAR i_bdcdata.
      i_bdcdata-program  = program.
      i_bdcdata-dynpro   = dynpro.
      i_bdcdata-dynbegin = 'X'.
      APPEND i_bdcdata.
    ENDFORM.                    "BDC_DYNPRO
    *&      Form  BDC_FIELD
    FORM bdc_field USING fnam fval.
    IF fval <> nodata.
      CLEAR i_bdcdata.
      i_bdcdata-fnam = fnam.
      i_bdcdata-fval = fval.
      APPEND i_bdcdata.
    ENDIF.
    ENDFORM.                    "bdc_field
    *&      Form  ERROR_RECORD_DATA
    FORM error_record_data .
      CLEAR: g_lines,
           wa_messtab,
           g_msg.
      DESCRIBE TABLE i_messtab LINES g_lines.
      READ TABLE i_messtab INTO wa_messtab INDEX g_lines.
      IF sy-subrc = 0.
        CLEAR g_msg.
        CALL FUNCTION 'FORMAT_MESSAGE'
          EXPORTING
            id        = wa_messtab-msgid
            lang      = sy-langu
            no        = wa_messtab-msgnr
            v1        = wa_messtab-msgv1
            v2        = wa_messtab-msgv2
            v3        = wa_messtab-msgv3
            v4        = wa_messtab-msgv4
          IMPORTING
            msg       = g_msg
          EXCEPTIONS
            not_found = 1
            OTHERS    = 2.
       IF wa_messtab-msgtyp = 'E'.
        IF wa_messtab-msgtyp = 'S' AND wa_messtab-msgnr = '102' AND wa_messtab-msgid = 'PG'.
          wa_error-pernr = i_plan-pernr.
          wa_error-rel_obj_id = 'S'.
          wa_error-msg = 'Personnel Number Created Successfully'.
        ELSE.
          wa_error-pernr = i_plan-pernr.
          wa_error-rel_obj_id = 'E'.
          wa_error-msg = g_msg.
        ENDIF.
       APPEND wa_error TO i_error.
       CLEAR i_error.
      ENDIF.
    ENDFORM.                    " ERROR_RECORD_DATA
    *&      Form  FINAL_OUTPUT
    FORM final_output .
      CLEAR g_lines.
      SORT i_error.
    *************added*********************************************
      loop at i_error into wa_error.
        if wa_error-MSG eq 'No batch input data for screen MP000600 2000'.
          wa_error-rel_obj_id = 'S'.
          wa_error-MSG = 'Record Created Successfully'.
          modify i_error from wa_error.
        endif.
      endloop.
      loop at i_error into wa_error.
        if  wa_error-rel_obj_id = 'S'.
          g_cnt_success = g_cnt_success + 1.       " Append success count
        elseif  wa_error-rel_obj_id = 'E'.
          g_cnt_failure = g_cnt_failure + 1.       " Append error count
        endif.
      endloop.
    ***Field catalog
      PERFORM field_cat.
    ***Assigning Program name
      g_repid = sy-repid.
      SORT i_error.
    ***Display Output
    IF NOT it_final[] IS INITIAL.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
           EXPORTING
                i_callback_program       = g_repid
               i_callback_user_command  = 'USER_COMMAND'
               i_callback_pf_status_set = 'PF_STATUS_SET'
                i_save                   = 'A'
                it_events                = it_event1
                is_layout                = is_layout
                it_fieldcat              = i_fieldcat[]
           TABLES
                t_outtab                 = i_error[].
    ELSE.
       MESSAGE i015(zv_msg) WITH 'No Data Found for this selection'.
       LEAVE LIST-PROCESSING.
    ENDIF.
    ENDFORM.                    " FINAL_OUTPUT
    *&      Form  top_of_page
          text
    FORM top_of_page.
    ***FM for Displaying Heading
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = i_header1[]
          i_logo             = 'ENJOYSAP_LOGO'.
    ENDFORM.                    "top_of_page
    *&      Form  FIELD_CAT
    FORM field_cat .
    ENDFORM.                    " FIELD_CAT
    *&      Form  CALL_TRANSACTION
    FORM call_transaction .
      CALL TRANSACTION 'PA40' USING i_bdcdata
                                   MODE g_mode
                                   UPDATE 'S'
                                   MESSAGES INTO i_messtab.
    If call transaction successful
      IF sy-subrc = 0.
       g_cnt_success = g_cnt_success + 1.       " Append success count  "changed
        PERFORM error_record_data.  " Populate all data
    If call transaction not successful
      ELSE.
        PERFORM error_record_data. " Populate all table
       g_cnt_failure = g_cnt_failure + 1.       " Append error count  "changed
      ENDIF.
    ENDFORM.                    " CALL_TRANSACTION

  • Program To Update BDC Session Status in SM35

    Existing Process : Currently we create orders using a function module which internally uses BDC Session method for transaction VA01. If the session ran successfully then we check the status and use SAVE_TEXT to upload the long text for the order. But in some cases the order fails. Then the session will be errored out in SM35 and user runs the session manually and fixes the problem and post order. So the text cannot be uploaded now as the user ran the session manually. So I wrote a Z program to run the session using program RSBDCCTU which the runs the session in forground and get the text from memory which I exported to memory while initial transaction and upload it using SAVE_TEXT after the session ran successfully. This program works fine.
    Problem : After running my Z program the order is posted and text is uploaded but the session is still in error status in SM35. The standard program RSBDCCTU just runs the session in foreground but does not update the status.
    Is there any other way we can do this or any other standard programs available to update the status of the session.
    Any help will be appreciated.

    How are you importing text in the z program, which is exported in the function module? they are totally unrelated internal sessions.
    You can as well import text and use SAVE_TEXT using user exit USEREXIT_SAVE_DOCUMENT_PREPARE in include MV45AFZZ after executing the error session in SM35, you don't need a Z program.
    Use condition SY-BINPT = 'X' and  T180-TRTYP = 'H' in the user exit to process SAVE_TEXT.
    Regards
    Sridhar

  • Problem in BDC program when executed using scheduled job

    I have developed a BDC program for J1I5 T-code whcih updates RG1 Register. This is working as expected when run in foreground as well as in background. But it is not giving expected results when scheduled in Job. It is not giving any error message, job is executed without error.
    What can be the problem? pls. help.
    Thanks!
    Prakash

    Hi,
    Thanks for reply.
    I have checked log using SM37, it is not showing any error.
    Log details are as follows...
    Date       Time     Message text                                                                             Message class Message no. Messag
    08.05.2010 11:47:10 Job started                                                                                00           516          S
    08.05.2010 11:47:10 Step 001 started (program ZSDB_J1I5_REG_UPDATE_BDC, variant 1101_1_RMA, user ID STK)      00           550          S
    08.05.2010 11:47:20 Job finished                                                                                00           517          S

  • What is the use of CTU_PRAMS in bdc programming?

    what is the use of CTU_PRAMS in bdc programming?
    can any explain wit a sample code.

    Hi,
    Hi,
    If u write table control bdc program in 14'' monitor screen, then if the same program u run at different monitor size, then the screen resolution problem comes in to the picture,
    like, u get 5 records in table control in one screen, and some other records in other screen, to avoid this screen resolution problem we use CTU-PARAMS Structure.
    In ur program u have to set
    defsize type ctu_params-defsize value 'X',
    Then u will be free of screen resolution problem.
    Fill the str CTU_PARAMS-defsize = 'X' and pass in CTU stmnt as
    call transaction 'XXX' options using t_bdcdata ctu_params.
    Analysing :
    1. If nothing works, then we have to
    some ifs & buts.
    2. There shall be normally
    2-4 different kinds of resolution
    on various users comptuers.
    3. Based on this,
    we have to know beforehand,
    what will be the number of rows
    in the table control.
    4. The user can be given
    a selection/paraemter
    for resolution
    eg. 800x600
    1024x100
    axb
    etc.
    5. Based on this, we will hardcode
    in the program (based upon our knowledge/recording
    which we have seen and done)
    we will hardcode
    the number of lines
    in the VARIBLE.
    6. Then we can simply use this variable
    for our LOOP and logic purpose.
    7. It will be the responsibiltiy of the
    use to CHOOSE THE CORRECT resolution,
    on the selection-screen.
    For screen resolution use ctu_params, with default size
    Data : f_option type ctu_params,
    f_option-updmode = 'S'.
    f_option-defsize = 'X'.
    f_option-dismode = 'N'.
    call transaction 'VA01' using bdcdata options from f_option messages into bdcerror.
    CALL TRANSACTION tcode... OPTIONS FROM opt
    ... OPTIONS FROM opt
    Effect
    Allows you to control processing using the values of the componetns of the structure opt, which must have the ABAP Dictionary type CTU_PARAMS. The components have the following meanings:
    DISMODE
    Display mode (like the MODE addition)
    UPDMODE
    Update mode (like the UPDATE addition)
    CATTMODE
    CATT mode (controls a CATT)
    CATT mode can have the following values:
    ' ' No CATT active
    'N' CATT without single-screen control
    'A' CATT with single-screen control
    DEFSIZE
    Use default window size
    RACOMMIT
    Do not end transaction at COMMIT WORK
    NOBINPT
    No batch input mode (that is, SY-BINPT = SPACE)
    NOBIEND
    No batch input mode after the end of BDC data.
    The components DEFSIZE , RACOMMIT, NOBINPT, and NOBIEND always take the following values:
    'X' Yes
    ' ' No
    If you do not use the OPTIONS FROM addition, the following control parameter settings apply:
    DISMODE
    From addition MODE
    UPDMODE
    From addition UPDATE
    CATTMODE
    No CATT active
    DEFSIZE
    Do not use default window size
    RACOMMIT
    Successful end on COMMIT WORK
    NOBINPT
    Batch input mode active ( SY-BINPT = X
    NOBIEND
    Batch input mode remains active after the BDC data

  • XK99 lsmw or BDC program to copy vendors doesn´t update db records

    Hello people
    I am facing a requirement to copy a list of existing vendors into about 10 new company codes. Vendors all exist in the "main" company code, so I figured it would be a good idea to use the XK99 transaction as a basis for a mass upload via lsmw or bdc program.
    So
    So I performed a recording and applied my logic in lsmw, ran the batch input folder in SM35, seemingly without errors. But to my srprise I saw that no database records had been created in the LFB1 table.
    So I tried to incorporate the recording into a bdc program that uses call transaction, but the same thing happens. The batch input seems to be running OK, but no changes are actually made to db....
    So I was wondering what could I be doing wrong? I notice one strange thing though. After carrying out the selections in XK99 manually, one needs to mark columns to be transfered and then push the ´Perform mass update´ button and THEN click save. However, when in recording mode, one may click save directly, and no error is given and the recording ends.
    However, the select columns operation, if I try to do it during recording, doesnt seem to get captured....
    Any ideas of what I might be doing wrong here?
    Regards, Jorgen
    T    XK99                                 
    SAPMMSDL    0200    X                                                                                                                                                                                                                                                                               
                                                              BDC_OKCODE    =NEXT
                                                             BDC_SUBSCR    SAPMMSDL                                1000SUBTAB
                                                             BDC_CURSOR    MASSTABS-TABTXT(02)
                                                              MASSTABS-MARK(02)    X
    SAPLMASS_SEL_DIALOG    0100    X                                                                                                                                                                                                                                                                               
                                                              BDC_OKCODE    =NEW
                                                             BDC_SUBSCR    SAPLMASS_SEL_DIALOG                     0200SUB_ALL
                                                             BDC_SUBSCR    SAPLMASSFREESELECTIONS                  1000SUB_SEL
                                                              BDC_CURSOR    MASSFREESEL-LOW(01)
                                                             MASSFREESEL-LOW(01)    300011
    SAPLMASS_SEL_DIALOG    0100    X                                                                                                                                                                                                                                                                               
                                                              BDC_OKCODE    /00
                                                             BDC_SUBSCR    SAPLMASS_SEL_DIALOG                     0400SUB_ALL
                                                             BDC_SUBSCR    SAPLMASSFREESELECTIONS                  1000SUB_SEL
                                                              MASSFREESEL-LOW(01)    300011
                                                             MASSFREESEL-LOW(02)    7010
                                                             BDC_SUBSCR    SAPLMASSFREESELECTIONS                  2000SUB_PARA
                                                              BDC_CURSOR    MASSFREESEL_P-LOW(02)
                                                             MASSFREESEL_P-LOW(01)    300011
                                                             MASSFREESEL_P-LOW(02)    7000
    SAPLMASS_SEL_DIALOG    0100    X                                                                                                                                                                                                                                                                               
                                                              BDC_OKCODE    =CRET
                                                             BDC_SUBSCR    SAPLMASS_SEL_DIALOG                     0400SUB_ALL
                                                             BDC_SUBSCR    SAPLMASSFREESELECTIONS                  1000SUB_SEL
                                                              BDC_CURSOR    MASSFREESEL-LOW(01)
                                                             BDC_SUBSCR    SAPLMASSFREESELECTIONS                  2000SUB_PARA
    SAPLMASSINTERFACE    0200    X                                                                                                                                                                                                                                                                               
                                                              BDC_OKCODE    =SAVE
                                                             BDC_SUBSCR    SAPLMASSINTERFACE                       0202FIELDS
                                                             BDC_SUBSCR    SAPLMASSINTERFACE                       0210SUB_HEAD
                                                              BDC_CURSOR    HEADER_STRUC-FIELD2-VALUE-LEFT(01)
                                                             BDC_SUBSCR    SAPLMASSINTERFACE                       0212SUB_DATA

    Hello,
    first of all Transaction XK99 is more helpful in case of vendor change, not really creation.
    It was also intended to cover mass maintenance so it is used instead of LSMW or any other BDC custom program.
    I would say that you can go either with LSMW or CALL TRANSACTION custom program, but you should base your recording on XK/FK01 transactions.
    Regards,
    Grzegorz

Maybe you are looking for

  • How do I get the wireless upgrade on my Satellite 2450-201?

    I'm a total newbie to the wireless world. Currently have a main PC that a broadband connection. I have my Toshiba laptop for my uni work and need constant internet access which proves difficult with 5 in the family using the broadband connection on t

  • Main HDD name missing/changed.

    Installed Leopard last week and things have been good until last night. Yesterday I noticed that the Icon for the HDD on my desktop lost its name - Was Macintosh Hard Disk(or something like that) now it shows the name as (<) (>)? - Without the ( ) -

  • Getting SSMS error while open it

    Hi, I am getting below error on SQL Server log file. Its a continuos error 2014-04-25 09:24:20.22 Server      Process 0:0:0 (0x3b00) Worker 0x00000000106361A0 appears to be non-yielding on Scheduler 4. Thread creation time: 13042907079739. Approx Thr

  • How to have iMovie events in one single shared folder ?

    Hi, I have an iMac configured with multi-user sessions (one per family member). I start with iMovie, and it seems that when working with events and projects, all data is located on personal user root folder. My requirements are 1) to avoid duplicatio

  • "Edit in Photoshop Elements" missing from windows context menu.

    How do I get the "Edit in Photoshop Elements" back in my context menu? I think what happened was that after installing PSE 13 I uninstalled PSE 12 and that may have removed the context menu item. Just guessing. Is there a way to add it back without r