Record not updating

I had a beautiful application working, decided to rename a
few of the database fields and change the data types to decimals to
enhance the app and now I cannot get a record to update on my
existing update page. I have deleted the recordset and readded it
(no red exclamation points), and relinked all the fields and even
changed the URL parameter on the main page which the EDIT link is
on. I get the correct record to display on the edit page and even
the two dyamic fields are displaying the correct data however when
I click to update the record, it doesn't update. Help
please!

On the first instance of this problem I did change the
datatype from integer to decimal. Went back and changed in the
Update behavior to Double so that I could see the decimal values.
Still can't update records in that database but I have a new issue
with a database that is strictly VARCHAR across the board.
I had the update page working which was built using the
Update Record Wizard. Linked and EDIT button and that worked too.
Updated records just fine. Went to change one of the fields to be a
dropdown list box with the Dynamic value linked to hold the proper
choice in the Update page and now I'm getting the same behavior.
Record displays properly when clicking Edit, values look right,
then I make a change (any change - not just a dropdown choice) and
I get taken back to the original page but no update. This is very
frustrating.
Steve

Similar Messages

  • Delta records not updating from DSO to CUBE in BI 7

    Hi Experts,
    Delta records not updating from DSO to CUBE
    in DSO keyfigure value showing '0' but in CUBE same record showing '-I '
    I cheked in Change log table in DSO its have 5 records
    ODSR_4LKIX7QHZX0VQB9IDR9MVQ65M -  -1
    ODSR_4LKIX7QHZX0VQB9IDR9MVQ65M -   0
    ODSR_4LIF02ZV32F1M85DXHUCSH0DL -   0
    ODSR_4LIF02ZV32F1M85DXHUCSH0DL -   1
    ODSR_4LH8CXKUJPW2JDS0LC775N4MH -   0
    but active data table have one record - 0
    how to corrcct the delta load??
    Regards,
    Jai

    Hi,
    I think initially the value was 0 (ODSR_4LH8CXKUJPW2JDS0LC775N4MH - 0, new image in changelog) and this got loaded to the cube.
    Then the value got changed to 1 (ODSR_4LIF02ZV32F1M85DXHUCSH0DL - 0, before image & ODSR_4LIF02ZV32F1M85DXHUCSH0DL - 1, after image). Now this record updates the cube with value 1. The cube has 2 records, one with 0 value and the other with 1.
    The value got changed again to 0 (ODSR_4LKIX7QHZX0VQB9IDR9MVQ65M - (-1), before image &
    ODSR_4LKIX7QHZX0VQB9IDR9MVQ65M - 0, after image). Now these records get aggregated and update the cube with (-1).
    The cube has 3 records, with 0, 1 and -1 values....the effective total is 0 which is correct.
    Is this not what you see in the cube? were the earlier req deleted from the cube?

  • Info record not updated from PO , PO updated from Info record

    Dear Gurus,
    I want to restrict Base price in PO will be copied from Valid info record. User does not permitted to change the Base price once info record not maintained.
    Kindly tell me the configuration steps to adopt the process ?
    I don't want to update infor record from PO also.
    I know while making PO i can untick infor record not update, but that is user specific.
    Thanks in advance
    With regards
    SD

    Dear Sidi,
    Thanks . Problem solved.
    When info record is maintained the price condition will get from there. for this change in condition type P001 , set "D" in  manual entries column.
    When info record is not maintained, then the system will try to get the price from last PO, if not present, it  will throw an error u201CNet price must be greater than 0u201D and sets price condition PBXX (manual entry) to manually enter the price you want.
    What you can do:
    Is make the condition type P000 as automatic only (option D as below) and also same for condition type PBXX.
    Regards
    Soumen

  • User status profile in Q-info record not updating on UD

    Hi All,
    My required scenario was, delivery of a material from a vendor must pass through inspection series
    u2022     Model
    u2022     Preliminary  
    u2022     Regular delivery 
    For that,
    1). Maintain different inspection types (with corresponding task list usages) and create inspection plans with these usages.
    2). Maintain the corresponding status profiles for the object type QINF and assigned inspection type to each status in 'SM30 - V_TQ32A'
    3). Assign this status profiles in the quality info records for the relevant materials, vendors combination.
    My problem is while GR against PO, inspection lot for the goods receipt is created automatically and system selects the inspection type as assigned to next status, BUT, When Quality person make a UD to inspection lot, the system NOT sets the next status in the status sequence i.e status not updating on UD. And even when UD is done for the existing lot system not allow for GR of next lot. 
    Kindly let me know where I am wrong.
    Regards,

    Hi,
    The problem is due to missing authorization object :B_USERSTAT".
    Assign this authorization object in your id/role and give necessary values in the fields (activity, authorization key, object category and status profile) and then carry out the transaction again.
    Thanks
    SUMIT.

  • User status in Q-info record not updating on UD

    Hi All,
    My required scenario was, delivery of a material from a vendor must pass through inspection series
    u2022     Model
    u2022     Preliminary  
    u2022     Regular delivery 
    For that,
    1). Maintain different inspection types (with corresponding task list usages) and create inspection plans with these usages.
    2). Maintain the corresponding status profiles for the object type QINF and assigned inspection type to each status in 'SM30 -    V_TQ32A'
    3). Assign this status profiles in the quality info records for the relevant materials, vendors combination.
    My problem is while GR against PO, inspection lot for the goods receipt is created automatically and system selects the inspection type as assigned to next status, BUT, When Quality person make a UD to inspection lot, the system NOT sets the next status in the status sequence i.e status not updating on UD. And even when UD is done for the existing lot system not allow for GR of next lot. 
    Kindly let me know where I am wrong.
    Regards,

    closed

  • Status profile in Q-info record not updating on UD

    HI All,
    My required scenario was, delivery of a material from a vendor must pass through inspection series
    u2022     Model
    u2022     Preliminary  
    u2022     Regular delivery 
    For that,
    1). Maintain different inspection types (with corresponding task list usages) and create inspection plans with these usages.
    2). Maintain the corresponding status profiles for the object type QINF and assigned inspection type to each status in 'SM30 - V_TQ32A'
    3). Assign this status profiles in the quality info records for the relevant materials, vendors combination.
    My problem is while GR against PO, inspection lot for the goods receipt is created automatically and system selects the inspection type as assigned to next status, BUT, When Quality person make a UD to inspection lot, the system NOT sets the next status in the status sequence i.e status not updating on UD. And even when UD is done for the existing lot system not allow for GR of next lot. 
    Kindly let me know where I am wrong.
    Regards,

    any clue??
    Regards,

  • Info Record not updating

    All,
    I have created a info record with net price 200 .
    Then I have created a PO for net price 350 .
    I have ticked the ' info update ' .
    But while going to the info record again the net price is not update .
    1. Why it is like this ?
    2. Also tax code I put in the PO which was blank in the info record .
        Tax code is not coming in the same info record , please explain ?
    regards

    Hi Sandeep,
    There are two types of info records,
    one with basic information, no prices etc. but with a PO history (and price history) attached
    the other is the full infor record maintained manually in ME11 and 12.
    The update info record flag on the PO ONLY updates the first type of info record, it does not affect the price etc., this can be added and maintained but only manually via ME11 or ME12.
    So the title of the flag is misleading.
    It works OK if you have the system set up to suggest the last price paid, but if you want to use FULL info records then all it is doing is recording the PO price history against the basic info record.
    Steve B

  • Polling - records not updated

    I created a db connection and selected
    1) Poll for New or Changed records in a table (Step 4)
    2) Update a field in the [table] Table (Logical Delete) (Step 8)
    3) Field: abc Read Value: 1 Unread Value: 0 (Step 9)
    The problem is right now it does not update the field ABC in the table.
    Do you have any ideas?

    Maybe the DB is not being polled at all.
    is this the case?

  • Record not updating into table helpme

    in the following functionmodule record is not commiting into table is there any wrong please hep me.
    FUNCTION Z_MZPR_DETAILS.
    ""Local Interface:
    *"  IMPORTING
    *"     VALUE(ZPRHEADER) TYPE  BAPIMEREQHEADER OPTIONAL
    *"     VALUE(ZPRHEADERX) TYPE  BAPIMEREQHEADERX OPTIONAL
    *"  EXPORTING
    *"     VALUE(ZNUMBER) TYPE  BAPIMEREQHEADER-PREQ_NO
    *"     VALUE(RETURN) LIKE  BAPIRET2 STRUCTURE  BAPIRET2
    *"  TABLES
    *"      ZPRITEM STRUCTURE  BAPIMEREQITEMIMP
    *"      ZPRITEMX STRUCTURE  BAPIMEREQITEMX OPTIONAL
    *"      ZPRACCOUNT STRUCTURE  BAPIMEREQACCOUNT OPTIONAL
    *"      ZPRACCOUNTX STRUCTURE  BAPIMEREQACCOUNTX OPTIONAL
    DATA:ITAB LIKE TABLE OF ZPRDETAILS WITH HEADER LINE,
         ZRETURN LIKE TABLE OF RETURN WITH HEADER LINE.
    CALL FUNCTION 'BAPI_PR_CREATE'
    EXPORTING
       PRHEADER                    = ZPRHEADER
       PRHEADERX                   = ZPRHEADERX
      TESTRUN                     =
    IMPORTING
       NUMBER                      = ZNUMBER
      PRHEADEREXP                 =
      TABLES
       RETURN                      = ZRETURN
       PRITEM                      = ZPRITEM
       PRITEMX                     = ZPRITEMX
      PRITEMEXP                   =
      PRITEMSOURCE                =
       PRACCOUNT                   = ZPRACCOUNT
      PRACCOUNTPROITSEGMENT       =
       PRACCOUNTX                  = ZPRACCOUNTX.
      PRADDRDELIVERY              =
      PRITEMTEXT                  =
      PRHEADERTEXT                =
      EXTENSIONIN                 =
      EXTENSIONOUT                =
      PRVERSION                   =
      PRVERSIONX                  =
      ALLVERSIONS                 =
    ITAB-BANFN = ZNUMBER.
    APPEND ITAB.
    IF ZRETURN-NUMBER = '000'.
    UPDATE ZPRDETAILS from TABLE ITAB.
    COMMIT WORK.
    ENDFUNCTION.

    HI,
    IF ZRETURN-NUMBER = '000'.
    <b>MODIFY ZPRDETAILS from TABLE ITAB.</b>
    COMMIT WORK.
    <b>ENDIF.</b>
    Best regards,
    Prashant

  • URGENT:  master data records not updating

    hi all,
    this is all in Prod server.
    i have first level C1 center infoobject in BW and second level C2 center infoobject.
    C1 has data like
    center-<i>1234,</i>
    valid from : <i>01.01.1000</i>
    valid to: <i>31.12.2006</i>again another record for the same center
    center-<i>1234</i>
    valid from : <i>01.01.2007</i>
    valid to: <i>31.12.9999</i>
    so when i do the full update from C1 to C2 then C2 should also have the same data as above but it C2 is having only this record
    center: <i>1234</i>
    valid from: <i>01.01.1000</i>
    valid to: <i>31.12.9999</i>
    it was not the case before, i had very fine data in C2 just like in C1 because C2<-C1 (C2 gets data from C1)
    i have tried with options like start date 01.01.1000 end date 31.12.9999 in the infopackage settings under <i>Update</i> tab
    I have gone for simulate update of the pacage in every step of transfer rules, communcation structure and update of data target. the transfer rules has the fine data as in C1 but when it is landing in C2, valid to and valid from is 01.01.1000 and 31.12.9999, it is not fetching interval records with valid to 01.01.2007 to 31.12.9999
    Please suggest what i must do to have the same data which is there in C1 object in C2.

    hi lieu,
    logically u r center means it is valid through out year (01.01.1000--31.12.9999).
    load center for one time zone the system automatically partions the second half.
    you can refer c1 to c2. this may be simple.
    bye.

  • 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

  • Not Updating Customized Table when System having Performance Issue

    Hi,
    This is actually the same topic as "Not Updating Customized Table when System having Performance Issue" which is posted last December by Leonard Tan regarding the user exit EXIT_SAPLMBMB_001.
    Recently we changed the program function module z_mm_save_hide_qty to update task. However this causes more data not updated. Hence we put back the old version (without the update task).  But now it is not working as it used to be (e.g. version 1 - 10 records not updated, version 2 with update task - 20 records not updated, back to version 1 - 20 records not updated).
    I tried debugging the program, however whenever I debugged, there is nothing wrong and the data is updated correctly.
    Please advise if anyone has any idea why is this happening. Many thanks.
    Regards,
    Janet

    Hi Janet,
    you are right. This is a basic rule not to do any COMMIT or RFC calls in a user exit.
    Have a look at SAP note 92550. Here they say that exit EXIT_SAPLMBMB_001 is called in the update routine MB_POST_DOCUMENT. And this routine is already called in UPDATE TASK from  FUNCTION 'MB_UPDATE_TASKS' IN UPDATE TASK.
    SAP also tells us not to do any updates on SAP system tables like MBEW, MARD, MSEG.
    Before the exit is called, now they call 'MB_DOCUMENT_BADI' with methods MB_DOCUMENT_BEFORE_UPDATE and MB_DOCUMENT_UPDATE. Possibly you have more success implementing the BADI.
    I don't know your situation and goal so this is all I can tell you now.
    Good luck!
    Regards,
    Clemens

  • 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.

  • End routine not updating all records

    Hi,
    I have an end routine to update a cube from another cube.
    The routine has two loops, one child loop inside the main loop. Result Package was sorted before the loops.
    Now, not all records were updated in the target infocube as per expectation. Also, when I pick one such record (that did not get updated) and debug, interestingly it shows that expected value has been assigned to the relevant field. And if I upload only that specific record to the cube, the record does get updated with expected value.
    The problem seem to appear only when the whole set of data is loaded.
    Any suggestion about the coding or further debugging will be greatly appreciated.
    Thanks,
    Pranab

    HI,
    check if u r using any internal tables, make this itab refresh at correct point.i tmight be sumtimes create problem.
    else paste ur code here...
    thnks.

  • Not all records are updated in DSO

    Dear Friends
         My Scenario is SAP - FM -> DataSource -> InfoPackage -> DTP ->Transformation - > DSO.
         I have 896 Records in my PSA , but when I run DTP to load the data in DSO only 817 records are added, rest records are not updated.  I have supplied
    Purchasing organization             0PURCH_ORG
    Purchasing Group                      0PUR_GROUP
    Vendor                                      0VENDOR 
    BW: Document Number              0DOC_NUM
    BW: Document Item Number      0DOC_ITEM
    Material                                    0MATERIAL
    Accounting document number    0AC_DOC_NO
    Item in Material Document         ZZEILE
    as key fields of DSO.
    can you suggest me what could be possible reason for not having all the records.
    Regards
    Naim

    Hi,
    is it full load?
    Have you applied any filters at dtp level?
    if its full load then delete whole psa data and dso data.
    reload them again and see the count.
    As per dso primary keys, same combination data will over write it.
    how many records count you see at dso-->manage-->request tab
    Added and transferred.
    Thanks

