Valid Records Update, Reporting Possible (Request Green)

Hi, My company operates change run every night.
Yesterday, an error occured when loaded data from DSO to cube.
I guess that there was strange character BW can't recognize.
Because error had been handled too late, a whole chain was delayed.
I don't want that this situation happen again.
I want to skip the error records  so that change run can be operated on schedule.
As I know, It is possible by using "Valid Records Update, Reporting Possible (Request Green)" option on DTP.
But, I heard that when I apply this option, there will be no error logs. Is it right?
I think It can cause the problem of data consistency.
So, I have question.
1. Can I get error logs using "Valid Records Update, Reporting Possible (Request Green)" option?
2. Is there any other way to know existence of invalid records (even if chain skip that record)
3. If question 1 or 2 are not possible, can an customizing abap program perform this action?
Thank you.

Hi,
can you discribe what's your master data check is like. Propably not your skip record exception is rissen but another exception by sap standard masterdata check. It's behviour may differ from the skip record exception you are expecting.
Check http://help.sap.com/saphelp_nw70/helpdata/en/42/fbd598481e1a61e10000000a422035/content.htm for other types of exception by SAP errorhandling.
Regards Michael

Similar Messages

  • Validations for updatable report

    I have an updatable SQL report where one of the columns is displayed as a textfield. Any changes that the user makes to the data is collected by an automatic Multi-Row Update process and appears in the database.
    The problem is that I would like to validate the edited textfields (such as making sure that the user doesn't enter a value over a certain number) before entering the changes into the database. Could anyone offer any help for this problem?
    Thanks!

    Hi ,
    You can create a page validation :
    PL/SQL --> Function Returning Error Text
    For example :
    DECLARE
       loc_i                 VARCHAR2 (4000);
    BEGIN
       FOR i IN 1 .. HTMLDB_APPLICATION.g_f01.COUNT
       LOOP
          IF     HTMLDB_APPLICATION.g_f0x (i) > 1 --refers to edited texfield
          THEN
             loc_i := loc_i || ', ' || i;
          END IF;
       END LOOP;
       IF loc_i IS NULL
       THEN
          NULL;
       ELSE
          RETURN    'Value > 1 on line(s) :</br>'
                 || LTRIM (loc_i, ', ');
       END IF;
    END;Hope this helps,

  • Checkboxes - htmldb_item.checkbox multi-record updatable report

    htmldb_item.checkbox can be used to display retrieved database values as a check box (e.g. a Y/N Flag).
    These can also be added to an updateable report in a multi-record tab.
    When a new record is created on the multi-row tab however there appears to be no way to render a checkbox. Instead a text box appears instead.
    Is there any way to acheive this?
    This data needs to be present in a multi -row layout
    Thanks
    BTW - I have checked the docos and read the forums.

    Firstly, thank you for the reply.
    I must clarify what I am doing.
    I have a table that has a column in it that is called ZEROFUEL. This can have a value of either Y or N. The user wants a block of these records (say eight) per screen. This column need to be represented by a checkbox. I manage this by calling the NVL(htmldb_item.checkbox(10,ID, DECODE (ZEROFUEL,'Y','CHECKED')),'N')ZEROFUEL, in the report select statement.
    The automatic checkbox (for deletion) is added by the wizard no problem. It is the checkbox for the column ZEROFUEL I am having the problem with.
    If I do not render the checkbox from the sql select then the wizard just creates a little text field display.
    Everything works fine until I press the ADD button. A new record pops up on the bottom of the block with no checkbox on the ZEROFUEL column.
    Eventually there are four columns I need to display as a checkbox. These all need to be displayed in the multi-record tab.
    Am I missing something.
    Thanks

  • Recording device reported illegal request: buffer underrun

    "Errors found during the burning process....illegal request: Buffer underrun (0x21, 0x02)"
    Any suggestions?
    Thanks, Kim

    Hello Kim,
    a buffer underrun occurs when the data stream to the burner is interrupted (i.e. the data is not coming fast enough). As the burner cannot interrupt the burn process, it is being aborted.
    This error is commonly associated with burn speed and/or incompatible DVD media. You might want to try to create a disk image and burn that with either Disk Utility or Toast (both apps allow you to control burn speed - iDVD does not).
    iDVD 4 disc image burning can be enabled through the patch HPfurz:
    http://homepage.mac.com/geerlingguy/macsupport/mac_help/pages/0015-burn_idvdother.html
    burn at slow speed (2x) and use high quality DVD-R media (e.g. Verbatim)
    hope this helps
    mish

  • Error in updatable report

    Hi All,
    I need to add validation to updatable report.
    As the report doesnot have items, I am using collection package.
    eg:
    select
    htmldb_item.select_list_from_query(9,em_agent,'select em_agent, em_agent from IBM_MANAGED_DATABASES') em_agent,
    htmldb_item.select_list_from_query(10,em_in_scope,'select em_in_scope, em_in_scope from IBM_MANAGED_DATABASES') em_in_scope
    from "#OWNER#"."IBM_MANAGED_DATABASES" d, ibm_servers s
    where d.server = s.server
    When I run the page, I am getting an error
    report error:
    ORA-06502: PL/SQL: numeric or value error: character string buffer too small
    The same thing I implemented on emp ,dept tables in apex training instance and it works.
    Can anyone please address where I am going wrong in actual implementation.
    Thanks.

    Sarvani,
    I am sorry I did not get you "or change your handle to show it".I mean go to the Control Panel link (top right of on my page) and make your handle something like "Sarvani". While you are there click "Show" for your name and put at least your first name there. Messages are a lot easier to track when they are associated with human-sounding names.
    Is that you are pointing to the way I explained the problem.I don't know what you mean by that.
    My report has 1045 columns...1045 rows
    and as you suggested I used apex_item.popupkey_from_query...I first suggested that you try select_list_from_query_xl. Did you try that? I don't think it will help because you are returning so many rows but you could try it.
    Then you tried the popupkey_from_query. I am not clear if the page doesn't run and gives a 404 or if the page runs and the popup page gets a 404.
    When you put the test case on apex.oracle.com, we will be debugging the popup item but it will be much easier if you can first check your Apache logs on your system and get the error message.
    Scott

  • Opening updated report fails because record selection filter is invalid

    I am trying to update a report stored in BOE XI.  The report has been modified and the main part of the report has been moved to a subreport.   I first replace the .rpt file with the updated report.  Then I attempt to open the report using the code below it, but it throws an error and complains about an unknown field being mentioned in the filter
    oReportAppFactory = (IReportAppFactory) es.getService("", "RASReportService");
    oReportClientDocument = oReportAppFactory.openDocument((IInfoObject) oReport, 0, Locale.ENGLISH);
    ERROR MESSAGE: Cannot open report document. --- This field name is not known.
    Details: errorKind
    Error in File /opt/bobje/bobje/tmp/{F395AC11-26FC-11DF-A70C-00065B8B38B5}.rpt:
    Error in formula  <Record Selection>.
    '// Filter on desired date range
    This field name is not known.
    Details: errorKind
    If I manually delete the record selection filter in CMC before upgrading the report all works fine.  So, do I need to remove the filter before attempting to open the report or is there another step I'm missing to refresh the report using the newly updated .rpt file? 
    thanks,
    Brett

    The relevant part of the stacktrace is below.  
    java.lang.UnsupportedOperationException
            at com.crystaldecisions.sdk.properties.internal.AbstractSDKList.remove(Unknown Source)
            at java.util.AbstractList$Itr.remove(AbstractList.java:436)
            at com.crystaldecisions.sdk.plugin.desktop.common.internal.i.do(Unknown Source)
            at com.crystaldecisions.sdk.plugin.desktop.report.internal.e.f(Unknown Source)
            at com.crystaldecisions.sdk.plugin.desktop.report.internal.e.f(Unknown Source)
            at com.crystaldecisions.sdk.plugin.desktop.report.internal.e.refreshProperties(Unknown Source)
    The context is the same as the original post...
    An existing report is being updated.  The original report uses a single view and has a record selection filter.  The updated report uses the same view in a subreport, and the main report has no record selection filter.
    .rpt file is updated using IReport.replaceUnique(int, File).  
    Changes are committed to IInfoStore -> iStore.commit(IReport)
    Refresh options are enabled
    IReportRefreshOptions refreshOptions = oReport.getReportRefreshOptions();
    refreshOptions.removeOption(IReportRefreshOptions.CeRefreshOption.TITLE);
    refreshOptions.removeOption(IReportRefreshOptions.CeRefreshOption.DESCRIPTION);
    refreshOptions.addOption(IReportRefreshOptions.CeRefreshOption.PROMPT_VALUES);
    refreshOptions.addOption(IReportRefreshOptions.CeRefreshOption.RECORD_SELECTION_FORMULA);
    refreshOptions.addOption(IReportRefreshOptions.CeRefreshOption.GROUP_SELECTION_FORMULA);
    refreshOptions.addOption(IReportRefreshOptions.CeRefreshOption.PRINTER_OPTIONS);
    refreshOptions.addOption(IReportRefreshOptions.CeRefreshOption.DEFAULT_LOGON_INFO_VALUES);
    Properties are then refreshed using IReport.refreshProperties() which throws the UnsupportedOperationException
    changes are again committed.
    thanks,
    Brett

  • The recording device reported the illegal request: Unknown device

    Has anybody any idea? I am not able to output a dvd-9 (dvd + dl). there is always the message: the recording device reported the illegal request: unknown device. The layersize is ok and the dual layer brake is set.

    I don't have the exact error message with me, but that sounds similar. I bought a new DVR-115 for my Mac Pro and put the existing DVR-112 in the bottom slot. The DVR-115 worked fine for a month or so, then started getting that or a similar error. I replaced it under warranty and soon got the same thing. Then I Googled the error message an found many people having the same problem, even people with PCs. Now I just burn with the DVR-112, not worth resolving. BUT, I could be remembering the error message incorrectly, so Google and see what you get.

  • Update records in Reports

    Hi!
    Can I update records in Reports at the same time that Im printing theirs ?
    If It is posible, where ?
    Thanks in advance

    Actually that isn't true - you don't need to do an srw.do_sql().
    You can insert/update records anywhere that you can write PL/SQL (global report triggers, formula columns, format triggers, etc.). In your case I'd recommend using a formula column (since this is guaranteed to fire once per group record).
    Hope this helps,
    Danny

  • How to add a new record in updatable report using apex_item

    Hi,
    i am using an updatable report using the following select
    select
    aPEX_ITEM.POPUP_FROM_QUERY(2,emp_code,
    ' SELECT emp_surname, emp_code FROM hrm_employee ' ,null,null,null,null,null,'onchange="f_set_multi_items_tabular(this.value ''#ROWNUM#'''
    || ')"',null,null,null) PF_No,
    apex_item.text (32,
    NULL,
    80,
    100,
    'style="width:190px" ',
    'f11_' || '#ROWNUM#'
    ) Name,
    " REST_DATE",
    "REMARKS",
    from "roster"
    when i click on the button add row , only the column rest_date and the remarks are enable.
    why is the apex_item.text and apex_item_popup_from_query is disable ? and how i can make it enable.
    thanks
    regards
    jerry

    I could see that you are using the addRow() function to generate new blank row.
    I guess, this function(used by the builtin tabular form s) , identifies editable columns when they are marked so at the report column attributes.
    When you use apex_item API, it expects the columns to be standard report column and hence render the new rows as such.
    Some one from the development team might be able to give a better answer on that.
    As for avoiding this issue
    <li>One method , would be to define the columns editable(and display types) in report column attributes.
    <li> You can duplicate the last row using jQuery( *$('tr.highlight-row:last).after( $('tr.highlight-row:last).clone() )* ) and removing the field values, but events(for example datepicker) would remain attached to the original row , so it isn't very straightforward either.
    <li>If you want to use apex_item you would have to use a pseudo union to DUAL for generating a blank row and re-render the report either by a page load or a Dynamic Action. Sounds like a nice idea for a plugin.
    Now , if you want to add rows multiple times without saving them, then you would need to store the values in a collection at load and update the collection before adding the row.

  • SM12 "Diagnosis in update" reports "Error discovered"

    Diagnosis in update reports the following in SM12:
    09.10.2007                     Dynamic List Display                            1
    Diagnosis in Update
    Line
    Step 1: Owner Keys / Dialog / Update
    ok.
    ENQKEY = 20071009203712187000000300*********.......................
    ENQKVB = 20071009203712187000010300*********.......................
    Step 2: Set Lock for Update
    ENQKEY = 20071009203712187000010300*********.......................
    ENQKVB = 20071009203712187000010300*********.......................
    Object: ENQ_TEST
    Granule: ENQ_TEST E ENQ_TEST ENQ_TEST ENQ_TEST ENQ_TEST
    ok.
    Step 3: Update Call, Pass On Lock
    ok.
    Step 4: Lock Passed On
    ok.
    Step 5: Wait for Update to End, Max.20 seconds
    Update not completed after (seconds):    20
    Locks not deleted
    Step 6: Read Locks Messages from the Update
    Step 7: Delete Locks
    Error discovered ******************
    Messages Received from Update
    -No-  -Time- -
    Message Text -
    ENQ_TEST ENQ_TEST ENQ_TEST ENQ_TEST
    It is not possible for functional people to create/change any entry in table LFA1
    I am able to see 3 update work process in SM50 out of which 2 shows to be running
    but with a time entry as 496297 and 494093
    Searching in SDN did not yielded much help.
    Can anyone please help?
    Regards,

    Ruchit,
    I am not able to interpret the information it is showing for the two processess.
    But, it says that there is a sequential read going on, on table KOCLU and a report named SAPLV45U is running.
    But there are no user except myself and one more in the system.
    SM13 shows 10 update records. 2 have status enqueues deleted(shown in red).
    Rest others show status initial(shown in green)
    Please guide as to how interpret information about the work process if needed.
    Regards,

  • Validation in alv report

    Hi friends i am new to abap.i am doing some validation in my report .my program is executing properly but i need  some modification.... its alv report on bapi for GOODS MOVEMENT TYPE For tht i am uploading a flat file using gui_upload.but i need some modification on validation..this program is abt goods transfer from one plant to another plant,s location .so in my flat file i am having material,from plant ,from location,to plant,to location and quantity .here is the code:
    *&      Form  VALIDATE_DATA
    1.Check Material in Table MARC >> Material Plant Validation
    If not found, Fill Remarks with 'Material Not Found in Plant'
    2.Check Plant is Assigned to POrg in Table T024W >> Plant POrg Validation
    If not found, Fill Remarks with 'Invalid POrg for Plant'
    3.Check Location for Plant and Location in Table T001L >> Plant SLoc Validation
    If not found, Fill Remarks with 'Invalid Storage Location for Plant'
    FORM validate_data .
      DATA: lv_ekorg TYPE t024e-ekorg.
    Get POrg for CompanyCode
      SELECT SINGLE ekorg INTO lv_ekorg FROM t024e
            WHERE bukrs EQ p_bukrs.
      LOOP AT it_final.
    Check-1
        SELECT SINGLE * FROM marc
                        WHERE matnr = it_final-matnr
                          AND werks = it_final-f_werks.
        IF sy-subrc = 4.
          it_final-remark = 'Material Not Found in Plant'.
          MODIFY it_final.
        ELSE.
    Check-2
          SELECT SINGLE * FROM t024w
                       WHERE werks = it_final-t_werks
                         AND ekorg = lv_ekorg.
          IF sy-subrc = 4.
            it_final-remark = 'Invalid POrg for Plant'.
            MODIFY it_final.
          ELSE.
    Check-3
            SELECT SINGLE * FROM t001l
                                 WHERE werks  = it_final-t_werks
                                  AND lgort = it_final-t_lgort.
            IF sy-subrc = 4.
              it_final-remark = 'Invalid Storage Location for Plant'.
              MODIFY it_final.
            ENDIF.
          ENDIF.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " VALIDATE_DATA
    for this code i am getting output as if plant value is wrong then there will be a remark in the output as material is 'Material Not Found in Plant'....and as same for location n purchase organization....
    But in my output i want ,if there is plant n location is wrong the then 2 remarks should display in 2 rows but like wise now i am getting only one remark for 2 errors also..........getting  remark based on first condition....
    can any one help me hw to solve ...

    *& Report  YSG_IM_F2_002                                               *
    *&   This object is  for goods transfer from one plant to another      *
    *&   plant using FM-BAPI_GOODSMVT_CREATE                               *
    REPORT  YSG_IM_F2_002                           .
    TABLES: marc, t024w, t001l.
    TYPE-POOLS:slis.
    TYPES:  BEGIN OF i_list,
            matnr LIKE mard-matnr,
            f_werks LIKE mard-werks,
            f_lgort LIKE mard-lgort,
            t_werks LIKE mard-werks,
            t_lgort LIKE mard-lgort,
            labst LIKE mard-labst,
            remark TYPE c,
           END OF i_list.
    TYPES: BEGIN OF i_mara,
           matnr LIKE mara-matnr,
           END OF i_mara.
    TYPES:BEGIN OF i_marc,
          matnr LIKE marc-matnr,
          werks LIKE marc-werks,
          END OF i_marc.
    TYPES: BEGIN OF i_mard,
            matnr LIKE mard-matnr,
            f_werks LIKE mard-werks,
            f_lgort LIKE mard-lgort,
            t_werks LIKE mard-werks,
            t_lgort LIKE mard-lgort  ,
            labst LIKE mard-labst,
            END OF i_mard.
    TYPES: BEGIN OF i_t001l,
           bukrs TYPE t001l-werks,
           lgort TYPE t001l-lgort,
           END OF i_t001l.
    TYPES: BEGIN OF i_t024e,
           ekorg TYPE t024e-ekorg,
           bukrs TYPE t024e-bukrs,
           END OF i_t024e.
    TYPES: BEGIN OF i_mkpf,
           xblnr type mkpf-xblnr,
           END OF i_mkpf.
    TYPES: BEGIN OF i_final,
           matnr LIKE mard-matnr,
           f_werks LIKE mard-werks,
           f_lgort LIKE mard-lgort,
           t_werks LIKE mard-werks,
           t_lgort LIKE mard-lgort,
           labst type c ,
           remark(50) type c,
          END OF i_final.
    DATA : filename TYPE string,
           title type c.
    DATA: it_list TYPE STANDARD TABLE OF i_list WITH HEADER LINE,
          it_mara TYPE STANDARD TABLE OF i_mara WITH HEADER LINE,
          it_marc TYPE STANDARD TABLE OF i_marc WITH HEADER LINE,
          it_mard TYPE STANDARD TABLE OF i_mard WITH HEADER LINE,
          it_t001l TYPE STANDARD TABLE OF i_t001l WITH HEADER LINE,
          it_t024e TYPE STANDARD TABLE OF i_t024e WITH HEADER LINE,
          it_mkpf TYPE STANDARD TABLE OF i_mkpf WITH HEADER LINE,
          it_final TYPE STANDARD TABLE OF i_final WITH HEADER LINE.
    DATA: fs_fldcat TYPE slis_fieldcat_alv ,   "Structure for Field catalog
          it_fldcat LIKE TABLE OF fs_fldcat,
          layout    TYPE slis_layout_alv,
          V_REPID   LIKE sy-repid.
    DATA: GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,
          EVENTS TYPE SLIS_T_EVENT,
          GW_EVENT       TYPE SLIS_ALV_EVENT,
          GI_LISTHEADER  TYPE SLIS_T_LISTHEADER.
    DATA: lv_matnr TYPE mara-matnr,
          lv_ekorg TYPE t024e-ekorg.
    DATA: BEGIN OF gmhead.
            INCLUDE STRUCTURE bapi2017_gm_head_01.
    DATA: END OF gmhead.
    DATA: BEGIN OF gmcode.
            INCLUDE STRUCTURE bapi2017_gm_code.
    DATA: END OF gmcode.
    DATA: BEGIN OF mthead.
            INCLUDE STRUCTURE bapi2017_gm_head_ret.
    DATA: END OF mthead.
    DATA: BEGIN OF itab OCCURS 100.
            INCLUDE STRUCTURE bapi2017_gm_item_create.
    DATA: END OF itab.
    DATA: BEGIN OF errmsg OCCURS 10.
            INCLUDE STRUCTURE bapiret2.
    DATA: END OF errmsg.
    *data: wmenge like iseg-menge,
         errflag.
    *Selection Screen Declaration
    SELECTION-SCREEN BEGIN OF BLOCK blk WITH FRAME TITLE text-001.
    PARAMETERS: p_bukrs LIKE t024e-bukrs OBLIGATORY,
                ekorg LIKE t024e-ekorg,
                f_file LIKE ibipparms-path OBLIGATORY,
                xblnr like mkpf-xblnr,
                Doc_Post type checkbox.
    SELECTION-SCREEN END OF BLOCK blk .
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR f_file .
      CLEAR f_file.
      CALL FUNCTION 'F4_FILENAME'
       EXPORTING
         PROGRAM_NAME  = .
         DYNPRO_NUMBER = SYST-DYNNR
        IMPORTING
          file_name     = f_file.
    START-OF-SELECTION.
      filename = f_file.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename                = filename
          filetype                = 'ASC'
          has_field_separator     = 'x'
        TABLES
          data_tab                = it_final
        EXCEPTIONS
          file_open_error         = 1
          file_read_error         = 2
          no_batch                = 3
          gui_refuse_filetransfer = 4
          invalid_type            = 5
          no_authority            = 6
          unknown_error           = 7
          bad_data_format         = 8
          header_not_allowed      = 9
          separator_not_allowed   = 10
          header_too_long         = 11
          unknown_dp_error        = 12
          access_denied           = 13
          dp_out_of_memory        = 14
          disk_full               = 15
          dp_timeout              = 16
          OTHERS                  = 17.
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      PERFORM validate_data.
      PERFORM bapi_goods_mvt.
      PERFORM alv_grid_display.
    endif.
    PERFORM BAPI_GOODS_MVT.
    *&      Form  VALIDATE_DATA
    1.Check Material in Table MARC >> Material Plant Validation
    If not found, Fill Remarks with 'Material Not Found in Plant'
    2.Check Plant is Assigned to POrg in Table T024W >> Plant POrg Validation
    If not found, Fill Remarks with 'Invalid POrg for Plant'
    3.Check Location for Plant and Location in Table T001L >> Plant SLoc Validation
    If not found, Fill Remarks with 'Invalid Storage Location for Plant'
    FORM validate_data .
    Get POrg for CompanyCode
      SELECT SINGLE ekorg INTO lv_ekorg FROM t024e
            WHERE bukrs EQ p_bukrs.
      LOOP AT it_final.
    Check-1
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
          EXPORTING
            input  = it_final-matnr
          IMPORTING
            output = lv_matnr.
        SELECT SINGLE * FROM marc
                        WHERE matnr = lv_matnr
                          AND werks = it_final-f_werks.
         IF sy-subrc <> 0.
          it_final-remark = 'Material Not Found in Plant'.
          append it_final .
         endif  .
        SELECT SINGLE * FROM marc
                       WHERE matnr = lv_matnr
                         AND werks = it_final-t_werks.
         IF sy-subrc <> 0.
          it_final-remark = 'Material Not Found in Plant'.
          append it_final .
         endif.
    Check-2
          SELECT SINGLE * FROM t024w
                       WHERE werks = it_final-t_werks
                         AND ekorg = lv_ekorg.
          IF sy-subrc <> 0.
            it_final-remark = 'Invalid POrg for Plant'.
                  append it_final .
          Endif.
          SELECT SINGLE * FROM t024w
                       WHERE werks = it_final-f_werks
                         AND ekorg = lv_ekorg.
          IF sy-subrc <> 0.
            it_final-remark = 'Invalid POrg for Plant'.
                 append it_final .
          Endif.
    Check-3
            SELECT SINGLE * FROM t001l
                                 WHERE werks  = it_final-t_werks
                                  AND lgort = it_final-t_lgort.
            IF sy-subrc <> 0.
              it_final-remark = 'Invalid Storage Location for Plant'.
                    append it_final .
            ENDIF.
            SELECT SINGLE * FROM t001l
                                  WHERE werks  = it_final-f_werks
                                   AND lgort = it_final-f_lgort.
            IF sy-subrc <>  0.
              it_final-remark = 'Invalid Storage Location for Plant'.
                   append it_final .
            ENDIF.
         ENDIF.
       ENDIF.
      ENDLOOP.
    ENDFORM.                    " VALIDATE_DATA
    *&      Form  ALV_GRID_DISPLAY
          text
    FORM alv_grid_display.
      DATA:l_edit TYPE lvc_s_glay.
      PERFORM build_fieldcat.
      PERFORM layout_build  USING layout.
      PERFORM fill_list_header USING gi_listheader.
      v_repid = sy-repid.
      gw_event-name = slis_ev_top_of_page.
      gw_event-form = 'TOP_OF_PAGE'.
      APPEND gw_event TO events.
      l_edit-edt_cll_cb = 'X'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
         i_callback_program                = V_REPID
        i_callback_pf_status_set          = 'SET_PF_STATUS'
       I_CALLBACK_USER_COMMAND           = ' '
       I_CALLBACK_TOP_OF_PAGE            = ' '
        i_grid_title                      = title
       I_GRID_SETTINGS                   =
         is_layout                         = layout
         it_fieldcat                       = it_fldcat
         i_save                            = 'x'
       IS_VARIANT                        =
        IT_EVENTS                         = events
        TABLES
          t_outtab                          = it_final
       EXCEPTIONS
         program_error                     = 1
         OTHERS                            = 2
      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.                    "ALV_GRID_DISPLAY
    *&      Form  build_fieldcat
          text
    FORM build_fieldcat.
      PERFORM fieldcat  USING: 'IT_FINAL'       "Internal table name
                               'MATNR'         "CREDIT CONTROL AREA
                               '10'             "length
                               'MATERIAL'   "Description
                               'L'             "Dictionary long text
                               ' '             "Database table name
                               ' '             "Database tab' field name
                               ' '             "Justification R/M/L
                               ' '             "To do total
                               ' '             "emphasize
                               ' '             "emphasize
                               ' '             "emphasize
                               ' '            "Data type
                               ' '            "edit.
                               ' '.          "round
      PERFORM fieldcat USING: 'IT_FINAL'       "Internal table name
                               'F_WERKS'         "CREDIT CONTROL AREA
                               '10'             "length
                               'FROM PLANT'   "Description
                               'L'             "Dictionary long text
                               ' '             "Database table name
                               ' '             "Database tab' field name
                               ' '             "Justification R/M/L
                               ' '             "To do total
                               ' '             "emphasize
                               ' '             "emphasize
                               ' '             "emphasize
                               ' '            "Data type
                               ' '          "edit.
                               ' '.          "round
      PERFORM fieldcat  USING: 'IT_FINAL'       "Internal table name
                                'F_LGORT'         "CREDIT CONTROL AREA
                                '10'             "length
                                'LOCATION'   "Description
                                'L'             "Dictionary long text
                                ' '             "Database table name
                                ' '             "Database tab' field name
                                ' '             "Justification R/M/L
                                ' '             "To do total
                                ' '             "emphasize
                                ' '             "emphasize
                                ' '             "emphasize
                                ' '            "Data type
                                ' '           "edit.
                                ' '.          "round
      PERFORM fieldcat USING: 'IT_FINAL'       "Internal table name
                                'T_WERKS'         "CREDIT CONTROL AREA
                                '10'             "length
                                'TO PLANT'   "Description
                                'L'             "Dictionary long text
                                ' '             "Database table name
                                ' '             "Database tab' field name
                                ' '             "Justification R/M/L
                                ' '             "To do total
                                ' '             "emphasize
                                ' '             "emphasize
                                ' '             "emphasize
                                ' '            "Data type
                                ' '           "edit.
                                ' '.          "round
      PERFORM fieldcat  USING: 'IT_FINAL'       "Internal table name
                              'T_LGORT'         "CREDIT CONTROL AREA
                              '10'             "length
                              'LOCATION'   "Description
                              'L'             "Dictionary long text
                              ' '             "Database table name
                              ' '             "Database tab' field name
                              ' '             "Justification R/M/L
                              ' '             "To do total
                              ' '             "emphasize
                              ' '             "emphasize
                              ' '             "emphasize
                              ' '            "Data type
                              ' '            "edit.
                              ' '.            "round
      PERFORM fieldcat USING: 'I_FINAL'       "Internal table name
                              'LABST'         "CREDIT CONTROL AREA
                                '10'             "length
                                'QUANTITY'   "Description
                                'L'             "Dictionary long text
                                ' '             "Database table name
                                ' '             "Database tab' field name
                                ' '             "Justification R/M/L
                                ' '             "To do total
                                ' '             "emphasize
                                ' '             "emphasize
                                ' '             "emphasize
                                ' '            "Data type
                                ' '            "edit.
                                ' '.           "round
      PERFORM fieldcat USING: 'I_FINAL'       "Internal table name
                                'REMARK'         "CREDIT CONTROL AREA
                                '50'             "length
                                'REMARK'   "Description
                                'L'             "Dictionary long text
                                ' '             "Database table name
                                ' '             "Database tab' field name
                                ' '             "Justification R/M/L
                                ' '             "To do total
                                ' '             "emphasize
                                ' '             "emphasize
                                ' '             "emphasize
                                ' '            "Data type
                                ' '            "edit.
                                ' '.           "round
    ENDFORM.                    "build_fieldcat
    *&      Form  fieldcat
          text
    FORM fieldcat  CHANGING value(p_tname)
                            value(p_fname)
                            value(p_length)
                            value(p_ltext)
                            value(p_typet)
                            value(p_rtab)
                            value(p_rfield)
                            value(p_just)
                            value(p_dosum)
                            value(p_emphasize)
                            value(p_datatype)
                            value(p_no_zero)
                            value(p_hotspot)
                            value(p_edit)
                            value(p_round).
      fs_fldcat-tabname       = p_tname.
      fs_fldcat-fieldname     = p_fname.
      fs_fldcat-outputlen     = p_length.
      fs_fldcat-seltext_l     = p_ltext.
      fs_fldcat-input         = p_typet.
      fs_fldcat-edit          = p_rtab.
      fs_fldcat-ref_fieldname = p_rfield.
      fs_fldcat-just          = p_just.
      fs_fldcat-do_sum        = p_dosum.
      fs_fldcat-emphasize     = p_emphasize.
      fs_fldcat-datatype      = p_datatype.
      fs_fldcat-lzero         =  p_no_zero.
      fs_fldcat-hotspot       = p_hotspot.
      fs_fldcat-edit          = p_edit.
      fs_fldcat-decimals_out = p_round.
      APPEND  fs_fldcat TO it_fldcat.
    ENDFORM.                    "fieldcat
    *&      Form  fill_list_header
          text
         -->FV_I_LISTHEADER  text
    FORM fill_list_header  USING fv_i_listheader TYPE slis_t_listheader.
    DATA: lw_line TYPE slis_listheader,
            l_date(10),
            l_time(10).
      DATA : p_date LIKE sy-datum.
      DATA : p_time LIKE sy-uzeit.
      DATA : ztext(17).
      DATA : ztext1(80).
      p_date = sy-datum.
      p_time = sy-uzeit.
       CLEAR fv_i_listheader.
      CONCATENATE p_date6(2) '.' p_date4(2) '.' p_date+0(4) INTO l_date.
      CONCATENATE p_time0(2) ':' p_time2(2) ':' p_time+4(2) INTO l_time.
    IF doc_post = 'X'.
        ztext = 'Execute Mode'.
      ELSE.
        ztext = 'Update Mode'.
      ENDIF.
       CLEAR lw_line.
      lw_line-typ  = 'H'.
      lw_line-info = sy-repid.
      APPEND lw_line TO fv_i_listheader.
       CLEAR lw_line.
      lw_line-typ  = 'H'.
      lw_line-info = l_date.
      APPEND lw_line TO fv_i_listheader.
       CLEAR lw_line.
      lw_line-typ  = 'H'.
      lw_line-info = l_time.
      APPEND lw_line TO fv_i_listheader.
       CLEAR lw_line.
      lw_line-typ  = 'H'.
      lw_line-info = sy-uname.
      APPEND lw_line TO fv_i_listheader.
       CLEAR lw_line.
      lw_line-typ  = 'H'.
      lw_line-info =  ztext.
      APPEND lw_line TO fv_i_listheader.
    endform.                    "fill_list_header
    *&      Form  top_of_page
          text
    FORM top_of_page.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = gi_listheader.
    ENDFORM.                    "top_of_page
    *&      Form  layout_build
          text
         -->LAYOUT     text
    FORM layout_build  USING layout TYPE slis_layout_alv.
    layout-box_fieldname     = 'BOX'.
      layout-zebra             = 'X'. " STRIPED PATTERN
      layout-numc_sum          = 'X'. " TOTALS FOR NUMC-FIELDS
      layout-no_keyfix         = ' '. " DO NOT FIX KEYCOLUMNS
      layout-colwidth_optimize = ' ' .
      layout-flexible_key      = ' '. " KEY COLUMNS MOVABLE,...
      layout-detail_popup      = ' '. " SHOW DETAIL IN POPUP
    ENDFORM.                    "layout_build
    *&      Form  BAPI_GOODS_MVT
          text
    FORM bapi_goods_mvt.
      DATA: dc_numner TYPE  bapi2017_gm_head_ret-mat_doc,
            dc_year TYPE  bapi2017_gm_head_ret-doc_year.
      clear: dc_numner, dc_year.
      if doc_post = 'X'.
        gmhead-pstng_date = sy-datum.
        gmhead-doc_date = sy-datum.
        gmhead-pr_uname = sy-uname.
        gmhead-REF_DOC_NO = it_mkpf-xblnr.
        gmcode-gm_code = '04'.   "04 - MB1B - Transfer Posting
        LOOP AT it_final.
          itab-move_type   = '301'.
          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
            EXPORTING
              input  = it_final-matnr
            IMPORTING
              output = itab-material.
          itab-plant            = it_final-f_werks .
          itab-stge_loc         = it_final-f_lgort .
          itab-MOVE_PLANT       = it_final-t_werks .
          itab-move_stloc       = it_final-t_lgort .
          itab-entry_qnt        = it_final-labst .
          APPEND itab.
        ENDLOOP.
        CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
          EXPORTING
            goodsmvt_header             = gmhead
            goodsmvt_code               = gmcode
        TESTRUN                     = ' '
         IMPORTING
           goodsmvt_headret            = mthead
           materialdocument            = dc_numner
           matdocumentyear             = dc_year
          TABLES
            goodsmvt_item               = itab
        GOODSMVT_SERIALNUMBER       =
            return                      = errmsg.
        IF errmsg[] IS INITIAL.
          CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
            EXPORTING
              wait = 'X'.
          LOOP AT it_final.
            it_final-remark = dc_numner.
            MODIFY it_final.
          ENDLOOP.
        endif.
      ELSE.
    clear errflag.
        LOOP AT errmsg.
          IF errmsg-type EQ 'E'.
            WRITE:/'Error in function', errmsg-message.
         errflag = 'X'.
          ELSE.
            WRITE:/ errmsg-message.
          ENDIF.
        ENDLOOP.
      endif.
    ENDFORM.                    "BAPI_GOODS_MVT

  • More than one updatable report on one page.

    I hope someone can help me with this.
    I've spend a long time looking for the best way to do this but keep running into APEX constraints.
    My problem is that I have two tables;
    1) an 'object' table with static attributes (that can change value but keep no history).
    2) an 'object attributes' table with attributes that can change over time (i.e. keep a history).
    Some of the attributes are optional and some mandatory irrespective of whether they are static or timestamped.
    I want to design a screen that shows both tables on one page - preferably both updatable on the same screen.
    Selecting/clicking a row in the top table (object) will select the appropriate object attribute rows in the table below (I've got that covered - no help needed there).
    If I create a new object record I also need to create an initial object attributes record.
    This first initial attributes record cannot be deleted while the object exists.
    The start date of the object itself and its first object attributes record should remain in sync.
    I cannot separate the object table and attributes tables on different pages as all static and timestamped attributes form one collection that needs to be visible and maintainable from one screen.
    The problem is APEX will not allow more than one updatable (or interactive) report on one page.
    I need a solution where both tables are maintained in a uniform way for the user.
    Not, for instance, one table an updatable report and the other a report with detail form.
    Anybody struggle with a similar problem and found a solution to this problem?
    Any pointers are most welcome.
    Ruud.
    PS. I have a joined view on both tables with an INSTEAD trigger that can process insert/update/delete's on the combined data however I would not like to use that if I can avoid it. It would mean a repetition of static attributes in the one updatable report.

    Andy,
    Apologies for the late reply - Forums have been out for a while :-(
    Thanks for the suggestion. I've had a look at Denes' example and
    at least now I know it is possible.
    I've asked for access to his workspace but have not been given that
    yet so can't look at the details yet but I can make some educated
    guesses as to how it was done.
    I will give it a try.
    I'm still not certain whether having 2 updatable tabular reports is the
    right way to go though....
    Currently I'm working on a page with 2 navigator reports - one for selecting
    the object and another to select the start date of the timestamped attributes.
    Next to that I have an updatable detail form that shows the selected object
    and attributes as one whole set using the joined view I mentioned earlier.
    Inserts, updates & deletes are then done in the form.
    Ruud.

  • Showing all rows in updatable report

    Hi everyone,
    the users of my application have requested the option of showing all records, even though the updatable report has pagination turned on. How can this be achieved at run time?
    Thanks a lot,
    Henrik

    By specifying a select list - some static LOV for the number of rows you want to show. You can enter the name of that item in your report properties - Number of Rows Item.
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.opal-consulting.de/training
    http://apex.oracle.com/pls/otn/f?p=31517:1
    -------------------------------------------------------------------

  • BBP_GET_EXRATE - No records updated

    Hi,
    Our environment is SRM Server 5.5 with two R/3 backends.
    We have executed the report BBP_GET_EXRATE for the first backend and it completed successfully copying the exchange rates. However when we executed the same report for the second backend the log says "No records updated".
    Did anyone have experience this problem before? Can you please help?
    Thanks

    Hi,
    FM LOAD_TCURR within BBP_GET_EXRATE  is used to fill TCURR in SRM. It seems that all entries are deleted from TCURR and then the entries are filled again from the backend. So it seems to be not possible to get the exrates from different backends.
    Take a look at the strange coding from FM LOAD_TCURR :
    Load Exchange Rates table TCURR
    TABLES: TCURR.
    DATA: BEGIN OF ITAB_TCURR OCCURS 0.
          INCLUDE STRUCTURE TCURR.
    DATA: END OF ITAB_TCURR.
    delete all entries in table
       SELECT * FROM TCURR INTO ITAB_TCURR.  <--- get existing entries
           APPEND ITAB_TCURR.
       ENDSELECT.
       LOOP AT ITAB_TCURR. 
             DELETE FROM TCURR                            <--- delete them
               WHERE KURST = ITAB_TCURR-KURST
                 AND FCURR = ITAB_TCURR-FCURR
                 AND TCURR = ITAB_TCURR-TCURR
                 AND GDATU = ITAB_TCURR-GDATU.
        ENDLOOP.
        LOOP AT E_T_TCURR.
           MOVE-CORRESPONDING E_T_TCURR TO TCURR. <--- fill TCURR again
           INSERT TCURR.
       ENDLOOP.

  • Too many error records - update terminated

    Hello !!!
    Please help me with resolutions/reasons for the below errors.
    While loading data following errors are coming up & also the number of erroneous records when seen through PSA is quiet large (>2000). We neither want to delete the data nor to edit it, as prior to upgrade this InfoPackage used to work perfectly fine
    (Please note that system is recently upgraded from BI 3.x to BI 7.0).
    Too many error records - update terminated
    Message no. RSM2706
    Diagnosis
    More than 1001 records have been flagged as incorrect. There is probably a system error.
    System Response
    For performance reasons, the system terminates the update and additional checks.
    Thanks,
    Shantanu.

    Hi,
    I think you are facing an invalid character issue.
    This issue can be resolved by correcting the error records in PSA and updating it into the target. For that the first step should be to identify if all the records are there in PSA. You can find out this from checking the Details tab in RSMO, Job log , PSA > sorting records based on status,etc. Once its confirmed force the request to red and delete the particular request from the target cube. Then go to PSA and edit the incorrect records (correcting or blanking out the invalid entries for particular field InfoObject for the incorrect record) and save it. Once all the incorrect records are edited go to RSA1>PSA find the particular request and update to target manually (right click on PSA request > Start update immediately).
    I will add the step by step procedure to edit PSA data and update into target (request based).
    Identifying incorrect records.
    System wont show all the incorrect records at the first time itself. You need to search the PSA table manually to find all the incorrect records.
    1. First see RSMO > Details > Expand upate rules / processing tabs and you will find some of the error records.
    2. Then you can go to PSA and filter using the status of records. Filter all the red requests. This may also wont show the entire incorrect records.
    3. Then you can go to PSA and filter using the incorrect records based on the particular field.
    4. If this also doesnt work out go to PSA and sort (not filter) the records based on the particular field with incorrect values and it will show all the records. Note down the record numbers and then edit them one by one.
    If you want to confirm find the PSA table and search manually."
    Steps to resolve this
    1. Force the request to red in RSMO > Status tab.
    2. Delete the request from target.
    3. Come to RSMO > top right you can see PSA maintenace button > click and go to PSA .
    4.Edit the record
    5. Save PSA data.
    6. Got to RSA15 > Search by request name > Right click > update the request from PSA to target.
    This should solve your problem for now.
    As a long term you can apply some user exit in source system side or change your update rules to ensure that this field is getting blanked out before getting loaded in cube or add that particular achr to permitted character list in BW (Run TCODE RSKC
    Input the <character> and execute the program) This will add <character> to the allowed characters list.
    OR
    RSKC --> type ALL_CAPITAL --> F8 (Execute)
    OR
    Run the report RS_ERRORLOG_EXAMPLE,By this report you can display all incorrected records of the data & you can also find whether the error occured in PSA or in TRANSFER RULES.
    OR
    Go to SE38 and execute the program RSKC_ALLOWED_CHAR_MAINTAIN.
    Refer
    /people/sap.user72/blog/2006/07/23/invalid-characters-in-sap-bw-3x-myths-and-reality-part-2
    /people/sap.user72/blog/2006/07/08/invalid-characters-in-sap-bw-3x-myths-and-reality-part-1
    /people/aaron.wang3/blog/2007/09/03/steps-of-including-one-special-characters-into-permitted-ones-in-bi
    http://help.sap.com/saphelp_nw04/helpdata/en/64/e90da7a60f11d2a97100a0c9449261/frameset.htm
    Thanks,
    JituK

Maybe you are looking for

  • When trying to download a simple Adobe file, Firefox continues to open tab after tab after tab after tab, etc.

    Any Adobe file that I want to download causes Firefox to open multiple tabs in rapid succession. I can not stop the multiple tabs from opening except by CTRL-ALT-DEL to then manually close Firefox. Even then Firefox immediately re-opens on its own an

  • Combining fillable pdfs leads to issue

    I created a fillable pdf in Acrobat a while ago and extended features in Adobe Reader to create it. I created another fillable pdf months later the same way. And then I decided to merge the two because I needed them to be together. I highlighted both

  • Apply Retention Policy to All New Mailboxes

    I have created a retention policy tag to "Delete and Allow Recovery" after 14 days of all items in the "Deleted Items" folder. I then created a Retention Policy to apply the tag. I see using the EMS I can run a command "Get-Mailbox | Set-Mailbox –Ret

  • ECC 5.0 installation- IDES

    Hi, I am quite new to installations. Can any body give me the exact list of media required to install the IDES version of ECC 5.0 on Linux platform. I tried to look into the SAP Market place and downloaded the installation guides. But I couldn't able

  • Custom dimentions

    Is there a way to create a custom dimensions for a sequence in fce? I know I can when I export but things often get mixed up when you work with one dimension and export in another. I want to work in the dimension I will export in (for specialty video