How to suppress the report based on outer dimension in nested report

Hi Experts,
We have a report with nesting of two dimensions in rows. They are Program dimension and Account Dimension.
We need to supress the report based on the program dimension members. i.e whenever there are no values against all the accounts for a particular program that particular program should get supressed.
In the screenshot attached I am looking to supress the rows 37,38 and 39 as the data against this program is empty.
However I dont want to supress the rows 31 and 33 as there is a capital data against this program in row number 32. So we have to supress the rows based on absence of data at program level.
We are using SP14 on BPC 10.
I remember that such functionality could be acheived in BPC 7.5 by flagging the required dimension to have suppress in Expansion Range. So I guess, similar functionality would be there in BPC 10 as well.
I have evaluated the option of VBA macro to hide the required rows, but was wondering if we can achieve the same using EPM functionality as we used to do in BPC7.5.
Thanks in advance for your suggestions!!
Regards,
Shiva

Hi Shiva,
First you have to check the option Keep Blocks:
This option will show the whole block even if only one line contain some not zero/empty cells in the row.
Second, when you select option Filter on All Columns/Rows you have to select OR as operator between columns:
In this case the test for >0 (or for <0) will be applied to each column and the result will be OR'ed with other columns. True will be even if one column contains not zero and not empty cell.
You logic to check individual column require to hardcode the members - not good!
Vadim
P.S. If you select AND for Filter on All Columns/Rows - then only lines with all cells with non zero / non empty will be shown as in your example!

