Need help dynamically building combo-boxes...

How can I dynamically build drop down lists?
I was thinking about using a dynamic page, with bind variables
set for sql statements inside <oracle></oracle> tags, or passing
the variable from the first selection to the second selection of
another page (or the same page?)...
Another thing I was thinking about would be to base a form on a
DB procedure, and pass the selections to the procedure, and re-
build the lists that way...
I need to avoid client side processing (javascript) because of
accessiblity concerns.
Any ideas would be greatly appreciated...
Ryan

Ajay,
The following is an excerpt of the code I used. Because of a
lack of time, I haven't made the code generic. The code is used
to interface with Oracle Reports 6i & Oracle Configurator. The
configurator (config_hdr_id & config_rev_nbr) parameters are
selected by the user and passed into Oracle Reports using related
dynamic combo-boxes. Pay particular attention to the
wwpro_api_parameters.get_value function as well as the onChange
javascript. Hope you can take pieces of this for an example.
The following is the code for a Portal dynamic page:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
<title>Configurator Reports</title>
<SCRIPT LANGUAGE="JavaScript1.1">
<!-- Comment out script for old browsers
** this function will open a new URL for the Reports CGI
** executable to run the report
function runReport()
// semi-constants for JavaScript
var cgiexe = "runrep.sh";
var slash = "/";
var colon = ":";
var qmark = "?";
var paramsep = "&";
** URL parameter values
** We should check for nulls, http://, etc. but not for now
var dtlist = document.REPFORM.WEBHOST;
var WEBHOST = dtlist.options[dtlist.selectedIndex].value;
var WEBPORT = document.REPFORM.WEBPORT.value;
var dtlist = document.REPFORM.SERVER;
var SERVER = dtlist.options[dtlist.selectedIndex].value;
var dtlist = document.REPFORM.REPORT;
var REPORT = dtlist.options[dtlist.selectedIndex].value;
var dtlist = document.REPFORM.P_HEADER_ID;
var P_HDR_ID = dtlist.options[dtlist.selectedIndex].value;
var P_REV_NBR = document.REPFORM.P_REV_NBR.value;
var dtlist = document.REPFORM.USERID;
var USERID = dtlist.options[dtlist.selectedIndex].value;
var dtlist = document.REPFORM.DESTYPE;
var DESTYPE = dtlist.options[dtlist.selectedIndex].value;
var dflist = document.REPFORM.DESFORMAT;
var DESFORMAT = dflist.options[dflist.selectedIndex].value;
var dtlist = document.REPFORM.MIMETYPE;
var MIMETYPE = dtlist.options[dtlist.selectedIndex].value;
// construct the final URL given the parameters
var URL = "http://" + WEBHOST + colon + WEBPORT +
"/dev60cgi/"
+ cgiexe + qmark +
"server=" + SERVER + paramsep +
"report=" + REPORT + paramsep +
"p_header_id=" + P_HDR_ID + paramsep +
"p_rev_nbr=" + P_REV_NBR + paramsep +
"userid=" + USERID + paramsep +
"destype=" + DESTYPE + paramsep +
"desformat=" + DESFORMAT + paramsep +
"mimetype=" + MIMETYPE;
// alert("Opening a window with the following URL : \r\r" +
URL);
// open the new window with the constructed URL
//runWindow = window.open(URL);
//Point the current window to the URL to run the form
this.window.location.href=URL;
function getRevision(form)
var l_config_hdr_id =
form.P_HEADER_ID.options[form.P_HEADER_ID.selectedIndex].value;
window.location.href =
"/pls/portal30/!PORTAL30.wwpob_page_util.redirect?_pageid=61&_tab
string=&_portletmode=&_cache=1&cz.p_config_hdr_id="+l_config_hdr_
id;
return false;
//-->
</SCRIPT>
</head>
<body>
<form NAME="REPFORM" METHOD="GET" onSubmit="return false">
<table BORDER=0 CELLSPACING="5" valign="top" align="left">
<tr>
<td ALIGN=LEFT COLSPAN="2"><font face="arial" size="-1"><B>Enter
configuration data and click the button to submit the selected
report.</B></font></td>
</tr>
<TR><TD> </TD></TR>
<tr><td valign="top"><table BORDER=0 CELLSPACING="2">
<TR><TD COLSPAN="3" ALIGN="LEFT">
<FONT COLOR="#6666CC" FACE="arial,helvetica"
SIZE="-1"><NOBR><B>Report Parameters</B></NOBR></FONT>
</TD></TR>
<tr>
<td ALIGN=LEFT><font face="arial" size="-1">Report:</font></td>
<td><font face="arial" size="-1"><select NAME="REPORT">
<option SELECTED
VALUE="portal_test_report_6i.rdf">portal_test_report_6i.rdf
</select></font></td>
</tr>
<ORACLE>
-- Dynamically retrieving the Configurator Header ID's.
-- kreierso 8-oct-01
declare
v_config_hdr_id oc_config_ord_qte_lookup.config_hdr_id%type;
begin
v_config_hdr_id :=
to_number(portal30.wwpro_api_parameters.get_value('p_config_hdr_i
d','cz'));
htp.p('<TR><TD ALIGN="left"><font face="arial"
size="-1">Configuration Header ID:</font></TD>');
htp.p('<TD><font face="arial" size="-1"><SELECT
NAME="P_HEADER_ID" onchange="getRevision(this.form)">');
htp.p('<OPTION VALUE=" "> ');
for r_get_hdr_values in (
select cz.config_hdr_id, cz.config_rev_nbr
from cz_config_hdrs cz
order by cz.config_hdr_id desc
) loop
if v_config_hdr_id = r_get_hdr_values.config_hdr_id then
htp.p('<OPTION SELECTED
VALUE="'||r_get_hdr_values.config_hdr_id||'">'||r_get_hdr_values.
config_hdr_id);
else
htp.p('<OPTION
VALUE="'||r_get_hdr_values.config_hdr_id||'">'||r_get_hdr_values.
config_hdr_id);
end if;
end loop;
htp.p('</SELECT></font>');
htp.p('</TD></TR>');
htp.p('<TR><TD ALIGN="left"><font face="arial"
size="-1">Configuration Revision:</font></TD>');
htp.p('<TD><font face="arial" size="-1"><SELECT
NAME="P_REV_NBR">');
for r_get_rev_values in (
select cz.config_rev_nbr
from cz_config_hdrs cz
where cz.config_hdr_id = v_config_hdr_id
order by cz.config_rev_nbr desc
) loop
htp.p('<OPTION
VALUE="'||r_get_rev_values.config_rev_nbr||'">'||r_get_rev_values
.config_rev_nbr);
end loop;
htp.p('</SELECT></font></TD></TR>');
end;
</ORACLE>
<tr>
<td ALIGN=LEFT><font face="arial" size="-1">Format:</font></td>
<td><font face="arial" size="-1"><select NAME="DESFORMAT">
<option SELECTED VALUE="RTF">RTF
<option VALUE="PDF">PDF
<option VALUE="HTML">HTML</select></font></td>
</tr>
<tr><td> </td></tr>
<tr>
<td ALIGN=RIGHT><FONT face="arial" size="-1"><input TYPE="SUBMIT"
NAME="Runrep" VALUE="Run Report"
onClick="runReport();"></FONT></td>
<td ALIGN=RIGHT><FONT face="arial" size="-1"><input TYPE="RESET"
NAME="Reset" VALUE="Reset"></FONT></td>
</tr>
</table></td>
<td valign="top"><table BORDER=0 CELLSPACING="2">
<TR><TD COLSPAN="3" ALIGN="LEFT">
<FONT COLOR="#6666CC" FACE="arial,helvetica"
SIZE="-1"><NOBR><B>Report Paremeters (Hidden
Candidates)</B></NOBR></FONT>
</TD></TR>
<tr>
<td ALIGN=LEFT><font face="arial" size="-1">Userid:</font></td>
<td><font face="arial" size="-1"><select NAME="USERID">
<option SELECTED
VALUE="kreierso/password@DEV11">kreierso/password@DEV11
</select></font></td>
</tr>
<tr>
<td ALIGN=LEFT><font face="arial" size="-1">Type:</font></td>
<td><font face="arial" size="-1"><select NAME="DESTYPE">
<option SELECTED VALUE="cache">cache
<option VALUE="Printer">printer
<option VALUE="File">file
</select></font></td>
</tr>
<tr>
<td ALIGN=LEFT><font face="arial" size="-1">Mimetype:</font></td>
<td><font face="arial" size="-1"><select NAME="MIMETYPE">
<option SELECTED VALUE="application/msword">application/msword
</select></font></td>
</tr>
<tr>
<td ALIGN=LEFT><font face="arial" size="-1">Reports
Server:</font></td>
<td><font face="arial" size="-1"><select NAME="SERVER">
<option SELECTED
VALUE="Rep60_dev11_shane.dci.com">Rep60_dev11_shane.dci.com
</select></font></td>
</tr>
<tr>
<td ALIGN=LEFT><font face="arial" size="-1">Web Host:</font></td>
<td><font face="arial" size="-1"><select NAME="WEBHOST">
<option SELECTED VALUE="shane.dci.com">shane.dci.com
</select></font></td>
</tr>
<tr>
<td ALIGN=LEFT><font face="arial" size="-1">Web Port:</font></td>
<td><font face="arial" size="-1"><input type=hidden
NAME="WEBPORT" VALUE="7500">7500</font></td>
</tr>
</td></tr></table>
<TR><TD> </TD></TR>
<TR><TD ALIGN="CENTER" COLSPAN="2">
<font face="arial" size="+1" color="#000099">This is currently
being developed.... ~Thanks, Kirk.</font>
</TD></TR>
</table>
</form>
</body>
</html>

Similar Messages

  • Need Help, retrieving a combo boxes actual/print/visible value instead of the export value.

    Hello,
    I need help, retrieving a combo boxes actual value, not the export value.
    I have a combo box with multiple options to select from.
    each of those selections has a separate export value, which is in the form of a number, which I use to calculate dates in a separate field.
    However, I have another field that i want to retrieve the, users selected value, which is text, from the combo box instead of the export value.
    Is there an easy way to do this.
    This is what I am currently using. But like I said the results are that I retrieve the export value and not the selected text value.
    event.value = this.getField("_Arugula").valueAsString;
    Thanks

    First get the currentValueIndices property of the combo box and use it with the getItemAt field method to return (what I call) the display value. Something like:
    var f = getField("combo1");
    var display_value = f.getItemAt(f.currentValueIndices, false);
    See the documentation for more information

  • I need help Centering a div box to a background image using dreamweaver cs5.5.

    I need help Centering a div box to a background image using dreamweaver cs5.5. Everything shift left when viewing on different size monitors?  See what I mean at
    www.woodlandhospice.com

    Have you looked at your page with images disabled?
    I urge you to re-think this approach to web design because images of text are not indexed by search engines, screen readers or translators.  Given the demographic group your site is targeting, you really need to ensure maximum web accessibility for all users.
    Navigation, headings and descriptions all need to be in real text -- not images of text.
    Ken is right.  Absolute positioning is pure poison for such a simple layout.  My advice is to start over with one of the pre-built Starter Pages in DW.  Go to File > New > Blank page > HTML.  Select a layout from the 3rd column and hit CREATE button.
    Nancy O.

  • Need help in building a utility...?

    Gurus,
    I need to build a dynamic selection screen for a utility that will extract data from a legacy database. I am not sure how to do it....I have the design in mind but will need help from you experts in the implementation.
    So i need to have to twol radip buttons on the selection screen such that when one radio button is clicked then few other select options come on the screen and when the other radio button is selected then different select options come on the screen.
    Once the user any of these two radio buttons and fill in the respective values for the parameters, then i have to fire native SQL queries on the legacy SQL database.
    Any suggestions...
    First i need to code the dynamic selection screen ....Your help will be appreciated...
    Thanks

    Please have a look at below link. May be helpful to you...[Dynamic Selection Screen|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a07a330f-126c-2910-c684-d2a45f0f37dd]
    I hope it helps.
    Best Regards,
    Vibha

  • Help with linking combo boxes so that some options are made unavailable

    Hello!
    I'm having trouble setting up an interactive PDF form with multiple combo boxes.
    I have designed an interactive PDF form in InDesign CS6 but am doing the final preparation and formatting in Adobe Acrobat XI Pro.
    First of all, I am not sure if I should be using combo boxes or list boxes, but the combo box seemd to look better after I export the PDF and also left the field blank, ready for selection from the drop-down menu.
    Basically I have a list of drop-down lists, but not all combinations are compatible. For example, after maing "Selection 1" in "Combo box 1", I need only "Selection 1", "2", and "3" [out of the total 5] to be available in "Combo box 2".
    I need to be able to apply this algorhythm to the next few combo boxes as well.
    Moreover, I would need some of the checkboxes disabled [the user won't be able to check them at all]when I make a certain selection in some of the combo boxes.
    Needless to say, I don't know any Java, coding or making calculations in LiveCycle Designer, so I don't even know where to begin.
    I have attached a screen grab of my form and what I want to achieve.
    Any help would be very much appreciated.
    Thank you!

    If it is static data, I would suggest you to cache it rather than having it in each of the user session. You can have configuration/code to refresh when needed. Please look at any available caching frameworks (EhCache, OSCache etc...)

  • Dynamic LOV/Combo Box

    I need to put an LOV/Combo Box on a form where they can select a date from a list of values. We have reports that our field reps have to submit for the previous friday. I have code to create a combo box. How can I add this to a form or create a LOV with this function:
    DECLARE
         n_NumofDays NUMBER;
         testdate VARCHAR2(50);
         selectedyear VARCHAR2(50);
         firstdayofyear VARCHAR2(11);
         firstfridayofyear VARCHAR2(11);
         upcomingfriday VARCHAR2(11);
         currentdate DATE;
         thisyear VARCHAR2(50);
         selected VARCHAR2(8);
    BEGIN
         selectedyear := TO_CHAR(SYSDATE,'YYYY');
    firstdayofyear := '01-JAN-' || selectedyear;
    firstfridayofyear := NEXT_DAY(firstdayofyear, 'FRIDAY');
    upcomingfriday := NEXT_DAY(SYSDATE, 'FRIDAY');
         htp.p('<select name="weekenddate">');
         htp.p('<option selected value="'|| firstfridayofyear || '">Friday '|| firstfridayofyear || '</option>');
              currentdate := firstfridayofyear;
              thisyear := selectedyear;
              x :=0;
         WHILE SelectedYear = ThisYear LOOP
         IF currentdate = upcomingfriday THEN
              selected := 'selected';
         ELSE
              selected :='';
         END IF;
         htp.p('<option '|| selected || ' value="'|| currentdate || '">Friday '|| currentdate || '</option>');
              currentdate := NEXT_DAY(currentdate, 'FRIDAY');
              thisyear := TO_CHAR(currentdate,'YYYY');
         END LOOP;
         htp.br;
         htp.p('</select>');
    htp.br;
    htp.p(n_NumofDays);
    END;
    Look forward to your answer.

    Rebecca:
    This is the standard call for a Portal-built form:
    PORTAL.wwa_app_module.link (
    p_arg_names => PORTAL.wwv_standard_util.string_to_table2('_moduleid:loc_code'),
    p_arg_values => PORTAL.wwv_standard_util.string_to_table2('2728668008:BHM'));
    The 1st parm is required, it id's the form to call; the 2nd parm, LOC_CODE, I'm having to hard-code. It relates to the specific page from where this form is called; therefore, I've several places throughout the site where I call this form and the LOC_CODE value is different. I've a field on on this form that gets populated with this value when the form comes-up, but I have it hidden. I can also use this value to drive the contents of a combo-box on the form. That's what I really needed to do; restrict the selection there based on where the form was being called from.
    Hope that helps...
    Ed in Tampa

  • Need guidance for a Combo Box and Keystoke/Validate script

    Hello,
    My goal is to have a combo box selection trigger and enter a value into a text field however the text field needs to be editable.  I want the combo box to determine a default value but changeable by the user if necessary.  Here is the script, I just don't know where to put it.
    if (!event.willCommit) {
    var M1Month = this.getField("Month 1 Pulldown").value; var M1Exp = this.getField("M1 Exp");
    if(M1Month == "January") {M1Exp.value = "1/31/10"};
    if(M1Month == "February") {M1Exp.value = "2/28/10"};
    if(M1Month == "March") {M1Exp.value = "3/31/10"};
    if(M1Month == "April") {M1Exp.value = "4/30/10"};
    if(M1Month == "May") {M1Exp.value = "5/31/10"};
    if(M1Month == "June") {M1Exp.value = "6/30/10"};
    if(M1Month == "July") {M1Exp.value = "7/31/10"};
    if(M1Month == "August") {M1Exp.value = "8/31/10"};
    if(M1Month == "September") {M1Exp.value = "9/30/10"};
    if(M1Month == "October") {M1Exp.value = "10/31/10"};
    if(M1Month == "November") {M1Exp.value = "11/30/10"};
    if(M1Month == "December") {M1Exp.value = "12/31/10"};
    if(M1Month == " ") {M1Exp.value = ""};

    I did not say to take out the line. You need to replace the "" (a null string),  with " " (a space).
    But I would look at using the 'switch' statement that allows for a series of logical test and if none of those specific test has been passed takes a default action.
    You need to put the script in the 'Custom keystroke script'.
    if (!event.willCommit) {
    var M1Exp = this.getField("M1 Exp");
    if(event.changeEx == "January") {
    M1Exp.value = "1/31/10";
    } else if(event.changeEx == "February") {
    M1Exp.value = "2/28/10";
    } else if(event.changeEx == "March") {
    M1Exp.value = "3/31/10";
    } else if(event.changeEx == "April") {
    M1Exp.value = "4/30/10";
    } else if(event.changeEx == "May") {
    M1Exp.value = "5/31/10";
    } else if(event.changeEx == "June") {
    M1Exp.value = "6/30/10";
    }else if(event.changeEx == "July") {
    M1Exp.value = "7/31/10";
    } else if(event.changeEx == "August") {
    M1Exp.value = "8/31/10";
    } else if(event.changeEx == "September") {
    M1Exp.value = "9/30/10";
    }else if(event.changeEx == "October") {
    M1Exp.value = "10/31/10";
    }else if(event.changeEx == "November") {
    M1Exp.value = "11/30/10";
    }else if(event.changeEx == "December") {
    M1Exp.value = "12/31/10";
    }else{
    // all other selections
    M1Exp.value = "";
    } // end not will commit
    You will also need to use the 'event' object's 'changeEx' property.
    If you do not need the selected text, by setting the export value to the expiration date your script could be:
    if (!event.willCommit) {
    this.getField("M1 Exp").value = event.changeEx;

  • Need help to build a navigation from billing component BEABDS_BILLDOC to sales order component BT115H_SLSO on follow up create action

    Hello Experts,
    I have been assigned to a CRM-UI Object which is basically to create follow-up action i.e. creating debit/credit memos with reference of one/multiple billing documents.
    SAP has already provided an option to create the follow-up action for 1 billing document at a time, but the requirement is to create follow-up action for multiple billing documents at a time. For example, There are 2 invoices raised against a dealer "DEL" and due to some reason the dealer wants to send back the products.
    Now the dealer wants to create only 1 claim/return for those 2 invoices, Which Standard SAP doesn't provide.
    I did some of the development and added the 'Follow-up create' Button to the search result work area of the billing search. But could not able to build the link between the Billing and Sales order Components.
    It would be really a great favor if you can guide me to build this navigation link.
    Please let me know if any further information required.
    Please find the attachment for step-by-step process.
    Codes and Configs:
    Method DO_PREPARE_OUTPUT to provide the “Follow-up Create” Button
    method DO_PREPARE_OUTPUT.
    CALL METHOD SUPER->DO_PREPARE_OUTPUT .
    DATA:
    lr_coco                  TYPE REF TO cl_beabds_b_bspwdcomponen_impl,
    ls_button                TYPE crmt_thtmlb_button,
    lv_usage                  TYPE string,
    lv_info                  TYPE string,
    lv_info_transfert        TYPE string,
    lv_show_btn_transfer      TYPE boolean VALUE abap_false,
    lv_show_btn_cancel        TYPE boolean VALUE abap_false,
    lv_show_btn_split        TYPE boolean VALUE abap_false,
    lv_show_btn_create      TYPE boolean VALUE abap_false,
    lr_col                    TYPE REF TO if_bol_bo_col,
    lv_show_separator        TYPE abap_bool,
    lv_num_marked            TYPE i,
    lr_entity                TYPE REF TO if_bol_bo_property_access,
    lv_appl                  TYPE bea_appl_ubd.
    lr_coco ?= comp_controller.
    lr_col  = me->typed_context->ubdheader->collection_wrapper->get_marked( ).
    lv_num_marked = lr_col->size( ).
    * Decide based on the usage which buttons should appear, others are not shown by default
    CALL METHOD lr_coco->get_env_info
    IMPORTING
    ev_usage          = lv_usage
    ev_info          = lv_info
    ev_info_transfert = lv_info_transfert.
    CASE  lv_usage.
    WHEN cl_beabds_b_bspwdcomponen_impl=>gc_usage_search_result.
    IF lv_info_transfert = cl_beabds_b_bspwdcomponen_impl=>gc_inf_trans_search_result.
    lv_show_btn_create = abap_true.
    lv_show_separator = abap_true.
    ENDIF.
    ENDCASE.
    if  lv_show_btn_create  = abap_true.
    *  Separator between two buttons if needed
    IF lv_show_separator = abap_true.
    CLEAR ls_button.
    ls_button-type = cl_thtmlb_util=>gc_separator.
    APPEND ls_button TO gt_buttons.
    lv_show_separator = abap_false.
    ENDIF.
    CLEAR ls_button.
    IF lv_num_marked > 0.
    ls_button-enabled = abap_true.
    ELSE.
    ls_button-enabled = abap_false.
    ENDIF.
    ls_button-text      = text-001.
    ls_button-id        = 'BTN_CREATE'.                    "#EC NOTEXT
    ls_button-on_click  = 'CREATE'.                        "#EC NOTEXT
    APPEND ls_button TO gt_buttons.
    lv_show_separator = abap_true.
    ENDIF.
    endmethod.
    METHOD eh_oncreate.
    * Added by wizard: Handler for event 'CREATE'
    TYPES: BEGIN OF ty_trans,
    process_type      TYPE crmt_process_type,
    proc_type_descr_20 TYPE crmt_description_20,
    subobject_category TYPE crmt_subobject_category,
    subob_cat_descr_20 TYPE crmt_description_20,
    END OF ty_trans.
    DATA: lt_trans      TYPE STANDARD TABLE OF ty_trans ,
    ls_trans      TYPE ty_trans ,
    lv_ref_struct TYPE REF TO  ty_trans.
    DATA:
    lv_struct_ref TYPE REF TO crmt_extbt_il_header_ref,
    lv_value_node TYPE REF TO cl_bsp_wd_value_node,
    lr_ent        TYPE REF TO if_bol_bo_property_access,
    lv_bo_coll    TYPE REF TO if_bol_bo_col,
    ls_ref_header TYPE crmt_extbt_il_header_ref,
    lv_title      TYPE string,
    lr_comp_ctrl  TYPE REF TO cl_beabds_b_bspwdcomponen_impl,
    lr_cw        TYPE REF TO cl_bsp_wd_collection_wrapper,
    lr_col        TYPE REF TO if_bol_bo_col,
    lr_col_proc  TYPE REF TO if_bol_bo_col,
    lr_bo        TYPE REF TO cl_crm_bol_entity.
    IF gv_fu_popup IS NOT BOUND.
    lv_title = cl_wd_utilities=>get_otr_text_by_alias( 'CRM_UIU_BT/FOLLOW_UP' ).
    gv_fu_popup = comp_controller->window_manager->create_popup(
    iv_interface_view_name = 'MainWindow'
    iv_usage_name          = 'UCBTEXTFOLLOWUP'
    iv_title              = lv_title ).
    ENDIF.
    CREATE OBJECT lv_bo_coll TYPE cl_crm_bol_bo_col.
    lr_comp_ctrl ?= me->comp_controller.
    lr_cw = lr_comp_ctrl->typed_context->ubdheader->collection_wrapper.
    lr_col  = lr_cw->get_marked( ).
    CREATE DATA lv_struct_ref.
    CREATE OBJECT lv_value_node
    EXPORTING
    iv_data_ref = lv_struct_ref.
    CHECK lr_col IS BOUND AND lr_col->size( ) > 0.
    CREATE OBJECT lr_col_proc TYPE cl_crm_bol_bo_col.
    lr_bo ?= lr_col->get_first( ).
    WHILE lr_bo IS BOUND AND lr_bo IS NOT INITIAL.
    lr_bo->get_property_as_value(
    EXPORTING
    iv_attr_name    = 'HEADNO_EXT'
    IMPORTING
    ev_result      = ls_ref_header-object_id  ).
    ls_ref_header-object_type = 'BILLDO'.                  "#EC NOTEXT
    lv_value_node->set_properties( ls_ref_header ).
    lv_bo_coll->add( lv_value_node ).
    lr_bo ?= lr_col->get_next( ).
    ENDWHILE.
    gv_fu_popup->set_on_close_event( iv_view = me iv_event_name = 'FOLLOWUP_SEL_CLOSED' ).
    gv_fu_popup->set_display_mode( if_bsp_wd_popup=>c_display_mode_surrounded ).
    gv_fu_popup->open( iv_inbound_plug = 'EXTFOLLOWUP' iv_collection = lv_bo_coll ).
    ENDMETHOD.
    method EH_ONFOLLOWUP_SEL_CLOSED.
    * Added by wizard: Handler for event 'FOLLOWUP_SEL_CLOSED'
    DATA:
    lr_context_node  TYPE REF TO cl_bsp_wd_context_node,
    lr_current      TYPE REF TO cl_crm_bol_entity,
    lr_col          TYPE REF TO if_bol_entity_col,
    lr_wdw          TYPE REF TO cl_bsp_wd_window.
    IF gv_fu_popup->get_fired_outbound_plug( ) EQ 'LEAVE'. "# EC NOTEXT
    lr_context_node = gv_fu_popup->get_context_node( iv_cnode_name = 'BTORDER' ). "# EC NOTEXT
    CHECK lr_context_node IS BOUND.
    lr_current ?= lr_context_node->collection_wrapper->get_current( ).
    CHECK lr_current IS BOUND.
    CREATE OBJECT lr_col
    TYPE
    cl_crm_bol_entity_col.
    lr_col->add( lr_current ).
    lr_wdw = me->comp_controller->if_bsp_wd_window_manager~get_window( 'MainWindow' ).
    lr_wdw->call_outbound_plug( iv_outbound_plug = 'NAVIGATE_CREATE' iv_data_collection = lr_col ). "#EC NOTEXT
    ELSEIF gv_fu_popup->get_fired_outbound_plug( ) EQ 'LEAVEPROCTYPE'. "# EC NOTEXT
    gv_fu_popup->set_on_close_event( iv_view = me iv_event_name = 'FOLLOWUP_SEL_CLOSED' ).
    gv_fu_popup->open( iv_inbound_plug = 'EXTFOLLOWUPITEMS' ).
    ENDIF.
    endmethod.
    method OP_NAVIGATE_CREATE.
    * Added by wizard: Outbound plug 'NAVIGATE_CREATE'
    DATA:
    lr_window TYPE REF TO cl_bsp_wd_window.
    lr_window = me->view_manager->get_window_controller( ).
    lr_window->call_outbound_plug( iv_outbound_plug  = 'NAVIGATE_CREATE'
    iv_data_collection = iv_data_collection ).
    endmethod.
    Thanks,
    Subhash.

    Hi Srikanth,
    I believe You are trying to implement dynamic navigation..
    lv_data_collection->add( lv_descriptor_object ).
    I can see lv_data_collection is not having the actual entity just the descriptor object details you are adding in the lv_data_collection..
    If you don't have the context node binding between source and destination component, add the required data to lv_data_collection
    , in the target component inbound plug retrieve the same data entity and set it on the relevant context node.
    To get an idea, check standard component for where dynamic navigation is implemented.
    Hope this helps..
    Cheers,
    Sumit Mittal

  • Need help in building a Query in AR -Daywise Report wih separate outstandin

    Hi,
    I need to build a report in AR (AR-Daywise Report with separte outstanding)
    How to proceeed with sql query for getting the AR-Daywise Report with separte outstanding?
    Any help will be needful for me
    Thanks and Regards

    Post your question in the the Financials forum, you may get a better/faster response.
    Financials
    Financials
    Thanks,
    Hussein

  • Need help to build Portal Insert URL in OAM..

    Hi All,
    I have a requirement to customize the user Manager screen in such a way that i need to get only the search criteria tab(but not any of the tabs or links) and the search results.
    To achieve this i have builded below Portal URL.
    http://training.orademo.com/identity/oblix/apps/userservcenter/bin/userservcenter.cgi?program=search&comp=true
    By using this above URL i am able to hide all the tabs in the browser but i need to have that search criteria to be displayed in the screen.
    Can any one please suggest me the solution to achieve this.
    Its bit urgent requirement.
    Thanks in advance.
    Siva Pokuri.

    Hi Colin,
    Thanks for your quick response.
    URL that i posted will search the users in OAM. But my requirement is like i have to select the attribute and search type and search value from that page(in that Page i should not have UserManager, GroupManager, Org Manager, Identity SYstem Console tab and My Profile , reports ...etc links should not be appear) i sould be able to select the attribute that i would like to search only. so the search functionality should be there.
    Based on this req i have to build the URL.
    Please help me.
    Thanks & Regards,
    Siva Pokuri.

  • URGENT | Need HELP to build programmatic view criteria

    Hi
    I need to build programatic view criteria like below,
    ((JobId = "SH_CLERK" AND Salary > 2500) OR ( Salary > 2500))
    AND (DepartmentId =100)
    Kindly help how can we achieve this,
    The ViewCriteriaItem objects like below, how to link them to achieve like above statement.
    ViewObjectImpl empVOImpl = getEmployeesView1();
    ViewCriteria vc = empVOImpl.createViewCriteria();
    ViewCriteriaRow vcr = vc.createViewCriteriaRow();
    //criteria for employee id
    ViewCriteriaItem vci1 = vcr.ensureCriteriaItem("JobId");
    vci1.setValue("SH_CLERK");
    //criteria for showing employees whose salary are more than 10000
    ViewCriteriaItem vci2 = vcr.ensureCriteriaItem("Salary");
    vci2.setOperator(">");
    vci2.setValue(new Number(2500));
    //criteria for department
    ViewCriteriaItem vci3 = vcr.ensureCriteriaItem("DepartmentId");
    vci3.setOperator("=");
    vci3.setValue(new Number(100));
    vc.addElement(vcr);
    empVOImpl.applyViewCriteria(vc);
    - Rajesha
    Edited by: user12820425 on May 15, 2013 10:18 AM

    Hi Rajesha,
    You can follow below steps.
    1)Create VOImpl for VO on which you have query based.
    2)Remove Column(eg.JobId) from standard Default ViewCriteria
    3)In VOImpl create method to Create View custom Criteria, Add element
    public ViewCriteria  addCustomVC(){
                ViewCriteria vc = null;
                vc = this.createViewCriteria();
                vc.setName("customVC");
            ViewCriteriaRow vcRow = vc.createViewCriteriaRow();
            vcRow.setConjunction(ViewCriteriaRow.VC_CONJ_AND);
            if(getJobId() != null){ 
                vcRow.setAttribute("JobId", "' job_id = "+getJobId()+"'"); 
            }else {
                vcRow.setAttribute("JobId",null);
            vc.addElement(vcRow);
    return vc;
    }4)Override standard method public String getCriteriaItemClause to exclude above columns
        @Override
        public String getCriteriaItemClause(ViewCriteriaItem viewCriteriaItem) {
            //JobId
            if( "JobId".equals(viewCriteriaItem.getName()) ) {
                return (String) viewCriteriaItem.getValue();   
            }else{
                return super.getCriteriaItemClause(viewCriteriaItem);
        }5)Override public void executeQuery() method to add custom view criteria
    @Override
        public void executeQuery()
                applyViewCriteria(addCustomVC(), true);
                super.executeQuery();
                removeApplyViewCriteriaName("customVC");
        }Thanks,
    Jit

  • Need Help to build a report "GL Account-wise Outstanding Balance as on"

    Hi All,
    i have a requirement to build a GL Account-wise Outstanding Balance as on date...
    report format
    1.Date of Transaction     
    2.Journal Source     
    3.Journal Category     
    4.Opening Balance     
    5.Debit for the period     
    6.Credit for the Period     
    7.Closing Balance
    Parameters
    Company Code
    Account No
    Account Description
    GL Date(As on)
    Currency
    my query
    select trunc(gjh.posted_date) "Date of Transaction",je_source "Journal Source",je_category"Journal Category",
    abs(sum((begin_balance_dr-begin_balance_cr))) "Opening balance",sum(period_net_dr) "Debit for the period",sum(period_net_cr) "credit for the period",
    abs(sum((begin_balance_dr-begin_balance_cr)+(period_net_dr-period_net_cr)))"Closing Balance"
    from gl_je_headers gjh,gl_je_lines gjl,gl_code_combinations gcc,gl_balances gb
    where gjh.je_header_id=gjl.je_header_id
    and gjl.code_combination_id=gcc.code_combination_id
    and gcc.code_combination_id=gb.code_combination_id
    and gjh.currency_code=gb.currency_code
    and gjl.set_of_books_id=gb.set_of_books_id
    and gjh.period_name=gb.period_name
    and gcc.segment1='01'
    --and gjl.code_combination_id=12854
    and gjh.currency_code='USD'
    and gb.actual_flag='A'
    and gjh.status='P'
    and gjl.status='P'
    and gjh.period_name=to_char(sysdate,'Mon-yy')
    group by gjh.posted_date,je_source,je_category
    pls someone help me to correct the query

    Well, you may want to look at the activity for one specific account, in detail, before you try to get involved in summarizing/grouping the detail. That way you will begin to understand what the grouping function in the SQL statement is going to do to you. You do not say what is wrong with your query, but I am assuming that your numbers for the Opening Balance and the Closing Balance are too high. Would that be a correct assumption? The problem, as I see it, is that you are joining the gl lines detail to the gl balances table. That means every record (row) in the join for that account for the desired period is going to have the beginning balance dr and cr columns. So if you sum up that column, you are going to sum up the beginning balances multiple times. What you need to do is first summarize your detail activity by the date, journal source, and journal category, and the debits and credits sums, for the period in question, and store that result, Then do a second query that joins that result set to the gl_balances table. Also not sure what null values are doing to you, if you have them in the debit and credit fields. You may have to convert the null values to a 0 as part of this whole process. Or do this via a custom program. Or if you have a data warehouse, you might want to see if you can handle this in the data warehouse. So some options to thiink about.
    John Dickey

  • Need help in building search query

    Guys ..
    Problem Description:
    I have a huge table that is indexed using CONTEXT.
    I want to write a search query that considers the following:
    1. number of keywords match
    2. takes care of spelling mistakes, synonyms and acronyms
    3. proximity - the keywords should not be too far of each other.
    e.g. I have this phrase: "Horizontal Stabilizer Trim Brake"
    I was thinking of writing a query like:
    SELECT SCORE(1) SCORE,
    TEXT text
    FROM MY_TABLE
    WHERE CONTAINS(TEXT, '(Horz | Horizontal) ACCUM (Stab | Stabilier) ACCUM Trim ACCUM (Brk | Break)', 1) >= 0
    ORDER BY SCORE DESC
    The results doesnt look satisfactory. I have not used "near" operator as i dont know how to use it.
    Please help me as I am very much new to Oracle Text.
    -G

    Well, I'm not going to write the function for you, but we can at least talk through a general strategy.
    A lot depends on how you help your users on the front end -- for example, if they're searching a technical document, you may want to return results that aren't perfect matches but you do want to make sure the user picks 'mandatory' and 'useful' keywords in a way that lets you figure out which ones are really important. On the other hand, if you're google and have to handle queries like 'horizontal stabilizer trim brake' and 'were Pete and Jenny in the break room' then you run the risk of spending too much time looking for interesting words, almost doing a full-text search on the query trying to derive meaning.
    So I'm going to presume that you have some control over what/how the users generate their searches so that finding keywords isn't the issue.
    The plan will be to parse the query a bit to find the interesting words, clean them up, and weigh their importance, then use transformed data to build the query template to score various combinations.
    So here's some pseudocode for the function:
    function parse_query(pQueryWords in clob) returns clob as
    begin
        generate_token_list (); -- split the query into a set of individual tokens/words
        for each token in token_list
            if it's a mandatory word then accumtokenlist := accumtokenlist || ' ' || token ||'*10' -- weigh the presence of the token strongly
            if it's a useful word then accumtokenlist := accumtokenlist || ' ' || token ||'*5' -- domain-specific words are also important
            if it's a stopword or reserved word, then do not add it to the list
            if it's not on my lists, then accumtokenlist := accumtokenlist || ' ' || token
                                         and normaltokenlist := normaltokenlist ||' ' || token
        end;
        --so now, we have two lists, one for NEAR and one for ACCUM
        now build the guts of the template
            querytemplate := querytemplate || '<seq> || normaltokenlist || '</seq>';
            querytemplate := querytemplate || '<seq> || replace (accumtokenlist, ' ',' ACCUM ') || '</seq>';
            querytemplate := querytemplate || '<seq>$' || replace(normaltokenlist,' ','$') || '</seq>';
            querytemplate := querytemplate || '<seq>? || replace(replace(accumtokenlist,' ',' ?'),' ', ' accum ') || </seq>';  -- first fuzzy the words, then accum
            querytemplate := querytemplate || '<seq>? || replace(replace(normaltokenlist,' ',' ?'),' ', ' near ') || </seq>';  -- first fuzzy the words, then near
        return querytemplate
    end;So, with a 'cooked' query text that is template-friendly, all we need to do is apply a template that is aware of your inputs:
    query_Template_string := '
    <query>
       <textquery lang="ENGLISH" grammar="CONTEXT"> horizontal stabilizer*5 trim brake*10
         <progression> '
    || parse_query('horizontal stabilizer trim brake')  ||
    '     </progression>
       </textquery>
      <score datatype="INTEGER" algorithm="COUNT"/>'
    </query>So that's an example of one approach.

  • Need Help with Postioning Text Boxes

    Hello,
    I am fairly new to APEX, but I think I getting the hang of it. I am very much impressed with the functionality. I have a question and I hope someone can help me with it.
    I have a Diagram that looks like:
    X
    X X X X
    X X X X X
    The X's represent values that will go in the them, source being an SQL Query so I though I could use TextBox Item and make the sqlquery which will be a count of some sort. This will be dynamically changed depending on user input.
    I also have lines connecting to the X's and labels. So I created a table with the diagram as a background. So my dilema is that how do I reference ITEM Text boxes to be in the table. I tried
    <table background="my_image.bmp"><tr><td>#ITEMS#:P1_X</td></tr><table>
    but it only shows up as ":P1_X" not that actual ITEM, i know my syntax maybe wrong to reference the item, so that would be my first question.
    Is there a way I can just position the actual textbox to in the table?
    My second question, for positioning so the textboxes woudl line up where the X's are, should I use CSS, and if so, do I have to upload a Style Sheet?(which I don't mind, just wondering if there is a way to just use CSS in the Page HTML SOURCE?)
    SO... basically I would like to know the best way to get these textboxes in the place where the X's are. The diagram is a image that is the background of a table. Any thoughts?

    After posting the message my representation of the diagram is a bit off, it looks like a Tree diagram with spaces and teh first X being in the middle and equally spaced then on.

  • Need Help: Dynamically displaying parameter values for a procedure.

    Problem Statement: Generic Code should display the parameter values dynamically by taking "package name" and "procedure name" as inputs and the values needs to be obtained from the parameters of the wrapper procedure.
    Example:
    a) Let us assume that there is an application package called customer.
    create or replace package spec customer
    as
    begin
    TYPE cust_in_rec_type IS RECORD
    cust_id NUMBER,
    ,cust_name VARCHAR2(25) );
    TYPE cust_role_rec_type IS RECORD
    (cust_id NUMBER,
    role_type VARCHAR2(20)
    TYPE role_tbl_type IS TABLE OF cust_role_rec_type INDEX BY BINARY_INTEGER;
    Procedure create_customer
    p_code in varchar2
    ,p_cust_rec cust_in_rec_type
    ,p_cust_roles role_tbl_type
    end;
    b) Let us assume that we need to test the create customer procedure in the package.For that various test cases needs to be executed.
    c) We have created a testing package as mentioned below.
    create or replace package body customer_test
    as
    begin
    -- signature of this wrapper is exactly same as create_customer procedure.
    procedure create_customer_wrapper
    p_code in varchar2
    ,p_cust_rec customer.cust_in_rec_type
    ,p_cust_roles customer.role_tbl_type
    as
    begin
    //<<<<<---Need to display parameter values dynamically for each test case-->>>>>
    Since the signature of this wrapper procedure is similar to actual app procedure, we can get all the parameter definition for this procedure using ALL_ARGUMENTS table as mentioned below.
    //<<
    select * from ALL_ARGUMENTS where package_name = CUSTOMER' and object_name = 'CREATE_CUSTOMER'
    but the problem is there are other procedures exists inside customer package like update_customer, add_address so need to have generalized code that is independent of each procedure inside the package.
    Is there any way to achieve this.
    Any help is appreciated.
    // >>>>
    create_customer
    p_code => p_code
    ,p_cust_rec => p_cust_rec
    ,p_cust_roles => p_cust_roles
    end;
    procedure testcase1
    as
    l_cust_rec customer.cust_in_rec_type ;
    l_cust_roles customer.role_tbl_type;
    begin
    l_cust_rec.cust_id := 1;
    l_cust_rec.cust_name := 'ABC';
    l_cust_roles(1).cust_id := 1;
    l_cust_roles(1).role_type := 'Role1';
    create_customer_wrapper
    p_code => 'code1'
    ,p_cust_rec => l_cust_rec
    ,p_cust_roles => l_cust_role
    end;
    procedure testcase2
    as
    l_cust_rec customer.cust_in_rec_type ;
    l_cust_roles customer.role_tbl_type;
    begin
    l_cust_rec.cust_id := 2;
    l_cust_rec.cust_name := 'DEF';
    l_cust_roles(1).cust_id := 2;
    l_cust_roles(1).role_type := 'Role2';
    create_customer_wrapper
    p_code => 'code2'
    ,p_cust_rec => l_cust_rec
    ,p_cust_roles => l_cust_role
    end;
    end;

    Not possible to dynamically in a procedure, deal with the parameter values passed by a caller. There is no struct or interface that a procedure can use to ask the run-time to give it the value of the 1st or 2nd or n parameter.
    There could perhaps be some undocumented/unsupported method - as debugging code (<i>DBMS_DEBUG</i>) is able to dynamically reference a variable (see Get_Value() function). But debugging requires a primary session (the debug session) and the target session (session being debugged).
    So easy answer is no - the complex answer is.. well, complex as the basic functionality for this do exists in Oracle in its DBMS_DEBUG feature, but only from a special debug session.
    The easiest way would be to generate the wrapper itself, dynamically. This allows your to generate code that displays the parameter values and add whatever other code needed into the wrapper. The following example demonstrates the basics of this approach:
    SQL> -- // our application proc called FooProc
    SQL> create or replace procedure FooProc( d date, n number, s varchar2 ) is
      2  begin
      3          -- // do some stuff
      4          null;
      5  end;
      6  /
    Procedure created.
    SQL>
    SQL> create or replace type TArgument is object(
      2          name            varchar2(30),
      3          datatype        varchar2(30)
      4  );
      5  /
    Type created.
    SQL>
    SQL> create or replace type TArgumentList is table of TArgument;
      2  /
    Type created.
    SQL>
    SQL> -- // create a proc that creates wrappers dynamically
    SQL> create or replace procedure GenerateWrapper( procName varchar2 ) is
      2          procCode        varchar2(32767);
      3          argList         TArgumentList;
      4  begin
      5          select
      6                  TArgument( argument_name, data_type )
      7                          bulk collect into
      8                  argList
      9          from    user_arguments
    10          where   object_name = upper(procName)
    11          order by position;
    12 
    13          procCode := 'create or replace procedure Test'||procName||'( ';
    14          for i in 1..argList.Count
    15          loop
    16                  procCode := procCode||argList(i).name||' '||argList(i).datatype;
    17                  if i < argList.Count then
    18                          procCode := procCode||', ';
    19                  end if;
    20          end loop;
    21 
    22          procCode := procCode||') as begin ';
    23          procCode := procCode||'DBMS_OUTPUT.put_line( '''||procName||''' ); ';
    24 
    25          for i in 1..argList.Count
    26          loop
    27                  procCode := procCode||'DBMS_OUTPUT.put_line( '''||argList(i).name||'=''||'||argList(i).name||' ); ';
    28          end loop;
    29 
    30          -- // similarly, a call to the real proc can be added into the test wrapper
    31          procCode := procCode||'end;';
    32 
    33          execute immediate procCode;
    34  end;
    35  /
    Procedure created.
    SQL>
    SQL> -- // generate a wrapper for a FooProc
    SQL> exec GenerateWrapper( 'FooProc' );
    PL/SQL procedure successfully completed.
    SQL>
    SQL> -- // call the FooProc wrapper
    SQL> exec TestFooProc( sysdate, 100, 'Hello World' )
    FooProc
    D=2011-01-07 13:11:32
    N=100
    S=Hello World
    PL/SQL procedure successfully completed.
    SQL>

Maybe you are looking for

  • Clear the content of a text field

    hello guys, i have text fields in a screen which are been populated in the PBO. Now i want to clear the content of the  text field such that the user can input new values in those text field. so, anyone knows how i can achieve this. tried, text field

  • Batch Delete

    Hi, I tried to do batch delete for all Service requests, Opportunities, and accounts for my test data. For each of these, I was taken to the Batch Delete Queue where I had to click on Proceed. But it did not work and it asked me to try resubmitting t

  • JavaHelp and JavaWebStart

    I am developing a JavaWebStart application. I would like to use Javahelp with it. Is this possible? Has anyone done this? Would each user have to install JavaHelp on their workstation? I know I can download the JavaHelp jar files via jnlp, but how wo

  • IPhone when turned off needs to be reactivated when turned back on?

    For the last 2 days, when I shut down my iphone and turn it back on I get the activation screen. I have to plug it up to my computer to get it to work. Anyone else having this problem?

  • How to open posting periods

    Is it possible to open the posting periods? I have created an purchase order, thn i went to post MIRO. then the system shown that only posting period is possible for 01/2010 02/2010 i have  closed the posting period to till 05/2010. thinking of calen