Can weuse Measure Object as hyperlink from summary report to detailreport

Hello All,
I have a Web-I report as shown
Group              HrsSched          Hrs Used
Here Hrs Used is Sum(Resultkey) for each group (grouping is done).
Now i should make this Hrs Used as hyperlink to detail report.
For that I created a variable with following code
="<a Title='SOC Sched vs Actual Report Detail'
href=\"../../../OpenDocument/opendoc/openDocument.jsp?sWindow=New&sType=wid&sPath=[Engineering],[SOCTesterUtilization],Reports]&sDocName=SOCSchedvsActualReportDetail&lsSPeriod Begin Date="UserResponse("Period Begin Date")"&lsSPeriod End Date="UserResponse("Period End Date")"&lsMTester="[TesterVendor]"&lsMTester Category="UserResponse("Tester Category")"&lsMTime Segment="UserResponse("Time Segment")"\">"Sum([ResultKey]) + "</a>"
and placed the same in the place of Hrs Used column
But this is raising Multivalue Error as I am trying to show Sum(Resultkey ) (which is a measure)as link.
Please please do suggest me a soluiton to make this Sum(Resultkey)  as link.
Thanks to all experts.

As said, On Measure no one will try to make Hyperlink.
1st time, I have seen and quite impressed, frankly speaking vishnu.
It should show because revenue has more values.
Tey like this:
Sum(revenue) is there, correct??
Edit that variable and make Qualification as Dimension instead of Measure, which will help us.
I have lots of tasks today, so not able to concentrate on SDN posts. Try above suggested.
Good luck.
Oh Vishnu,
>> First you have to create Detail report
>> Apply prompt on any Object ( The Object should be same one on Master report on which you made Hyperlink or clicking)
>> Run query
>> Save report
Now Create Master report
For the prompt Object (Detail report one), create Hyperlink on top it.
And in OpenDoc syntax select detail report.
Hope it helps you.
I'm Back