Similar Messages

  • How to split the IDOCS based on document number change whit out BPM

    Hi all,
    Thanks,for giving the responce..
    Scenario:File to IDoc.
    Problum1 : How to Split the IDocs based on document number change in the source file with out BPM.My file contains document numbers like
    20000092
    20000092
    20000092
    50000050
    50000050
    50000065
    I want 3 IDocs in target system.i.e 1 for 20000092,20000092,20000092
                                                       2 for 50000050,50000050
                                                       3 for 5000006
    By using external definations i am getting 6 IDOCs insted of 3.
    Problum 2:Is there any chnges/modifications in Directory when we are using external definations.
    Could u plz provide me the step by step process(Repository/Directory) with using of external definations.
    Thanks in advance.
    Regards,
    KP

    HI,
    for this no need of BPM.
    You can think of Idoc bundling concept to acheive this-just you need to do the external definition to change the idoc occurence
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    to achieve for each document no, one idoc, you can write small user defined function in the mapping with context handling you an achieve this.
    For this e.g
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/6bd6f69a-0701-0010-a88b-adbb6ee89b34
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/877c0d53-0801-0010-3bb0-e38d5ecd352c
    Regards,
    Moorthy

  • How to suppress the Acknowledgement  Error in IDOC to File scenario?

    Hi -
    I got the status in SXMB_MONI as 'Processed Successfully' for the IDOC to File scenario but the Acknoledgement status throws an error saying 'Acknowledgement not possible'.
    I read one of the documents in the forums on how to suppress the acknowledgement using a table on R/3 side using IDXNOALE,
    i tried that option but i still get the 'Acknowledgement not possible' error.
    Is there any other way to suppress this error?
    Thanks,
    Tirumal

    Hi Tirumal,
    Receiver adapters that run on the Adapter Engine support system acknowledgments if they are requested by the sender. Acknowledgements are triggered when a message is successfully processed by the adapter or if an error occurs while it is being processed. Receiver adapters do not support application acknowledgments. The RNIF and CIDX adapters are exceptions to this rule, since they also support scenario-dependent application acknowledgments. Sender adapters of the Adapter Engine do not request any acknowledgments.
    This means, JDBC adapter does only send system acks, however IDoc adapter is requesting application acks. Therefore as mentioned by the previous poster, you have to disable acks for this scenario using report IDX_NOALE.
    Also go through these documents for any further help:
    http://sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/xi-how-to-guides/how to handle acknowledgments for idoc.pdf
    http://help.sap.com/saphelp_nw04/helpdata/en/6a/e6194119d8f323e10000000a155106/content.htm
    Regards,
    abhy

  • How to setup the security based on roles in Organization.

    Hi,
    How to setup the security based on roles in Organization.
    For example:Few users are Manager and a few user are Non Manager .Manager should have access to all work data including Non Manager and Non Manager should access based role.How to setup this? How OBI server identify the user role?
    kindly let me know.
    Regards.,
    CHR

    Hi,
    You need to have Back End support to achieve this. In Back End you need to create two groups . You need to know what joins has to be made for which group (which is more important) and also make session variable for the userrole (with SQL supporting it). In the BMM layer, we need to put the security join conditions in the 'where clause'.
    And make a common report. User loggin in with the respective userid will have userrole and joins assigned in the Back end. And they will be viewing the report according to their access.
    Hope this will solve your problem.
    Regards
    MuRam

  • How to set the report path in a model plugin

    I am trying to figure out how to set the report path in a process model plug-in. I can seem to figure out how to get access to it. It seems like this would be a reasonable thing to do since the plug-ins are for results processing. Does anyone know how to do this? We typically use the Sequential process model but I am trying to keep my plug-in as independent of that as possible. 
    Thanks.
    Solved!
    Go to Solution.

    If I understand, you want your plug-in, when enabled, to alter the settings of any other instances of the NI report plug-in such that their reports share the same directory as your plug-in is configured to use.
    If so, your plug-in can access and modify the settings of all other plug-in instances. All instances are passed to all plug-in entries point in the plugins array sub-property of the ModelConfiguration parameter. You can iterate through this array. Any element of the array with a Base.SequenceFilename equal to "NI_ReportGenerator.seq" is an instance of the NI report plug-in. Its report options are stored in the element under PluginSpecific.Options.
    You can change the report options to what ever you want. Note that the ReportOptions model callback is called from the Initialize model-plugin entry point, so you might want to ensure that your changes are applied after that, so they aren't overwritten. To do that, you could make your changes in the the Initialize entry point of your plug-in, and ensure that your plugin runs last. To make it run last, you could set the FileGlobals.ModelPluginComponentDescription.Default.Base.RunOrder in your plug-in file to a value greater than 0, such as 1.0 (see TestStand Help>>Fundamentals>>Process Model Architecture>>Process Model Plug-in Architecture>>Structure of Plug-in Sequence Files>>Model Plug-in Entry Points>>Order of Entry Point Execution at Run Time).

  • How to suppress the back-ground execution of a query in design mode

    hi guys,
    there is a bahaviour of the system, that I'd like to change. So, when we
    1. start EXCEL
    2. go to the designer mode to create a report
    3. first drop an InfoProvider (e query) into a cell,
    4. second - pull e.g a filter element into another cell, still being in the design mode.
    Just in this moment, the query itself has been already started in the back groud, aiming to fill the cache, I guess.
    Does anyone know how to suppress the back-ground execution? I'd like to control, when to start the reports execution.
    Thanks in advance.
    Neven

    Hello,
    There is no way to do that if you are creating thru BEx Analyzer.
    Instead use the BEx Analyzer, try to create using directly BEx Query Designer.
    In that way, the query will not be executed, until you want to...
    Thank you
    Edward John

  • How to automate the reports ?

    Post Author: Rajasopa
    CA Forum: Desktop Intelligence Reporting
    Hi everybody ,
    I need to know how to schedule the reports automatically? I have alreadu build reports .please help me out .
    Raj
    CGI SYSTEMS INC.

    Post Author: Miss_Purple
    CA Forum: Desktop Intelligence Reporting
    Hi Raj,
    On our set-up to schedule reports you need access to the Central Management Console of BO - I don't know how you get this though, I was sent a link to it by my line manager.
    Once you are in the Central Management Console, you can browse the reports in your repository, and just click on the 'schedule' tab for each one and select the options you want.
    Hope that helps...
    Miss P.

  • How to suppress the html comment at start of output

    Hi,
    Does anyone know how to suppress the html comment that ITS inserts at the beginning of the response content.
    i.e.:
    <!--
    This page was created by the
    SAP Internet Transaction Server (ITS, Version 6100.1030.61.1891, Build 610.611891, Virtual Server SY1, WGate-AGate Host aauwsd00, WGate-Instance SY1)
    Template:       znc_xworktime/99/xml.html  -->
    This appears to be causing havoc with the applet's XML parser...
    org.jdom.input.JDOMParseException: Error on line 8: XML declaration may only begin entities.
         at org.jdom.input.SAXBuilder.build(SAXBuilder.java:468)
         at org.jdom.input.SAXBuilder.build(SAXBuilder.java:770)
         at com.alcatel.ontap.applets.timesheet.TimesheetTableLoader.run(TimesheetTableLoader.java:75)
    Caused by: org.xml.sax.SAXParseException: XML declaration may only begin entities.
         at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3376)
         at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3364)
         at org.apache.crimson.parser.Parser2.maybePI(Parser2.java:1140)
         at org.apache.crimson.parser.Parser2.maybeMisc(Parser2.java:1266)
         at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:654)
         at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
         at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
         at org.jdom.input.SAXBuilder.build(SAXBuilder.java:453)
         ... 2 more

    Check out OSS Note No.747818
    You can use the ~no_its_header parameter to deactivate the default       
    header that is generated. As soon as this parameter contains any value,  
    header generation is suppressed. In ITS 6.20, you can set the parameter  
    with the AdminTool. You will find the relevant switch under              
    Security-General.                                                        
    If the ITS is integrated into the WebAS (SAP Netweaver 04 and higher),   
    you must maintain the parameter in the ICF service. Note that you have   
    to maintain the parameter individually for each service.                 
    Regards
    Raja

  • How  to grow the report of customer's openitem with sales order

    How  to grow the report of customer's open item with sales order?
    Now we can get the customer's open item with invoice No easily,but our end user need the the customer's open item also with sales order .And because a invoice to multi sales orders. I can do nothing.
    Now I have a idea that a develivey No with one sales order , and one invoice with a sales order's develivery ,then one inovice to one sales order .  I want to  know if other company have use this idea. Or have other solution for my problem.

    Hi Yuzhou Yang ,
      Yes you are right. In FI transaction you can get the sales invoice wise , reference field of the header data.
      As you are aware that while creating a sales order , no FI entry is generated.
      In my opinion you can get the required report through customization.
    Thanks
    D.K.Lakshmi narayana

  • How to find the report for the SAP query (Query exists in table AQLQCAT)

    Hello Experts,
    I need to find the tables used in the SAP Query but i don't have access to transaction SQ01,SQ02 and SQ03 to check the same.
    Therefore i checked table AQLQCAT and got the SAP Queries in the system. Then searched for the reports that would have been generated for the same passing  AQusergroupquery name*  in transaction SE38.
    But unfortunately the program does not exists for the given paramenter.
    Could you please let me know how to get the report name for the SAP Query.
    Secondly please suggest any other way of checking the tables used in the SAP Query.
    Also the table name from where i can download the SAP Queries.
    Thanks in advance.
    Regards,
    Rahul Sinha

    I suggest you a simple method.
    Execute the query. When the selection screen is showed,  go to menu and click to SYSTEM->STATUS.
    Check the program name and double click it to access the program code.
    Search for tables or functions into the source code in order to understand where data are taken.
    If you do not find anything , go to the program atttribute and check for logic database, sometimes they are used....
    Best regards.

  • How to format the report with the aggregated value

    Hi,
    I have 2 characteristics and 3 KFs in the infocube.
    First field is Cost Center
    Second field is creation Date
    3rd field is KF1
    4th field is KF2
    5th field is KF3
    I have put the date field( in the row) as this is required for calculating formula for KFs. But I have set that as No display.
    The date in the info cube is as follows.
    Cost Ceneter  Date( no Display)   KF1     KF2      KF3
    CC1           01/01/2006          100     150      200
    CC1           02/02/2006          75      100      95
    CC1           05/02/2006          125      95      125
    CC2           01/02/2006          75       25      85
    CC2           02/02/2006          85       65      10
    As the Date field is in query set to No display so the date appearing in the report is as follows
    CC1       100        150        200
              75         100        95
              125          95        125
    CC2       75           25        85
              85           65        10
    But I want the aggregated value at cost senter level i.e.
    CC1       300         245       420
    CC2       160         90         95
    I can not remove the Date frield from query as there is a formula variable defined on the date field.
    Please let me know how to bring the report to the required format.
    Bill
    Message was edited by:
            Bill Bryan

    If you are in new Bex, you can do it.
    You will have to create another (set of) CKF on top of the current ones (which do exception aggregation on DOCNUM) and set the exception aggregation on date.
    Say you have
    CH1--CH2CH3--CKF1
    To have a 'before aggregation' behavior for CKF1 when CH3 is not present, you will create a CKF2 = CKF1 with exception aggregation on CH3.
    Now, if you want to remove CH2 and have the 'before aggregation' behavior you will need to create another CKF3 = CKF2 with exception aggregation on CH2.
    ie for each level of aggregation, you will have to define a new CKF/Formula with corresponding exception aggregation - this is what will be needed to get you your output.
    Message was edited by:
            Ajay Das

  • My MacBook Pro is running VERY slowly. After reading other questions and responses, I ran an EtreCheck, but do not know how to post the report here. Any help would be greatly appreciated.

    My MacBook Pro is running VERY slowly. After reading other questions and responses, I ran an EtreCheck, but do not know how to post the report here. Any help would be greatly appreciated.

    My MacBook Pro is running VERY slowly. After reading other questions and responses, I ran an EtreCheck, but do not know how to post the report here. Any help would be greatly appreciated.

  • How to Check the report is Finished while calling a report from Forms 6i

    Dear All,
    I am Calling a report from oracle forms 6i, after runing report in " Run_Product(REPORTS,:fn_cntl.nb_report_name,ASYNCHRONOUS, RUNTIME, FILESYSTEM,pl_id, NULL);"
    I need to copy the pdf to store it in another place once the report is generated.
    My Problem is : that i want ot Check first the report has generated after " Run_Product(REPORTS,:fn_cntl.nb_report_name,ASYNCHRONOUS, RUNTIME, FILESYSTEM,pl_id, NULL);" is executed ? How to check the report is generated ot not?
    As i tried to use the below procedure after "Run_Product(REPORTS,:fn_cntl.nb_report_name,ASYNCHRONOUS, RUNTIME, FILESYSTEM,pl_id, NULL);"" but his does not work... nothing happens
    {code}
    PROCEDURE FPC_COPY_REPORT (p_report_name varchar2) IS
         repid REPORT_OBJECT;
         v_rep VARCHAR2(100);
         rep_status varchar2(20);
         lv_id varchar2(1000);
    BEGIN
    repid := find_report_object('AMTP_995.RDF');
    v_rep := RUN_REPORT_OBJECT(repid);
    rep_status := REPORT_OBJECT_STATUS(v_rep);
         if rep_status = 'FINISHED' then
         message('Report Completed'); message('Report Completed');
         else
              message('Error when running report.');           message('Error when running report.');
         end if;
    END;
    {code}
    Any Help

    actually My code is this:
    declare
         ln_alert          number;
         pl_id               ParamList;
         lv_report_name varchar2(10000);
         lv_path  varchar2 (100) := 'C:\';
         lv_shared_path  varchar2(1000);
         lv_copy_file varchar2(10000);
      cursor cr_dir_path IS
      select v_dir_path
      from md_directory
      where v_dir_code ='SHR';
      lv_file_name varchar2(1000);
    BEGIN
      open cr_dir_path;
      fetch cr_dir_path into lv_shared_path;
      close cr_dir_path;
    lv_report_name :=  lv_path||:fn_cntl.nb_ref_no||'_M08600000_'||to_char(sysdate,'YYYYMMDD-HHmmss')||'.pdf';
      if ffn_check_fields  THEN
         pl_id := Get_Parameter_List('LAI');
             IF NOT Id_Null(pl_id) THEN
                 Destroy_Parameter_List( pl_id );
              END IF;             
              pl_id := Create_Parameter_List('LAI');
           if :fn_cntl.nb_report_name ='MMAT_REPORT'
                then
                     if :fn_cntl.nb_report_desc ='EXPORT'
                          then
                         Add_Parameter(pl_id, 'PARAMFORM',TEXT_PARAMETER, 'NO');
             Add_Parameter(pl_id, 'DESTYPE',  TEXT_PARAMETER,'File');
            Add_Parameter(pl_id, 'DESNAME',  TEXT_PARAMETER, lv_report_name);
            Add_Parameter(pl_id, 'DESFORMAT',TEXT_PARAMETER,'PDF');
            Add_Parameter(pl_id, 'p_mat_no',TEXT_PARAMETER, :fn_cntl.nb_mat_no);   
            Add_Parameter(pl_id, 'p_ref_no',     TEXT_PARAMETER, :fn_cntl.nb_ref_no);
            Add_Parameter(pl_id, 'p_verified_by',TEXT_PARAMETER, user);
                     Run_Product(REPORTS,:fn_cntl.nb_report_name,ASYNCHRONOUS, RUNTIME, FILESYSTEM,pl_id, NULL);
          DECLARE     
               repid REPORT_OBJECT;     v_rep VARCHAR2(100);     rep_status varchar2(20);BEGIN
                         /* REP_OBJ= REPORT OBJECT CREATED UNDER REPORT NODE AT FORM */
             repid := find_report_object('MMAT_REPORT');      v_rep := RUN_REPORT_OBJECT(repid);
                        rep_status := REPORT_OBJECT_STATUS(v_rep);          
          if rep_status = 'FINISHED' then
              message('Report Completed');          message('Report Completed');
             --copy_report_object_output(v_rep,'c:\local.pdf');
             -- host('netscape c:\tlocal.pdf');     
         else          message('Error when running report.');
                                          message('Error when running report.');     
         end if;
                 END;
         end if;
      end if;
           if :fn_cntl.nb_report_desc ='EXPORT'
                then
                  error_handler('This report will be Storde in ' ||lv_report_name||' and '||lv_shared_path|| ' Location',3);
                     lv_copy_file :='copy '||' "'||lv_report_name||'" "'||lv_shared_path||'"';
                     host(lv_copy_file,no_screen);
                  error_handler('Report Has been Generated Sucessfully.',3);
           end if;
        end if;
    END;I will try first the another solution you have replied perviously... and will let you no the results... thanks a lot...

  • How to design the report?

    Hi,
    how to change the filling data in report by vertical way?
    for eg: i am creating a group (group by userId) and displaying user name and access rights info;
    User Name   Access Rights
    TestUser      Adminuser
    TempUser    NotanAdminuser
    but i want in this format
    UserName        TestUser   TempUser
    AccessRights Adminuser  NotAnAdminuser
    how to design the report?

    i haven't tried using cross tab.
    but my requirement is like...
    Modified User Name ........ TestUser     Thendral    till 'n' number of users
    Total NO of Patients..........10                    5
              Heart Failure...........5                      1
              Surgical..................1                      2
              Pneumonia             3                      1
              Chest Pain             1                       1
            till 15 rows
    How to achieve this using crosstab?

  • How to add the report

    how to add the report for jasper ,i am using jdeveloper tool  to create project but how to add the report for the that project please help me

    Make the broadcasting setting using BEx Broadcaster and schedule program RSRD_BROADCAST_STARTER in process chain for the required settings.
    Regards,
    Sree

Maybe you are looking for