No data in BW report field

Hello Experts,
My BW system is connected to a SRM system. In a confirmation details report, the Confirmation Number is not appearing for the Purchase Order Number. I have checked in the back-end and the Confirmation exists for the particular PO, in the ODS from which the BW report is picking up data. Please advise how to solve this issue. Thanks in advance,
Arnab

arnabsinha711 wrote:
Hello Experts,
>
> My BW system is connected to a SRM system. In a confirmation details report, the Confirmation Number is not appearing for the Purchase Order Number. I have checked in the back-end and the Confirmation exists for the particular PO, in the ODS from which the BW report is picking up data. Please advise how to solve this issue. Thanks in advance,
>
> Arnab
Dear Arnab, I beleive if the data is present in the ODS/Cubes, and not displaying in BEx > should be a ACR issue. Run the Attribute Change run for the Master data used in the cubes like 0MATERIAL, 0MAT_PLANT etc for updated EBELN & EKPO-ELIKZ. Thanks!

Similar Messages

  • No data in a report field with cr11.5 r2...

    Hi,
    After upgrade a VB6 project with crystal report 7, to VB6 with crystalreport 11.5 r2, I notice that
    one field in the report have no data.
    If I run the same project in a machine with vb6 and crysta report 7, the field is ok.
    Some one have a idea?

    Lots of changes between 7 and CR XI R2. Mostly in the database drivers and Parameter API's.
    I suggest you click on the Businessobjects tab above and then Samples and Code and download the RDC COM samples for database and Parameters.
    You'll also need to change your database dll reference from P2x.dll to crdb_*.dll.
    Thank you
    Don

  • Is there any way to print  the data inside  the Notes field of MIR6 Report

    Hello Gurús.
    We need to include the data inside the Notes field in the report MIR6 - INVOICE OVERVIEW - report.
    Is there any way to print  the data inside (comments)  the Notes field as well in the Report  ?
    We found that the only way is to open the Notes and print it, but it takes time, any idea ?
    Rgds.
    MCM.

    There's nothing built-in that does that. If you only have text fields and they don't have any formatting or other property that would prevent it (e.g., Date, character limit), you can run a simple script to populate each field with the field name, and then print. A more complicated approach would be a script that adds text annotations near/over each field that shows the field name. This would just be for documentation purposes, but it's possible. Post again if you'd like help with the first. You'll probably have to pay someone for the second approach if you don't want to do it yourself.

  • Data disappears when a field is added to report

    I have a report that uses two files. The first one has a field called "amount code", and the second includes that code field as well as a description of the code.
    But when I link that second file to the first one, data disappears when I drag a field from the second file into the report. The first 10 fields in the report are from the first file, and they look fine. But as soon as I drag in any of the fields from the second file, all of the data in the report disappears. (This happens no matter where I drag that field to...data, page headers, etc.)
    I'm pretty sure I have the files linked correctly. Can anyone tell my why this happens?
    (When I use the either file by itself, things look fine.)
    Thanks, Jon

    Hi Raghavendra,
    I think I have it figured out (or more accurately, our DBA figured it out for me).
    The problem is that in the main file, the code field is only one digit long (string). But in the second file (the code description file), that code field is 8 digits long, even though only the first digit has any data (followed by 7 blanks). Therefor CR doesn't see any matches.
    It looks like the solution is to truncate the field in the code description file so it's only one digit long instead of 8.
    But thanks for the help...I'm clearly over my head, and very much appreciate your assistance.
    Jon

  • Save Data in ALV Report .

    Hello,
    Given below is my code
    *& Report  ZALV_TEST_SA                                                *
    REPORT  ZALV_TEST_SA NO STANDARD PAGE HEADING.
    *----------------------TYPE POOL OF ALV--------------------------------*
    TYPE-POOLS: SLIS.
    *----------------------DATABASE TABLES---------------------------------*
    TABLES: ZFLIGHTM_SA, ZFLIGHT_AVAIL_SA.
    *-------------DATA DECLARATION-----------------------------------------*
    DATA: BEGIN OF ITAB OCCURS 0,
             ZFLIGHT_ID TYPE ZFLIGHT_ID,
             ZCITY_FROM TYPE ZCITY_FROM,
             ZCITY_TO TYPE ZCITY_TO,
             ZDEP_DATE TYPE DATS,
             ZTIME TYPE TIMS,
             ZPRICE TYPE ZPRICE,
             ZNUM_OF_PSNGRS(3) TYPE N,
             ZAVAIL_SEATS(3) TYPE N,
          END OF ITAB.
    DATA: BEGIN OF ITABM OCCURS 0,
             MANDT TYPE MANDT,
             ZFLIGHT_ID TYPE ZFLIGHT_ID,
             ZCITY_FROM TYPE ZCITY_FROM,
             ZCITY_TO TYPE ZCITY_TO,
             ZTIME TYPE TIMS,
             ZPRICE TYPE ZPRICE,
          END OF ITABM.
    DATA: BEGIN OF ITAB_AVAIL OCCURS 0,
             MANDT TYPE MANDT,
             ZFLIGHT_ID TYPE ZFLIGHT_ID,
             ZDEP_DATE TYPE DATS,
             ZNUM_OF_PSNGRS(3) TYPE N,
             ZAVAIL_SEATS(3) TYPE N,
          END OF ITAB_AVAIL.
    DATA: WA_ITAB LIKE LINE OF ITAB,
          WA_ITABM LIKE LINE OF ITABM,
          WA_ITAB_AVAIL LIKE LINE OF ITAB_AVAIL.
    DATA: L_REPID LIKE SY-REPID,
          L_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
          L_LAYOUT TYPE SLIS_LAYOUT_ALV,
          L_EVENTS TYPE SLIS_T_EVENT.
    DATA: WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
    *----------------SELECTION SCREEN SELECT-OPTIONS-----------------------*
    SELECT-OPTIONS S_CITY FOR ZFLIGHTM_SA-ZCITY_FROM NO INTERVALS.
    SELECT-OPTIONS D_CITY FOR ZFLIGHTM_SA-ZCITY_TO NO INTERVALS.
    SELECT-OPTIONS D_DATE FOR ZFLIGHT_AVAIL_SA-ZDEP_DATE NO INTERVALS.
    *----------------------SELECTION OF DATA-------------------------------*
    PERFORM SELECT_DATA.
    *----------------SETTING DATA IN TABLE FOR FIELD CATALOG---------------*
    PERFORM CALL_FIELDCAT_MERGE.
    *----------CALLING FUNCTION FOR DISPLAYING REPORT----------------------*
    PERFORM DISPLAY_TABLE.
    *----------------------AT SELECTION SCREEN EVENT-----------------------*
    AT USER-COMMAND.
      CASE sy-ucomm.
        WHEN 'STORE'.
           PERFORM SAVE_DATA.
        WHEN 'PREVIOUS'.
           LEAVE TO SCREEN 0.
        WHEN OTHERS.
      ENDCASE.
    *------------------------------FORMS-----------------------------------*
    *&      Form  SELECT_DATA
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM SELECT_DATA .
      SELECT A~ZFLIGHT_ID    ZCITY_FROM
             ZCITY_TO        ZDEP_DATE
             ZTIME           ZPRICE
             ZNUM_OF_PSNGRS  ZAVAIL_SEATS
         FROM ZFLIGHTM_SA AS A INNER JOIN ZFLIGHT_AVAIL_SA AS B
            ON A~ZFLIGHT_ID = B~ZFLIGHT_ID
             INTO CORRESPONDING FIELDS OF TABLE ITAB
                WHERE A~ZCITY_FROM IN S_CITY
                  AND A~ZCITY_TO IN D_CITY
                  AND B~ZDEP_DATE IN D_DATE.
      L_REPID = SY-REPID.
    ENDFORM.                    " SELECT_DATA
    *&      Form  CALL_FIELDCAT_MERGE
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM CALL_FIELDCAT_MERGE .
    *  CLEAR WA_FIELDCAT.
    *  WA_FIELDCAT-TABNAME       = ITAB.
    *  WA_FIELDCAT-FIELDNAME     = 'ZFLIGHT_ID'.
    *  WA_FIELDCAT-KEY           = 'X'.     "sets key field
    *  APPEND WA_FIELDCAT TO  L_FIELDCAT.
    *  WA_FIELDCAT-TABNAME       = ITAB.
    *  WA_FIELDCAT-FIELDNAME     = 'ZPRICE'.
    * WA_FIELDCAT-KEY           = 'X'.     "sets key field
    *  APPEND WA_FIELDCAT TO  L_FIELDCAT.
    *  WA_FIELDCAT-TABNAME       = ITAB.
    *  WA_FIELDCAT-FIELDNAME     = 'ZAVAIL_SEATS'.
    *  WA_FIELDCAT-KEY           = 'X'.     "sets key field
    *  APPEND WA_FIELDCAT TO  L_FIELDCAT.
    *--------------CALLING FUNCTION FOR FIELD CATALOG----------------------*
      CLEAR L_FIELDCAT.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
      EXPORTING
         I_PROGRAM_NAME               = L_REPID
         I_INTERNAL_TABNAME           = 'ITAB'
    *       I_STRUCTURE_NAME             = 'WA_ITAB'
    *       I_CLIENT_NEVER_DISPLAY       = 'X'
         I_INCLNAME                   = 'ZALV_TEST_SA'
         I_BYPASSING_BUFFER           = 'X'
    *       I_BUFFER_ACTIVE              =
        CHANGING
          CT_FIELDCAT                  = L_FIELDCAT
    *     EXCEPTIONS
    *       INCONSISTENT_INTERFACE       = 1
    *       PROGRAM_ERROR                = 2
    *       OTHERS                       = 3
      IF SY-SUBRC <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *--------------EDITING FIELDS IN FIELD CATALOG ------------------------*
      LOOP AT L_FIELDCAT INTO WA_FIELDCAT.
        CASE WA_FIELDCAT-FIELDNAME.
             WHEN 'ZFLIGHT_ID'.
               WA_FIELDCAT-COL_POS = '1'.
    *          WA_FIELDCAT-text_fieldname = 'Flight ID'.
               WA_FIELDCAT-KEY = '3'.
               WA_FIELDCAT-JUST = 'L'.
               WA_FIELDCAT-NO_ZERO = 'X'.
               WA_FIELDCAT-EMPHASIZE = 'X'.
               WA_FIELDCAT-SELTEXT_L = 'Flight ID'. "40 char long field name
               WA_FIELDCAT-SELTEXT_M = 'Flight ID'. "20 char long field name
               WA_FIELDCAT-SELTEXT_S = 'Flight ID'. "10 char long field name
             WHEN 'ZCITY_FROM' .
               WA_FIELDCAT-NO_OUT = 'X'.
             WHEN 'ZCITY_TO' .
               WA_FIELDCAT-NO_OUT = 'X'.
             WHEN 'ZDEP_DATE' .
               WA_FIELDCAT-NO_OUT = 'X'.
             WHEN 'ZTIME' .
               WA_FIELDCAT-NO_OUT = 'X'.
             WHEN 'ZPRICE' .
               WA_FIELDCAT-COL_POS = '2'.
    *          WA_FIELDCAT-text_fieldname = 'Flight ID'.
               WA_FIELDCAT-KEY = '4'.
               WA_FIELDCAT-JUST = 'L'.
               WA_FIELDCAT-NO_ZERO = 'X'.
    *          WA_FIELDCAT-EMPHASIze = 'X'.
               WA_FIELDCAT-SELTEXT_L = 'Price'. "40 char long field name
               WA_FIELDCAT-SELTEXT_M = 'Price'. "20 char long field name
               WA_FIELDCAT-SELTEXT_S = 'Price'. "10 char long field name
               WA_FIELDCAT-EDIT = 'X'.
             WHEN 'ZNUM_OF_PSNGRS' .
               WA_FIELDCAT-NO_OUT = 'X'.
             WHEN 'ZAVAIL_SEATS' .
               WA_FIELDCAT-COL_POS = '3'.
    *          WA_FIELDCAT-text_fieldname = 'Flight ID'.
               WA_FIELDCAT-KEY = '4'.
               WA_FIELDCAT-JUST = 'L'.
               WA_FIELDCAT-NO_ZERO = 'X'.
    *          WA_FIELDCAT-EMPHASIze = 'X'.
               WA_FIELDCAT-SELTEXT_L = 'Available Seats'.
               "40 char long field
               WA_FIELDCAT-SELTEXT_M = 'Available Seats'.
               "20 char long field
               WA_FIELDCAT-SELTEXT_S = 'Seats'. "10 char long field name
               WA_FIELDCAT-EDIT = 'X'.
             WHEN OTHERS.
               WA_FIELDCAT-NO_OUT = 'X'.
        ENDCASE.
    MODIFY L_FIELDCAT FROM WA_FIELDCAT.
      ENDLOOP.
    ENDFORM.                    " CALL_FIELDCAT_MERGE
    *&      Form  USER_COMMAND_ALV_SA
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM USER_COMMAND_ALV_SA USING I_UCOMM LIKE SY-UCOMM
                            IS_SELFIELD TYPE SLIS_SELFIELD.
    *****form frm_usercommand using r_ucomm like sy-ucomm
    *****rs_selfield type slis_selfield.
    ****CASE I_UCOMM.
    CASE sy-ucomm.
        WHEN 'STORE'.
           PERFORM SAVE_DATA ON COMMIT.
        WHEN 'PREVIOUS'.
           LEAVE TO SCREEN 0.
        WHEN OTHERS.
    ENDCASE.
    ENDFORM.                    "USER_COMMAND_ALV_SA
    *&      Form  DISPLAY_TABLE
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM DISPLAY_TABLE .
    *  L_FIELDCAT-input = 'X'.
    *  L_FIELDCAT-edit = 'X'.
    *  L_LAYOUT-Edit = 'X'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
    *   I_INTERFACE_CHECK                 = ' '
    *   I_BYPASSING_BUFFER                = ' '
    *   I_BUFFER_ACTIVE                   = ' '
    I_CALLBACK_PROGRAM                = L_REPID " report id
    I_CALLBACK_PF_STATUS_SET          = 'ZALV_TEST_SA' " to set pf-status
    I_CALLBACK_USER_COMMAND           = 'USER_COMMAND_ALV_SA' " to handle
                                                              " user command
    *   I_CALLBACK_TOP_OF_PAGE            = ' '
    *   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
    *   I_CALLBACK_HTML_END_OF_LIST       = ' '
    *   I_STRUCTURE_NAME                  = ''
    *   I_BACKGROUND_ID                   = ' '
    *   I_GRID_TITLE                      =
    *   I_GRID_SETTINGS                   =
    *   IS_LAYOUT                         = L_LAYOUT
    IT_FIELDCAT                       = L_FIELDCAT " for field catalog
    *   IT_EXCLUDING                      =
    *   IT_SPECIAL_GROUPS                 =
    *   IT_SORT                           =
    *   IT_FILTER                         =
    *   IS_SEL_HIDE                       =
    *   I_DEFAULT                         = 'X'
    *   I_SAVE                            = ' '
    *   IS_VARIANT                        =
    IT_EVENTS                         = L_EVENTS "internal table with
                                                               " user events
    *   IT_EVENT_EXIT                     =
    *   IS_PRINT                          =
    *   IS_REPREP_ID                      =
    *   I_SCREEN_START_COLUMN             = 0
    *   I_SCREEN_START_LINE               = 0
    *   I_SCREEN_END_COLUMN               = 0
    *   I_SCREEN_END_LINE                 = 0
    *   IT_ALV_GRAPHICS                   =
    *   IT_HYPERLINK                      =
    *   IT_ADD_FIELDCAT                   =
    *   IT_EXCEPT_QINFO                   =
    *   I_HTML_HEIGHT_TOP                 =
    *   I_HTML_HEIGHT_END                 =
    *  IMPORTING
    *   E_EXIT_CAUSED_BY_CALLER           =
    *   ES_EXIT_CAUSED_BY_USER            =
       TABLES
        T_OUTTAB                          = ITAB "internal table with
                                                                   " records
       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.                    " DISPLAY_TABLE
    *-------------------------SET PF-STATUS--------------------------------*
    *&      Form  ZALV_TEST_SA
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM  ZALV_TEST_SA USING RT_EXTAB TYPE SLIS_T_EXTAB.
      SET PF-STATUS 'ZALV_TEST_SA' .
    ENDFORM.                    "ZALV_TEST_SA
    *&      Form  SAVE_DATA
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM SAVE_DATA.
      LOOP AT ITAB INTO WA_ITAB.
    ****HIDE:WA_ITAB-ZFLIGHT_ID,      WA_ITAB-ZCITY_FROM,
    ****WA_ITAB-ZCITY_TO,        WA_ITAB-ZTIME,
    ****WA_ITAB-ZDEP_DATE,       WA_ITAB-ZNUM_OF_PSNGRS,
    ****WA_ITAB-ZAVAIL_SEATS.
        CLEAR: WA_ITABM,WA_ITAB_AVAIL.
        WA_ITABM-ZFLIGHT_ID          = WA_ITAB-ZFLIGHT_ID.
        WA_ITABM-ZCITY_FROM          = WA_ITAB-ZCITY_FROM.
        WA_ITABM-ZCITY_TO            = WA_ITAB-ZCITY_TO.
        WA_ITABM-ZTIME               = WA_ITAB-ZTIME.
        WA_ITABM-ZPRICE              = WA_ITAB-ZPRICE.
        WA_ITAB_AVAIL-ZDEP_DATE      = WA_ITAB-ZDEP_DATE.
        WA_ITAB_AVAIL-ZNUM_OF_PSNGRS = WA_ITAB-ZNUM_OF_PSNGRS.
        WA_ITAB_AVAIL-ZAVAIL_SEATS   = WA_ITAB-ZAVAIL_SEATS.
        APPEND WA_ITABM TO ITABM.
        APPEND WA_ITAB_AVAIL TO ITAB_AVAIL.
      ENDLOOP.
      MODIFY ZFLIGHTM_SA FROM TABLE ITABM.
      MODIFY ZFLIGHT_AVAIL_SA FROM TABLE ITAB_AVAIL.
      COMMIT WORK.
    ENDFORM.                    " SAVE_DATA
    I want to edit a field--the price and save the changes. I have assigned a button STORE for this. But my data is not getting saved.
    I searched the forum and wrote the code accordingly. I even referred the stored programs. Still I am not getting the output. Please help.
    Regards,
    Smruthi.
    Edited by: Smruthi Acharya on Feb 10, 2009 3:31 PM
    Edited by: Julius Bussche on Feb 10, 2009 12:16 PM
    Please use code tags

    Hi,
    You must have taken some function code for that STORE button (say you have taken it as   MODIFY )
    Use this code, it will modify the code in internal table from alv.
    I have tried it, n its working:-
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
    *     I_INTERFACE_CHECK                 = ' '
    *     I_BYPASSING_BUFFER                = ' '
    *     I_BUFFER_ACTIVE                   = ' '
         i_callback_program                = v_rep_id       " report id
         i_callback_pf_status_set          = 'PF'           " for PF-STATUS
         i_callback_user_command           = 'USER_COMMAND' " for User-Command
    *     I_CALLBACK_TOP_OF_PAGE            = ' '
    *     I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
    *     I_CALLBACK_HTML_END_OF_LIST       = ' '
    *     I_STRUCTURE_NAME                  =
    *     I_BACKGROUND_ID                   = ' '
    *     I_GRID_TITLE                      =
    *     I_GRID_SETTINGS                   =
         is_layout                         = wa_layout      " for layout
         it_fieldcat                       = it_field       " field catalog
    *     IT_EXCLUDING                      =
    *     IT_SPECIAL_GROUPS                 =
         it_sort                           = it_sort        " sort info
    *     IT_FILTER                         =
    *     IS_SEL_HIDE                       =
    *     I_DEFAULT                         = 'X'
    *     i_save                            = 'A'
    *     is_variant                        = wa_variant     " variant name
    *     IT_EVENTS                         =
    *     IT_EVENT_EXIT                     =
    *     IS_PRINT                          =
    *     IS_REPREP_ID                      =
    *     I_SCREEN_START_COLUMN             = 0
    *     I_SCREEN_START_LINE               = 0
    *     I_SCREEN_END_COLUMN               = 0
    *     I_SCREEN_END_LINE                 = 0
    *     I_HTML_HEIGHT_TOP                 = 0
    *     I_HTML_HEIGHT_END                 = 0
    *     IT_ALV_GRAPHICS                   =
    *     IT_HYPERLINK                      =
    *     IT_ADD_FIELDCAT                   =
    *     IT_EXCEPT_QINFO                   =
    *     IR_SALV_FULLSCREEN_ADAPTER        =
    *   IMPORTING
    *     E_EXIT_CAUSED_BY_CALLER           =
    *     ES_EXIT_CAUSED_BY_USER            =
        TABLES
          t_outtab                          = it_final      " internal table
       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.
    *&      Form  USER_COMMAND
    *       SUB-ROUTINE USER_COMMAND IS USED TO HANDLE THE USER ACTION
    *       AND EXECUTE THE APPROPIATE CODE
    *      -->LV_OKCODE   used to capture the function code
    *                     of the user-defined push-buttons
    *      -->L_SELFIELD   text
    FORM user_command USING lv_okcode LIKE sy-ucomm l_selfield TYPE slis_selfield.
    * assign the function code to variable v_okcode
      lv_okcode = sy-ucomm.
    * handle the code execution based on the function code encountered
      CASE lv_okcode.
    * when the function code is MODIFY (STORE button) then save data
        WHEN 'MODIFY'.
    * to reflect the data changed into internal table
          DATA : ref_grid TYPE REF TO cl_gui_alv_grid. "new
          IF ref_grid IS INITIAL.
            CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
              IMPORTING
                e_grid = ref_grid.
          ENDIF.
          IF NOT ref_grid IS INITIAL.
            CALL METHOD ref_grid->check_changed_data.
          ENDIF.
    " at this point your data in internal table is changed
    * refresh the ALV Grid output from internal table
          l_selfield-refresh = c_check.
    ENDFORM.                    "USER_COMMAND
    Hope this helps you.
    Regards,
    Tarun

  • [APEX 3] Requested source data of the report has been modified

    Hello APEX-Friends,
    I have a common problem but the situation is a bit different here. Many of you might know the "invalid set of rows requested the source data of the report has been modified" problem. Often it occurs on submit. That means, you have a report, you select rows, you do things, you submit the page and everything blews up.
    This is because you enter some values into fields the report depends on and so you modify your report parameters and the source data changes.
    But:
    In my case I have a dynamically created report that blews up before any submits occur or values change.
    My query is a union of two selects. Both query different views. Those views use a date field as parameter and some compare functions.
    I read the field with a V-Function i wrapped arround the apex V Function - declared as deterministic. My date compare function is also declared deterministic (I doubt this makes any differences as it might be only important for the optimizer, but as long as I don't know exactly what APEX evaluates, I go for sure).
    I ensured, that the date field is set by default with the current date (and that works, because my interactive report initially displays correct data from the current date).
    So everything is deterministic and the query must return same results on subsequent calls, but APEX still throws this "source data has changed" error and I am to 99.99% sure, that this cannot be true.
    And now the awesome thing about this:
    If I change the value of the date field, an javascript performs a submit. The page is reloaded (without resetting pagination!) and everything works fine. I can leave the page, reenter, do things - everything works well.
    But if I log into the application and directly move to the corrupted report and try to use the pagination without editing fields or submitting the page the error occurs.
    Do you have any Idea what's happing there? I could try to workaround this by submitting the page the first time it's entered to trigger this "mystery submit" that gets everything working. But I would like to understand this issue and have a clean solution.
    Thanks in advance,
    Mike aka UniversE

    Okay, I found a solution, but I do not understand it - it might be a design flaw in APEX.
    I mentioned the date field that is used in the query. I also mentioned that it is set with the current date by default. I did not mention how.
    There are some possibilities in APEX to do so.
    1. Default-Setting in the element properties
    2. Static assignment if no value is in session cache
    3. Computation before header
    I did the first and second.
    BUT:
    An interactive report seems to work as follows. A query is executed to get all rows of the report. Then a second query is executed to get the rows that shall be displayed. And the order is screwed up, I think.
    1. The first report query to get all rows
    2. The elements are loaded and set to default values
    3. The second report query to get the display rows
    And that's the reason why nothing worked. Scince I added a computation before header the date field is set before the report queries are executed and everything works all fine now.
    But I think it's a design flaw. Either both queries shall be executed before Regions or afterwards but not split as field values might change when elements are loaded.
    Greetings,
    UniversE

  • How to save the data of ABAP report into a notepad in desktop location???

    HI all,
    Can any one tell me how to transfer the data of ABAP report into a Notepad.
    Actually I have to schedule a ABAP report in background on daily basis and I want to transfer the
    whole record into Notepad.
    If any program is available for this..please clearify the relevent code for transferring.
    Thanks
    Rajeev

    declare a character type internal table.
    now move your data from it_data ( internal table with data ) into table itab.
    since you are running this report in background, you cannot save it to the desktop. Instead give any app server location
    data: itab(400) occurs 0 with header line.
    field-symbols: <fs1> type any.
    data: gv_file type rlgrap-filename default 'TEST.TXT'.
    data: gv_filepath type rlgrap-filename default <path>.
    LOOP AT it_data.
        DO 100 TIMES.
          ASSIGN COMPONENT sy-index OF STRUCTURE it_data TO <fs1>.
          IF sy-subrc = 0.
            CONCATENATE itab <fs1> INTO itab SEPARATED BY ' '.
          ELSE.
            EXIT.
          ENDIF.
        ENDDO.
        SHIFT itab LEFT DELETING LEADING ' '.
        APPEND itab.
        CLEAR itab.
      ENDLOOP.
      concatenate gv_filepath '/' gv_file into gv_file.
      OPEN DATASET gv_file FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
      IF sy-subrc = 0.
        LOOP AT itab.
          TRANSFER itab TO gv_file.
        ENDLOOP.
        CLOSE DATASET gv_file.
      ENDIF.

  • Concatenating the data from a single field

    hello!
    I wanted to concatenate all the data in a field
    field is like this:
    FIELD1
    sample1
    sample2
    sample3
    sample4
    Output is like this:
    sample1, sample2, sample3, sample4
    how do i code this? thanks!

    ITS NOT WORKING GUYS..
    Let me revise my question again..
    table: QMAT
    FIELD1   FIELD2
    sample1   JP1
    sample2   JP3
    sample3   JP1
    sample4   JP2
    sample5   JP3
    When there is 2 or more same data in FIELD2 report should output like this:
    Report:
    JP1 sample1, sample3
    JP2 sample4
    JP3 sample2, sample5
    something like this.. take note that i have to select using query FIELD2 and then concatenate if there is more than 1 record in FIELD1
    both field(FIELD1, FIELD2) will be assign in a field also using SQ02 infoset
    displaying the report is using field my code is something like this but it outputs iterated data..
    TYPES: BEGIN OF type_qmat,
          ART TYPE qmat-art,
          END OF type_qmat.
    DATA: it_qmat TYPE standard table of type_qmat,
          wa_qmat LIKE LINE OF it_qmat.
    DATA: SEP VALUE ', '.
    SELECT ART FROM QMAT INTO TABLE IT_QMAT.
    LOOP AT IT_QMAT INTO WA_QMAT.
    IF SY-TABIX EQ 1.
    CONCATENATE IQC_INSP WA_QMAT-ART INTO IQC_INSP.
    ELSE.
    CONCATENATE IQC_INSP WA_QMAT-ART INTO IQC_INSP SEPARATED BY SEP.
    ENDIF.
    ENDLOOP.

  • How to exctract data from a report to use it in a process

    Hi! I would like to know how to exctract data from a report to use it in a process. Let's say that I have a report which have following fields: id_person, name_person. And then, I want to make a process which introduce the id_person (from report) into an associative tabel. How can I reffer to the fields from my report?
    I was thinking about something like that( this should be the code from my process)
    insert into associative_table(id_person)
    values(id_person) or
    insert into associative_table(id_person)
    values(Report_name.id_person) but it doesn't work....
    Thank you very much.

    Another option, use collections.
    Create an on load process that loads all the rows you would have in your report into a collection:
    begin
    HTMLDB_COLLECTION.CREATE_OR_TRUNCATE_COLLECTION(
    p_collection_name => 'ASSIGNED_CALENDAR_CONTACTS' );
    for x in (SELECT CONTACT_ID, CONTACT_FNAME, CONTACT_LNAME
    FROM CONTACT
    WHERE InStr( pkg_CalendarMgr.f_FetchContactIDsForDay( TO_DATE( :P3_CALENDAR_DT, 'YYYYMMDD' ), 'OF' ), CONTACT_ID ) > 0 )
    loop
    htmldb_collection.add_member(p_collection_name => 'ASSIGNED_CALENDAR_CONTACTS',
    p_c001 => x.CONTACT_ID,
    p_c002 => x.CONTACT_FNAME,
    p_c003 => x.CONTACT_LNAME);
    end loop;
    end;
    Then, instead of your report selecting from the table, have it select from the collection, this way your display will match what's in the collection:
    SELECT c001, c002 || Chr(32) || c003 CONTACT_NAME, 'Remove' remove
    FROM htmldb_collections
    WHERE collection_name = 'ASSIGNED_CALENDAR_CONTACTS'
    ORDER BY c003, c002
    Then you can have a button on the form that steps through the collection, one element at a time and does whatever you want it to.

  • Calculation of % on Date Differences - BW Reporting

    Hi Experts,
    I have a typical scenario where in I need to calculate the % for the no of Days difference b/t 3 dates(Statistical Date, Delivery Date, GR Date).
    As of now I just showed just the Difference b/t all the 3 dates in no of days. Now I need to acomplish the below task, Can any one plese suggest me how to proceed to resolve all the below conditions.
    Need to provide the % of orders that fall into the following buckets for each of the above 3 Dates only in Reporting.
    1. On time = +/- 5 days
    2. Greater than 6-10 days late
    3. 11-15 days late
    4. Greater than 16 days late
    5. 6-10 early
    6. 11-15 days early
    7. Greater than 16 days early
    I need to do this at Query level only as I don't have authorization to create a new Calculated Key figures or Restricted KF.
    Only I can do is play around with the New Selection or New Formula at Column area of designer, write some Macros or can access Exceptional reporting for above 3 DATE Char or Key Figure fields and do some math to accomplish.
    Thanks,
    Sam

    Hi Nagesh,
         Thanks for your quick reply, I can say I tried with couple of options and couldn't
       suceed with the minimal access which I do have.
         Now I don't have much time to respond to user, If at all you do have and time
        and if you don't mine can you please look at the conditions and just give me the
        STEP1....STEPN for any one of the 3 diff types which you mentioned in your
        reply so that I can take it up from there.
    Sample Days Difference in my spread sheet now:-
    Stat-Del Date Diff Stat-GR Date Diff Del Date-GRDate Diff
    -67             68                       -68
    -112                160                       -160
    -109                109                       -109
    -109                109                       -109
    0                1                                        -1
        Please take any one date and do write down the step1..stepN if you have time.
    Sam

  • Date data from Crystal Report one day less than Date from Source

    Hi,
    I am creating a Crystal Report 4.0 for Enterprise Users (Client Version only) based on a BEx query. I have a field called 'Date' that I am bringing over from the BEx query. It has a format of MM/DD/YYYY. When I view the 'Date' in Crystal Reports, it is displaying as 1 day less from the actual data. For example, in the BEx Query, 'Date' = 11/01/2011.  In Crystal Reports, it is showing up as 10/31/2011, which is one day behind.  I'm not sure what's going on.
    Please help!

    Well, this is as weird as it gets!
    Here are the observations on SP02:
    1) The Date Characteristic is a day off in the report while the 'Key' shows correct date
    2) It displays in the '30.01.2011' (DD.MM.YYYY)format
    3) When you right-click this field to change the date format, the date option is missing
    4) You create a formula to see if this is a date and it returns True. The formula you can try is :
    isdate(). It returns False for any other function like isnumeric() etc
    5) So, this is a date filed, or CR4E thinks this is a date field, however doesn't let us change the format
    6) You cannot use this field with date functions like cdate(); weird!
    7) The only way you can show it the way you want is to write this formula:
    *mid(,4,2)&"/"&left(,2)&"/"&Right(,4)*
    This is still a string field, however displays as MM/DD/YYYY.
    In Crystal Reports 2011, however, the following formula on the same date field returns a date value, meaning you can further right-click this formula field to change the date format like a normal date field:
    cdate(tonumber(Right(,4)),tonumber(mid(,4,2)),tonumber(left(,2)))*
    The same formula, however, throws a 'String is non-numeric error in CR4E and I found that it doesn't like this:
    *tonumber(Right(,4)) ; same error
    I've tried a lot of combinations to make this a date field in CR4E, however none works!
    So, the only option is to use the formula that I mentioned above.
    P.S: If you install Patch 2.10, you'll notice that the Characteristic value shows the correct date. For some reason though, it is in the same format as the 'Key' and if we wish to change the date format, the only possible workaround is to extract the numbers and join like I suggested above.
    Hope this helps!
    -Abhilash

  • Multiple report fields from single physical column.

    Hi Experts,
    I have a physical table like below. Multiple records for a single customer id. The no of Address_type may increase in future.
    Customer_id     Address_Type         Address
    101                  Primary                   abcdefgh
    101                  Secondary               234oij3mb4
    101                  Billing                      mdmnweoij4
    102................etc.
    My Requirement on OBIEE is to display report as below.
    Customer_ID, Primary_Address, Secondary_Address, Billing_Address.
    101                 abcdefgh            234oij3mb4               mdmnweoij4
    Multiple report fields ( Primary_Address, Secondary_Address, Billing_Address ) are derived from same physical column ADDRESS.
    I tried to duplicate the Address column on the report thrice and added conditions like Address_Type = Primary/Secondary/Billing for those three fields respectively.
    But only of the field is getting correct data and rest of duplicate columns are null.
    Tried FILTER function on OBI Answers, but the function fails saying it should be used only on measures.
    Thought the alternative would be to define multiple logical columns at BMM layer. Created multiple alias for same table at physical layer and correspondingly created LTS for each on a single logical table. Defined Fragmentation/Where conditions.
    LTS1 - Address_Type = PRIMARY
    LTS2 - Address_Type - SECONDARY
    LTS3 - Address_Type - BILLING
    Created multiple logical columns from each LTS like Primary_Address, Secondary_Address, Billing_Address from LTS1, LTS2, LTS3 respectively.
    This time, am getting data for all the fields on the report but getting cartesian result.
    Can someone guide me whether my approach is correct or any other alternate best approach to achieve the desired result.
    Note: I have the data Address on multiple physical rows for a customer, rather Not in a single row. which is causing me problem.
    Thanks...
    Ramchand.

    Hi Srini VEERAVALLI,
    I have lot many other fields in the same report coming from other tables.
    Does the Pivot table option for above mentioned Address fields affect other columns?
    If Yes, Can there be any other alternative? Am thinking of Opaque View at Physical layer to bring all Addresses on a single row.
    Thanks...
    Ramchand.

  • How to store bit data in VARCHAR(4000) field?

    Hi.
    Please help!
    We are porting some C/C++ software with embedded SQLs from NT/DB2 to Linux/Oracle.
    On NT/DB2 we have some table to store file data in a VARCHAR(4000) blocks.
    Table looks like this
    CREATE TABLE FileData (filetime as timestamp not null, idx int not null, datablock varchar(4000) FOR BIT DATA not null, primary key (filetime, idx) );
    As you can see DB2 has appropriate field modifier - "FOR BIT DATA" which makes DB2 storing data as-is, not converting characters.
    I need to know - if it is possible to do the same in Oracle like in DB2?
    If Oracle has some kind of field modifier like "FOR BIT DATA" in DB2?
    If not, how can I do the same in Oracle?
    The current problems are:
    1) when application imports the file with some national chars the Oracle stores "?" in a database in place of national chars.
    2) another piece of a problem - if file is more than 4000 bytes length, it reports the ORA-01461 error (see it is trying to expand some chars to UTF8 char which is not fit a single char, so finally - not fit the field size).
    So, it seems that it cannot proceed national chars at all. :-\
    For details please see enclosed [C code|http://dmitry-bond.spaces.live.com/blog/cns!D4095215C101CECE!1606.entry] , there is example how data written to a table.
    In other places we also need to read data from FIELDATA table and store back to file (other filename, other location).
    Here is summary on a field-datatype variants I have tried for the "datablock" field:
    1) VARCHAR2, RAW, LONG RAW, BLOB - does not work! All reports the same error - ORA-01461.
    2) CLOB, LONG - both working fine but(!) both still returns "?" instead of national chars on data reading.
    Hint: how I did try these field types - I just drop the "FileData" table, created it using different type for "datablock" field and run the same application to test it.
    I think I need to explain what the problem - we do not provide direct access to Oracle database, we use a some middle-ware. Middle-ware is a C/C++ software which also has a interface for dynamic SQLs execution. So, exactly this middle-ware (which is typically running on the same server with Oracle) receives the "?" instead of national chars! But we need it to return all data AS-IS(!) without any changes!!! That is wjhy I did ask - if Oracle has any options to store byte-data as-is?
    The BIG QUESTION - HOW CAN WE DO THIS?!
    Another thing I need to explain - it is ok to use Oracle-specific SQL ONLY IF THERE IS REALLY NO WAY TO ACHIEVE THIS WITH STANDARD SQL! Please.
    So, please look on a C code (by link I have posted above) and tell - if it is possible to make working in Oracle the VARCHAR approach we using at the moment?
    If not - please describe what options do we have for Oracle?
    Regards,
    Dmitry.
    PS. it is Oracle 11gR2 on CentOS 5.4, all stuff installed with default settings, so Oracle db encoding is "AL32UTF8".
    C/C++ application is built as ANSI/ASCII application (non-unicode), so sizeof(char)=1.
    The target Oracle db (I mean - the one which will be used on customer site) is Oracle 10g. So, solution need to be working on Oracle 10g.

    P. Forstmann wrote:
    There is some contradiction in your requirements:
    - if you want to store data as is without any translation use RAW or BLOB
    - if you want to store national character data try to use NVARCHAR2 or NCLOB.Seems you did not understand the problem. Ok, I'll try to explain. Please look on the code sample I provided in original question
    (I just added expanded data structures there, sorry I forgot to publish them when post original question):
    EXEC SQL BEGIN DECLARE SECTION;
      struct {
        char timestamp[27];
        char station[17];
        char filename[33];
        char task[17];
        char orderno[17];
        long filelen;
      gFilehead;
      struct {
        char timestamp[27];
        long idx;
        struct {
          short len;
          char arr[4001];
        } datablock;
      gFiledata;
    EXEC SQL END DECLARE SECTION;
    #define DATABLOCKSIZE 4000
    #ifdef __ORACLE
      #define VARCHAR_VAL(vch) vch.arr
    #elif __DB2
    #endif
    short dbWriteFile( char *databytes, long datalen )
      short nRc;
      long movecount;
      long offset = 0;
      gFilehead.filelen = gFilehead.filelen + datalen;
      while ((datalen + gFiledata.datablock.len) >= DATABLOCKSIZE)
        movecount = DATABLOCKSIZE - gFiledata.datablock.len;
        memcpy(&VARCHAR_VAL(gFiledata.datablock)[gFiledata.datablock.len], databytes, movecount);
        gFiledata.datablock.len = (short)(gFiledata.datablock.len + movecount);
        exec sql insert into filedata (recvtime, idx, datablock)
          values(
            :gFiledata.recvtime type as timestamp,
            :gFiledata.idx,
            :gFiledata.datablock /* <--- ORA-01461 appears here */
        nRc = sqlcode;
        switch (nRc)
        case SQLERR_OK: break;
        default:
          LogError(ERR_INSERT, "filedata", IntToStr(nRc), LOG_END);
          exit(EXIT_FAILURE);
        offset = offset + movecount;
        datalen = datalen - movecount;
        gFiledata.idx = gFiledata.idx + 1;
        memset(&gFiledata.datablock, 0, sizeof(gFiledata.datablock));
        databytes = databytes + movecount;
        gFiledata.datablock.len = 0;
      if (datalen + gFiledata.datablock.len)
        memcpy(&VARCHAR_VAL(gFiledata.datablock)[gFiledata.datablock.len], databytes, datalen);
        gFiledata.datablock.len = (short)(gFiledata.datablock.len + datalen);
      return 0;
    }So, the thing we need is - to put some data into the "datablock" field of following structure:
      struct {
        char timestamp[27];
        long idx;
        struct {
          short len;
          char arr[4001];
        } datablock;
      gFiledata;Then insert it into a database table using static SQL like this:
        exec sql insert into filedata (recvtime, idx, datablock)
          values(
            :gFiledata.recvtime type as timestamp,
            :gFiledata.idx,
            :gFiledata.datablock /* <--- ORA-01461 appears here */
            ); And then expect to read exactly the same data back!
    The problems are:
    1) Oracle make decision to convert the data we are inserting (why? and how to disable converting?!)
    2) even if it inserts the data (CLOB and LONG field datatypes are working fine when inserting data with such static SQL + such host variable) then it became not readable! (why?! how to make it readable?!)
    P. Forstmann wrote:
    ORA-01461 could mean that you have a wrong data type for bind variable variable in your client code:Not me decided that host variable is the "LONG datatype value" - the Oracle make that decision instead of me. And that is the problem!
    Looks like Oracle react on any char code >= 0x80.
    So, assume if I run the code:
    // if Tab1 was created as "CREATE TABLE Tab1 (value VARCHAR(5))" then
    char szData[10] = "\x41\x81\x82\x83\x84";
    EXEC SQL INSERT INTO Tab1 (value) VALUES (:szData);
    Oracle will report the ORA-01461 error!
    EXACTLY THIS IS THE PROBLEM I HAVE DESCRIBED IN MY ORIGINAL QUESTION.
    So, problem - why Oracle make such decision instead of me?! How we can make Oracle insert data into a table AS-IS?
    What other type of host variable we should use to make Oracle think that data is a binary?
    void*? unsigned char? Could you please provide any examples?
    Ok, you did recommend - "use the RAW datatype". But RAW datatype is limited to size 2000 bytes only - we need 4000! So, it is not match our needs at all.
    Also you have mentioned "use BLOB" - but testing shows that Oracle reports the same ORA-01461 error on inserting data into a BLOB field from such host variable! (see the code I posted)
    What also we can do?
    Change type of host variables? BUT HOW?!

  • Upload transaction data first BW report don't have master data description

    Hi All Expert,
    Im newbie to BW.
    When i do my task, i upload the transaction data first and then upload the master data (customer, vendor) secondly.
    When i viewing my BW report, it didn't show up the Name of customer and vendor.
    Izzit because the order of upload transaction data and master data is wrong so i got this problem?
    How can i solve this problem? (because i try to reupload the master data again, the name field still blank)
    Hope someone can advice or help me.
    Thank you very much.

    Check in the master data infoobject whether the texts are loaded or not. If not, load the master data texts from your source system.
    Just right click on the master data infoobject and click on "Active master data".
    If still it doesn't activate, go to Menu --> Tools --> Attribute change run.

  • Standard Report Headings,  JAVA script usage,and  Report field fixed width

    My company has purchased Crystal Reports 2008 and I'm in the process of determining if the product will do everything we need and not become a maintenance nitemare. 
    We would like to setup some standard report headings to be used in all reports.  I've setup on already as a SUBREPORT and it works fine. We pass optional parameters that may be blank.
    We have several questions:
    1) Subreport...Once a SUBREPORT is setup as a standard heading and included in multiple reports, we are concerned about what is required if the standard heading subreport changes.  Will each report that uses this need to be opened or handled in any way to pickup the subreport changes?  Any suggestions how to handle this?
    2) Subreport....In order to get the "PAGE N of M" to work in the subreport we've setup the subreport to accept parameters that are passed from the main report and this works fine.  But this requires every report using the standard heading to setup the parameters in order to work.  Is there any other way that would minimize the setup needed for a standard heading?
    3) JAVA...  Can we call a Javascript function? If so, any hints/tips on how/where to do this?
    4) Standard Report... Creating the report is difficult with guessing the width to define to the field.  Is there a way that the report can know and display the exact size of the field being used?  A fixed field defininiton of some sort would make it MUCH easier in the layout of the report.
    5) Standard Report...We are currently testing with a stored procedure for the SQL query result data but because of the application we will need to build the query dynamically for every report.  Is there a way to bind the data and specify the field lengths? 
    6) Standard Report...When using a defined file structure I needed to add another field.  At the time it seemed like I had to start from scratch as the fields that were on the report were now gone.  Is there a update method that can be done import the changes and not loose existing fields on a report? 
    That all for now.  Sorry there are so many questions.  We are trying to clear up as many issues as we can before starting the 100+ reports needed.
    Thanks in advance.

    Hi Vitaly Izmaylov,
    I've taken your advice and split out questions 2-6 into seperate questions.  Anyone else please respond only to question 1 here. 
    I see the Re-Import subreport option....and I guess I can only assume that this means that any change to a report heading file (subreport) must be manually re-imported into every report it is used in.  There are no behind the scenes files or table that maintain a usage of these reports and can automate the population of the changes.
    I was hoping that maybe the subreports would be accessed when called for an pickup any new changes.  So if I create 100 reports with standard heading subreport, I would need to manually open and re-import that file in each report to update a report heading change.
    Does not sound real fun.
    Is all this true?
    Thanks,
    Tim

Maybe you are looking for