Maybe you are looking for

  • How do I change tempo (batch samples)?

    Hi, I have a bunch of loops - 2 to 4 bars in length - melodic... at 120 BPM. My project is at 70 BPM. The loops at 120 BPM are melodic - and even feel like halftime (60 bpm). I would like to get all the samples to my project tempo. The loops are .wav

  • Adobe Reader 10.1.1 will not open .pdfs

    Adobe was working just fine when I was using it earlier this morning until I logged off to let another employee briefly use my computer. Since then I keep receiving an error message that says "Adobe Reader  has encountered a problem and needs to clos

  • IMac or MacBook? Have some questions

    iMac or MacBook? Have some questions. If I get a MacBook can I plug an existing monitor I have in via a USB? I could then just add a wireless keyboard as we were originally looking for a desktop but the portability of a MacBook is appealing

  • Render a pdf in ShowOneTab component in ADF

    Hi I am trying to render a inline pdf in a ADF page on click of a tab. i have used iframe and embed tags to render the pdf's inline. but the problem is that i do not have control on the location in which iframe object is rendered (the iframe is alway

  • ORA-00911:invalid operator

    hi, I've a procedure with this sql statment: sql_statement := 'SELECT COUNT ('||col_nam||') from '||tab_nam||' where '||col_nam||' like ''%jeopardy%'''; How must i write this statement correctly? Thanks for help Nicole