Newbie to designer - Javascript question

I'm new to Designer and I'm having trouble with some simple Javascript. I'm trying to hide a combobox when a radio button is selected. The script is extremely simple and works fine if I make the form and objects using Acrobat. However, if I make the form in Designer and use the same Javascript, it seems that the code never gets executed. Any suggestions?
Thanks.

Javascript in AcroForms is different to JS in Designer -
In your case for example,
WARNING: The following has not been tested and 99% of the time, I never write a script correctly the first time however simple it should be! This is just an example to show some differences. Fieldnames have been altered for privacy.
in acro youd write:
if (getField("Radio").value == "Yes")
getField("Combo").hidden = true;
or if youre putting the script on the click of the radio:
in Designer youd write:
if (Radio.rawValue == "Yes")
Combo.presence = "hidden";
or if you wanted to execute the script on the selection of the radio button
in Acro:
if (event.value == ...)
& in Designer:
if (this.rawValue == ...)

Similar Messages

  • Additional Pageflow - JavaScript Questions

    I was hoping someone (bea employee???) could answer a couple more JavaScript questions
    for me?? First one is how do I (can I) do something similar to what John Rohrlich
    (see below) suggested inside a netui-data:grid tag? Among other things that didn't
    workI tried this:
    <netui-data:anchorColumn action="deleteUsr" title="">
    <netui:anchor action="deleteUsr" onClick="return confirmDelete('user', {container.item.usr_nm}
    ); return false;">
    Drop
    <netui:parameter name="userToDrop" value="{container.item.usr_nm}" />
    </netui:anchor>
    </netui-data:anchorColumn>
    From this snippet you might be able to guess what my next question is. Is there
    a way to render a variable inside the onClick value? I have tried a number of
    things to no avail, stuff like:
    <netui-data:getData resultId="thisId" value="{container.item.userId}" />
    <netui:anchor action="dropUser" onClick="return confirmDelete('user', '<%=(String)pageContext.getAttribute("thisId");%>');
    return false;">
    BTW this is in a repeater I have else ware in my code. I would really like to
    convert everything to grids to get the sorting, filtering and paging capabilities.
    I would like to be able to pass the parameter to my JavaScript so the user has
    a little more info on what he is dropping - here is the script:
    function confirmDelete(){
    //arg 1 would be the record type i.e. "user"
    //arg 2 would be the key identifier i.e. "Fred"
    var question = "Are you sure you want to drop this record?";
    var argNum = confirmDelete.arguments.length;
    if (argNum == 1){
    question = "Are you sure you want to drop this "+confirmDelete.arguments[0]+"?";
    else if (argNum == 2){
    question = "Are you sure you want to drop the "+confirmDelete.arguments[0]+"
    "+confirmDelete.arguments[1]+"?";
    return confirm(question);
    Thanks,
    John
    "John Rohrlich" <[email protected]> wrote:
    John,
    If you want to put up a confirm dialog before calling an action from
    an
    anchor it is done as follows.
    Here is an example from code of mine that deletes a customer order, if
    the
    user confirms the delete. I pass the order id as a parameter.
    - john
    Here is the JavaScript -
    function confirmDelete() {
    if(confirm('Continue with order delete?'))
    return true;
    else
    return false;
    Here is a sample anchor tag -
    <netui:anchor action="requestToDeleteOrder" onClick="return
    confirmDelete(); return false;">
    Delete
    <netui:parameter name="orderId" value="{container.item.orderId}"/>
    </netui:anchor>

    Thanks Eddie, I looked at that reply when you gave it but it didn't give me enough
    to go on. You suggested:
    <netui-data:expressionColumn title="Show Alert" value="<a href='javascript:alert(12345);return
    false;> {container.item.customername}</a>" />
    I started a new thread after that one - What is the best way to call a pageflow
    action from JavaScript? Guess I was sort of beating around the bush on this. Can
    you see where I was going? If I use the method you describe above how do I call
    my dropUser pageflow action if the user confirms the drop in the java dialog?
    Thanks, John
    Eddie O'Neil <[email protected]> wrote:
    John--
    You might check an earlier response about this from a different thread.
    "Re: Confirmation dialog w/netui:anchor and netui-data:anchorColumn"
    on
    1/28/2004.
    It's possible to do though not intentional; the 8.1 grid wasn't
    really designed to do this.
    The NetUI team is certainly aware of the limitations with using this
    version of the grid and is working to address said limitations with a
    much improved tag set in v9. If you have additional feedback on
    features you'd like to see, please feel free to send them along --
    including your top 10 (or whatever!) reasons not to use the grid. :)
    In the meantime, depending on what you need to do, the repeater may
    suit your needs well, though you may need to do some work to implement
    sort / filter logic.
    Hope that helps.
    Eddie
    John H wrote:
    So what you are telling me is that a cant do somthing as simple aspop up a confirmation
    when using a grid? That really stinks if that is the case. I am thinkingI need
    to write up "Top ten reasons not to use a grid." Thanks for the repeatercode.
    "John Rohrlich" <[email protected]> wrote:
    John,
    The grid doesn't support event handlers like onClick but I have included
    code here to show you how to pass parameters to your javaScript event
    handler when using the repeater. Let me know if you have any questions
    about
    the code.
    Most of the code is standard repeater code. The interesting code is
    below
    (also see my code comments). I have also attached the full jsp fileand
    the
    jpf file you need to try my example.
    - john
    <script language="JavaScript">
    function confirmDelete(phrase) {
    if(confirm(phrase))
    return true;
    else
    return false;
    </script>
    <netui-data:repeater dataSource="{pageInput.orders}" defaultText="No
    orders">
    <netui-data:repeaterItem>
    <tr valign="top">
    <td>
    <netui:label value="{container.item.orderId}"
    defaultValue=" "></netui:label>
    </td>
    <!-- You can't bind data to onClick so you need to build
    a
    string. -->
    <!-- The string will be the function call with the
    parameters you are passing. -->
    <!-- Here is the building of the string -->
    <netui-data:getData resultId="orderId"
    value="{container.item.orderId}" />
    <%
    String somePhrase = "Do you want to delete item " +
    pageContext.getAttribute("orderId") + "?";
    String foo = "return confirmDelete(\'" + somePhrase+
    return false";
    %>
    <td>
    <netui:anchor action="requestToDeleteOrder"
    onClick="<%=foo%>" >
    Delete
    <netui:parameter name="orderId"
    value="{container.item.orderId}"/>
    </netui:anchor>
    </td>
    </tr>
    </netui-data:repeaterItem>
    "John H" <[email protected]> wrote in message
    news:[email protected]...
    I was hoping someone (bea employee???) could answer a couple moreJavaScript questions
    for me?? First one is how do I (can I) do something similar to whatJohn
    Rohrlich
    (see below) suggested inside a netui-data:grid tag? Among other thingsthat didn't
    workI tried this:
    <netui-data:anchorColumn action="deleteUsr" title="">
    <netui:anchor action="deleteUsr" onClick="return confirmDelete('user',{container.item.usr_nm}
    ); return false;">
    Drop
    <netui:parameter name="userToDrop" value="{container.item.usr_nm}"/>
    </netui:anchor>
    </netui-data:anchorColumn>
    From this snippet you might be able to guess what my next questionis. Is
    there
    a way to render a variable inside the onClick value? I have trieda
    number of
    things to no avail, stuff like:
    <netui-data:getData resultId="thisId" value="{container.item.userId}"/>
    <netui:anchor action="dropUser" onClick="return confirmDelete('user','<%=(String)pageContext.getAttribute("thisId");%>');
    return false;">
    BTW this is in a repeater I have else ware in my code. I would reallylike to
    convert everything to grids to get the sorting, filtering and pagingcapabilities.
    I would like to be able to pass the parameter to my JavaScript sothe
    user has
    a little more info on what he is dropping - here is the script:
    function confirmDelete(){
    //arg 1 would be the record type i.e. "user"
    //arg 2 would be the key identifier i.e. "Fred"
    var question = "Are you sure you want to drop this record?";
    var argNum = confirmDelete.arguments.length;
    if (argNum == 1){
    question = "Are you sure you want to drop this"+confirmDelete.arguments[0]+"?";
    else if (argNum == 2){
    question = "Are you sure you want to drop the"+confirmDelete.arguments[0]+"
    "+confirmDelete.arguments[1]+"?";
    return confirm(question);
    Thanks,
    John
    "John Rohrlich" <[email protected]> wrote:
    John,
    If you want to put up a confirm dialog before calling an action
    from
    an
    anchor it is done as follows.
    Here is an example from code of mine that deletes a customer order,if
    the
    user confirms the delete. I pass the order id as a parameter.
    - john
    Here is the JavaScript -
    function confirmDelete() {
    if(confirm('Continue with order delete?'))
    return true;
    else
    return false;
    Here is a sample anchor tag -
    <netui:anchor action="requestToDeleteOrder" onClick="return
    confirmDelete(); return false;">
    Delete
    <netui:parameter name="orderId" value="{container.item.orderId}"/>
    </netui:anchor>

  • A Few Newbie 10.8 Server Questions...

    Hi All,
    A few quick newbie 10.8 Server questions:
    1) Airport Extreme - I currently have an Airport Extreme attached to one of my workstations which is serving as my main router with a dedicated IP. I'm just in testing mode with my new server and wondering if I need to do anything to the Airport's configuration to make it work with the Server? Does the Server need to administer the functions of the AirportExtreme? Or is it ok to leave it attached to the workstation? Or does it not make any difference?
    2) Automount Shared Folder/Drive - I would like my users (who are mostly using MacBookPros with they take home and bring back to work) to be able to Automount our shared data drive when they come in to work. I read the help section regarding AutoMount, but it a) referred to using ServerAdmin, which I understand has been eliminated from 10.8 (dont know why they are still referring to it in the help!) and b) it talks about AutoMounting Home Folders, but not shared Drives/Folders.
    3) Firewall - I have a static IP and want my users to be able to connect using VPN. I am buying a SSL for the domain. Wondering if the combination of the built in firewall, plus the SSL, plus the built in VPN is secure enough, or should I be investing in a solution such as the SonicWall TZ100.
    Thank you !!!!!

    1) Airport Extreme - I currently have an Airport Extreme attached to one of my workstations which is serving as my main router with a dedicated IP. I'm just in testing mode with my new server and wondering if I need to do anything to the Airport's configuration to make it work with the Server? Does the Server need to administer the functions of theAirportExtreme? Or is it ok to leave it attached to the workstation? Or does it not make any difference?
    The Server app is not required to manage your airport.
    The server app can automatically open ports for you, so it makes life easier for a home-server-administrator.
    Continue managing your Airport or whatever NAT router you prefer any way you choose.
    2) Automount Shared Folder/Drive - I would like my users (who are mostly using MacBookPros with they take home and bring back to work) to be able to Automount our shared data drive when they come in to work. I read the help section regarding AutoMount, but it a) referred to using ServerAdmin, which I understand has been eliminated from 10.8 (dont know why they are still referring to it in the help!) and b) it talks about AutoMounting Home Folders, but not shared Drives/Folders.
    You can drag a mounted sharepoint to the right-side of a user's dock.
    It will then remember the sharepoint, and its 1-click to open it when needed,
    This is my preference with laptops.
    You can also add the sharepoint to your user's login items (on their workstations, System Prefs, UsersGroups/, User, Login Items - I don't like to do this with laptops because it causes a login delay when they aren't in the locaiton of the sharepoint.
    Either method is simple.
    I even use Safari bookmarks to get people to a server. Go to the addressbar and type:   afp://[email protected]   (with your real IP) then bookmark it. You can also drag that that URL to the desktop to have a location file which will ALSO take you to the server.
    So Lots of ways...  Depends on users/environment.
    3) Firewall - I have a static IP and want my users to be able to connect using VPN. I am buying a SSL for the domain. Wondering if the combination of the built in firewall, plus the SSL, plus the built in VPN is secure enough, or should I be investing in a solution such as the SonicWall TZ100.
    If you aren't going to have anything except for VPN open to the public, then you won't need SSL.
    VPN, but nature, is already encrypted and does not use SSL.
    If you will run Mail, Web, Calendar, Contacts, etc and don't want to requires users to VPN, then you should use SSL.
    TIP: Fromt the start, use a fqdn for your server. Don't use a .private or something fictitious.
    If you own mydomain.com, then setup myserver.mydomain.com and make it your server's hostoname from the get-go.
    Later, you'll be glad you used a proper FQDN
    Jeff

  • Newbie javascript question

    I have Adobe Acrobat version 8 Professional
    Lets say I have a two page PDF document . On page 1 I have some text
    that says Goto Page 2 for instance. Is it possible using Javascript to
    alter that text to be a sort of hyperlink so that when a user clicks
    it it will indeed take them to page 2? If anyone can provide some
    sample code that would be would be great.

    I need this to be automated, also I was trying to simplify the situation in my question. The reality is I'll ultimately have a header page with approx 50 links to 50 separate data pages. Each of the data pages will itself have a link back to the header page.

  • Newbie with JSP & JDBC questions

    Hi. I have a quick question. I have a client jsp page with a table, listing all the fields from my mySQL table called kellybclients. At the end of each row, I also have a submit button that I would like navigate the user to the campus jsp page that only shows the data associated with the client who's button they clicked on in the table. I'm trying to figure out how to pass this data from my JSP into the rowset.setCommand method in my connection/data bean. I am using a cached row set. Here's the code from my bean:
    * To change this template, choose Tools | Templates
    * and open the template in the editor.
    package ETS;
    import java.sql.SQLException;
    import javax.sql.rowset.CachedRowSet;
    import java.util.ArrayList;
    import com.sun.rowset.CachedRowSetImpl;
    public class CampusDataBean {
        private CachedRowSet rowSet;
      public CampusDataBean() throws Exception
        Class.forName("com.mysql.jdbc.Driver");
        rowSet = new CachedRowSetImpl();
        rowSet.setUrl("jdbc:mysql://traderseven.nmsu.edu/is470Spring08?relaxAutoCommit=true");
        rowSet.setUsername("is470Spring08");
        rowSet.setPassword("1DoNtier");
        rowSet.setCommand("SELECT campid, clientid, campname,campcounty FROM kellybCampus WHERE clientid=?");
        CampusBean camp = new CampusBean();
        rowSet.setString(1, camp.getClientID());
        rowSet.execute();
      public ArrayList<CampusBean> getCampusList() throws SQLException
        ArrayList<CampusBean> campusList = new ArrayList<CampusBean>();
        rowSet.beforeFirst();
        while(rowSet.next())
          CampusBean campus = new CampusBean();
          campus.setCampID(rowSet.getString(1));
          campus.setClientID(rowSet.getString (2));
          campus.setCampName(rowSet.getString(3));
          campus.setCounty(rowSet.getString(4));
          campusList.add(campus);
        return campusList;
    public void addCampus(CampusBean campus) throws SQLException
        rowSet.moveToInsertRow();
        rowSet.updateString(1,campus.getCampID());
        rowSet.updateString(2,campus.getClientID());
        rowSet.updateString(3,campus.getCampName());
        rowSet.updateString(4,campus.getCounty());
        rowSet.insertRow();
        rowSet.moveToCurrentRow();
        rowSet.acceptChanges();
    }I'm sorry if this is too vague. I'd appreciate any help, fixes, or pointers on where to learn how to do this. Thank you again.
    KellyJo

    So the button should be a Submit button for a form. There are a couple of different methods for doing this:
    1) Each row on the table can be a different form, each form uses the same action (servlet) target and has a hidden input with a unique identifier for each of the clients:
    <table>
      <tr><form action="selectClient" method="post"><td> etc </td><td><input type="hidden" name="id" value="1"/><input type="submit"/></td></form></tr>
      <tr><form action="selectClient" method="post"><td> etc </td><td><input type="hidden" name="id" value="2"/><input type="submit"/></td></form></tr>2) Use a single form with a button type=submit for each row with different values (Note: This is broken in IE7 so you probably shouldn't use it)
    <table><form action="selectClient" method="post">
      <tr><td> etc </td><td><button type="submit" name="id" value="1">Submit</button></td></tr>
      <tr><td> etc </td><td><button type="submit" name="id" value="2">Submit</button></td></tr>3) Use a single form, have a hidden value with a blank value. Each row has a submit button with a javascript onclick method that sets the form's hidden value to one appropriate to the row, then submits the form. I won't show you this code but there are examples on the web.
    4) Use a single form with an input="submit" element on each row. Each button would have a different name with the ID info encoded in it, then you would have server-side code that takes parameters, finds the right one and parses out the proper row to edit:
    <table><form action="selectClient" method="post">
      <tr><td> etc </td><td><input type="submit" name="submit__id_1"/></td></tr>
      <tr><td> etc </td><td><input type="submit" name="submit__id_2"/></td></tr>I think most people end up doing some variant of 3, which I don't like because I hate to rely on JavaScript to make my web apps work properly. I would prefer 4, which takes more work on the server side (which I like better) but 1 works just as well with a lot more typing and uglier HTML code. Actually, I would like 2 the best because that is pretty much what the <button> element was designed for, but Microsoft screwed that up.

  • Designer datamodel questions

    I've got a couple of questions about how to do a few tasks in Designer.  First, a little background:<br />I've got a dataconnection called "report_data" that's derived from and xml schema.  The structure of the schema is somehing like this: <br /><report><br />    <job_description><br />       <name/><br />       <start_date/><br />       <end_date/><br />    </job_description> <br />    <task><br />       <name/><br />       <description/><br />       <resource> <br />            <name/><br />            <cost/><br />       </resource><br />       <subtask><br />          <name/><br />          <description/><br />            <resource> <br />               <name/><br />               <cost/><br />           </resource><br />       </subtask><br />    <task><br /></report><br /><br />a report has a single jobdescription, and multiple tasks.  Each task has a name and decription, multiple resources, and multiple subtasks.  Each subtask has a name and description, and multiple resources.<br /><br />I've designed a report entry form, with multiple subforms for job_description, tasks, resources, and subtasks.  I've then bound these subforms to the datamodel.  This is all good and works.  The problems start occuring when I want this form to be dynamic.  The Task subform has a button "add_new_task", which adds a new task to the report.  It does this by calling a function "add_new_task()" in a script object.  The function is as follows:<br />function add_new_task(){<br />    var t_node = xfa.datasets.dataDescription.report.task.clone(1);<br />    t_node.resolveNode("name").value = "task " + (xfa.record.resolveNodes("task[*]").length + 1).toString();<br />    xfa.record.nodes.append(t_node);<br />    xfa.form.remerge();<br />}<br />This function appears to work, new instances of the task subform are appended to the document. <br /><br />The task subform also contains subtask subforms.  They are added with a button "add_new_subtask", that calls a function "add_new_subtask(task)".  the function is as follows:<br />function add_new_subtask(task){<br />    var st_node = xfa.datasets.dataDescription.report.task.subtask.clone(1);<br />    st_node.resolveNode("name").value = "subtask " + (xfa.record.resolveNodes("subtask[*]").length + 1).toString();<br />    task.nodes.append(s_node);<br />    xfa.form.remerge();<br />}<br /><br />The button click function is:<br />scripts.add_new_subtask(xfa.record.task);<br /><br />Resources work in a similar way.<br /><br />The problem is now that when I try to create subtasks, they are appended to the initial task, not the task associated with the current record.  Same thing for Resources.<br /><br />Doesn't xfa.record refer to the current record?  If not, how to I determine the current record?  xfa.dataWindow.currentRecordNumber is always returning 0.  I'm assuming that's because there is only 1 instance of the report.  How do I determine the record associated with a given subform?  Is there a better way than using the index of the subform and getting the record with the same index?

    To determine the instance of the record associated with a given subform, you can get the subform's
    index property value. Since new instances are created with the same name as siblings of one another, they end-up getting index numbers in order to make them unique.
    For example, if you create a new instance of the Task subform, you'll have "Task[0]" and "Task[1]" where
    this.index will be 0 or 1. If it's an object parented to the Task subform which needs to know the instance of the Task subform/record in which it occurs, you can use the
    parent property to drill up to the Task subform which contains the object in question and then get its index property value.
    Creating bookmarks is a little more complicated. Unfortunately, XFA doesn't support bookmarks so you have two options:
    Use the xfa.host.setFocus("field name") method to set focus, when the user clicks a button, to a field somewhere on the form to have Acrobat automatically scroll the field in view and set focus to it (see post #6 of the
    Links Within PDF thread for an example); or
    Use the
    target property of the event object you get in an XFA event script to access the Acrobat Document object and then programmatically add bookmarks to the form (but
    this will only work if the form is viewed using Acrobat):
    event.target.bookmarkRoot.createChild("Next Page", "this.pageNum++");
    I'm not familiar enough with creating bookmarks in Acrobat to elaborate further on the subject but you can read more about it in the
    Acrobat JavaScript Scripting Reference.
    I hope this helps!
    Stefan
    Adobe Systems

  • OT-javascript question

    I'd like to have a javascript image gallery with controls
    that look like that:
    < 1 | 2 | 3 | 4 | 5 >
    All images preload, and clicking on the numbers display the
    corresponding image, without reloading
    the page.
    I have had no problem making the numbers work, but I can't
    figure out how to make the previous and
    next arrows work. I don't want them to be Form buttons, just
    links that call a function that will
    decrement or increment a variable and at the same time change
    the image to the new variable value
    (all my images are called "1.jpg" "2.jpg" "3.jpg" etc. so
    this should be fairly simple...)
    Yet I could not find a simple example of this on the web...
    seb ( [email protected])
    http://webtrans1.com | high-end web
    design
    Downloads: Slide Show, Directory Browser, Mailing List

    > Beyond this, I have a general question: your script is
    so simple, I don't
    > understand why I would ever use Macromedia's set text of
    layer behavior
    > (or swap image behavior for that matter) which are way
    more complicated.
    > My question is why are these behaviors so complicated
    while your script
    > which just changes the source of an image by its id is
    so incredibly
    > simple. Is there a catch?
    Mick's script is optimized for you and your specific
    application. MM's
    scripts are generalized to cover all bases - and to do error
    checking.
    Murray --- ICQ 71997575
    Adobe Community Expert
    (If you *MUST* email me, don't LAUGH when you do so!)
    ==================
    http://www.dreamweavermx-templates.com
    - Template Triage!
    http://www.projectseven.com/go
    - DW FAQs, Tutorials & Resources
    http://www.dwfaq.com - DW FAQs,
    Tutorials & Resources
    http://www.macromedia.com/support/search/
    - Macromedia (MM) Technotes
    ==================
    "(_seb_)" <[email protected]> wrote in message
    news:[email protected]...
    > Mick White wrote:
    >> (_seb_) wrote:
    >>
    >>> I'd like to have a javascript image gallery with
    controls that look like
    >>> that:
    >>>
    >>> < 1 | 2 | 3 | 4 | 5 >
    >>>
    >>>
    >>> All images preload, and clicking on the numbers
    display the
    >>> corresponding image, without reloading the page.
    >>> I have had no problem making the numbers work,
    but I can't figure out
    >>> how to make the previous and next arrows work. I
    don't want them to be
    >>> Form buttons, just links that call a function
    that will decrement or
    >>> increment a variable and at the same time change
    the image to the new
    >>> variable value
    >>> (all my images are called "1.jpg" "2.jpg"
    "3.jpg" etc. so this should be
    >>> fairly simple...)
    >>>
    >>> Yet I could not find a simple example of this on
    the web...
    >>>
    >>
    >> CURRENT=1 //global
    >> function next(max){
    >> document.images["gallery"].src=CURRENT+".jpg";
    >> CURRENT++;
    >> if(CURRENT>max)CURRENT=1;
    >> }
    >>
    >> Similarly with "previous"
    >> CURRENT--;
    >> if(CURRENT<1)CURRENT=max;
    >>
    >> Mick
    >
    > thanks a lot Mick.
    > I have a few questions.
    > I assume ["gallery"] can refer to the image ID, which in
    my case is
    > "mainImg"
    >
    > So I used:
    > document.images["mainImg"].src=CURRENT+".jpg";
    >
    > and it sort of works, I also tried
    >
    > document.images.mainImg.src=CURRENT+".jpg";
    >
    > and it sort of works too.
    >
    > It works as long as I do not use the numbers in between
    the previous and
    > next arrows. But if I click on the numbers in between,
    which so far use
    > MM_setTextOfLayer() to swap the image, then the previous
    and next arrows
    > stop working, I don't know why.
    >
    > Beyond this, I have a general question: your script is
    so simple, I don't
    > understand why I would ever use Macromedia's set text of
    layer behavior
    > (or swap image behavior for that matter) which are way
    more complicated.
    > My question is why are these behaviors so complicated
    while your script
    > which just changes the source of an image by its id is
    so incredibly
    > simple. Is there a catch?
    >
    > --
    > seb ( [email protected])
    >
    http://webtrans1.com | high-end web
    design
    > Downloads: Slide Show, Directory Browser, Mailing List

  • Design basic question

    Hi All,
    These are kind of a newbie questions. Appreciate if someone with couple of feathers in their cap could give some practical perspective. Thanks in advance for your time in sharing your experience.
    1) In a planning project we load actual data periodically from your OLTP to your OLAP and then to BPC. You then plan and forecast for next few months or qrtrs so on.
        Lets say our application is to plan ahead on major capital project expenses for coming half year. It could be for labor, material and other goods expenditure in next 6 months. Ideally our expenses are booked at WBS level in your SAP -PS system.
        Now my question is, how would one plan for a new and up coming project. My assumption is in all practical purpose the project mayn't have been created in PS yet hence the master data element is not available in BPC (am i right?) but in BPC you have to plan ahead.
    2) Similar situations arise for other master data elements too. How are these scenarios handled in practice in various projects.
    Appreciate if you could share your insight on this matter.

    Thanks Nilanjan.
    In the case we decide to do a member sheet entry for this qrtr planning, during next extraction cycle what kind of general housekeeping to be done ... I understand that it depends on our cube design if we are planning in a separate cube or on the same cube.. but do we delete the manual entry.
    Basically my question is , in this approach, we end-up entering these master data manually always and not as a synchup from ECC, correct? Because subsequent loads always finds this member already available in BPC.

  • Creating a Survey - Novice Javascript Question

    Hello,
    I am extrememely new to Javascript.  I have been doing some research online and copy/pasting code to create the results I need.  I am trying to create an online survey in Dreamweaver in which users select buttons to answer questions and then the total results appear at the bottom of the survey.  So far this is what I have:
    http://sicolaconsulting.com/SurveyTest4.php
    The problem I have with this is that on each line, a user can select more than one box.  I don't want this so I thought radio buttons would be better.  I then came up with this:
    http://sicolaconsulting.com/SurveyTest3.php
    The problem with this is that with the function I am using, I can only get it to display the value of the first line.  I need it to calculate the sum of all the lines.
    Can you help me revise the script I have to get my desired result.
    Here is my code for the first page, followed by the code for the second page.  THANK YOU!
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    <title>Survey</title>
    <style type="text/css">
    body,td,th {
              font-family: Tahoma, Geneva, sans-serif;
    </style>
    <link href="stylesheets/SCG_Styles.css" rel="stylesheet" type="text/css" />
    <title>Survey</title>
    <script type="text/javascript">
              function TotalPart1A() {
                        document.survey.Total1A.value = '';
                        var sum = 0;
                        for (i=0;i<document.survey.Part1A.length;i++) {
                          if (document.survey.Part1A[i].checked) {
                                    sum = sum + parseInt(document.survey.Part1A[i].value);
                        document.survey.Total1A.value = sum;
    </script>
    <link href="stylesheets/SCG_Styles.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <div id="wrapper"><br />
      <div id="survey-header"><strong>Purpose:</strong><br />
        The Learning Style Survey assesses your general approach to learning. <br />
        It does not predict your behavior, but it is a clear indication of your overall style preferences.<br />
        <br />
        <strong>Instructions:</strong><br />
        For each item circle the response that represents your approach. Complete all items. <br />
        There are eleven major activities representing twelve different aspects of your learning style. <br />
        When you read the statements, try to think about what you generally do when learning. <br />
        <br />
        <strong>Time:</strong><br />
        It takes about 30 minutes to complete the survey. Do not spend too much time on any item. Indicate your immediate response (or feeling) and move on to the next item. <br />
        <br />
        <strong>For each item, enter your immediate response:<br />
          0 = Never  1 = Rarely  2 = Sometimes  3 = Often  4 = Always</strong><br />
      </div>
              <div id="survey">
    <form name="survey">
              <div id="survey-section1">
                    <table class="survey-table" cellspacing="0" width="812">
                      <tr>
                        <td height="24" colspan="2" align="left" bgcolor="#CCCCCC"><strong>Part 1: How I Use My Physical Senses</strong></td>
                        <td height="24" align="center" bgcolor="#CCCCCC"><strong>1</strong></td>
                        <td height="24" align="center" bgcolor="#CCCCCC"><strong>2</strong></td>
                        <td height="24" align="center" bgcolor="#CCCCCC"><strong>3</strong></td>
                        <td height="24" align="center" bgcolor="#CCCCCC"><strong>4</strong></td>
                        </tr>
                      <tr>
                        <td width="31" height="27">1</td>
                        <td width="515" align="left">I remember something better if I write it down.</td>
                        <td width="60"><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td width="60"><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td width="60"><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td width="60"><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td width="31" bgcolor="#EAEAEA">2</td>
                        <td height="27" align="left" bgcolor="#EAEAEA"> I take detailed notes during lectures.</td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td>3</td>
                        <td height="27" align="left">When I listen, I visualize pictures, numbers, or words in my head.</td>
                        <td><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td bgcolor="#EAEAEA">4</td>
                        <td height="27" align="left" bgcolor="#EAEAEA"> I prefer to learn with TV or video rather than other media. </td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td>5</td>
                        <td height="27" align="left"> I use color coding to help me as I learn to work.</td>
                        <td><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td bgcolor="#EAEAEA">6</td>
                        <td height="27" align="left" bgcolor="#EAEAEA"> I need written directions for tasks.</td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td>7</td>
                        <td height="27" align="left"> I have to look at people to understand what they say.</td>
                        <td><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td bgcolor="#EAEAEA">8</td>
                        <td height="27" align="left" bgcolor="#EAEAEA">I understand lecturers better when they write on the board.</td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td>9</td>
                        <td height="27" align="left">Charts, diagrams, and maps help me understand what someone says. </td>
                        <td><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td bgcolor="#EAEAEA">10</td>
                        <td height="27" align="left" bgcolor="#EAEAEA">I remember people’s faces, but not their names. </td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="1" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="2" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="3" onchange="TotalPart1A()"/></td>
                        <td bgcolor="#EAEAEA"><input type="checkbox" name="Part1A" value="4" onchange="TotalPart1A()"/></td>
                        </tr>
                      <tr>
                        <td> </td>
                        <td height="27" align="right">A TOTAL: </td>
                        <td colspan="2"><input type="text" size="10" name="Total1A" value="0"/></td>
                        <td align="right"> </td>
                        <td> </td>
                        </tr>
                      <tr>
                        <td> </td>
                        <td height="27" align="right"> </td>
                        <td> </td>
                        <td> </td>
                        <td align="right"> </td>
                        <td> </td>
                        </tr>
                      </table>
    </form>
                </div>
              </div>
        </body>
        </html>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    <title>Survey</title>
    <style type="text/css">
    body,td,th {
              font-family: Tahoma, Geneva, sans-serif;
    </style>
    <link href="stylesheets/SCG_Styles.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript">
              function TotalPart1A() {
                        document.survey.Total1A.value = '';
                        var sum = 0;
                        for (i=0;i<document.survey.radiogroup1A.length;i++) {
                          if (document.survey.radiogroup1A[i].checked) {
                                    sum = sum + parseInt(document.survey.radiogroup1A[i].value);
                        document.survey.Total1A.value = sum;
    </script>
    <link href="stylesheets/SCG_Styles.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <div id="wrapper"><br />
      <div id="survey-header"><strong>Purpose:</strong><br />
        The Learning Style Survey assesses your general approach to learning. <br />
        It does not predict your behavior, but it is a clear indication of your overall style preferences.<br />
        <br />
        <strong>Instructions:</strong><br />
        For each item circle the response that represents your approach. Complete all items. <br />
        There are eleven major activities representing twelve different aspects of your learning style. <br />
        When you read the statements, try to think about what you generally do when learning. <br />
        <br />
        <strong>Time:</strong><br />
        It takes about 30 minutes to complete the survey. Do not spend too much time on any item. Indicate your immediate response (or feeling) and move on to the next item. <br />
        <br />
        <strong>For each item, enter your immediate response:<br />
          0 = Never  1 = Rarely  2 = Sometimes  3 = Often  4 = Always</strong><br />
      </div>
      <div id="survey">
        <form name="survey" id="survey">
          <div id="survey-section1">
          <table class="survey-table" cellspacing="0" width="812">
            <tr>
              <td height="24" colspan="2" align="left" bgcolor="#CCCCCC"><strong>Part 1: How I Use My Physical Senses</strong></td>
              <td height="24" align="center" bgcolor="#CCCCCC"><strong>1</strong></td>
              <td height="24" align="center" bgcolor="#CCCCCC"><strong>2</strong></td>
              <td height="24" align="center" bgcolor="#CCCCCC"><strong>3</strong></td>
              <td height="24" align="center" bgcolor="#CCCCCC"><strong>4</strong></td>
            </tr>
            <tr>
              <td width="31" height="27">1</td>
              <td width="515" align="left">I remember something better if I write it down.</td>
              <td width="60"><input type="radio" name="radiogroup1A" value="1" onchange="TotalPart1A()"/></td>
              <td width="60"><input type="radio" name="radiogroup1A" value="2" onchange="TotalPart1A()"/></td>
              <td width="60"><input type="radio" name="radiogroup1A" value="3" onchange="TotalPart1A()"/></td>
              <td width="60"><input type="radio" name="radiogroup1A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td width="31" bgcolor="#EAEAEA">2</td>
              <td height="27" align="left" bgcolor="#EAEAEA"> I take detailed notes during lectures.</td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup2A" value="1" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup2A" value="2" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup2A" value="3" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup2A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td>3</td>
              <td height="27" align="left">When I listen, I visualize pictures, numbers, or words in my head.</td>
              <td><input type="radio" name="radiogroup3A" value="1" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup3A" value="2" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup3A" value="3" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup3A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td bgcolor="#EAEAEA">4</td>
              <td height="27" align="left" bgcolor="#EAEAEA"> I prefer to learn with TV or video rather than other media. </td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup4A" value="1" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup4A" value="2" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup4A" value="3" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup4A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td>5</td>
              <td height="27" align="left"> I use color coding to help me as I learn to work.</td>
              <td><input type="radio" name="radiogroup5A" value="1" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup5A" value="2" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup5A" value="3" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup5A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td bgcolor="#EAEAEA">6</td>
              <td height="27" align="left" bgcolor="#EAEAEA"> I need written directions for tasks.</td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup6A" value="1" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup6A" value="2" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup6A" value="3" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup6A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td>7</td>
              <td height="27" align="left"> I have to look at people to understand what they say.</td>
              <td><input type="radio" name="radiogroup7A" value="1" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup7A" value="2" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup7A" value="3" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup7A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td bgcolor="#EAEAEA">8</td>
              <td height="27" align="left" bgcolor="#EAEAEA">I understand lecturers better when they write on the board.</td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup8A" value="1" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup8A" value="2" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup8A" value="3" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup8A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td>9</td>
              <td height="27" align="left">Charts, diagrams, and maps help me understand what someone says. </td>
              <td><input type="radio" name="radiogroup9A" value="1" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup9A" value="2" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup9A" value="3" onchange="TotalPart1A()"/></td>
              <td><input type="radio" name="radiogroup9A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td bgcolor="#EAEAEA">10</td>
              <td height="27" align="left" bgcolor="#EAEAEA">I remember people’s faces, but not their names. </td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup10A" value="1" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup10A" value="2" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup10A" value="3" onchange="TotalPart1A()"/></td>
              <td bgcolor="#EAEAEA"><input type="radio" name="radiogroup10A" value="4" onchange="TotalPart1A()"/></td>
            </tr>
            <tr>
              <td> </td>
              <td height="27" align="right">A TOTAL: </td>
              <td colspan="2"><input type="text" size="10" name="Total1A" value="0"/></td>
              <td align="right"> </td>
              <td> </td>
            </tr>
            <tr>
              <td> </td>
              <td height="27" align="right"> </td>
              <td> </td>
              <td> </td>
              <td align="right"> </td>
              <td> </td>
            </tr>
          </table>
        </form>
      </div>
    </div>
    </body>
    </html>

    Hi Nancy,
    I've been away from this for a while and have picked it back up.  I tried your suggested code and I'm having problems getting it to work.  I created a file using the code you supplied for the survey here:
    view-source:http://www.littlechisel.com/clients/GreenSurvey/GreenSurvey.html
    It doesn't work so I know I'm missing something.  If you could advise me on this, it would be great.  Thanks! Here is the code as I have it:
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <script type="text/javascript">
    function calcscore() {
        var score = 0;
        $(".calc:checked").each(function() {
            score += parseInt($(this).val(), 10);
        $("input[name=sum]").val(score)
    $().ready(function() {
        $(".calc").change(function() {
            calcscore()
    </script>
    <link href="stylesheets/Survey.css" rel="stylesheet" type="text/css">
    </head>
    <body>
    <h1>jQuery Sum of Radio Fields</h1>
    <form action="">
    <h2>HOW GREEN ARE YOU?</h2>
    <p><strong>I walk/bicycle  to work/school. </strong><br>
    Yes
    <input class="calc" type="radio" name="radio1" value="10">
    No
    <input class="calc" type="radio" name="radio1" value="0">
    Sometimes
    <input class="calc" type="radio" name="radio1" value="5"></p>
    <p><strong>I buy  locally grown food. </strong><br>
    Yes
    <input class="calc" type="radio" name="radio2" value="10">
    No
    <input class="calc" type="radio" name="radio2" value="0">
    Sometimes
    <input class="calc" type="radio" name="radio2" value="5"></p>
    <p><strong>I recycle. </strong><br>
    Yes
    <input class="calc" type="radio" name="radio3" value="10">
    No
    <input class="calc" type="radio" name="radio3" value="0">
    Sometimes
    <input class="calc" type="radio" name="radio3" value="5"></p>
    <p><strong>I compost. </strong><br>
    Yes
    <input class="calc" type="radio" name="radio4" value="10">
    No
    <input class="calc" type="radio" name="radio4" value="0">
    Sometimes
    <input class="calc" type="radio" name="radio4" value="5"></p>
    <p>Total Green Score:
    <input type="text" name="sum">
    </p>
    </form>
    </body>
    </html>

  • Misc Basic PL/SQL Application Design/Programming Questions 101 (101.1)

    ---****** background for all these questions is at bottom of this post:
    Question 1:
    I read a little on the in and out parameters and that IN is "by reference" and OUT and IN-OUT are by value. To me "by reference" means "pointer" as in C programming. So it seems to me that I could call a function with an IN parameter and NOT put it on the right side of an assignment statement. In other words, I'm calling my function
    get_something(IN p_test1 varchar2) return varchar2;
    from SP1 which has a variable named V_TEST1.
    So.... can I do this? (method A):
    get_something(V_TEST1);
    or do I have to do this (method B):
    V_TEST1 := get_something(V_TEST1);
    Also, although this may muddy the thread (we'll see), it seems to me that IN, since its by reference, will always be more efficient. I will have many concurrent users using this program: should this affect my thinking on the above question?
    -- ******* background *******
    So Far:<< I've read and am reading all over the net, read and reading oracle books from oracle (have a full safari account), reading Feurstein's tome, have read the faq's here.
    Situation Bottom Line:<< Have an enormous amount to do in a very little time. Lots riding on this. Any and all pointers will be appreciated. After we get to some undetermined point I can re-do this venture as a pl/sql faq and submit it for posting (y'alls call). Some questions may be hare brained just because I'm freaking out a little bit.
    Situation (Long Version):<< Writing a pl/sql backend to MS Reporting Services front end. Just started doing pl/sql about 2 months ago. Took me forever to find out about ref-cursor as the pipe between oracle and all client applications. I have now created a package. I've been programming for 20 years in many languages, but brand new to pl/sql. However, pl/sql sql has freed me from myriad of limitations in MS RS's. My program is starting to get big (for me -- I do a lot in a little) pks is currently 900 lines with 15 functions so far. Currently SP (pls) is back up to 800 lines. I get stuff working in the sp then turn it into a function and move it to the package.
    What does application do?:<<<< Back End for MS Reporting Services Web front end. It will be a very controlled "ad-hoc" (or the illusion of ad-hoc) web interface. All sql queries are built at run-time and executed via "open ref cusor for -- sql statement -- end;" data returned via OUT ref_cursor. Goal is to have almost 100% of functionality in a package. Calling SP will be minimalist. Reporting Services calls the SP, passes X number of parameters, and gets the ref_cursor back.
    Oracle Version: 10.2 (moving to 11g in the next 3 months).Environment: Huge DW in a massively shared environment. Everything is locked down and requires a formal request. I had to have my authenticated for a couple dbms system packages just to starting simple pl/sql programs.

    Brad Bueche wrote:
    Question 1:
    I read a little on the in and out parameters and that IN is "by reference" and OUT and IN-OUT are by value. To me "by reference" means "pointer" as in C programming. So it seems to me that I could call a function with an IN parameter and NOT put it on the right side of an assignment statement. The IN parameter is not passing by reference. It is passing by value. This means variable/value of the caller used as parameter, is copied to the (pushed) stack of code unit called.
    An OUT parameter means that the value is copied from the called unit's stack to the caller (and the current value of the caller's variable is overwritten).
    To pass by reference, the NOCOPY clause need to be used. Note that is not an explicit compile instruction. The PL/SQL engine could very well decide to pass by value and not reference instead (depending on the data type used).
    Note that the ref cursor data type and the LOB data types are already pointers. In which case these are not passed reference as they are already references.
    The NOCOPY clause only make sense for large varchar2 variables (these can be up to 32KB in PL/SQL) and for collection/array data type variables.
    As for optimising PL/SQL code - there are a number of approaches (and not just passing by reference). Deterministic functions can be defined. PL/SQL code can be written (as pipelined tables) to run in parallel using the default Oracle Parallel Query feature. PL/SQL can be manually parallelised. Context switches to the SQL engine can be minimised using bulk processing. Etc.
    Much of the performance will however come down to 2 basic issues. How well the data structures being processed are designed. How well the code itself is modularised and written.

  • Please help me...Javascript question

    Hi everyone,
    what i am trying to do is..
    EX:
    TABLE: EMP
    empno empname sal entered_by
    1 john 1000 user1
    I have a form on the table EMP.The users want to enter the same record again(because mutiple users enter the same record) but want an alert message when they hit the create button like.. Eg:
    when user2 is trying to enter this data..
    empno: 2 (generated by sequence)
    empname: john
    sal: 1000
    he wants to see an alert message like: THE Record is Already exists in the database which was entered by USER1 (But he can enter the same record)
    what i did is.. I have a javascript which calls the application process (PL/SQL) where it check whether the data entered is already there in the database and returns back an alert message like this:
    JAVASCRIPT:
    ==========
    <script language=javascript>
    function  f_insert_record()
            var get = new htmldb_Get(null,&APP_ID.,'APPLICATION_PROCESS=INSERT_RECORD',0);
            get.add('P2_EMPNAME',html_GetElement('P2_EMPNAME').value);
            get.add('P2_SAL',html_GetElement('P2_SAL').value);
            gReturn = get.get();
            var a = gReturn.split("|");
            if(gReturn)
                if (a.length > 0) {alert(a[0]);}
            else
                null;
    </script>APPLICATION_PROCESS
    ===================
    DECLARE
       l_error   VARCHAR2 (4000);
       V_NAME VARCHAR2(1000);
       V_MSPR_ID NUMBER(15);
       I NUMBER;
       V_MYNUM STRING_OBJ := STRING_OBJ();
    BEGIN
      FOR C1 IN (SELECT DISTINCT entered_by ENTERED_BY_USER_NM 
    from emp 
    WHERE  
      empname = :P2_EMPNAME
      AND sal  = :P2_SAL
      ) LOOP
        V_MYNUM.EXTEND;
        V_MYNUM(V_MYNUM.COUNT) := C1.ENTERED_BY_USER_NM;
      END LOOP;
      V_NAME := NULL;
      l_error := NULL;
      FOR I IN V_MYNUM.FIRST..V_MYNUM.LAST LOOP
        --dbms_output.put_line(V_MYNUM(I));
        V_NAME := V_NAME || '   ' || V_MYNUM(I);
      END LOOP;
      IF V_NAME IS NOT NULL THEN
        l_error := 'The record already exists in the database which was created by '||V_NAME;
      END IF; 
      HTP.PRN(l_error);
    END;everything works fine...when i have a ONBLUR event on the SALARY field.
    But i want the same thing to be achieved with the ONCLICK event on the CREATE button (Template based button).
    The code i have shown over here is just an example...But the requirement is the same..Multiple Users can enter the same record but they want to see an alert message like this record was entered by USER1,USER2.
    The only think i am not able to figure out is the ONCLICK event on that create button.
    I tried like this Target: URL
    javaScript:(f_insert_record();doSubmit('CREATE');)
    I am not getting the alert message.
    Please help me to solve this
    thanks
    phani

    damn it! Those little quotation marks.....
    I already did figure it out awhile after I posted my question
    Thanks anyway!

  • Forum for graphic design related questions?

    Does anyone know of any good graphic design discussion forums? I'm looking for a place to ask questions about typography, color, layout, etc.
    Thanks in advance.

    Not as much activity on soem of these, btu here are some good ones
    http://typophile.com/
    http://www.underconsideration.com/brandnew/
    http://www.howdesign.com/forum/

  • Simple Design Analysis Question before designing dimensions and facts

    Hi I have a simple question ... (I think its simple)
    Suppose that i have the following staging table with the following columns:
    Student_Name | RollNo | Test_Date | Subject-Taken
    with data such as
    Kevin |123|12-4-2010|Physics
    now suppose that I want to design a cube on the basis of the above table so that I can succesfully get the result of a query such as
    List the names of all those students who took the test b/w 12-4-2010 to 12-5-2010 of the Subject Physics
    Here what i need to know what dimensions/Levels would u set and what would be our fact?
    I think that one dimension would be time ( but i am not sure how i would  accommodate and handle duration... any idea )
    would it be wise to make each column a dimension ??? for example the student_nanme a dimension and details of the student its attributes??
    Anyways the main thing is what bothers me is looking at the query we see that we are required 3 things the name of the student , the TestDate and subject taken so if i make the 3 columns the  dimension i am still not sure that i would be able to acomodate the query properly...any ideas on how to approach and handle these situations
    Edited by: Johnacandy on Dec 14, 2010 9:26 AM

    ScoobySi wrote:
    Yes I mean Time dimension, however in a DW you will have many Time dimensions, instead of creating a physical object for each you use a ROLE. If you edit a dimension in OWB you'll see that you can specify a ROLE on the first tab.
    Thanks for the great explaination... could you explain the process of roles a little more that will really save me some time... furthermore u stated
    + "instead of creating a physical object for each you use a ROLE" +
    The way i create dimensions is right clicking dimensions and selecting dimension.... for a standard dimension
    however incase of a time dimension i use a wizard... I am still a bit confused about "Physical objects" ... Id really really appreciated it if you can clarify this up...
    as discussed before one dimension would be Student and other would be subject
    and 3rd one would be TEST_DATE with role ?? and should that be a time_dimension or a standard dimension with a role defined ???

  • MapViewer - A team of newbies and definitely basic questions...

    Dear All,
    We are a team of programmers who are very new to MapViewer. We are an experienced team of GIS programmers, however, we find difficulty in applying known functions to MapViewer. It's a great application, but a lot of unknowns.
    We have very basic questions, as well as advanced ones. I would like to summarize them as follows:
    1. How can I let the map to be zoomed into a specific feature?
    2. How can I execute a query to find a specific feature?
    3. How can I execute network analysis query to find the shortest path or paths between two or more nodes?
    4. How can I find out the nearest node to the location when user clicks on an arbitrary location on the map?
    5. How can I execute generic queries, without (this is important) need to send/receive XML queries?
    6. The bottomline is: we just want to use ready made functions to make it as easy as possible.
    Anyhelp is greatly appreciated. We are stuck with the basics of MapViewer (Oracle Maps).
    Please help us find the light :)
    Best regards.
    Desperate MapViewer Team!

    Here are some quick answers, hopefully they are not too late.
    1. You will construct a theme (mostly a dynamic one) that contains the specific feature, then call the theme's setBoundingTheme(true). Typically what we see people do is: a) create a dynamic theme with a query that selects a set of features; b) create a FOI layer based on the theme (MVThemeBasedFOI); c) call the setBoundingTheme(true) on the FOI layer. The end result, is that MapViewer will process your query and return the FOI data to the Oracle Maps JavaScript client, which will zoom the map to include the set of features in the FOI layer. Check out Oracle Maps tutorial #35 for an example.
    2. This is partly answered above. Basically you will construct a theme with a dynamic query string. You may want to check out tutorial #37 which finds out and displays the buffers around a set of points; the buffers are constructed via a SQL query at run time.
    3. This is not really a MapViewer question; rather, you may need to consult the Oracle Spatial routing engine XML API; the gist is you send the XML route request to the routing server, which returns a set of coordinates for your directions, which you can construct (MapViewer) FOI objects out of and display them on the map.
    4. I'm not sure our routing engine or network data model API has such a function ready for use; what you can do is if you can formulate the SQL query string (with the current location represented as a binding variable), then you can create a theme out of this query condition, and simply supply the location at run time to get the set of nodes.
    5. Can you please elaborate on what do you mean by generic queries? A simple usage scenario will help.
    6. We understand; there are quite a lot of things that can be made easier out of the box and we are working towards that. in the mean time, just ask questions if you have them; and always check out the Oracle maps tutorials first (actually reading the MapViewer primer article should be the absolute first step :) ).
    thanks
    LJ

  • Newbie export and import question

    Here's the next part. I have a system with roughly 3+ billion records.
    My design is to convert the data in the company's db to ours. The db is still in production so my thinking was to export a day's worth of data using Oracle's exprt functionality. Export takes parameters so I can give it psuedo code like export... where date = yyyy/mm/dd.
    On the oracle export faq it says it may not work well with large data sets. On daily average could Oracle export 3M records and import it into another table?
    It's on this table I'd put the sequence - from thread Sequence question, need to prefix the sequence with a 4 digit incrementing
    Thanks
    Message was edited by:
    user618862

    Sounds like the worst possible solution but then you provided no information as to version numbers, latency, number of tables, transaction size, partitioning, or number of tablespaces.
    Assuming a currently supported version of the product why not?
    1. Transportable tablespaces
    2. Streams
    3. DataPump
    4. External tables
    Export/Import is deprecated technology. It should be the option of last resort.

Maybe you are looking for

  • Link Between Service Notification and Sales Order

    Hi All, In our business process, we will create sales order from Service Notification and we can see the same in the Document flow. But when i check in the VBFA table, there are no entries. I would like to know how the document flow is updated withou

  • Taking an infinite time to login to launch Acrobat XI trial - Adobe ID and password are correct ?

    Taking infinte time to log-in to launch Adobe XI Pro Trial. Credentials, Adobe ID and password are coreect. Requested new password via log-in trouble shooting and got new password, still no success. Just get rotating icon and no response when I logi-

  • Performance Impact When Using SNC Communication

    Hello, Does anybody know if and how much performance impact there is if we use SNC for communication between the SAP Server and SAPGUI? I think there are two areas that may be impacted; Network and server CPU. For network load, I did find a part in "

  • What are Displays?

    Hello, Sorry to bother you again with my simples questions. I checked on the documentation before asking and didn't find an answer. So can anyone tell me what are "Displays"? I find them in the Logical Model, the Relational Model and the different Su

  • Gr Blocked Stok or blocked stock Stop type setting in OMJJ

    Hi, Movt. Type 103, used to post material in GR blocked stock, just want to know what setting in OMJJ for movement 103 used to POST Material stock into GR Blocked Stock only. Edited by: V raj on Aug 27, 2009 3:08 PM