Similar Messages

  • Can I Call a 10g Form from 10 Report???

    Can I Call a 10g Form from 10 Report??? I'm using Developer Suite 10g Rel.2.

    Hello,
    It is possible to include hyperlinks in the output generated by oracle Reports (when DESFORMAt=HTML / HTMLCSS or PDF)
    http://www.oracle.com/webapps/online-help/reports/10.1.2/topics/htmlhelp_rwbuild_hs/rwcontxt/props/pi_lay_hyperlink.htm
    When clicking on the hyperlink , a Form can be called...
    regards

  • Hyperlink from summary field in crosstab??

    I want to enable a hyperlink on a summary field in a crosstab so that clicking on it will produce a subreport of the detailed items that are included in the count displayed in the summary field.
    Keeping my username in mind ;-> I have tried everything I could think of and haven't found the magic incantation yet. I was expecting to be able to select a drill down, but that radio button is greyed out for the field I want to hyperlink from. I've tried a multitude of sane and insane things within all of the hyperlink tabs I could find, but no success.
    I've read as much of the documentation as I could find, both from the CD and online, and I'm stumped.
    Has anyone done this, and if so, could you please offer some tips??
    Thanks!!!!

    One thought I have is to right-click on the field in the cross-tab and select "Format Object".  I'm using CR for VS2005 and I have a Hyperlink tab that allows me to configure a hyperlink.  Using this hyperlink, you could navitage to another webform with another report to display the details for that summary.  Just a suggestion! 
    -MJ

  • Drill function implemented on Measure object column in the webi report

    Post Author: madan kumar
    CA Forum: WebIntelligence Reporting
    Hi,
    I have a small issue in my project.(Maintenance Project)I created a measure object in the fact table of the existing universe and saved and exported to the repository. (Say Measure object is D where D = A-(B+C))I inserted the same object as a column between two measure objects columns of a existing WebI report.
    The report has two hierarchies involved  - each hierarchy has dimension objects involved.I have checked with the hierarchies to make sure that measure object is not involved.The scope of analysis is None for the query.Version is BO XI R2.
    The issue is the Drill function is implemented on that particular new column.The drill function should be applicable only to the two dimension objects involved in the report.But this measure object column is also getting drilled once the Drill option is selected.I had to remove the drill optiion from the Measure object column.
    Can anyone help me on this issue...
    Thanks in advance...
    Madan Kumar

    Sushil
    Thanks for your reply. I did the date diff on the columns. It does not  break into 3 different groups. I am using a function called previous on the date column. So the report is like this
        DATE                           Pervious (DATE)                 Date - Pervious(DATE)
    01-01-2008 01:06              Null                                
    01-01-2008 01:12              01-01-2008 01:06               :06
    01-01-2008 01:18              01-01-2008 01:12               :06
    01-01-2008 01:24              01-01-2008 01:18               :06
    01-01-2008 01:30             01-01-2008 01:24              :06
    01-01-2008 01:36             01-01-2008 01:30               :06
    Basically we are breaking on the Date - Previous ( Date) column which does not work. I am not sure if there is a way to break this. I even tried it in Crystal REports XI and it does not work their either. Any help with this issue with be greatly appriciated.
    Edited by: Srinivasa Prabu on Aug 4, 2008 2:55 PM
    Edited by: Srinivasa Prabu on Aug 4, 2008 2:56 PM

  • Get the Picture object location path from crystal report using CRAXDRT.DLL

    Post Author: hpatel_it
    CA Forum: Crystal Reports
    Hi All,I am working on one project - Crystal report to SQL Report conversion and I am using CRAXDRT.DLL to open and read crystal report.I have done conversation of all controls but I am not able to get PICTURE object from Crystal report and also PICTURE object source path.I am using CRAXDRT.OLEOBJECT to get the path of the picture object.if someone have knowledge of CRAXDRT please help me.Regards,Harry

    You can get at specific objects using events,  but not a whole record.
    Can't think of any way of doign this at all...
    Ludek

  • Navigating from Summary Report to Detail Report in OBIEE 11g

    Hi,
    I have creted two reports.One corresponds to Summary and the other Detail.By clicking on one of the fields in
    the Summary report the values are captured and then the detail report is displayed based on the values selected.
    Now,What I need to know is whether I can populate the values I have selected in Summary Report(values correspond to only a single field) as some text in the Detail report.
    I am using 11.1.5 just in case you need to know,but any help would be greatly appreciated.
    Regards
    Navin.G

    another way if you want to stay in one document and continue to use drilling is to build 2 blocks and hide/unhide as you drill
    block1 - shows your totals
    block2 - shows the details
    then use block hiding (see below) to cause block1 to disappear when you drill past a certain level. using the same (but opposite logic) you would have block2 appear
    block hiding in webi - how to:
    sadly webi doesnt have this feature directly the way that Crystal does but you can emulate it using SHOW WHEN EMPTY,block filtering and DrilFilters. The latter detects your level of drill.
    block1 filter formula - return a TRUE result when DrillFilters tell you that you havent drilled into detail yet. Set SHOW WHEN EMPTY=No
    when you do drill Block1's formula will be FALSE, the block will then technically be EMPTY and therefor wont show
    Block2's filter logic will return FALSE when DrillFilters tells you that you are still on Block1's level of drilling. But when you drill Block2's level of drill, DrillFilters in Block2's filter formula will return TRUE and its rows will be returned. It wont be empty so it will show.

  • Hyperlink from SSRS Report

    Hi , I run ssrs reports form my VB application the hyperlink Does not open. When I run the same report from the server the hypelink opens normaly. Any Suggestion?
    Thanks
    Luis

    Hi Luiso,
    Do you mean the hyperlinks generated by the “Go to URL” or “Go to Report” action in the report? Do you use ReportViewer control in your VB .NET application? Are there any parameters passed from the custom application to the hyperlink URL? Could you post
    the URL of the hyperlink?
    Here, I suggest that you delete the report from the report server, and re-deploy it. If it doesn’t work, please post more information for further analysis.
    Regards,
    Mike Yin
    If you have any feedback on our support, please click
    here
    Mike Yin
    TechNet Community Support

  • Hi all can we call an application form from a report.

    Hi all,
    I am working with form , my requirement is to run an application form which i should call  from a report and i have to print the document for the values on the selection screen. how to pass the selection parameters to the form  and how to call the for form the program?
    Thanks in advance.
    regards,
    sre

    Hi Jyothi,
    Thanks for your reply,
    my issue is not with the script,  I have developed an extraction code in the apllication form user exit and i want to extract a file on to application server and
    also i want to print this form online when ever user wants.
    is there any function module to call this appication form and pass the required parameters?  or else  we have to assign this application form to any transaction code?
    please suggest me in this issue.
    regards,
    sre.

  • Where can i get objective-c training from apple in india?

    I am from India and I would like to get training in Objective-C from apple itself. Is there an option to get it in India?
    I am new to experience Apple Hardware & Software. I have knowledge of C & Java Programming languages.
    I am in college now in undergraduate courses and would like to try out Objective-C.

    Hope this  site provides the info.
    http://training.apple.com/locations?q=&c=all&country=IN
    Best.

  • How to drill down from summary report to detail report using RRI?

    Dear all:
      A problem about RRI. Please help me!
      1.I create a BEx query 'Q1' to show summary data.
      2.I create a BEx query 'Q2' to show detail data.
      3.In Q1, all the products are shown each row.
           The 1st coulmn is 'Balance in the begin', it shows how many customer claim cases are opened before this week.
           The 2nd coulmn is 'New', it shows how many customer claim cases are initalized in this week.
           The 3rd coulmn is 'Close', it shows how many customer claim cases are closed in this week.
           The 4th coulmn is 'Balance', it shows how many customer claim cases are still opened now. And this column is calculated by this fomula as follow:
             'Balance in the begin' + 'New' - 'Close'
       4.In Q2, it lists each customer claim case. Include ClaimNo, Sold-To Party, ProductNo...
       5. I set Q1 as sender, Q2 as receiver.
       6. If I focus on the value of 'New' or 'Close' and then go to 'Q2', the correspond detail calim information in 'Q2'. But it is fail if I focus on the value 'Balance'.
       Why?
    Thanks,
    Jolin

    I don't know if you can use the hyperlink to call a subreport but the following has worked for me in Crystal 10:
    1. In your main report create a group on the field you want to pass to the subreport.
    2. In the Group Footer, use the "Insert Section below" menu command so that you have a Group Footer 1a and a Group Footer 1b.
    3. Put your table fields in the Group Footer 1b section (this would be similar to your Details data).
    4. Put the sub report in the Group Footer 1a section. Set up the links to the subreport from a table field in your main report.
    5. Right-click on the sub-report, select "Format Sub-report". Click on the "x-2" button to the right of the Suppress option and enter "DrillDownGroupLevel = 0" in the "Formula Workshop-Formula Format Editor-Suppress" window and save it.
    When you double-click on your data field (i.e. the field in Group footer 1b) it should drill-down and run your subreport.

  • Drilling from summary report to detail report - possible?

    Hi All,
    I'm new to Business Objects and am currently using Web Intelligence with Business Objects 12.1.
    I'm writing a report that shows the % of males and % of females that like drinking Coca Cola.
    Is it possible for me to set the report to drill through from the percentage summary to a list of people behind the data?
    Can anyone provide me with a link if it is? I can see a drill icon in Web Intelligence but I'm not sure if that's what I need...
    If anyone is familiar with Microsoft Reporting Services I'm looking to navigate through reports as you would there.
    Thanks!

    another way if you want to stay in one document and continue to use drilling is to build 2 blocks and hide/unhide as you drill
    block1 - shows your totals
    block2 - shows the details
    then use block hiding (see below) to cause block1 to disappear when you drill past a certain level. using the same (but opposite logic) you would have block2 appear
    block hiding in webi - how to:
    sadly webi doesnt have this feature directly the way that Crystal does but you can emulate it using SHOW WHEN EMPTY,block filtering and DrilFilters. The latter detects your level of drill.
    block1 filter formula - return a TRUE result when DrillFilters tell you that you havent drilled into detail yet. Set SHOW WHEN EMPTY=No
    when you do drill Block1's formula will be FALSE, the block will then technically be EMPTY and therefor wont show
    Block2's filter logic will return FALSE when DrillFilters tells you that you are still on Block1's level of drilling. But when you drill Block2's level of drill, DrillFilters in Block2's filter formula will return TRUE and its rows will be returned. It wont be empty so it will show.

  • Can we pass values when hyperlinking a classic report column?

    Version 4.2.1 (builder blue)
    Hi there,
    I have a classic report in which I have hyperlinked a column, using the standard link option in the report settings. In that we can also pass on values to to page that the linked report opens. However, I notice when I pop up the window for the value to be passed, it only lists the #XY# contents of the report. Lets say, I have created the link on page1 which when clicked opens Page 2,
    I want to pass the value of :P1_PERIOD to :P2_PERIOD
    Can we not do that through the link? If I just put the value in Item1 as P2_PERIOD and populate it with :P1_PERIOD, wouldn't that work?
    Thanks,
    Ryan

    ryansun wrote:
    Version 4.2.1 (builder blue)
    Hi there,
    I have a classic report in which I have hyperlinked a column, using the standard link option in the report settings. In that we can also pass on values to to page that the linked report opens. However, I notice when I pop up the window for the value to be passed, it only lists the #XY# contents of the report. Lets say, I have created the link on page1 which when clicked opens Page 2,
    I want to pass the value of :P1_PERIOD to :P2_PERIOD
    Can we not do that through the link?Yes, you can, but not using that syntax.
    If I just put the value in Item1 as P2_PERIOD and populate it with :P1_PERIOD, wouldn't that work?No, <tt>:P1_PERIOD</tt> is referencing the item using bind variable notation. That's only for use in SQL and PL/SQL contexts within APEX. Elsewhere in APEX (HTML source, links and branches etc) you need to reference item values using static text substitution:
    &P1_PERIOD.(Note the terminating dot.)
    Put <tt>P2_PERIOD</tt> in Item 1 Name and <tt>&P1_PERIOD.</tt> in Value.

  • Can we call a bdc program from a report?how

    hi
    experts can u help me for this

    Hi
    Yes, You can call a BDC program from Report.
    see the sample report in which it is used
    REPORT zm_reservation_alert
    NO STANDARD PAGE HEADING
    MESSAGE-ID zm_msg.
    D A T A B A S E T A B L E S D E C L A R A T I O N
    T Y P E S D E C L A R A T I O N S
    Reservations Main Structure
    TYPES: BEGIN OF s_res,
    rsnum TYPE rsnum, " Reservation No
    rspos TYPE rspos, " Item No
    usnam TYPE usnam, " User Name
    bwart TYPE bwart, " Movement Type
    aufnr TYPE aufnr, " Order Number
    rsart TYPE rsart, " Record Type
    bdart TYPE bdart, " Reservation Type
    matnr TYPE matnr, " Material No
    bdter TYPE bdter, " Req Date
    menge TYPE menge_d, " Quantity
    kostl TYPE kostl, " Cost Center
    usrid TYPE sysid, " User ID
    END OF s_res.
    Output Main Structure
    TYPES: BEGIN OF s_rep,
    usnam TYPE usnam, " User Name
    rsnum TYPE rsnum, " Reservation No
    rspos TYPE rspos, " Item No
    matnr TYPE matnr, " Material No
    bdter TYPE bdter, " Req Date
    menge TYPE menge_d, " Quantity
    kostl TYPE kostl, " Cost Center
    aufnr TYPE aufnr, " Order Number
    END OF s_rep.
    User Dept Details
    TYPES: BEGIN OF s_dept,
    pernr TYPE persno, " Personal No
    usrid TYPE sysid, " User ID
    orgeh TYPE orgeh, " Orgn Unit
    orgtx TYPE orgtx, " Dept Name
    END OF s_dept.
    For Send Mail Purpose
    DATA : i_doc_data LIKE sodocchgi1.
    DATA : BEGIN OF i_pack_list OCCURS 0.
    INCLUDE STRUCTURE sopcklsti1.
    DATA : END OF i_pack_list.
    DATA : BEGIN OF i_receivers OCCURS 0.
    INCLUDE STRUCTURE somlreci1.
    DATA : END OF i_receivers.
    DATA : BEGIN OF i_contents OCCURS 0.
    INCLUDE STRUCTURE solisti1.
    DATA : END OF i_contents.
    DATA : BEGIN OF i_header OCCURS 0.
    INCLUDE STRUCTURE solisti1.
    DATA : END OF i_header.
    DATA : BEGIN OF i_att OCCURS 0.
    INCLUDE STRUCTURE solisti1.
    DATA : END OF i_att.
    Internal table for bdcdata
    DATA : it_bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.
    Internal table to handle messages
    DATA : it_messages LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.
    D A T A D E C L A R A T I O N S
    DATA: gv_lines TYPE sy-index, " Total Lines int Table
    gv_days TYPE i, " Difference Days
    gv_date TYPE sy-datum, " Date
    gv_date1 TYPE sy-datum, " Date
    gv_date2 TYPE sy-datum, " Date
    gv_text(85), " Text Field
    gv_mesg(70), " Error Messages
    gv_bdc, " BDC Flag
    gv_flag TYPE i, " Flag
    gv_ernam TYPE ernam. " User ID
    C O N S T A N T S D E C L A R A T I O N S
    CONSTANTS: c_x VALUE 'X', " Flag
    c_endda TYPE endda VALUE '99991231'. " Date
    I N T E R N A L T A B L E S D E C L A R A T I O N S
    DATA: i_res TYPE STANDARD TABLE OF s_res WITH HEADER LINE, " Reservns
    i_dept TYPE STANDARD TABLE OF s_dept WITH HEADER LINE, " Dept
    i_rep TYPE STANDARD TABLE OF s_rep WITH HEADER LINE. " Output
    S T A R T - O F - S E L E C T I O N *
    START-OF-SELECTION.
    Fetch main data
    PERFORM fetch_data.
    Process data
    PERFORM process_data.
    *& Form fetch_data
    Fetching the Reservations related data from Database Tables
    FORM fetch_data .
    CLEAR: gv_date, gv_date1, gv_date2.
    gv_date = sy-datum.
    gv_date1 = sy-datum - 10.
    gv_date2 = sy-datum + 10.
    CLEAR i_res.
    REFRESH i_res.
    SELECT a~rsnum " Reservation No.
    b~rspos " Reservation Item
    a~usnam " User Name
    a~bwart " Movement Type
    a~aufnr " Order Number
    b~rsart " Record Type
    b~bdart " Reservation Type
    b~matnr " Material No
    b~bdter " Req Date
    INTO TABLE i_res
    FROM rkpf AS a JOIN resb AS b
    ON arsnum = brsnum
    WHERE ( b~bdter BETWEEN gv_date1 AND gv_date2 ) AND
    b~xloek EQ ' '.
    SORT i_res BY rsnum rspos.
    DELETE ADJACENT DUPLICATES FROM i_res COMPARING matnr.
    Add userid into the i_usr int table
    LOOP AT i_res.
    i_res-usrid = i_res-usnam.
    MODIFY i_res INDEX sy-tabix.
    ENDLOOP.
    IF NOT i_res[] IS INITIAL.
    Get the User Dept Name
    CLEAR i_dept.
    REFRESH i_dept.
    SELECT a~pernr " Personal No
    a~usrid " User ID
    b~orgeh " Orgn Unit
    c~orgtx " Dept Name
    INTO TABLE i_dept
    FROM pa0105 AS a JOIN pa0001 AS b
    ON apernr = bpernr JOIN t527x AS c
    ON borgeh = corgeh
    FOR ALL ENTRIES IN i_res
    WHERE a~usrid = i_res-usrid AND
    a~endda EQ c_endda AND
    b~endda EQ c_endda.
    ENDIF.
    SORT i_dept BY pernr.
    DELETE ADJACENT DUPLICATES FROM i_dept COMPARING pernr.
    Move the Creator of Reservation to a diff table
    LOOP AT i_res.
    MOVE-CORRESPONDING i_res TO i_rep.
    APPEND i_rep.
    CLEAR i_rep.
    ENDLOOP.
    SORT i_rep BY usnam rsnum rspos.
    ENDFORM. " Fetch_Data
    *& Form process_data
    Process the Reservations related data for Expiry Date
    FORM process_data .
    DATA: lv_date1 LIKE sy-datum,
    lv_date2 LIKE sy-datum,
    lv_date3(10),
    lv_menge(13),
    lv_tabix LIKE sy-tabix.
    LOOP AT i_rep.
    CLEAR: gv_days, gv_text, lv_date1, lv_date2,lv_date3.
    lv_tabix = sy-tabix.
    AT NEW usnam.
    Populate the Contents Table
    CLEAR i_att.
    REFRESH i_att.
    i_att = 'Reservations Reminder'(014).
    APPEND i_att.
    i_att = '----
    APPEND i_att.
    i_att-line = ' '.
    APPEND i_att.
    READ TABLE i_dept WITH KEY usrid = i_rep-usnam.
    CONCATENATE 'Name:'(003) i_rep-usnam 'Dept:'(015) i_dept-orgtx
    INTO i_att-line SEPARATED BY space.
    APPEND i_att.
    i_att-line = ' '.
    APPEND i_att.
    i_att = 'Please find the List of expiring Reservations'(004).
    APPEND i_att.
    i_att-line = ' '.
    APPEND i_att.
    CONCATENATE '--' '' '--
    ' INTO
    i_att-line SEPARATED BY space.
    APPEND i_att.
    CONCATENATE 'Reservation #'(006) 'Material #'(007) ' Quantity'(002)
    'Due Date'(008) 'Work Center/CC'(005) INTO
    i_att-line SEPARATED BY space.
    APPEND i_att.
    CONCATENATE '--' '' '--
    ' INTO
    i_att-line SEPARATED BY space.
    APPEND i_att.
    i_att-line = ' '.
    APPEND i_att.
    ENDAT.
    gv_days = i_rep-bdter - gv_date.
    lv_date1 = i_rep-bdter + 5.
    lv_date2 = i_rep-bdter + 10.
    MOVE i_rep-menge TO lv_menge.
    WRITE i_rep-bdter TO lv_date3.
    IF gv_days = 10.
    IF i_rep-aufnr <> space.
    CONCATENATE i_rep-rsnum i_rep-matnr lv_menge lv_date3
    i_rep-aufnr 'is due for 10 days. Please collect'(009)
    INTO gv_text SEPARATED BY space.
    ELSE.
    CONCATENATE i_rep-rsnum i_rep-matnr lv_menge lv_date3
    i_rep-kostl 'is due for 10 days. Please collect'(009)
    INTO gv_text SEPARATED BY space.
    ENDIF.
    i_att-line = gv_text.
    APPEND i_att.
    CLEAR i_att.
    CLEAR gv_text.
    ENDIF.
    IF gv_days = 5.
    IF i_rep-aufnr <> space.
    CONCATENATE i_rep-rsnum i_rep-matnr lv_menge lv_date3
    i_rep-aufnr 'is due for 5 days. Please collect'(010)
    INTO gv_text SEPARATED BY space.
    ELSE.
    CONCATENATE i_rep-rsnum i_rep-matnr lv_menge lv_date3
    i_rep-kostl 'is due for 5 days. Please collect'(010)
    INTO gv_text SEPARATED BY space.
    ENDIF.
    i_att-line = gv_text.
    APPEND i_att.
    CLEAR i_att.
    CLEAR gv_text.
    ENDIF.
    IF gv_date = lv_date1.
    IF i_rep-aufnr <> space.
    CONCATENATE i_rep-rsnum i_rep-matnr lv_menge lv_date3
    i_rep-aufnr 'is getting cancelled on'(011) lv_date2
    INTO gv_text SEPARATED BY space.
    ELSE.
    CONCATENATE i_rep-rsnum i_rep-matnr lv_menge lv_date3
    i_rep-kostl 'is getting cancelled on'(011) lv_date2
    INTO gv_text SEPARATED BY space.
    ENDIF.
    i_att-line = gv_text.
    APPEND i_att.
    CLEAR i_att.
    CLEAR gv_text.
    ENDIF.
    IF gv_date = lv_date2.
    IF i_rep-aufnr <> space.
    CONCATENATE i_rep-rsnum i_rep-matnr lv_menge lv_date3
    i_rep-aufnr 'is being cancelled'(012)
    INTO gv_text SEPARATED BY space.
    ELSE.
    CONCATENATE i_rep-rsnum i_rep-matnr lv_menge lv_date3
    i_rep-kostl 'is being cancelled'(012)
    INTO gv_text SEPARATED BY space.
    ENDIF.
    i_att-line = gv_text.
    APPEND i_att.
    CLEAR i_att.
    CLEAR gv_text.
    Mark the Reservation Item 'DELETED' using BDC.
    UPDATE resb SET xloek = c_x.
    PERFORM delete_item_resb.
    ENDIF.
    AT END OF usnam.
    IF ( gv_days = 10 OR gv_days = 5 OR gv_date = lv_date1 OR
    gv_date = lv_date2 ).
    Read the User who creates the Reservn and send a mail alert to him
    CLEAR : i_receivers,gv_ernam.
    REFRESH: i_receivers.
    READ TABLE i_rep INDEX lv_tabix.
    gv_ernam = i_rep-usnam.
    IF gv_ernam <> space.
    Send mail Alert to PR Creator(SAP inbox)
    PERFORM send_alert_data.
    Send Mail to External Mail ID of the SAP USER
    PERFORM send_mail_external.
    ENDIF.
    ENDIF.
    ENDAT.
    ENDLOOP.
    ENDFORM. " Process_data
    *& Form delete_item_resb
    Set the Deletion Indicator for the Res. Item in RESB
    FORM delete_item_resb.
    gv_bdc = 'N'.
    Perform to fill it_bdcdata.
    PERFORM fill_it_bdcdata.
    Call the Transaction MB22
    CALL TRANSACTION 'MB22' USING it_bdcdata MODE 'A' UPDATE 'S'
    MESSAGES INTO it_messages.
    IF sy-subrc <> 0.
    gv_flag = 1.
    If error occurs in transaction mode run bdc session for that data
    PERFORM bdc_process.
    ENDIF.
    Handles error messages
    PERFORM error_messages.
    CLEAR : it_bdcdata, it_messages.
    REFRESH : it_bdcdata, it_messages.
    IF gv_bdc = 'O'.
    close bdc if it is open
    PERFORM close_bdc.
    ENDIF.
    ENDFORM. "delete_item_resb
    *& Form FILL_IT_BDCDATA
    Filling Bdcdata structure with data
    FORM fill_it_bdcdata.
    PERFORM bdc_dynpro USING 'SAPMM07R' '0560'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'RM07M-RSPOS'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    PERFORM bdc_field USING 'RM07M-RSNUM'
    i_rep-rsnum.
    PERFORM bdc_field USING 'RM07M-RSPOS'
    i_rep-rspos.
    PERFORM bdc_dynpro USING 'SAPMM07R' '0510'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'RESB-XLOEK'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    PERFORM bdc_field USING 'RESB-XLOEK'
    c_x.
    PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'COBL-KOSTL'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '=ENTE'.
    PERFORM bdc_dynpro USING 'SAPMM07R' '0510'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'RESB-ERFMG'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '=BU'.
    PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'COBL-KOSTL'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '=ENTE'.
    ENDFORM. " FILL_IT_BDCDATA
    *& Form BDC_DYNPRO
    Filling the it_bdcdata table with program name & screen number
    FORM bdc_dynpro USING program LIKE bdcdata-program
    dynpro LIKE bdcdata-dynpro.
    it_bdcdata-program = program.
    it_bdcdata-dynpro = dynpro.
    it_bdcdata-dynbegin = 'X'.
    APPEND it_bdcdata.
    CLEAR it_bdcdata.
    ENDFORM. " BDC_DYNPRO
    *& Form BDC_FIELD
    Filling it_bdcdata with field name and field value
    FORM bdc_field USING fnam LIKE bdcdata-fnam
    fval.
    it_bdcdata-fnam = fnam.
    it_bdcdata-fval = fval.
    APPEND it_bdcdata.
    CLEAR it_bdcdata.
    ENDFORM. " BDC_FIELD
    *& Form ERROR_MESSAGES
    Displaying error messages
    FORM error_messages.
    CALL FUNCTION 'FORMAT_MESSAGE'
    EXPORTING
    id = sy-msgid
    lang = sy-langu
    IMPORTING
    msg = gv_mesg
    EXCEPTIONS
    not_found = 1
    OTHERS = 2.
    LOOP AT it_messages WHERE msgtyp = 'E'.
    WRITE : / 'Message :'(001) ,gv_mesg.
    CLEAR it_messages.
    ENDLOOP.
    ENDFORM. " ERROR_MESSAGES
    *& Form BDC_PROCESS
    Open bdc session if call transaction fails
    FORM bdc_process.
    IF gv_bdc = 'N'.
    open bdc session
    PERFORM open_bdc.
    gv_bdc = 'O'.
    ENDIF.
    IF gv_bdc = 'O'.
    insert data into bdc session
    PERFORM insert_bdc.
    ENDIF.
    ENDFORM. " BDC_PROCESS
    *& Form OPEN_BDC
    Calling function module to open bdc session
    FORM open_bdc.
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
    client = sy-mandt
    group = 'ZMM'
    keep = 'X'
    user = sy-uname
    EXCEPTIONS
    client_invalid = 1
    destination_invalid = 2
    group_invalid = 3
    group_is_locked = 4
    holddate_invalid = 5
    internal_error = 6
    queue_error = 7
    running = 8
    system_lock_error = 9
    user_invalid = 10
    OTHERS = 11.
    ENDFORM. " OPEN_BDC
    *& Form INSERT_BDC
    Insert it_bdcdata into bdc by calling function module bdc_insert
    FORM insert_bdc.
    CALL FUNCTION 'BDC_INSERT'
    EXPORTING
    tcode = 'MB22'
    TABLES
    dynprotab = it_bdcdata
    EXCEPTIONS
    internal_error = 1
    not_open = 2
    queue_error = 3
    tcode_invalid = 4
    printing_invalid = 5
    posting_invalid = 6
    OTHERS = 7.
    ENDFORM. " INSERT_BDC
    *& Form CLOSE_BDC
    Closing bdc session
    FORM close_bdc.
    CALL FUNCTION 'BDC_CLOSE_GROUP'
    EXCEPTIONS
    not_open = 1
    queue_error = 2
    OTHERS = 3.
    ENDFORM. " CLOSE_BDC
    *& Form send_alert_data
    Send Alert for the Expired Contract
    FORM send_alert_data .
    CLEAR: gv_lines,i_receivers, i_header, i_contents,i_doc_data.
    REFRESH : i_receivers,i_header,i_contents.
    DESCRIBE TABLE i_att LINES gv_lines.
    i_receivers-receiver = gv_ernam.
    i_receivers-receiver = 'SSHEIK'.
    i_receivers-rec_type = 'B'.
    i_receivers-rec_date = sy-datum.
    i_receivers-express = 'X'.
    i_receivers-com_type = 'INT'.
    i_receivers-notif_del = 'X'.
    APPEND i_receivers.
    i_doc_data-obj_name = 'SAPoffice'(013).
    i_doc_data-obj_descr = 'Reservations Reminder'(014).
    i_doc_data-obj_langu = 'E'.
    i_doc_data-no_change = c_x.
    i_doc_data-obj_prio = 1.
    i_doc_data-priority = 1.
    i_doc_data-doc_size = ( gv_lines - 1 ) * 255 + 135.
    i_pack_list-transf_bin = c_x.
    i_pack_list-head_start = '1'.
    i_pack_list-head_num = '1'.
    i_pack_list-body_start = '1'.
    i_pack_list-body_num = gv_lines.
    i_pack_list-doc_type = 'DOC'.
    i_pack_list-obj_name = 'SAPoffice'(013).
    i_pack_list-obj_descr = 'Reservations Reminder'(014).
    i_pack_list-obj_langu = 'E'.
    i_pack_list-doc_size = ( gv_lines - 1 ) * 255 + 135.
    APPEND i_pack_list.
    i_header-line = 'Header'. APPEND i_header.
    Data for contents
    i_contents-line = 'Please find the Reservations Due List'(016).
    APPEND i_contents.
    CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
    EXPORTING
    document_data = i_doc_data
    PUT_IN_OUTBOX = 'X'
    IMPORTING
    SENT_TO_ALL =
    NEW_OBJECT_ID =
    TABLES
    packing_list = i_pack_list
    object_header = i_header
    contents_bin = i_att
    contents_txt = i_contents
    receivers = i_receivers
    EXCEPTIONS
    too_many_receivers = 1
    document_not_sent = 2
    document_type_not_exist = 3
    operation_no_authorization = 4
    parameter_error = 5
    x_error = 6
    enqueue_error = 7
    OTHERS = 8.
    IF sy-subrc = 0.
    MESSAGE i000 WITH 'Mail Sucessfully sent'(017).
    ELSE.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    ENDFORM. " send_alert_data
    *& Form send_mail_external
    Send mail to External MAIL ID of the PR Creator
    FORM send_mail_external.
    DATA : lv_str(24), lv_str1(40),
    lv_pernr LIKE adr6-persnumber,
    lv_adrnr LIKE adr6-addrnumber,
    lv_usrid LIKE pa0105-usrid,
    lv_mail LIKE adr6-smtp_addr,
    lv_sendor TYPE syuname,
    lv_receiver TYPE string,
    lv_header TYPE string,
    lv_body TYPE string.
    CLEAR: lv_pernr, lv_usrid, lv_adrnr,
    lv_mail, lv_sendor, lv_receiver,
    lv_header, lv_body .
    lv_usrid = gv_ernam.
    SELECT SINGLE persnumber addrnumber FROM usr21
    INTO (lv_pernr,lv_adrnr)
    WHERE bname = lv_usrid.
    IF sy-subrc = 0.
    SELECT SINGLE smtp_addr INTO lv_mail FROM adr6
    WHERE addrnumber = lv_adrnr AND
    persnumber = lv_pernr.
    IF sy-subrc <> 0.
    CONCATENATE lv_usrid '@anc.com' INTO lv_mail.
    lv_receiver = lv_mail.
    ELSE.
    lv_receiver = lv_mail.
    ENDIF.
    lv_receiver = '[email protected]'.
    lv_sendor = 'JALKHATAM'.
    lv_header = 'Reservations Reminder'(014).
    lv_str = 'Pls check your SAP Inbox'(019).
    lv_str1 = 'for the status of Reservations Due List'(020).
    CONCATENATE lv_str lv_str1 INTO lv_body
    SEPARATED BY space.
    Call Function Module To send mail
    CALL FUNCTION 'UWSP_SEND_MAIL_TO_WEB'
    EXPORTING
    id_header = lv_header
    id_body = lv_body
    id_receiver = lv_receiver
    id_sender = lv_sendor
    ID_HTML_MAIL =
    id_commit_work = 'X'
    EXCEPTIONS
    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.
    ENDIF.
    ENDFORM. " send_mail_external
    <b>Reward points for useful Answers</b>
    Regards
    Ashu

  • 5- 6 Measure Objects in A Single Query

    Hi Techies,
    I want to see the consolidated value of the measure object's of my universe,
    when I place my measure objects(6) in the single query, with a conditional object and wen I run the query I am seeing an error message as no data to retrieve.
    and If I take one measure object in each query I am able to see some data, is there any reason behind this ..
    can't I proceed with single query with all my measure objects in the same query rather than many data providers for each measure object.
    Please suggest me on this
    Thanks in advance .............

    All the measure objects are coming from single table only,
    and the conditional object means we have written some condition at universe level and these objects refer to another table and there is a necessary join between these two tables...

  • How can I print PDF attachments from ABAP report in transaction ME23N?

    Hi,
    Users attach PDF files using "services for objects" in transaction ME23N.
    How can I print the PDF attachments from ABAP report ?
    Thanks in advance,,

    Hi,
      check this link,this might help you to solve your problem
    /people/thomas.jung3/blog/2005/04/28/setting-up-an-adobe-writer-for-abap-output
    Regards
    Kiran Sure

Maybe you are looking for