LFA1-MCOD1 not updating

Hi ,
When creating a vendor, the name1 and city has to be copied to LFA1-MCOD1 , LFA1-MCOD3 respectively.  For some vendors its not updating in the table LFA1.  Please provide some information on this problem.
Regards,
Rosy.

Hello,
For anyoone who may be interested, SAP has released a Z report to correct discrepancies between MCOD1 and NAME1 fields.
Please check the note 544868.
The updation of field MCOD* has been brought by note 1009172 and you can even check the form MATCHCODEFEFLDER_FUELLEN into MF02KFM0 used by program SAPFM02K.
Regards,
Kev

Similar Messages

  • LFA1 - MCOD Fields not updated

    When a vendor is created fields MCOD1 , MCOD3 has to be popuated automatically. This is not happening for some vendors. Please inform if you know the reason for this.

    Thanks for Update . In my scenarion MCOD3 was not updated though city was filled in FK01.
    Similarly for some vendors MCOD1 is not updated though the name1 field has value.
    Please help.

  • Data Not updated in BDC

    hi alll
    1.   i have written below coding for vendor master update. i have two records in text file, in that first record not updated. while updating its shows error. but second record updated. how can i solve. plse help me
    2.  I want to show the error message or i want to print how can i do it
    REPORT  ZVENTESTBDC.
    data : begin of it_xk01 occurs 0,
             LIFNR(10) type c,
             BUKRS(4) type c,
             EKORG(4) type c,
             KTOKK(4) type c,
             NAME1(30) type c,
             SORT1(10) type c,
             LAND1(3) type c,
             AKONT(10) type c,
             FDGRV(10) type c,
             WAERS(3) type c,
          end of it_xk01.
    DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
           IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    CALL FUNCTION 'GUI_UPLOAD'
      EXPORTING
       FILENAME                      = 'C:\Documents and Settings\entegall\Desktop\vendor.txt'
       FILETYPE                      = 'ASC'
       HAS_FIELD_SEPARATOR           = 'X'
      HEADER_LENGTH                 = 0
      READ_BY_LINE                  = 'X'
      DAT_MODE                      = ' '
      CODEPAGE                      = ' '
      IGNORE_CERR                   = ABAP_TRUE
      REPLACEMENT                   = '#'
      CHECK_BOM                     = ' '
      VIRUS_SCAN_PROFILE            =
      NO_AUTH_CHECK                 = ' '
    IMPORTING
      FILELENGTH                    =
      HEADER                        =
      TABLES
        DATA_TAB                      = it_xk01.
    loop at it_xk01.
       refresh it_bdcdata.
      perform open_group.
    perform bdc_dynpro      using 'SAPMF02K' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-REF_LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF02K-LIFNR'
                                   it_xk01-lifnr.
    perform bdc_field       using 'RF02K-BUKRS'
                                  IT_XK01-BUKRS.
    perform bdc_field       using 'RF02K-EKORG'
                                  IT_XK01-EKORG.
    perform bdc_field       using 'RF02K-KTOKK'
                                  IT_XK01-KTOKK.
    perform bdc_dynpro      using 'SAPMF02K' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-LAND1'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFA1-NAME1'
                                  IT_XK01-NAME1.
    perform bdc_field       using 'LFA1-SORTL'
                                   IT_XK01-SORT1.
    perform bdc_field       using 'LFA1-NAME2'
    perform bdc_field       using 'LFA1-LAND1'
                                  IT_XK01-LAND1.
    perform bdc_dynpro      using 'SAPMF02K' '0120'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-KUNNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-BANKS(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPMF02K' '0210'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-FDGRV'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFB1-AKONT'
                                  IT_XK01-AKONT.
    perform bdc_field       using 'LFB1-FDGRV'
                                  IT_XK01-FDGRV.
    perform bdc_dynpro      using 'SAPMF02K' '0215'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-ZTERM'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0220'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB5-MAHNA'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0310'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFM1-WAERS'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFM1-WAERS'
                                  IT_XK01-WAERS.
    perform bdc_dynpro      using 'SAPMF02K' '0320'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=UPDA'.
    *perform bdc_transaction using 'XK01' using IT_BDCDATA mode 'A' UPDATE 'S'
    CALL TRANSACTION 'XK01' USING IT_BDCDATA
                            MODE  'A'
                           UPDATE 'S' MESSAGES INTO IT_BDCMSGCOLL.
    *perform close_group.
    endloop.
    FORM BDC_DYNPRO USING PROG SCR.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-PROGRAM = PROG.
      IT_BDCDATA-DYNPRO  = SCR.
      IT_BDCDATA-DYNBEGIN = 'X'.
      APPEND IT_BDCDATA.
    ENDFORM.
    FORM BDC_FIELD USING FNAM FVAL.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-FNAM = FNAM.
      IT_BDCDATA-FVAL  = FVAL.
      APPEND IT_BDCDATA.
    ENDFORM.

    go through this porgarm u will get the clear picture about down loading the error msg.
    PROGRAM ID     : ZSD_CONDREC_DISCOUNT_ZSWD
    DESCRIPTION    : BDC PROGRAM TO UPLOAD CONDITION RECORDS FOR Discount
    TRANSACTION    : VK11
    CONDITION TYPE : ZSWD(Key combination 3)
    VERSION        : 1.0
    Text Elements
    001  :  Select Options
    002  :  C:\SD\Error\Discount-ZSWD
    003  :  Error Download Path
    004  :  C:\SD\Error\Discount-ZSWD - DDMMYYYY HH:MM:SS.txt
    REPORT ZSD_CONDREC_DISCOUNT_ZSWD
           MESSAGE-ID 00.
    *include bdcrecx1.
    TABLES : t100.
           Internal table declaration                                    *
    DATA : BEGIN OF it_price OCCURS 0,
                  index(4),      "Index
                  kschl(4),      "Condition type
                  vkorg(4),      "Sales organization
                  vtweg(2),      "distribution channel
                  spart(2),      "Division
                  matnr(18),     "Material no
                  kbetr(11),     "Rate
                  konwa(5),      "Rate unit (currency or percentage)
                  kmein(3),      "Condition unit
                  krech(1),      "Calculation type for condition
                  datab(10),     "Validity start date
                  datbi(10),     "Validity end date
                  er_message(100),
           END OF it_price.
    Internal table to get the error data                                 *
    DATA : it_error LIKE it_price OCCURS 0 WITH HEADER LINE.
    DATA : bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.
    DATA : i_msgtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.
    Internal table to find the error from the legacy data                *
    DATA : BEGIN OF it_erfind OCCURS 0,
                  index(4),      "Index
                  er_message(100),  "For Error Message
           END OF it_erfind.
    Variables declaration                                                *
    DATA : g_message(200),
           time(10),
           date(10)  ,
           v_error_filename LIKE rlgrap-filename.
    date      = sy-datum.
    time      = sy-uzeit.
           Initialization
    INITIALIZATION.
    Generating Error file name with date and time.
      PERFORM make_file_name.
           Selection Screen                                              *
      SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
      PARAMETER: p_file LIKE ibipparms-path OBLIGATORY.
      SELECTION-SCREEN SKIP.
      SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 1(30)  text-003.
      SELECTION-SCREEN COMMENT 33(79) text-004.
      SELECTION-SCREEN END OF LINE.
      SELECTION-SCREEN:END OF BLOCK b1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file .
      PERFORM get_filename.
    Start of selection
    START-OF-SELECTION.
      PERFORM upload_data.
      PERFORM fill_data.
    END-OF-SELECTION.
    *&      Form  fill_data
          text
    FORM fill_data.
      LOOP AT it_price.
    *Start of Screen 1
        PERFORM bdc_dynpro      USING 'SAPMV13A' '0100'.
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                      'RV13A-KSCHL'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=ANTA'.
        PERFORM bdc_field       USING 'RV13A-KSCHL'
                                      it_price-kschl.
    Key Combination: Sales org / Dist. channel / Division / Material
        PERFORM bdc_dynpro      USING 'SAPLV14A' '0100'.
        PERFORM bdc_field       USING 'BDC_CURSOR'
                                      'RV130-SELKZ(03)'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=WEIT'.
        PERFORM bdc_field       USING 'RV130-SELKZ(03)'
                                      'X'.
    *Start of Screen 2
        PERFORM bdc_dynpro      USING 'SAPMV13A' '1800'.
        PERFORM bdc_field       USING 'KOMG-VKORG'
                                      it_price-vkorg.
        PERFORM bdc_field       USING 'KOMG-VTWEG'
                                      it_price-vtweg.
        PERFORM bdc_field       USING 'KOMG-SPART'
                                      it_price-spart.
        PERFORM bdc_field       USING 'KOMG-MATNR(01)'
                                      it_price-matnr.
        PERFORM bdc_field       USING 'KONP-KBETR(01)'
                                      it_price-kbetr.
        PERFORM bdc_field       USING 'KONP-KONWA(01)'
                                      it_price-konwa.
        PERFORM bdc_field       USING 'KONP-KMEIN(01)'
                                      it_price-kmein.
        PERFORM bdc_field       USING 'RV13A-KRECH(01)'
                                      it_price-krech.
        PERFORM bdc_field       USING 'RV13A-DATAB(01)'
                                      it_price-datab.
        PERFORM bdc_field       USING 'RV13A-DATBI(01)'
                                      it_price-datbi.
               perform bdc_dynpro      using 'SAPMV13A' '1821'.
               perform bdc_field       using 'BDC_CURSOR'
                                             'KOMG-MATNR'.
        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=SICH'.                    "Save the entry
        PERFORM bdc_transaction TABLES i_msgtab USING 'VK11' 'N' 'L'.
    *To fetch the error message from the standard error table
        SELECT  SINGLE * FROM t100 WHERE sprsl = 'E'
                                   AND arbgb = sy-msgid
                                   AND msgnr = sy-msgno.
        g_message = t100-text.
    *subroutine to change the error message for every document number
        PERFORM replace_parameters  USING sy-msgv1
                                          sy-msgv2
                                          sy-msgv3
                                          sy-msgv4
                                CHANGING  g_message.
        WRITE: / 'System variables:'.
        SKIP.
        WRITE: / '        Sy-msgty:', sy-msgty.
        WRITE: / '        Sy-msgid:', sy-msgid.
        WRITE: / '        Sy-msgno:', sy-msgno.
        WRITE: / '        Sy-msgv1:', sy-msgv1.
        WRITE: / '        Sy-msgv2:', sy-msgv2.
        WRITE: / '        Sy-msgv3:', sy-msgv3.
        WRITE: / '        Sy-msgv4:', sy-msgv4.
        SKIP.
        WRITE: / 'Message:'.
        SKIP.
        WRITE: / sy-msgty, g_message.
    *To find out the error in the legacy data if there is anything and pass
    *the document no with error message to the seperate internal table
    *called it_erfind
        IF sy-msgty = 'E'.
          it_erfind-index = it_price-index.
          it_erfind-er_message = g_message.
          APPEND it_erfind.
        ENDIF.
    *Finally we are segregating the error and downloading the error data.
        AT LAST.
    *To segregate the error
          PERFORM segregate_error.
    *To download the error from it_error internal table with err mesg
          PERFORM error_download.
          PERFORM display_message.
        ENDAT.
      ENDLOOP.
               perform close_group.
      CLEAR it_price.
    ENDFORM.                    "fill_data
    *Subrotine to replace the parameters
    FORM replace_parameters USING p_par_1 p_par_2 p_par_3
                                  p_par_4 CHANGING p_message.
    erst mal pruefen, ob numerierte Parameter verwendet wurden
      DO.
        REPLACE '&1' WITH p_par_1 INTO p_message.
        IF sy-subrc <> 0.
          EXIT.
        ENDIF.
      ENDDO.
      DO.
        REPLACE '&2' WITH p_par_2 INTO p_message.
        IF sy-subrc <> 0.
          EXIT.
        ENDIF.
      ENDDO.
      DO.
        REPLACE '&3' WITH p_par_3 INTO p_message.
        IF sy-subrc <> 0.
          EXIT.
        ENDIF.
      ENDDO.
      DO.
        REPLACE '&4' WITH p_par_4 INTO p_message.
        IF sy-subrc <> 0.
          EXIT.
        ENDIF.
      ENDDO.
    falls keine numerierten Parameter vorh., ersetzen wie gehabt
      REPLACE '&' WITH p_par_1 INTO p_message.
      CONDENSE p_message.
      IF sy-subrc EQ 0.
        REPLACE '&' WITH p_par_2 INTO p_message.
        CONDENSE p_message.
        IF sy-subrc EQ 0.
          REPLACE '&' WITH p_par_3 INTO p_message.
          CONDENSE p_message.
          IF sy-subrc EQ 0.
            REPLACE '&' WITH p_par_4 INTO p_message.
            CONDENSE p_message.
          ENDIF.
        ENDIF.
      ENDIF.
    ENDFORM.                    "REPLACE_PARAMETERS
    *Subroutine to segregate the error data from the legacy data
    FORM segregate_error.
      LOOP AT it_erfind.
        LOOP AT it_price WHERE index = it_erfind-index.
          MOVE-CORRESPONDING it_price TO it_error.
          it_error-er_message = it_erfind-er_message.
          APPEND it_error.
        ENDLOOP.
      ENDLOOP.
    ENDFORM.                    "segregate_error
    *Subroutine to download the error data from the it_error table.
    FORM error_download.
      IF it_error[] IS NOT INITIAL.
        CALL FUNCTION 'WS_DOWNLOAD'
          EXPORTING
            codepage = 'IBM'
            filename = v_error_filename
            filetype = 'DAT'
          TABLES
            data_tab = it_error.
      ENDIF.
    ENDFORM.                    "error_download
           Start new screen                                              *
    FORM bdc_dynpro USING program dynpro.
      CLEAR bdcdata.
      bdcdata-program  = program.
      bdcdata-dynpro   = dynpro.
      bdcdata-dynbegin = 'X'.
      APPEND bdcdata.
    ENDFORM.                    "BDC_DYNPRO
           Insert field                                                  *
    FORM bdc_field USING fnam fval.
             IF FVAL <> NODATA.
      CLEAR bdcdata.
      bdcdata-fnam = fnam.
      bdcdata-fval = fval.
      APPEND bdcdata.
             ENDIF.
    ENDFORM.                    "BDC_FIELD
    *&      Form  bdc_transaction
          text
         -->MESSTAB    text
         -->TCODE      text
         -->CTUMODE    text
         -->CUPDATE    text
    FORM bdc_transaction TABLES messtab USING  tcode ctumode cupdate .
      CALL TRANSACTION tcode USING bdcdata
                            MODE   ctumode
                            UPDATE cupdate
                            MESSAGES INTO messtab.
      REFRESH bdcdata.
      CLEAR   bdcdata.
    ENDFORM.                    " bdc_transaction
    Uploading data file to internal table.                           *
    FORM upload_data.
      CALL FUNCTION 'WS_UPLOAD'
          EXPORTING
             filename                      = p_file
                        CODEPAGE                      = 'IBM '
             filetype                      = 'DAT'
          TABLES
              data_tab                      = it_price
          EXCEPTIONS
             conversion_error              = 1
             invalid_table_width           = 2
             invalid_type                  = 3
             no_batch                      = 4
             unknown_error                 = 5
             gui_refuse_filetransfer       = 6
             OTHERS                        = 7.
      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  display_message
    FORM display_message .
      IF it_error[] IS INITIAL.
        MESSAGE i019(zmsg).   "Success
      ELSE.
        MESSAGE e020(zmsg).   "Failed
      ENDIF.
    ENDFORM.                    " display_message
    *&      Form  get_filename
          text
    -->  p1        text
    <--  p2        text
    FORM get_filename .
      CALL FUNCTION 'F4_FILENAME'
       EXPORTING
         program_name        = syst-cprog
         dynpro_number       = syst-dynnr
          FIELD_NAME          = p_file
       IMPORTING
         file_name           = p_file .
      IF sy-subrc NE 0  .
        WRITE : / 'Enter File Name'.
      ENDIF.
    ENDFORM.                    " get_filename
    *&      Form  make_file_name
    FORM make_file_name .
      WRITE sy-datum TO date  MM/DD/YYYY.
      WRITE sy-uzeit TO time  USING EDIT MASK ' __ __ __'.
      CONCATENATE text-002 date time '.txt'
             INTO v_error_filename.
    ENDFORM.                    " make_file_name
    regards
    prabhu

  • Data not Updated in Custom Screen fields-Vendor Master

    Hello,
    I have created a custom screen in vendor master transaction and also implemented the two BADI's below.
    Business Add-In: Processing Master Data Enhancements
    (CUSTOMER_ADD_DATA/VENDOR_ADD_DATA)
    Passed the Custom Program and Screen No in the method GET_TAXI_SCREEN
    Business Add-In: Customer Subscreens
    (CUSTOMER_ADD_DATA_CS/VENDOR_ADD_DATA_CS)
    activate it with the BADI Processing Master Data Enhancements with method CHECK_ADD_ON_ACTIVE.
    I also created a new screen and used few fields from LFA1 (Append structure fields) such that the fields on the screen are : LFA1-ZZFIELD1 etc...
    Now the issue is the screen is displayed, but the data entered on the screen is not updated on the table LFA1 or data from the table is not displayed on the custom screen.
    Am i missing something?
    Regards,
    Shiva

    Solved this problem.
    I built the query against InfoCube and not the characteristic itself. That's why I can't see the update.
    Thanks.

  • Vendor Address is not updating in ADRC table by LSMW IDOC method

    Hi,
    I'm updating Vendor address data by LSMW IDoc method
    for this i'm using ADRMAS as msg type and ADRMAS02 as Idoc type.
    In partner profiles Process code given as BAPI for this.
    i maintained entry in TSADOBJ table LFA1 as OBJTYPE,1 as ADDR TYPE,0001 as context,LFA1 as TABLENAME,ADRNR as FIELDNAME, ADRC as TABLE PERS, ADDRNUMBER as FIELD PERS
    Idoc generating sucessfully.
    But data is not updating in database.
    i think the problem in TSADOBJ config.
    Please give exact configuration which can update vendor data.
    Thanks in advance

    be open minded. SAP gives several import methods to load vendors.  one of them is per IDOC.
    But the vendor master IDOC does not automatically create the adress master.
    And even more important, if you migrate data from one SAP system to another, the IDOC method is more straight forward than the batch input, because you can send the IDOCs from legacy system to new system, you will then have a 1:1 relation of the structure in LSMW and you can create vendor masters by knowing the new vendor number from an internal number range already in LSMW, long before you actually post the vendor. With batch input you can either post with numbers from external number range, or you just dont know the new number already in LSMW.
    And you dont need to download the data to Excel. And further, the LFA1 adress data has less information than the ADRC adress data.

  • Document number not updating in the document

    hi gurus,
    this is a excise invoice voucher form used by the client .
    some values are not updated in document no.
    could someone tell me why it is not updating.
    if there are any corrections in code pls update me and solve my problem.
    urs
    pradeep.r
    *&  Include           ZFI_PAY_ADVICE_F01_STR_2                         *
    *&      Form  select_data
          text
    -->  p1        text
    <--  p2        text
    FORM SELECT_DATA .
      REFRESH IT_BKPF.
      CLEAR   IT_BKPF.
      SELECT BELNR GJAHR XBLNR BLDAT BLART INTO CORRESPONDING FIELDS OF
      TABLE IT_BKPF FROM BKPF
      WHERE BELNR IN S_BELNR
      AND   GJAHR IN S_GJAHR
      AND   BUKRS IN S_BUKRS.
      IF IT_BKPF[] IS INITIAL.
        MESSAGE S001.
      ENDIF.
      SORT IT_BKPF BY BELNR GJAHR.
      LOOP AT IT_BKPF.
        SELECT SINGLE EBELN WRBTR WERKS LIFNR KUNNR  INTO
        (IT_BKPF-ZUONR,IT_BKPF-WRBTR,IT_BKPF-WERKS,IT_BKPF-LIFNR,IT_BKPF-KUNNR)
        FROM BSEG
        WHERE BELNR = IT_BKPF-BELNR
        AND   GJAHR = IT_BKPF-GJAHR
        AND BUKRS IN S_BUKRS
        AND   KOART = 'K'.
        IF NOT IT_BKPF-LIFNR IS INITIAL.
          DATA : WRK_ADRNR LIKE LFA1-ADRNR.
          CLEAR  WRK_ADRNR.
          SELECT SINGLE ADRNR INTO WRK_ADRNR FROM LFA1
          WHERE LIFNR = IT_BKPF-LIFNR.
          SELECT SINGLE NAME1
                        NAME2
                        NAME3
                        NAME4
                        CITY1
                        REGION
                        COUNTRY
                        STREET
         INTO (IT_BKPF-NAME1,IT_BKPF-NAME2,IT_BKPF-NAME3,IT_BKPF-NAME4,
         IT_BKPF-CITY1,IT_BKPF-REGION,IT_BKPF-COUNTRY,IT_BKPF-STREET)
         FROM ADRC
         WHERE ADDRNUMBER EQ WRK_ADRNR.
    Text for Country
          SELECT SINGLE LANDX INTO IT_BKPF-LANDX FROM T005T
          WHERE LAND1 = IT_BKPF-COUNTRY
          AND   SPRAS EQ SY-LANGU.
    Text for Region
          SELECT SINGLE BEZEI INTO IT_BKPF-BEZEI FROM T005U
          WHERE BLAND = IT_BKPF-REGION
          AND   SPRAS EQ SY-LANGU
          AND   LAND1 = IT_BKPF-COUNTRY.
        ENDIF.
        IF NOT IT_BKPF-KUNNR IS INITIAL.
          CLEAR  WRK_ADRNR.
          SELECT SINGLE ADRNR INTO (WRK_ADRNR) FROM KNA1
          WHERE KUNNR = IT_BKPF-KUNNR.
          SELECT SINGLE NAME1
                        NAME2
                        NAME3
                        NAME4
                        CITY1
                        REGION
                        COUNTRY
                        STREET
         INTO (IT_BKPF-NAME1,IT_BKPF-NAME2,IT_BKPF-NAME3,IT_BKPF-NAME4,
         IT_BKPF-CITY1,IT_BKPF-REGION,IT_BKPF-COUNTRY,IT_BKPF-STREET)
         FROM ADRC
         WHERE ADDRNUMBER EQ WRK_ADRNR.
    Text for Country
          SELECT SINGLE LANDX INTO IT_BKPF-LANDX FROM T005T
          WHERE LAND1 = IT_BKPF-COUNTRY
          AND   SPRAS EQ SY-LANGU.
    Text for Region
          SELECT SINGLE BEZEI INTO IT_BKPF-BEZEI FROM T005U
          WHERE BLAND = IT_BKPF-REGION
          AND   SPRAS EQ SY-LANGU
          AND   LAND1 = IT_BKPF-COUNTRY.
        ENDIF.
        MODIFY IT_BKPF.
      ENDLOOP.
      REFRESH IT_DATA.
      CLEAR   IT_DATA.
      LOOP AT IT_BKPF.
        DATA : WRK_BSAKBELNR LIKE BSAK-BELNR.
        CLEAR  WRK_BSAKBELNR.
        SELECT SINGLE BELNR INTO WRK_BSAKBELNR FROM BSAK
        WHERE AUGBL = IT_BKPF-BELNR
        AND   GJAHR = IT_BKPF-GJAHR
        AND BUKRS IN S_BUKRS.
    Advance
        IF WRK_BSAKBELNR IS INITIAL.
          IT_DATA-VBELNR = IT_BKPF-BELNR.
          IT_DATA-BELNR = IT_BKPF-BELNR.
          IT_DATA-GJAHR = IT_BKPF-GJAHR.
          IT_DATA-XBLNR = IT_BKPF-XBLNR.
          IT_DATA-BLDAT = IT_BKPF-BLDAT.
          IT_DATA-BLART = IT_BKPF-BLART.
          IT_DATA-ZUONR = IT_BKPF-ZUONR.
          IT_DATA-WRBTR = IT_BKPF-WRBTR.
          IT_DATA-WRBTRC = IT_DATA-WRBTR.
          APPEND IT_DATA.
          IT_DATA-VBELNR = IT_BKPF-BELNR.
          IT_DATA-BELNR = ' '.
          IT_DATA-GJAHR = ' '.
          IT_DATA-BLDAT = ' '.
          IT_DATA-BLART = ' '.
          IT_DATA-ZUONR = ' '.
    TDS
          DATA : WRK_TDSWRBTR LIKE BSIS-WRBTR.
          CLEAR  WRK_TDSWRBTR.
          SELECT SUM( WRBTR ) INTO WRK_TDSWRBTR FROM BSIS
          WHERE BELNR = IT_BKPF-BELNR
          AND   GJAHR = IT_BKPF-GJAHR
          AND BUKRS IN S_BUKRS
          AND   QSSKZ NE SPACE
          AND   QSSKZ NE 'XX'
          AND   XREF3 NE SPACE
          AND   QSSKZ NE 'S1'
          AND   QSSKZ NE 'S2'.
          IF WRK_TDSWRBTR IS INITIAL.
            SELECT SUM( WRBTR ) INTO WRK_TDSWRBTR FROM BSAS
            WHERE BELNR = IT_BKPF-BELNR
            AND   GJAHR = IT_BKPF-GJAHR
            AND   QSSKZ NE SPACE
            AND   QSSKZ NE 'XX'
            AND   XREF3 NE SPACE
            AND BUKRS IN S_BUKRS
            AND   QSSKZ NE 'S1'
            AND   QSSKZ NE 'S2'.
          ENDIF.
          DATA : WRK_BSCHL LIKE BSIS-BSCHL.
          CLEAR  WRK_BSCHL.
          IF NOT WRK_TDSWRBTR IS INITIAL.
            IT_DATA-XBLNR = 'TDS/ECess'.
            IT_DATA-WRBTR = WRK_TDSWRBTR.
            SELECT SINGLE BSCHL INTO WRK_BSCHL FROM BSIS
            WHERE BELNR = IT_BKPF-BELNR
            AND   GJAHR = IT_BKPF-GJAHR
            AND   QSSKZ NE SPACE
            AND BUKRS IN S_BUKRS
            AND   QSSKZ NE 'XX'
            AND   XREF3 NE SPACE
            AND   QSSKZ NE 'S1'
            AND   QSSKZ NE 'S2'
            AND   BSCHL = '40'.
            IF WRK_BSCHL IS INITIAL.
              SELECT SINGLE BSCHL INTO WRK_BSCHL FROM BSAS
              WHERE BELNR = IT_BKPF-BELNR
              AND   GJAHR = IT_BKPF-GJAHR
              AND   QSSKZ NE SPACE
              AND   QSSKZ NE 'XX'
              AND   XREF3 NE SPACE
              AND BUKRS IN S_BUKRS
              AND   QSSKZ NE 'S1'
              AND   QSSKZ NE 'S2'
              AND   BSCHL = '40'.
            ENDIF.
            IF WRK_BSCHL IS INITIAL.
              IT_DATA-WRBTR = IT_DATA-WRBTR * - 1.
            ENDIF.
            IT_DATA-WRBTRC = IT_DATA-WRBTR.
            APPEND IT_DATA.
          ENDIF.
          IT_DATA-VBELNR = IT_BKPF-BELNR.
          IT_DATA-BELNR = ' '.
          IT_DATA-GJAHR = ' '.
          IT_DATA-BLDAT = ' '.
          IT_DATA-BLART = ' '.
          IT_DATA-ZUONR = ' '.
    Discount
          DATA : WRK_DEDWRBTR LIKE BSIS-WRBTR.
          CLEAR  WRK_DEDWRBTR.
          SELECT SUM( WRBTR ) INTO WRK_DEDWRBTR FROM BSIS
          WHERE BELNR = IT_BKPF-BELNR
          AND   GJAHR = IT_BKPF-GJAHR
          AND   QSSKZ EQ SPACE
          AND BUKRS IN S_BUKRS
          AND   BSCHL NE '50'.
          IF NOT WRK_DEDWRBTR IS INITIAL.
            SELECT SUM( WRBTR ) INTO WRK_DEDWRBTR FROM BSAS
            WHERE BELNR = IT_BKPF-BELNR
            AND   GJAHR = IT_BKPF-GJAHR
            AND   QSSKZ EQ SPACE
            AND BUKRS IN S_BUKRS
            AND   BSCHL NE '50'.
          ENDIF.
          IF NOT WRK_DEDWRBTR IS INITIAL.
            IT_DATA-XBLNR = 'Discount'.
            IT_DATA-WRBTR = WRK_DEDWRBTR.
            IT_DATA-WRBTR = IT_DATA-WRBTR * - 1.
            IT_DATA-WRBTRC = IT_DATA-WRBTR.
            APPEND IT_DATA.
          ENDIF.
    Invoice
        ELSE.
          REFRESH IT_BELNR.
          CLEAR   IT_BELNR.
          DATA : W_YEAR(4),
                 W_MONTH(2) VALUE '04',
                 W_DATE(2) VALUE '01',
                 W_YEAR1(8).
          W_YEAR = S_GJAHR-LOW.
          CONCATENATE W_YEAR W_MONTH W_DATE INTO W_YEAR1.
          SELECT BELNR GJAHR XBLNR BLDAT BLART ZUONR WRBTR BSCHL INTO
          TABLE IT_BELNR FROM BSAK
          WHERE AUGBL = IT_BKPF-BELNR
                AND AUGDT GE W_YEAR1
              AND   GJAHR = IT_BKPF-GJAHR
                AND   BELNR NE IT_BKPF-BELNR
                AND BUKRS IN S_BUKRS.
          SORT IT_BELNR BY BELNR GJAHR.
          LOOP AT IT_BELNR.
            CLEAR  WRK_TDSWRBTR.
            SELECT SUM( WRBTR ) INTO WRK_TDSWRBTR FROM BSIS
            WHERE BELNR = IT_BELNR-BELNR
            AND   GJAHR = IT_BELNR-GJAHR
            AND   QSSKZ NE SPACE
            AND BUKRS IN S_BUKRS
            AND   QSSKZ NE 'XX'.
            IF WRK_TDSWRBTR IS INITIAL.
              SELECT SUM( WRBTR ) INTO WRK_TDSWRBTR FROM BSAS
              WHERE BELNR = IT_BELNR-BELNR
              AND   GJAHR = IT_BELNR-GJAHR
              AND   QSSKZ NE SPACE
              AND BUKRS IN S_BUKRS
              AND   QSSKZ NE 'XX'.
            ENDIF.
            IT_DATA-VBELNR = IT_BKPF-BELNR.
            IT_DATA-BELNR = IT_BELNR-BELNR.
            IT_DATA-GJAHR = IT_BELNR-GJAHR.
            IT_DATA-XBLNR = IT_BELNR-XBLNR.
            IT_DATA-BLDAT = IT_BELNR-BLDAT.
            IT_DATA-BLART = IT_BELNR-BLART.
            IT_DATA-ZUONR = IT_BELNR-ZUONR.
            IT_DATA-WRBTR = IT_BELNR-WRBTR + WRK_TDSWRBTR .
            IF IT_BELNR-BSCHL GE '31' AND IT_BELNR-BSCHL LE '39'.
              IT_DATA-WRBTRC = IT_DATA-WRBTR.
            ELSE.
              IF IT_BELNR-BSCHL GE '21' AND IT_BELNR-BSCHL LE '29'.
                IT_DATA-WRBTRC = IT_DATA-WRBTR * - 1.
              ENDIF.
            ENDIF.
            APPEND IT_DATA.
            IT_DATA-VBELNR = IT_BKPF-BELNR.
            IT_DATA-BELNR = ' '.
            IT_DATA-GJAHR = ' '.
            IT_DATA-BLDAT = ' '.
            IT_DATA-BLART = ' '.
            IT_DATA-ZUONR = ' '.
    TDSBELNR
            IF NOT WRK_TDSWRBTR IS INITIAL.
              IT_DATA-XBLNR = 'TDS/ECess'.
              IT_DATA-WRBTR = WRK_TDSWRBTR.
              CLEAR  WRK_BSCHL.
              IF NOT WRK_TDSWRBTR IS INITIAL.
                IT_DATA-XBLNR = 'TDS/ECess'.
                IT_DATA-WRBTR = WRK_TDSWRBTR.
                SELECT SINGLE BSCHL INTO WRK_BSCHL FROM BSIS
                WHERE BELNR = IT_BELNR-BELNR
                AND   GJAHR = IT_BELNR-GJAHR
                AND   QSSKZ NE SPACE
                AND   QSSKZ NE 'XX'
                AND   BSCHL = '40'.
                IF WRK_BSCHL IS INITIAL.
                  SELECT SINGLE BSCHL INTO WRK_BSCHL FROM BSAS
                  WHERE BELNR = IT_BELNR-BELNR
                  AND   GJAHR = IT_BELNR-GJAHR
                  AND   QSSKZ NE SPACE
                  AND   QSSKZ NE 'XX'
                  AND   BSCHL = '40'.
                ENDIF.
                IF WRK_BSCHL IS INITIAL.
                  IT_DATA-WRBTR = IT_DATA-WRBTR * - 1.
                ENDIF.
                IT_DATA-WRBTRC = IT_DATA-WRBTR.
                APPEND IT_DATA.
              ENDIF.
            ENDIF.
          ENDLOOP.
          IT_DATA-VBELNR = IT_BKPF-BELNR.
          IT_DATA-BELNR = ' '.
          IT_DATA-GJAHR = ' '.
          IT_DATA-BLDAT = ' '.
          IT_DATA-BLART = ' '.
          IT_DATA-ZUONR = ' '.
    TDSVBELNR
          CLEAR  WRK_TDSWRBTR.
          SELECT SUM( WRBTR ) INTO WRK_TDSWRBTR FROM BSIS
          WHERE BELNR = IT_BKPF-BELNR
          AND   GJAHR = IT_BKPF-GJAHR
          AND   QSSKZ NE SPACE
          AND BUKRS IN S_BUKRS
          AND   QSSKZ NE 'XX'
          AND   QSSKZ NE 'S1'
          AND   QSSKZ NE 'S2'.
          IF WRK_TDSWRBTR IS INITIAL.
            SELECT SUM( WRBTR ) INTO WRK_TDSWRBTR FROM BSAS
            WHERE BELNR = IT_BKPF-BELNR
            AND   GJAHR = IT_BKPF-GJAHR
            AND   QSSKZ NE SPACE
            AND   QSSKZ NE 'XX'
            AND   AUGBL = SPACE
            AND BUKRS IN S_BUKRS
            AND   QSSKZ NE 'S1'
            AND   QSSKZ NE 'S2'.
          ENDIF.
    **INSERTED BY PALANI ON 01.04.2006
          IF WRK_TDSWRBTR IS INITIAL.
            SELECT SUM( WRBTR ) INTO WRK_TDSWRBTR FROM BSIS
            WHERE BELNR = IT_BKPF-BELNR
            AND   GJAHR = IT_BKPF-GJAHR.
          ENDIF.
    ***END BY PALANI.
          IF NOT WRK_TDSWRBTR IS INITIAL.
            IT_DATA-XBLNR = 'TDS/ECess'.
            IT_DATA-WRBTR = WRK_TDSWRBTR.
            IT_DATA-WRBTR = IT_DATA-WRBTR * - 1.
            IT_DATA-WRBTRC = IT_DATA-WRBTR.
            APPEND IT_DATA.
          ENDIF.
          IT_DATA-VBELNR = IT_BKPF-BELNR.
          IT_DATA-BELNR = ' '.
          IT_DATA-GJAHR = ' '.
          IT_DATA-BLDAT = ' '.
          IT_DATA-BLART = ' '.
          IT_DATA-ZUONR = ' '.
    *DiscountVBELNR
          CLEAR  WRK_DEDWRBTR.
          SELECT SUM( WSKTO ) INTO WRK_DEDWRBTR FROM BSE_CLR
          WHERE BELNR_CLR = IT_BKPF-BELNR
          AND   GJAHR_CLR = IT_BKPF-GJAHR
          AND BUKRS IN S_BUKRS.
          IF NOT WRK_DEDWRBTR IS INITIAL.
            IT_DATA-XBLNR = 'Discount'.
            IT_DATA-WRBTR = WRK_DEDWRBTR.
            IT_DATA-WRBTR = IT_DATA-WRBTR * - 1.
            IT_DATA-WRBTRC = IT_DATA-WRBTR.
            APPEND IT_DATA.
          ENDIF.
        ENDIF.
      ENDLOOP.
    LOOP AT IT_BKPF.
      SELECT SINGLE BUTXT ORT01 LAND1 INTO (IT_DATA-BUTXT,IT_DATA-ORT01,IT_DATA-LAND1)
      FROM T001
      WHERE BUKRS IN S_BUKRS.
      MODIFY IT_DATA INDEX SY-TABIX.
    *ENDLOOP.
    ENDFORM.                    " select_data
    *&      Form  print_data
          text
    -->  p1        text
    <--  p2        text
    FORM PRINT_DATA .
      PERFORM OPEN_FORM.
      PERFORM WRITE_FORM.
      PERFORM CLOSE_FORM.
      LEAVE LIST-PROCESSING.
    ENDFORM.                    " print_data
    *&      Form  open_form
          text
    -->  p1        text
    <--  p2        text
    FORM OPEN_FORM .
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          FORM     = 'ZFI_PAY_ADV_MODN'
          LANGUAGE = SY-LANGU.
    ENDFORM.                    " open_form
    *&      Form  write_form
          text
    -->  p1        text
    <--  p2        text
    FORM WRITE_FORM .
      LOOP AT IT_BKPF.
        IF SY-TABIX GT 1.
          AT NEW BELNR.
            CALL FUNCTION 'WRITE_FORM'
              EXPORTING
                ELEMENT = 'NEW'
                WINDOW  = 'MAIN'.
          ENDAT.
        ENDIF.
        LOOP AT IT_DATA WHERE VBELNR = IT_BKPF-BELNR.
          DATA : BEGIN OF IT_HKONT OCCURS 0,
                   HKONT LIKE BSIS-HKONT,
                   WRBTR LIKE BSIS-WRBTR,
                 END OF IT_HKONT.
          REFRESH IT_HKONT.
          CLEAR   IT_HKONT.
          SELECT HKONT WRBTR INTO TABLE IT_HKONT FROM BSIS
          WHERE BELNR = IT_BKPF-BELNR
          AND   GJAHR = IT_BKPF-GJAHR.
          DELETE IT_HKONT WHERE HKONT(3) NE '005'.
          IF NOT IT_HKONT[] IS INITIAL.
            LOOP AT IT_HKONT.
              IT_DATA-TOTAL = IT_DATA-TOTAL + IT_HKONT-WRBTR.
              MODIFY IT_DATA.
            ENDLOOP.
          ELSE.
            IT_DATA-TOTAL = IT_DATA-TOTAL + IT_DATA-WRBTR.
            MODIFY IT_DATA.
          ENDIF.
        ENDLOOP.
        LOOP AT IT_DATA WHERE VBELNR = IT_BKPF-BELNR.
          IF IT_DATA-BLART EQ ''. " for invoice Date
            IT_DATA-BLDAT = IT_BKPF-BLDAT.
          ENDIF.
          IT_DATA-LIFNR = IT_BKPF-LIFNR.
          IT_DATA-KUNNR = IT_BKPF-KUNNR.
          IT_DATA-NAME1 = IT_BKPF-NAME1.
          IT_DATA-NAME2 = IT_BKPF-NAME2.
          IT_DATA-NAME3 = IT_BKPF-NAME3.
          IT_DATA-NAME4 = IT_BKPF-NAME4.
          IT_DATA-CITY1 = IT_BKPF-CITY1.
          IT_DATA-REGION = IT_BKPF-REGION.
          IT_DATA-COUNTRY = IT_BKPF-COUNTRY.
          IT_DATA-STREET = IT_BKPF-STREET.
          IT_DATA-LANDX = IT_BKPF-LANDX.
          IT_DATA-BEZEI = IT_BKPF-BEZEI.
          CLEAR : WRK_HBKID , WRK_BANKL.
          SELECT SINGLE CHECT ZALDT HBKID INTO
          (IT_DATA-CHECT , IT_DATA-ZALDT , WRK_HBKID)
          FROM PAYR
          WHERE VBLNR = IT_BKPF-BELNR
          AND   GJAHR = IT_BKPF-GJAHR
          AND   VOIDR = '00'.
          SELECT SINGLE BANKL INTO WRK_BANKL
          FROM T012
          WHERE HBKID = WRK_HBKID.
         AND spras EQ 'EN'.
          SELECT SINGLE BANKA INTO IT_DATA-BANKA
          FROM BNKA
          WHERE BANKL = WRK_BANKL.
          MODIFY IT_DATA.
          CALL FUNCTION 'WRITE_FORM'
            EXPORTING
              ELEMENT = 'ITEMS'
              WINDOW  = 'MAIN'.
        ENDLOOP.
        CALL FUNCTION 'WRITE_FORM'
          EXPORTING
            ELEMENT = 'TOTAL'
            WINDOW  = 'MAIN'.
      ENDLOOP.
    ENDFORM.                    " write_form
    *&      Form  close_form
          text
    -->  p1        text
    <--  p2        text
    FORM CLOSE_FORM .
      CALL FUNCTION 'CLOSE_FORM' .
    ENDFORM.                    " close_form

    Hi
    Could you tell us what fields are not updated?
    Regards,
    Raj

  • IPod 4,1 will not update to iOS 7. I updated my iMac to 10.9.1 (maverick). Latest Numbers version on iMac is not compatible with Numbers on iPod. Ideas? Can I go back a version with Numbers?

    iPod 4,1 will not update to iOS 7. I updated my iMac to 10.9.1 (maverick). Latest Numbers version on iMac is not compatible with Numbers on iPod. Ideas? Can I go back a version with Numbers? I downloaded old version of Numbers 2.0.1 from DVD but with both versions the 2.0.1 will not open.  So both versions are present but only the new version functions. I tried to drag the new version to the trash but the old version still runs error message and will not open. I did not try to restart with the new version in the trash.

    Maybe. See:
    Reverting to previous version of Numbers

  • IPod will not update in iTunes with Windows Vista

    Every time I connect my ipod to my computer, my computer locks up and it does not update. The only way I can even connect my ipod is to use manual update.

    iTunes does not yet support Windows Vista. There are numerous problems running iTunes on it. The latest release of iTuens 7.1 fixed some of them but not all.

  • Previews in Adobe Bridge in Essentials View do not update after manipulation in Adobe Camera Raw

    When I open a RAW file in Bridge and manipulate it in ACR, the preview is not updated in Bridge Essentials View.  The only way I can get it to update the preview is to open the file in "Preview" view, then it updates and looks fine in Essentials view.

    Is Bridge set up to store the ACR modifications to those XMP files? Only then it can update the preview right after working on it. Else you need to refresh the preview cache.

  • Can not update request in data target

    Hi,
    We have a process chain for master data (10 parallel) loads.  One of the load
    failed with error "can not update request REQU_46xxxxxxxxxxxxxx in data target".
    When I checked the InfoPackage
    (a) update: full load
    (b) it has data selection
    (c) processing :PSA and then to data targets
    (d) Data targets: update in all data targets for which active rules exist.
    But I do not see any list of data targets here.
    Can some one please suggest me how do I correct this load failure.
    Thanks

    Hi Wondewossen, NS and Nagesh,
    Thanks for the information. I am in support, and the developer is
    not here now.
    I have checked Header tab in the monitor, in this there
    is a update symbol and infosource name and an -->
    but after arrow there is nothing.
    when I click on this I get a message
    "No active update rules exist".
    Can you please advice me how to I correct this.
    Thanks

  • Exporting catalog, making changes, then importing catalog does not update file movements and deletions

    I export part of my master catalog to a laptop.  I include the image files so I can edit the files at full res.  After managing and editing files I import the catalog back into the master catalog. When importing I check to replace metadata, develop settings and negative files. I have been running some tests to be sure all my work is being captured in the master catalog by this process.  I find that if I change develop settings or photo ratings this is detected when the file is imported and the data in the master catalog is updated properly.  The surprise is that if I delete files or move files among folders in the exported catalog these changes are not detected and these changes are not updated inthe master catalog.  It seems bizarre to me that such changes are not detected but I do not see how to get LR to recognize these changes and include them in the catalog update.  Without this capability I don't see how to use catalogs to move part of a catalog to another computer for edits and file management and then move back to the master catalog.

    There are various reasons why Lightroom works this way, but you'll need use pick flags to indicate photos to be deleted, and other metadata like colours or collections.

  • Can not update tab if its not the default sub-tab.

    Can not update tab if its not the default sub-tab.
    JDeveloper Version 10.1.2.1.0 (Build 1913)
    Hi. I have a problem with a “lovOpenWindowAction”
    The UIX is created with a master UIX and have several sub-tab that is included as UIX-pages.
    The lovOpenWindowAction lies in the included UIX-page
    The sub-tab I have a problem with has a table with users. Then I have a “Create New” button than I want to click on and select a new user that should be included in the table in the sub-tab.
    When I click on the button I open a LOV-window. Here I select the user that I want to add.
    In the LOV Action-class I save my new value in the database. Then in the method “onLovUpdate” I update the iterator with the new values from the database.
    But in my GUI the subtab is not updated until I click on it.
    But if I make the subtab the default subtab then it all works just fine and the GUI is updated directly.
    Here is the code for the tableAction in the subtab. This code lies in an included UIX-page. Target is the table id.
    <tableActions>
    <button text="Create New" id=" createNewRollperson" accessKey="N">
    <primaryClientAction>
    <lovOpenWindowAction destination="FiskeRollpersonerLOV.do"
    source=" createNewRollperson "
    targets="joinedRollpersfiskeer message"/>
    </primaryClientAction>
    </button>
    </tableActions>
    Here is some code from the master UIX-page
    <subTabLayout id="flikar">
    <subTabs>
    <subTabBar selectedIndex="${ui:defaulting(param.index,0)}">
    <contents>
    <link id="resorFlik" text="Resor"
    disabled="${sessionScope.fiske.id == null}"
    selected="${(param.source == 'resorFlik') or empty param.source}">
    <primaryClientAction>
    <firePartialAction event="changeTab" targets="flikar globalHeader">
    <parameters>
    <parameter key="source" value="resorFlik"/>
    </parameters>
    </firePartialAction>
    </primaryClientAction>
    </link>
    <link id="rollpersonerFlik" text="Rollpersoner"
    disabled="${sessionScope.fiske.id == null}"
    selected="${param.source == 'rollpersonerFlik'}">
    <primaryClientAction>
    <firePartialAction event="changeTab" targets="flikar globalHeader">
    <parameters>
    <parameter key="source" value="rollpersonerFlik"/>
    </parameters>
    </firePartialAction>
    </primaryClientAction>
    </link>
    </contents>
    </subTabBar>
    </subTabs>
    <contents>
    <switcher childName="${param.source}"
    defaultCase=”ResorFlik">
    <case name="resorFlik">
    <include node="${ctrl:parsePage(uix, 'includes/ResorFlik')}"/>
    </case>
    <case name="rollpersonerFlik">
    <include node="${ctrl:parsePage(uix, 'includes/FiskeRollpersonerFlik')}"/>
    </case>
    </switcher>
    </contents>
    </subTabLayout>
    What am I missing?? I can’t have this subtab as the default subtab! Please help me with a solution!

    hi,
    Change the condition type to manual entry.
    or
    for example delivery costs will be different at the time of PO and actual delivery costs then at the time of invoice we select planned delivery costs and settle them first with the actual delivery cost.
    Thanks & Regards,
    Kiran

  • Data in server is not updated

    i have modify the data STREET to "ANG MO KIO"
    http://i192.photobucket.com/albums/z231/yzme/d1.gif
    but the data in server still "HEAVEN ST"
    http://i192.photobucket.com/albums/z231/yzme/d2.gif
    I am using Time2Way T01, if it is when i sync the data will be uploaded, or do i need to configure somewhere to get the data upload ?
    if the data in client and middleware is different, when i sync , the data from the middleware will again download to the client replace the modified values
    OR
    the data in the client will uploaded to the middleware and trigger the MODIFY bapi wrappers ?
    <b>
    when i check my MEREP_MON, and MEREP_LOG there is no data inside this meaning after i changed the values and perform the sync, Inbox and Outbox still remain the previous data as well as inside the MEREP_LOG,
    is it the bapi wrapper not call by the client ?
    </b>
    and i find out that my bapi not get called, what additional code should i add instead of the code below.
    DO I NEED TO IMPLEMENT SOME CODE FOR UPLOADER ??
    do i have to change the reqDirectSync="true", if yes, how do i changed, just change inside the editor, or there is somewhere to configure in sapgui
    after i changed the data , i try to sync, and i check on merep_mon
    what specific or additional steps i need to configure, on uploader / receiver or synchronizer
    <b>i do not implement any syncBoDelta or global reset ?</b>Can someone explain the term "delta" to me and its activities?
    if i have upload something, and sync, the Inbox should have something right ??
    i just put add this code to modify my records
    public String modifyRecord(String eventName,boolean didNavigate){
                             String syncBoName="ZCON";
                             String syncKey="0001230297";
                             tableViewBean.setString(syncBoName +" "+syncKey);
                             System.out.println("SyncBoName: " +syncBoName + " syncKey: " +syncKey);
                             tcp = TableContentProvider.instance(syncBoName);
                             tcp.modifyTable(syncBoName,syncKey);                                   return JSP_DETAIL_SYNCBOINSTANCE;
    public void modifyRecord(String syncBoName,String syncKey){
    SyncBoDescriptor sbd=null;
    sbd=descriptorFacade.getSyncBoDescriptor(syncBoName);
    SyncBo sb=null;
    try{
    System.out.println("bp 2");
    sb=dataFacade.getSyncBo(sbd,syncKey);
    }catch(PersistenceException pex){
    System.out.println("Exception in modifyRecordLoc:" +pex.getMessage());
    SmartSyncTransactionManager transactionManager;
    try{  transactionManager=dataFacade.getSmartSyncTransactionManager();
    if(!transactionManager.isTransactionStarted()){
    transactionManager.beginTransaction();
    boolean b8=false;
    b8=setHeaderFieldValue2(sb,"STREET","ANG MO KIO");
    transactionManager.commit();
    SetSendType();
    listAllOutDelta();
    checkInboxConflict();
    }catch(Exception e){
    System.out.println("Exception in modifyRecordAmt2:" +e.getMessage());
    public void checkInboxConflict(){
              ErrorConflictInbox errorConflictInbox= SmartSyncRuntime.getInstance().getInboxNotifier().getErrorConflictInbox();
              MeIterator iter;
              SyncBoResponse resp;
              try {
              iter= errorConflictInbox.getAllSyncBoResponses();
              while(iter.hasNext()){
              resp= (SyncBoResponse)iter.next();
              String bo=resp.getSyncBoDescriptor().getSyncBoName();//SyncBo Name
              String state=resp.getSyncBoResponseState().toString();
              String res=resp.getResponseType().toString();//Get the SyncBo response type (conflict or ERROR)
              String msg=resp.getText();// This will return the exact message from the server
              System.out.println("bo:" +bo +" state: " +state +" res: " +res +" msg:" +msg);
              System.out.println("state:" +resp.getSyncBoResponseState().toString());
              if(resp.getSyncBoResponseState().equals(SyncBoResponseState.INITIAL)){
                   String a=resp.getSyncBoResponseState().toString();
                   resp.acceptClientSyncBo();
                   String b=resp.getSyncBoResponseState().toString();
                   resp.delete();
                   System.out.println("state1: " +a +"state2: " +b);
              boolean syncStatusComplete= SmartSyncRuntime.getInstance().getInboxNotifier().isSyncStatusComplete();
              System.out.println("syncStatus:" +syncStatusComplete);
              }catch (Exception e) {
              e.printStackTrace();
    public void listAllOutDelta(){
              SyncBoOutDeltaFacade deltFac=SmartSyncRuntime.getInstance().getSyncBoOutDeltaFacade();
              MeIterator allDelta;
              try {
                   allDelta = deltFac.getAllDelta();
                   while(allDelta.hasNext()){
                             SyncBoOutDelta outDelta=(SyncBoOutDelta)allDelta.next();
                             System.out.println("SyncKey:" +outDelta.getSyncKey() +" Action:" +outDelta.getAction()
                                       +" State:" +outDelta.getStateId() +" SendType:"+outDelta.getSendType());
              } catch (SmartSyncException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              } catch (PersistenceException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
    public void SetSendType(){
              SmartSyncRuntime ssRuntime = SmartSyncRuntime.getInstance();
              SyncBoOutDeltaFacade boDeltaFacade = ssRuntime.getSyncBoOutDeltaFacade();
              SyncBoDescriptorFacade descF = ssRuntime.getSyncBoDescriptorFacade();
              SyncBoDescriptor myBO = descF.getSyncBoDescriptor("ZCON");
              boDeltaFacade.setSendType(myBO, SyncBoOutDeltaSendType.SEND_DIRECT);
    //SyncManager.getInstance().synchronizeWithBackend(VisibilityType.USER_SHARED);
         public boolean setHeaderFieldValue2(
              SyncBo sb,
              String headerFieldName,
              Object value) {
              SyncBoDescriptor sbd = sb.getSyncBoDescriptor();
              //RowDescriptor trd = sbd.getTopRowDescriptor();
              System.out.println("bp 10");
              RowDescriptor trd=sbd.getRowDescriptor("010");
              System.out.println("bp 11");
              FieldDescriptor fd = trd.getFieldDescriptor(headerFieldName);
              System.out.println("fd:" +fd.getFieldName());
              if (fd != null) {
              BasisFieldType bft = fd.getFieldType();
              //Row header = sb.getTopRow();
              System.out.println("bp 12");
              //Row header = null;
              Row[] header=null;
              //try {
                   //header = sb.getRow("0001211181");
                   //header=sb.getTopRow();
                   header=getItemInstances(sb,"010");
                   if(header==null){
                        System.out.println("is null");
                   }else{
                        System.out.println("not null");
              //} catch (PersistenceException e1) {
                   // TODO Auto-generated catch block
              //     System.out.println("Exception getRow:" +e1.getMessage());
              //     e1.printStackTrace();
              System.out.println("bp 13");
              try {
    //             Integer operator
              if (bft == BasisFieldType.N) {
                   System.out.println("Numeric");
              NumericField nf = header[0].getNumericField(fd);
              if (nf != null) {
              BigInteger ii = new BigInteger(value.toString());
              nf.setValue(ii);
              return true;
              } else {
              return false;
    //             Character operator
              if (bft == BasisFieldType.C) {
                   System.out.println("Character");
              CharacterField cf = header[0].getCharacterField(fd);
              if (cf != null) {
              cf.setValue(value.toString());
              return true;
              } else {
              return false;
    //             Decimal operator
              if (bft == BasisFieldType.P) {
                   System.out.println("Decimal");
              DecimalField df = header[0].getDecimalField(fd);
              System.out.println("bp 1.1");
              if (df != null) {
                   System.out.println("bp 1.2");
              BigDecimal bd = new BigDecimal(value.toString());
              System.out.println("bp 1.3");
              df.setValue(bd);
              System.out.println("bp 1.4");
              return true;
              } else {
                   System.out.println("bp 1.5");
              return false;
    //             Similar operation for time and date operator fields
              if (bft == BasisFieldType.D) {
                   System.out.println("Date");
              DateField df = header[0].getDateField(fd);
              if (df != null) {
              if (value.toString().equals("0")) {
              Date dat = Date.valueOf("0000-00-00");
              df.setValue(dat);
              } else if (!value.toString().equals("")) {
              Date dat = Date.valueOf(value.toString());
              df.setValue(dat);
              } else {
              Calendar cal = Calendar.getInstance();
              java.sql.Date bd =
              new java.sql.Date(cal.getTime().getTime());
              df.setValue(bd);
              return true;
              } else {
              return false;
    //             Similar operation for time and date operator fields
              } catch (SmartSyncException ex) {
              System.out.println(ex.getMessage());
              } catch (PersistenceException e) {
              System.out.println(e.getMessage());
              return false;
    SyncType: T01 Wrapper: GetList,GetDetail,Modify
      <?xml version="1.0" encoding="utf-8" ?>
    - <MeRepApplication schemaVersion="1.1" id="ZCON" version="01">
      <Property name="CLIENT.BUILDNUMBER" />
      <Property name="C_APPLRESOLVE" />
      <Property name="DATA_VISIBLE_SHARED">X</Property>
      <Property name="E_APPLRESOLVE" />
      <Property name="FACADE_C_CLIENT">X</Property>
      <Property name="FACADE_E_CLIENT">X</Property>
      <Property name="HOMEPAGE.INVISIBLE" />
      <Property name="INITVALUE" />
      <Property name="RUNTIME">JSP</Property>
      <Property name="TYPE">APPLICATION</Property>
    - <SyncBO id="ZCON" version="1" type="timedTwoWay" allowCreate="false" allowModify="true" allowDelete="false" reqDirectSync="false" downloadOrder="1">
    - <TopStructure name="TOP">
    - <Field name="SYNC_KEY" type="N" length="10" decimalLength="0" signed="false" isKey="true" isIndex="true">
      <Input type="create">false</Input>
      <Input type="modify">false</Input>
      </Field>
    - <Field name="PERSNUMBER" type="N" length="10" decimalLength="0" signed="false" isKey="false" isIndex="false">
      <Input type="create">false</Input>
      </Field>
    - <ChildStructure name="010">
    - <Field name="SYNC_KEY" type="N" length="10" decimalLength="0" signed="false" isKey="true" isIndex="true">
      <Input type="create">false</Input>
      <Input type="modify">false</Input>
      </Field>
    - <Field name="PERSNUMBER" type="N" length="10" decimalLength="0" signed="false" isKey="false" isIndex="false">
      <Input type="create">false</Input>
      </Field>
    - <Field name="CITY1" type="C" length="40" decimalLength="0" signed="false" isKey="false" isIndex="false">
      <Input type="create">false</Input>
      </Field>
    - <Field name="CITY2" type="C" length="40" decimalLength="0" signed="false" isKey="false" isIndex="false">
      <Input type="create">false</Input>
      </Field>
    - <Field name="STREET" type="C" length="40" decimalLength="0" signed="false" isKey="false" isIndex="false">
      <Input type="create">false</Input>
      </Field>
    - <Field name="HOUSE_NUM" type="C" length="40" decimalLength="0" signed="false" isKey="false" isIndex="false">
      <Input type="create">false</Input>
      </Field>
    - <Field name="REGION" type="C" length="40" decimalLength="0" signed="false" isKey="false" isIndex="false">
      <Input type="create">false</Input>
      </Field>
      </ChildStructure>
      </TopStructure>
      </SyncBO>
      </MeRepApplication>
    Message was edited by:
            yzme yzme

    <u>my intention is very simple, i just need to  update a field in a row and update to the middleware so that the backend will reflect the changes. </u>
    >2 if i set the conflict/error handling to application, then i should have to implement some code for it, right ?
    >3) List syncbooutdelta
    <b>SyncKey:0001233035 Action:M SendType:SEND</b>
    doesnt it mean that when i sync , the uploader will pick up this data and do a modification ??
    i have change the metadata like this
    <SyncBO id="ZCON" version="1" type="timedTwoWay" allowCreate="false" allowModify="true" allowDelete="false" reqDirectSync=<b>"true" </b>downloadOrder="1">
    1) i try to sync the application and check the worklist monitor, there is nothing in the inbox ? how come ?
    2)if i test using emulator, i try to modify a value and execute, i am getting the following error.
    <u>
    Header action from mobile="MOD", R/3 action="ADD"
    Return code 1 (DOWNLOADER)
    </u>
    i try to modify not "Add"
    3) I am using Time 2 Way , how to check it is synchronous or asynchronous ? in merep_sbuilder, the default asyn. is checked, meaning async ??
    the type is T01 , ASYNC
    4)
    public void checkInboxConflict(){
              ErrorConflictInbox errorConflictInbox= SmartSyncRuntime.getInstance().getInboxNotifier().getErrorConflictInbox();
              MeIterator iter;
              SyncBoResponse resp;
              try {
              iter= errorConflictInbox.getAllSyncBoResponses();
              while(iter.hasNext()){
              resp= (SyncBoResponse)iter.next();
              String bo=resp.getSyncBoDescriptor().getSyncBoName();//SyncBo Name
              String state=resp.getSyncBoResponseState().toString();
              String res=resp.getResponseType().toString();//Get the SyncBo response type (conflict or ERROR)
              String msg=resp.getText();// This will return the exact message from the server
              System.out.println("bo:" +bo +" state: " +state +" res: " +res +" msg:" +mtext);
              boolean syncStatusComplete= SmartSyncRuntime.getInstance().getInboxNotifier().isSyncStatusComplete();
              System.out.println("syncStatus:" +syncStatusComplete);
              }catch (Exception e) {
              e.printStackTrace();
    <u>bo:ZCON state: INITIAL res: CONFLICT msg:Conflict: R/3 = delete, device = modify
    SyncStatus=true (complete)
    </u>
    5) after that i change my code to this
    while(iter.hasNext()){
      if(resp.getSyncBoResponseState().equals(SyncBoResponseState.INITIAL)){
        String a=resp.getSyncBoResponseState().toString();
        String a1=syncBO.getSyncState().toString();
        resp.acceptClientSyncBo();   //No transaction stated to commit
        resp.delete();
    String b=resp.getSyncBoResponseState().toString();
    String b2=syncBO.getSyncState().toString();
    System.out.println("state1: " +a +"state2: " +b);
    System.out.println("SyncState1: " +a1 +"SyncState2: " +b1);
    <u>state1: INITIAL state2: RESOLVED </u>
    <u>SyncStatus1:QUANRANTINE SyncStatus2: INCONSISTENT</u>
    and i try to sync ...no data in worklist
    6)i try to list out all the delta to be uploaded
    ListAllOutDelta to be upload
    <u>SyncKey:0001233349 Action:I State:99925F8E24DFFE49A4563C5E018E9B61 SendType:SEND
    </u>
    i am modifying the rows, not Insert a new row, the Action:'I' instead of 'M',  pls clarify on this.
    after i sync, i found out that there is 2 record with different syncKey but same primary key and all attributes appear to be same except the attribute that i changing.
    <u>SYNCKEY    PERSNUMBER CITY STREET HOUSENO</u>
    0001230298 000000000  HELL <u>ANG MO KIO</u> 0123456789 (modified record)
    0001230299 000000000  HELL <u>HEAVEN ST</u>  0123456789(old record)
    i check the application and found out that the previous record that i modify have its value changing locally but not updated into the backend, after sync, there is another record downloaded into this application which is the old record before i modify with different syncKey.
    but when i check the backend table, there is only 1 record inside, because i dont implement the 'Create' Bapi.
    does it make sense ?
    7) when i check my client , the data is persisted with modified value , but the changes is not reflected in the server, how come the data in client is not uploaded to the server.
    acceptClientSyncBo will make the client wins how come the data is not get updated in server ?
    Re: Regarding modifying Sync BO
    According to him, can anyone translate the things highlighted below
    for modifying one sync bo instance , there is no need to use createUnlinkedCopy()..
    just use like this..
    sb = dataFacade.getSyncBo(sbd,key);
    SmartSyncTransactionManager transactionManager;
    transactionManager = dataFacade.getSmartSyncTransactionManager();
    transactionManager.beginTransaction();
    setHeaderFieldValue(sb,"PERSNUMBER","9866321467");
    setHeaderFieldValue(sb,"FIRSTNAME","RajaSekhar");
    setHeaderFieldValue(sb,"LASTNAME","Varigonda");
    setHeaderFieldValue(sb,"PROFESSION","Technical Specialist");
    setHeaderFieldValue(sb,"***","MALE");
    setHeaderFieldValue(sb,"BIRTHDAY","1977-09-28");
    setHeaderFieldValue(sb,"HEIGHT","165");
    setHeaderFieldValue(sb,"WEIGHT","75");
    // Commit the transaction
    transactionManager.commit();
    setHeaderFieldValue - can be used to set value in new sync bo instance , or modify the instance.
    <b>
    But one main think here have to consider is , if you have created one Sync Bo instance , not synchronized with back end and u have modified that, then thats just like a creation .So during sync this will call Create Bapi Wrapper.
    </b>
    But after synchronization , is u are modifying that instance , then it is a modification(will call MODIFY Wrapper in back end during synchronization). u must have the right to modify this instance in the client side.
    hope u got it.
    u can debug MI Applications in NWDS.
    refer this blog written by Arun
    /people/arunkumar.ravi/blog/2006/02/22/execute-debug-your-mi-code-from-nwds
    let me know , if u have doubts
    Regards
    Kishor Gopinathan
    pls comment...

  • Can not update an assignment block with on_new_focus

    Hello Experts,
    I have the following problem. I created a new component which is similar to the component BP_BPBT to create activities for Business Agreements. In the overview page of the business agreement in WebUI, I have now the assigment blocks "Plannend activities" and "Interaction History".
    When I create a new activity in the assigment block "planned activities" with the new button and save the activity with the buttons "SAVE" or "SAVE AND BACK". The new created actity is shown, depending on the "Active Status" , in one of the assignment blocks "Plannend activities" and "Interaction History". When I create an another activity in the same way, the new actiity is not shown in the assignment blocks. But when I reload the page again, I can see the new created activity.
    During debugging, I see, that the first creating activity is in the collection in the method ON_NEW_FOCUS. When I create an another activity, the collection is not updated. Here is my coding:
    * get collection of dependent nodes
      TRY.
          entity ?= focus_bo.  "BuAg Entity 
        CATCH cx_sy_move_cast_error.
          RETURN.
      ENDTRY.
      TRY.
      lr_entity = entity->get_related_entity( iv_relation_name = 'BuAgBuPaRel' ).
         lv_collection = lr_entity->get_related_entities(
             iv_relation_name = 'BuilInteractionHistoryRel'
    *  D022159: Performance optimization
             iv_mode          = lv_mode ).
    Can anyone explain me, why the activities (after the first one) are not in my collection.
    Can anyone help me to fix this problem?
    Kind Regards,
    John H.

    Hi,
    Please check if you have added your entity to collection after you save the entry. It looks like your value is saved in DB but its not reflected on UI because you are not refreshing your collection.
    I would suggest that you write a code after you save and commit to refresh your collection of the context node.
    Regards,
    Bhushan

  • Table record is not updated correctly after navigate back from detail page

    I have 2 jspx pages one (page A) has a table displaying the employee record, another one (page B) is used to update the selected employee record. On page A, when selecting a record and clicking the 'Details' button I can be navigaed to pag B on which I can modify the record information in a form component. I have one table column 'teamName' which is binding to a LOV at VO layer and on pageB I am using <af:inputComboboxListOfValues> to show a editable LOV list for this attribute, when I input a new value here and save it, I can go back to page A but the team name for this record shows empty, by querying the database I do find the record updated successfully with the changed value. And when I reloaded the page the record can show the new team name value. Why it is not updated in the employee table when immediately navigating back from page B? I have set the table iterator refresh attribut to "always" but still failed. Can anyone help on this issue? Thanks!!
    BTW, for other columns (not LOV) they are ok, the table can show the changed value correctly.
    Edited by: user774592 on Jul 14, 2011 7:56 PM
    Edited by: user774592 on Jul 14, 2011 9:59 PM

    Thanks for reply!
    I did exactly the same as what you said. I d&d the data control Commit operation on page B to generate a 'Save' commandToolbarButton with the action attribute set to 'save' which is the from outcome for navigating back to page A. Is there any business logic I need to write here? Currently I have no.
    Note: In this case I used an editable LOV, I have a requirment that besides selecting a existing value from the lov, user can also input a new value in the LOV. When going back to page A, I do find the LOV list is updated to contain the new vaule. Just the record in the table shows an empty value instead of the new value. Still do not know why.

Maybe you are looking for

  • Getting error message when burning DVD

    I keep getting an error message when I try to burn my DVD in iDVD 08. I have imported the movie in quicktime format from iMovie HD and everything works fine until I go to burn the project. I renders everything else but when it get to the movie it has

  • Error when starting SOLMANUP

    Hello experts I am trying to upgrade Solman 7.01 to 7.1, with the "new" tool solmanup. As per the upgrade guide the program STARTUP.bat should start the SL controller. But when i run this from commandline i get the following error as SOLMANUPSTARTUP.

  • 21.5in iMac 2011 -Display Help

    Today I bought a secondary 21.5in HP Monitor for my iMac. (Dual Display Setup) Currently neither my iMac (OSX MNT Lion) or the display can see each other. I am using a Belkin Thunderbolt to HDMI connector and then an HDMI to DVI-D cable. Is there som

  • Exception in Sun App Server 9

    Hi , i was wondering why i get this stacktrace below when i access JSP page [#|2006-10-25T10:58:40.919+0800|SEVERE|sun-appserver-pe9.1|javax.enterprise.system.container.web|_ThreadID=11;_ThreadName=httpWorkerThread-80-0;_RequestID=b573afc9-2776-432e-

  • 4th gen click-wheel iPod not syncing

    I have a 40GB 4th Gen click-wheel iPod that although works fine will not sync with my iTunes. I have done all normal troubleshooting items (5R's, restored factory settings, etc.). I am running it on an HP computer and have all software versions up-to