Using API in application to retrieve values

I need to access non-base table form elements in my pl/sql. I have to keep track of the current step using a hidden form element "Cur_step" I understand that I cannot use the p_session to get to the value.
can I use wwpro_api_parameters.get_value?
I have tried
v_step := <PortalInstance>.wwpro_api_parameters.get_value('cur_step','')
So far it does not seem to work.
Thanks

Brad,
Regarding non-table elements access in PLSQL, please see my respond for this post: http://technet.oracle.com:89/ubb/Forum81/HTML/000705.html
in short - this is not yet supported.
For general information how to access table field values please see out FAQ: http://otn.oracle.com/products/iportal/htdocs/portal_faq.htm#BuildingApplications
Thanks,
Dmitry

Similar Messages

  • Using keys to search and retrieve values from HashMap

    I've been fiddling around with this problem for a while and can't seem to find any working solution. What I have is a method that I want to return all values from a HashMap, but instead of using the regular keys for a HashMap (0, 1, 2, 3), my keys are different numbers such as 51414, 62513, etc.
    public Car[] getAllCars() {
              Map<Integer, Car> myCars = system.getCars(); //getCars() returns HashMap of Car objects from another class
              Car[] c = new Car[myCars.size()];
              if(myCars.size()!=0) // ensure map is populated
                   for(int i=0; i<myCars.size(); i++)
                        myCars.get(i);
              return c;    
         }So what's happening at the moment is it loops through myCars and gets some values, but only those ones at the keys of 0-15 (the size of the Map). What I need is to get the Keys from myCars and use them to return all Car objects. The HashMap API has something called KeySet() which I think could help me, but I can't get that working.
    Any ideas?

    DiscoInferno wrote:
    Short of an SSCCE I think this might more accurately describe what I'm after.
    public Car[] getAllCars() {
              Map<Integer, Car> myCars = system.getCars();  //getCars() returns HashMap of Car objects from another class
              Car[] c = new Car[myCars.size()];
              Set<Integer> s = holds.keySet();
              Iterator keyIter = s.iterator();
              if(myCars.size()!=0)
                   while (keyIter.hasNext()) {
                        Object key = keyIter.next();
                        Car cc = myCars.get(key);
                        System.out.println(myCars.get(key));
              return null;
         }What that does is gets the Car object that matches the specified key. What I need is for it to be returnable as an array of Car objects. I don't want it to print, but the output that is printed is basically what I want to be returned to an array.First, I'm not sure how you managed to find keySet() and not find values().
    Second, okay, so you know how to get each value. Do you not know how to set a value in an array? Do you not know how to return a value from a method? Google can help you find tutorials for those. Otherwise, I have no idea what difficulty you're having.

  • Error: this application, or a library it uses, has passed an invalid numeric value (NaN, or not-a-number) to CoreGraphics API. This is a serious error and contributes to an overall degradation of system stability and reliability. This notice is a courtesy

    Error: this application, or a library it uses, has passed an invalid numeric value (NaN, or not-a-number) to CoreGraphics API. This is a serious error and contributes to an overall degradation of system stability and reliability. This notice is a courtesy: please fix this problem. It will become a fatal error in an upcoming update.

    This console log is a note to the developers of whatever application you are using. You can safely ignore it.

  • Retrieve Hierarchy Leaf Node using API.

    Hello All,
      Is there a way to search in the Hierarchy Lookup table only on it leaf node.
    Example.
    I have a Hierarchy structure
    Americas
       I
       ___ North America
                        I
                        _____ United States and Virgin Island
                                                          I
                                                          ______ United States,US,USA.
    For the above structure if i search by "United States" and put in CONTAINS as a constrain then, i need to retrieve only "United Stated,US,USA". Is there a Java API, to do this search.
    Thanks,
    Priya.

    Hi Priya,
    yes there is API Command available for retrieving the Hierarchy elements.
    All you need is the Record ID of the selected innermost leaf noe that you can get by performing a search.
    Once you get his record ID for the innermost leaf node, you need to use the RetrieveHierAncestors Command to get the Values for the parent of the leaf node.
    Documentation is avaible at: [http://help.sap.com/javadocs/MDM/SP06/com/sap/mdm/data/commands/RetrieveHierAncestorsCommand.html]
    Hope his helps!!
    Cheers,
    Arafat

  • How to retrieve value of attribute using xPath ?

    Hello experts,
    I have a following xml chunk
    <image file="/articles/engineering/boxerengine/preview_282x160.jpg">
    <tout name="copyright"></tout>
    <tout name="license"></tout>
    <tout name="photographer"></tout>
    <tout name="description"></tout>
    </image>
    I want to retrieve value of attribute file from absolute node image.
    I tried using xpath='/image/@file' It gives output as file="/articles/engineering/boxerengine/preview_282x160.jpg"
    I just want value "/articles/engineering/boxerengine/preview_282x160.jpg"
    I tried using xpath='/image/@file/text()' . It does not work
    Following is the java code. I am using XOM parser.
    java code :
    Builder parser = new Builder();
    Document doc = parser.build(xmlFile);
    Nodes titles = doc.query(xPath);
    //xpath = ''/image/@file/text()"     
    for (int i = 0; i < titles.size(); i++) {
    strChunk = strChunk.append(titles.get(i).toXML());     
    return strChunk.toString();
    Please help.
    Thanks,
    Sandeep Parmar

    Hi Sandeep,
    Using XPath and XPathExpression you can evaluate XPath queries on Document. have a look at code given bellow:
    // Building Document from XML File
    org.w3c.dom.Document imageDoc = builder.parse(xmlFile);
    // getting new instance of XPath
    javax.xml.xpath.XPath xpath = javax.xml.xpath.XPathFactory.newInstance().newXPath();
    // Building XPathExpression by compiling XPath query
    javax.xml.xpath.XPathExpression xPathExp = xpath.compile("/image/@file");
    // Evaluting XPath Expression on Document
    String imagePath = (String) xPathExp.evaluate(imageDoc, javax.xml.xpath.XPathConstants.STRING);
    // Priting image path it will print : "/articles/engineering/boxerengine/preview_282x160.jpg", if you try with data given in your post.
    System.out.println(imagePath); Hope this will help.
    thanks,
    Tejas Purohit

  • ............. Use Cursor to retrieve values

    Cursor cellr IS
              select cell_id from rffd.cell where st_id = :Sitev.tstid;
         open cellr;
              for i in 1..3
              Loop
              fetch cellr into cellid;
              Exit when Cellr%NotFound;
              End loop;
         if cellr%rowcount < 3 then
         for i in 1..2
         loop
         fetch cellr into cellid;
                                            :tcid1:=cellid;
                                            fetch cellr into cellid;
                                            :tcid2:=cellid;
    This is the Code i used to put the cell id values in the Cursor the respective text items. but what it does is that it shows the last cell value in both of the text boxes.
    i mean it does not show all the two or the three v alues..
    I have tried using Next Record and i = i+1 but still nothing has happened..
    Kindly tell me what is wrong and what to do..
    Cell table has 3 or 2 cells with same Sites id.
    I want to retrieve those cellids and place them in w or 3 text boxes but nothing is happening ..
    hope to c some early replies and if any body kindy let me know what the hell i m doing wrong.. i would be highly obliged
    thanx alot for that. .
    Best Regards..

    You can u a cursor to populate a table.
    But, you have to use the create-record built-in to create a new record (a new raw in your table) then you can populate the items.
      -- Open cursor
      Loop
      If :SYSTEM.RECORD_STATUS <> 'NEW' Then
         Create_Record ; -- get a new blank line
      End if ;
      -- populate fields
      :blk.item1 := ...
      End loop ;
      ...You could also think about use a based-block (a block which is based on a table)
    Francois

  • Executing Jar application using API

    Hi,
    Java tutorial [http://java.sun.com/docs/books/tutorial/deployment/jar/apiindex.html] explains how to launch an application bundled in a jar using API.
    How can you set the class path of the launched application ?
    I tried to have the launched application read a text file that is bundled in the same jar but couldn't.
    Thank you

    Here is a complete example of my problem
    c.java launches App.java
    import java.io.*;
    import java.util.jar.*;
    import java.net.*;
    import java.lang.reflect.*;
    class c
    public static void main(String[] args)
    URLClassLoader ucl;
    URL            url;
    Class<?>       cls;
    Method         m;
    try {
          url = new URL ( "jar","","file:/Exec/App.jar!/" );
          ucl = new URLClassLoader ( new URL[]{url} );
          cls = ucl.loadClass ( "Exec.App" );
          m   = cls.getMethod ( "main",new Class[]{args.getClass()} );
          m.setAccessible(true);
          m.invoke ( null,new Object[]{args} );
    catch ( Throwable t )
            System.out.println("Error launching application\n"+t);
    package Exec;
    import java.io.InputStream;
    public class App
    public static void main ( String[] args )
    new App().launch();
    public void launch()
    InputStream is;
    byte        b[] = new byte[512];
    int         i;
    is = this.getClass().getResourceAsStream ( "Seal.txt" );
    try {
          i=is.read(b,0,b.length);
          System.out.print(new String(b,0,i));
    catch ( Throwable t ) {System.out.println(t);}
    try { is.close(); } catch (Throwable t) {}
    App.jar
    META-INF/
    META-INF/MANIFEST.MF
    Exec/App.class
    Seal.txtNotes:
    1. Running c.class produces java.lang.NullPointerException
    2. If I use is = ClassLoader.getSystemResourceAsStream ( "Seal.txt" ); instead of is = this.getClass().getResourceAsStream ( "Seal.txt" ); and put the jar on the -cp of the command line, it works
    Can you please tell me why I am getting the exception ?
    Thank you

  • Error while creating new projects using api

    Hello,
    I am having error while creating projects using standard api, PA_PROJECT_PUB.CREATE_PROJECTS. The error I am having is as follow.
    Source template ID is invalid.
    ===
    My code is as follow:
    SET SERVEROUTPUT ON SIZE 1000000
    SET VERIFY OFF
    define no=&amg_number
    DECLARE
    -- Variables used to initialize the session
    l_user_id NUMBER;
    l_responsibility_id NUMBER;
    cursor get_key_members is
    select person_id, project_role_type, rownum
    from pa_project_players
    where project_id = 1;
    -- Counter variables
    a NUMBER := 0;
    m NUMBER := 0;
    -- Variables needed for API standard parameters
    l_commit VARCHAR2(1) := 'F';
    l_init_msg_list VARCHAR2(1) := 'T';
    l_api_version_number NUMBER :=1.0;
    l_return_status VARCHAR2(1);
    l_msg_count NUMBER;
    l_msg_data VARCHAR2(2000);
    -- Variables used specifically in error message retrieval
    l_encoded VARCHAR2(1) := 'F';
    l_data VARCHAR2(2000);
    l_msg_index NUMBER;
    l_msg_index_out NUMBER;
    -- Variables needed for Oracle Project specific parameters
    -- Input variables
    l_pm_product_code VARCHAR2(30);
    l_project_in pa_project_pub.project_in_rec_type;
    l_key_members pa_project_pub.project_role_tbl_type;
    l_class_categories pa_project_pub.class_category_tbl_type;
    l_tasks_in pa_project_pub.task_in_tbl_type;
    -- Record variables for loading table variables above
    l_key_member_rec pa_project_pub.project_role_rec_type;
    l_class_category_rec pa_project_pub.class_category_rec_type;
    l_task_rec pa_project_pub.task_in_rec_type;
    -- Output variables
    l_workflow_started VARCHAR2(100);
    l_project_out pa_project_pub.project_out_rec_type;
    l_tasks_out pa_project_pub.task_out_tbl_type;
    -- Exception to call messag handlers if API returns an error.
    API_ERROR EXCEPTION;
    BEGIN
    -- Initialize the session with my user id and Projects, Vision Serves (USA0
    -- responsibility:
    select user_id into l_user_id
    from fnd_user
    where user_name = 'SSHAH';
    select responsibility_id into l_responsibility_id
    from fnd_responsibility_tl
    where responsibility_name = 'Projects Implementation Superuser';
    pa_interface_utils_pub.set_global_info(
    p_api_version_number => l_api_version_number,
    p_responsibility_id => l_responsibility_id,
    p_user_id => l_user_id,
    p_msg_count => l_msg_count,
    p_msg_data => l_msg_data,
    p_return_status => l_return_status);
    if l_return_status != 'S' then
    raise API_ERROR;
    end if;
    -- Provide values for input variables
    -- L_PM_PRODUCT_CODE: These are stored in pa_lookups and can be defined
    -- by the user. In this case we select a pre-defined one.
    select lookup_code into l_pm_product_code
    from pa_lookups
    where lookup_type = 'PM_PRODUCT_CODE'
    and meaning = 'Conversion';
    -- L_PROJECT_IN: We have to provide values for all required elements
    -- of this record (see p 5-13, 5-14 for the definition of the record).
    -- Customers will normally select this information from some external
    -- source
    l_project_in.pm_project_reference := 'AGL-AMG Project &no';
    l_project_in.project_name := 'AGL-AMG Project &no';
    l_project_in.created_from_project_id := 1;
    l_project_in.carrying_out_organization_id := 2864; /*Cons. West*/
    l_project_in.project_status_code := 'UNAPPROVED';
    l_project_in.start_date := '01-JAN-11';
    l_project_in.completion_date := '31-DEC-11';
    l_project_in.description := 'Trying Hard';
    l_project_in.project_relationship_code := 'Primary';
    -- L_KEY_MEMBERS: To load the key member table we load individual
    -- key member records and assign them to the key member table. In
    -- the example below I am selecting all of the key member setup
    -- from an existing project with 4 key members ('EE-Proj-01'):
    for km in get_key_members loop
    -- Get the next record and load into key members record:
    l_key_member_rec.person_id := km.person_id;
    l_key_member_rec.project_role_type := km.project_role_type;
    -- Assign this record to the table (array)
    l_key_members(km.rownum) := l_key_member_rec;
    end loop;
    -- L_CLASS_CATEGORIES: commented out below should fix the error we get
    -- because the template does not have an assigment for the mandatory class
    -- 'BAS Test'
    l_class_category_rec.class_category := 'Product';
    l_class_category_rec.class_code := 'Non-classified';
    -- Assign the record to the table (array)
    l_class_categories(1) := l_class_category_rec;
    -- L_TASKS_IN: We will load in a single task and a subtask providing only
    -- the basic fields (see pp. 5-16,5-17,5-18 for the definition of
    -- the task record)
    l_task_rec.pm_task_reference := '1';
    l_task_rec.pa_task_number := '1';
    l_task_rec.task_name := 'Construction';
    l_task_rec.pm_parent_task_reference := '' ;
    l_task_rec.task_description := 'Plant function';
    -- Assign the top task to the table.
    l_taskS_in(1) := l_task_rec;
    -- Assign values for the sub task
    l_task_rec.pm_task_reference := '1.1';
    l_task_rec.pa_task_number := '1.1';
    l_task_rec.task_name := 'Brick laying';
    l_task_rec.pm_parent_task_reference := '1' ;
    l_task_rec.task_description := 'Plant building';
    -- Assign the subtask to the task table.
    l_tasks_in(2) := l_task_rec;
    -- All inputs are assigned, so call the API:
    pa_project_pub.create_project
    (p_api_version_number => l_api_version_number,
    p_commit => l_commit,
    p_init_msg_list => l_init_msg_list,
    p_msg_count => l_msg_count,
    p_msg_data => l_msg_data,
    p_return_status => l_return_status,
    p_workflow_started => l_workflow_started,
    p_pm_product_code => l_pm_product_code,
    p_project_in => l_project_in,
    p_project_out => l_project_out,
    p_key_members => l_key_members,
    p_class_categories => l_class_categories,
    p_tasks_in => l_tasks_in,
    p_tasks_out => l_tasks_out);
    -- Check the return status, if it is not success, then raise message handling
    -- exception.
    IF l_return_status != 'S' THEN
    dbms_output.put_line('Msg_count: '||to_char(l_msg_count));
    dbms_output.put_line('Error: ret status: '||l_return_status);
    RAISE API_ERROR;
    END IF;
    -- perform manual commit since p_commit was set to False.
    COMMIT;
    --HANDLE EXCEPTIONS
    EXCEPTION
    WHEN API_ERROR THEN
    FOR i IN 1..l_msg_count LOOP
    pa_interface_utils_pub.get_messages(
    p_msg_count => l_msg_count,
    p_encoded => l_encoded,
    p_msg_index => i,
    p_msg_data => l_msg_data,
    p_data => l_data,
    p_msg_index_out => l_msg_index_out);
    dbms_output.put_line('ERROR: '||to_char(l_msg_index_out)||': '||l_data);
    END LOOP;
    rollback;
    WHEN OTHERS THEN
    dbms_output.put_line('Error: '||sqlerrm);
    FOR i IN 1..l_msg_count LOOP
    pa_interface_utils_pub.get_messages(
    p_msg_count => l_msg_count,
    p_encoded => l_encoded,
    p_msg_index => i,
    p_msg_data => l_msg_data,
    p_data => l_data,
    p_msg_index_out => l_msg_index_out);
    dbms_output.put_line('ERROR: '||to_char(l_msg_index_out)||': '||l_data);
    END LOOP;
    rollback;
    END;
    ===
    Msg_count: 1
    Error: ret status: E
    ERROR: 1: Project: 'AGL-AMG Project 1123'
    Source template ID is invalid.
    PL/SQL procedure successfully completed.

    I was using a custom Application, which had a id other then 275 (which belongs to Oracle projects)

  • Modify Web Template Parameters Using API or Javascript

    Hello Experts,
    I am using the Web Application Designer (WAD) to build a template.  We are on BW 7.01 (EHP1).  I am trying to find a way to set a command within the template to change one of the parameters of the Web Template itself.  I am very familar with how to use the SAP provided API Commands to change the Web ITEM parameters (like ANALYSIS item, CHART item, etc), but I do not see an API that will allow me to change the parameters of the Template itself.
    For example, in WAD, on the left hand side, you can select the "Web Template" item and set the properties.  For example:
    Display Variable Screen [VARIABLE_SCREEN]
    Reset Variable Values to Default [CLEAR_VARIABLES]
    Show Personalized Variables [SHOW_PERSONALIZED_VARIABLES]
    I would like to add a button to the template where I can allow the user to change some of these properties, but I don't see a way to do it.  Does anyone have any experience coding this?
    Thanks in advance for your help.
    Jose

    Hi ,
    According to your description, my understanding is that you want to retrieve list item values related to a specific version using JavaScript.
    We can also see the a specific version via the url …/_layouts/15/Versions.aspx?list=GUID….
    We can use the SharePoint List web service that exposes
    Lists.GetVersionCollection Method to return version information for the specified field in a SharePoint list.
    There are some similar posts for your reference:
    https://social.msdn.microsoft.com/Forums/en-US/02d29ce7-1a2b-4e91-9319-6dd43cde0bee/getting-the-version-history-of-a-list-item?forum=sharepointdevelopment
    https://social.technet.microsoft.com/Forums/systemcenter/en-US/4bd80e0e-a605-4c5e-b534-a189c346b978/csom-fetching-list-item-version-history-programmatically?forum=sharepointdevelopment
    (the last reply of Patrick)
    Best Regards,
    Wendy
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Wendy Li
    TechNet Community Support

  • Error while loading an XML document using a structured application

    Hi,
    I try to load an XML document using a structured application defined in the default structapps.fm
    My code is shown down, extracted from the FDK API code sample.
    Problem, I always have the same message :
    "Cannot find the file named e:\xml\AdobeFrameMaker10\file. Make sure that the file exists. "
    Where "e:\xml\AdobeFrameMaker10\" is my install directory.
    So I assume that frame try to find the structapps.fm file but does not find it.
    What else can it be ?
    Does anyone knowns how to achieve this simple task using extendScript ?
    Thanks for any comments, Pierre
    function openXMLFile(myLastFile) {
        var filename = myLastFile.openDlg("Choose XML file ...", "*.xml", false);
        if (filename != null) {
            /* Get default open properties. Return if it can’t be allocated. */
            var params = GetOpenDefaultParams();
            /* Set properties to open an XML document*/
            /*Specify XML as file type to open*/
            var i = GetPropIndex(params, Constants.FS_OpenAsType)
            params[i].propVal.ival = Constants.FV_TYPE_XML;
            /* Specify the XML application to be used when opening the document.*/
            i = GetPropIndex(params, Constants.FS_StructuredOpenApplication)
            params[i].propVal.sval = "myApp";
            i = GetPropIndex(params, Constants.FS_FileIsOldVersion)
            params[i].propVal.ival = Constants.FV_DoOK
            i = GetPropIndex(params, Constants.FS_FontNotFoundInDoc)
            params[i].propVal.ival = Constants.FV_DoOK
            i = GetPropIndex(params, Constants.FS_FileIsInUse)
            params[i].propVal.ival = Constants.FV_DoCancel
            i = GetPropIndex(params, Constants.FS_AlertUserAboutFailure)
            params[i].propVal.ival = Constants.FV_DoCancel
            /*The structapps.fm file containing the specified application must have
            already been read. The default structapps.fm file is read when FrameMaker is
            opened so this shouldn't be a problem if the application to be used is
            listed in the structapps.fm file.*/
            var retParm = new PropVals()
            var fileObj = Open(filename, params, retParm);
            return fileObj
        } else {
            return null;

    Pierre,
    Depending on the object "myLastFile", the method openDlg might not even exist (if the myLastFile object is not a File object, for instance). And I do not see any need for the myLastFile anyhow, as you are presenting a dialog to select a file to open. I recommend using the global ChooseFile( ) method instead. This will give you a filename as string in full path notation, or null when no file was selected in the dialog. I am not sure what your ExtendScript documentation states about the return value for ChooseFile, but if that differs from what I am telling you here, the documentation is wrong. So, if you replace the first lines of your code with the following it should work:
    function openXMLFile ( ) {
        var filename = ChooseFile ( "Choose XML file ...", "", "*.xml", Constants.FV_ChooseSelect );
    While writing this, I see that Russ has already given you the same advice. Use the symbolic constant value I indicated to use the ChooseFile dialog to select a single file (it can also be used to select a directory or open a file - but you want to control the opening process yourself). Note that this method allows you to set a start directory for the dialog (second parameter). The ESTK autocompletion also gives you a fifth parameter "helplink" which is undocumented and can safely be ignored.
    Good luck
    Jang

  • Creation of a Request in OIM 11G using API's

    Hi Friends,
    I am trying to create a request using OIM 11g API's.
    I am trying to do this for EBS Responsibility resource and this resource has a request dataset has EBS-IT-Resource-Instance, application name, responsibility name, start date and security group. Please note application name, responsibility name, start date and security group are in child form.
    I am trying to populate the request dataset using the below code.
    List<RequestBeneficiaryEntityAttribute> entityAttrList;
    RequestBeneficiaryEntity entity = null;
    entityAttrList = new ArrayList<RequestBeneficiaryEntityAttribute>();
    entity = new RequestBeneficiaryEntity();
    tcITResourceInstanceOperationsIntf tcITResourceIntf = Platform.getService(tcITResourceInstanceOperationsIntf.class);
    HashMap searchcriteria = new HashMap<String, String>();
    searchcriteria.put("IT Resources.Name", "EBSHF-APPS12");
    tcResultSet resultSet = tcITResourceIntf.findITResourceInstances(searchcriteria);
    long itResourceKey=resultSet.getLongValue("IT Resources.Key");
    entityAttrList.add(this.getAttrLong("eBusiness Suite Instance Name",itResourceKey));
    entityAttrList.add(this.getAttr("Application Name","3~300"));
    entityAttrList.add(this.getAttr("Responsibility Name", "3~300~52281"));
    entityAttrList.add(this.getAttr("Security Group", "3~0"));
    entity.setEntityKey(getResourceKey("Oracle eBusiness Responsibility"));
    entity.setEntityType(RequestConstants.RESOURCE);
    entity.setEntitySubType("Oracle eBusiness Responsibility");
    entity.setEntityData(entityAttrList);
    private RequestBeneficiaryEntityAttribute getAttr(String name, String value)
    RequestBeneficiaryEntityAttribute attr = null;
    attr = new RequestBeneficiaryEntityAttribute(name, value, RequestBeneficiaryEntityAttribute.TYPE.String);
    return attr;
    private RequestBeneficiaryEntityAttribute getAttrLong(String name, long value)
    RequestBeneficiaryEntityAttribute attr = null;
    attr = new RequestBeneficiaryEntityAttribute(name, value, RequestBeneficiaryEntityAttribute.TYPE.Long);
    return attr;
    My code is working fine and a request is getting created. But when I try to open the request dataset(object form) for the newly created request, I am getting null exceptions.
    If I did not populate the fields that are in the child form application name, responsibility name and security group which are highlighted above, then I am able to view the form with the correct IT-Resource-Instance name after request creation.
    So, I am thinking I am doing something wrong while populating child form data in the request dataset.
    Can you please provide me some code snippet to populate the child using 11G API'S?

    Hi Bikash,
    After referring your code, i made changes in mine. Here is my updated code.
    RequestBeneficiaryEntityAttribute parantAttr=null;
    List<RequestBeneficiaryEntityAttribute> entityAttrList;
    RequestBeneficiaryEntity entity = null;
    entity = new RequestBeneficiaryEntity();
    parantAttr=this.getAttrLong("eBusiness Suite Instance Name", itResourceKey);
    RequestBeneficiaryEntityAttribute mid1 = new RequestBeneficiaryEntityAttribute();
    List <RequestBeneficiaryEntityAttribute> childAttributesList = new ArrayList<RequestBeneficiaryEntityAttribute>();
    childAttributesList.add(this.getAttr("Application Name", "3~555"));
    childAttributesList.add(this.getAttr("Responsibility Name", "3~555~22862"));
    childAttributesList.add(this.getAttr("Security Group", "3~0"));
    mid1.setChildAttributes(childAttributesList);
    mid1.setAction(RequestBeneficiaryEntityAttribute.ACTION.Add);
    entityAttrList = new ArrayList<RequestBeneficiaryEntityAttribute>();
    entityAttrList.add(parantAttr);
    entityAttrList.add(mid1);
    But when I try to run this, it is getting failed saying "RequestServiceException: IAM-2050033:Invalid attribute name null. No corresponding reference was found in the data set ProvisionResourceOracle eBusiness Responsibility".
    Here is my request data set for your reference.
    <AttributeReference name="eBusiness Suite Instance Name" attr-ref="eBusiness Suite Instance Name" type="Long" length="50" widget="itresource-lookup" required="true" available-in-bulk="true" itresource-type="eBusiness Suite UM"/>
    <AttributeReference available-in-bulk="true" length="10" widget="text" type="String" attr-ref="UD_EBH_RSCP" name="EBS HR Foundation User Responsibilities">
    <AttributeReference name="Application Name" attr-ref="Application Name" type="String" length="256" widget="lookup-query" available-in-bulk="true" required="true">
    <lookupQuery lookup-query="select lkv_encoded as Value,lkv_decoded as Description from lkv lkv, lku lku where lkv.lku_key=lku.lku_key and lku_type_string_key='Lookup.EBS.Application' and lkv_encoded like concat('$Form data.eBusiness Suite Instance Name', '~%')" display-field="Description" save-field="Value"/>
    </AttributeReference>
    <AttributeReference name="Responsibility Name" attr-ref="Responsibility Name" type="String" length="256" widget="lookup-query" available-in-bulk="true" required="true" primary="true">
    <lookupQuery lookup-query="select lkv_encoded as Value,lkv_decoded as Description from lkv lkv,lku lku where lkv.lku_key=lku.lku_key and lku_type_string_key='Lookup.EBS.Responsibility' and lkv_encoded like concat('$Form data.Application Name','~%')" display-field="Description" save-field="Value"/>
    </AttributeReference>
    <AttributeReference name="Security Group" attr-ref="Security Group" type="String" length="256" widget="lookup-query" available-in-bulk="true" required="true">
    <lookupQuery lookup-query="select lkv_encoded as Value,lkv_decoded as Description from lkv lkv, lku lku where lkv.lku_key=lku.lku_key and lku_type_string_key='Lookup.EBS.SecurityGroup' and lkv_encoded like concat('$Form data.eBusiness Suite Instance Name', '~%')" display-field="Description" save-field="Value"/>
    </AttributeReference>
    I am not sure why it is not referencing to the attribute. In your blog, it is saying your code is to set process form. But i am trying to create a request using API's. so, I need some code snippet to populate request dataset. Do you think, this will serve both?
    Thanks for your help.

  • Retrieving values from Database in Excel Task Pane App

    So far,
    I created a website with a database on Azure, I then published my App to Azure. My problem is that I'm not sure how I retrieve values from the database (in SQL: SELECT * FROM EXAMPLE_TABLE WHERE date = str). If someone could provide me with sample code,
    that would be amazing! :D
    It would also be very helpful if anyone knew a method to automatically update the database using information from a xml stream on another website, once a day.
    Thank you!

    Hi,
    >> My problem is that I'm not sure how I retrieve values from the database
    You can use jquery ajax call to call your webserivce or REST API, which will query the database and return a json result.
    Sample:
    Apps for Office: Create a web service using the ASP.NET Web API
    >> It would also be very helpful if anyone knew a method to automatically update the database using information from a xml stream on another website
    For the database sync-up question, I suggest you posting them on the forums like SQL Server Forum.
    Thanks for your understanding.
    Best Regards
    Lan
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Java API to read the Encrypted Values from Windows Registry settings

    Is there any Java API to read the Encrypted Values from Windows Registry settings ?
    My Java Application invokes a 3rd party Tool that writes the key/value to windows registry settings under : “HKLM\Software\<3rdparty>\dataValue”.
    This entry is in BINARY and encrypted with 3DES, using crypto API from Microsoft.
    3rd party software to encrypt the data stored in registry it
    either uses C++ code: and uses the call “CryptProtectData” and “CryptUnProtectData” or
    If it is a .NET (C#) it uses the call “Protect” or “UnProtect” from class “ProtectData” of WinCrypt.h from the library “Crypt32.lib.
    Note: The data is encrypted using auto-generated machinekey and there is no public key shared to decrypt the Encrypted data.
    Since the data is encrypted using auto-generated machinekey the same can be decrypted from a .Net / C++ application using CryptUnprotectData or UnProtect() API of WinCrypt.h from the library “Crypt32.lib.
    To know more about Auto-Generated MachineKey in Windows refer the links below
    http://aspnetresources.com/tools/machineKey
    http://msdn.microsoft.com/en-us/library/ms998288.aspx
    I need to find a way in Java to find the equivalent API to decrypt (CryptUnprotectData) and Microsoft will automatically use the correct key.
    But i couldn't find any informato related to Java APIs to enrypt or decrypt data using auto-generated machinekey.
    Is there a way to read the encrypted data from Windows regsitry settings that is encrypted using the Auto-Generated Machine Key ?
    Kindly let me know if Java provides any such API or mechanism for this.

    If the symmetric key is "auto-generated" and is not being stored anywhere on the machine, it implies that the key is being regenerated based on known values on the machine. This is the same principle in generating 3DES keys using PBE (password-based-encryption). I would review the documentation on the C# side, figure out the algorithm or "seed" values being used by the algorithm, and then attempt to use the JCE to derive the 3DES key using PBE; you will need to provide the known values as parameters to the PBE key-generation function in JCE. Once derived, it can be used to decrypt the ciphertext from the Regiistry in exactly the same way as the CAPI/CNG framework.
    An alternate way for Java to use this key, is to write a JNI library that will call the native Windows code to do the decryption; then the Java program does not need to know details about the key.
    That said, there is a risk that if your code can derive the key based on known seeds, then so can an attacker. I don't know what your applicatiion is doing, but if this is anything related to compliance for some data-security regulation like PCI-DSS, then you will fail the audit (for being unable to prove you have adequate controls on the symmetric key) if a knowledgable QSA probes this design.
    Arshad Noor
    StrongAuth, Inc.

  • Question: How do I retrieve values after creating an autofilter.

    So the question is sort of simple but my code is below, this is my first time really running in VBA but it isn't so far all to dissimilar to LotusScript which I am a bit more knowledgeable in. What I am trying to do is retrieve values from the filtered information,
    or more simply, I am trying to retrieve values from two cells in the spreadsheet that I want move together.
    As noted below one of them is a countries field which simply concatenates the country string with the duplicates with the same first column (A#) fields. 
    Example 123 .. UK
                  123 .. US
                  123 .. CA
    The output stored in countries would be UK,US,CA and posted to sheet3.
    Sub proFirst()
    Dim wSheet As Worksheet
    Dim columnCount As Integer
    Dim rowCount As Long
    Dim testVar As Long
    Dim coll As New Collection, a
    Dim Assignee() As String
    Dim tmpList() As String
    Dim newVar As Variant
    Dim dict As Object
    Const rowDataBegin = 2
    Dim count As Long
    rowCount = Sheets("Sheet1").UsedRange.Rows.count
    columnCount = Sheets("Sheet1").UsedRange.Columns.count
    '** This Cleans up the filtering to ensure all data is viewable before we begin **
    Sheets("Sheet1").Activate
    If (ActiveSheet.AutoFilterMode And ActiveSheet.FilterMode) Or ActiveSheet.FilterMode Then
      ActiveSheet.ShowAllData
    End If
    Sheets("Sheet3").Activate
    If (ActiveSheet.AutoFilterMode And ActiveSheet.FilterMode) Or ActiveSheet.FilterMode Then
      ActiveSheet.ShowAllData
    End If
    '** This sets a filter to filter by column O which is designated as Submitted Date  **
    Sheets("Sheet1").Columns("A:S").AutoFilter Field:=15, Criteria1:="<>"
    '** This block copuies and pastes the values we need for the final report however   **
    '** this is not a permenent viewable format for the report, a recut may be required **
    Application.CutCopyMode = False
    rowCount = Sheets("Sheet1").UsedRange.Rows.count
    Sheets("Sheet1").Range("A1:D" & rowCount).Copy Sheets("Sheet3").Range("A1:D" & rowCount)
    Application.CutCopyMode = False
    Sheets("Sheet1").Range("J1:J" & rowCount).Copy Sheets("Sheet3").Range("H1:H" & rowCount)
    Application.CutCopyMode = False
    Sheets("Sheet1").Range("O1:O" & rowCount).Copy Sheets("Sheet3").Range("I1:I" & rowCount)
    Application.CutCopyMode = False
    'loops through the first column and acquires all of the data and generates as string array
    rowCount = Sheets("Sheet3").UsedRange.Rows.count
    columnCount = Sheets("Sheet3").UsedRange.Columns.count
    ReDim Assignee(rowCount)
    ReDim tmpList(rowCount) 'helper variant to make it smoother for recall of lines
    For i = rowDataBegin To rowCount
        Assignee(i - rowDataBegin) = CStr(Sheets("Sheet3").Cells(i, 1).Value)
        tmpList(i - rowDataBegin) = rowCount
    Next i
    Set dict = CreateObject("Scripting.Dictionary")
    For i = LBound(Assignee) To UBound(Assignee)
       If dict.exists(Assignee(i)) Then
            dict.Item(Assignee(i)) = dict.Item(Assignee(i)) + 1
             Else
            dict.Add Assignee(i), 1
        End If
       Next i
    Sheets("Sheet3").Range("$A$1:$I$" + CStr(rowCount)).RemoveDuplicates Columns:=1, Header:=xlYes
    rowCount = 2
    Application.Workbooks(1).Worksheets("Sheet3").Activate
    '** Header values Change as needed                                                             
    Sheets("Sheet3").Cells(1, 5).Value = "Completed Global Questionnaire? (Yes or No)"
    Sheets("Sheet3").Cells(1, 6).Value = "Number of Countries"
    Sheets("Sheet3").Cells(1, 7).Value = "Name of Countries Submitted"
    For Each v In dict.keys
    If dict.Item(v) > 0 And v <> "" Then
    Sheets("Sheet3").Cells(rowCount, 6).Value = dict.Item(v)
    rowCount = rowCount + 1
    End If
    Next v
    Sheets("Sheet3").Columns("A:I").AutoFilter Field:=6, Criteria1:=">1", _
            Operator:=xlAnd
    '** BEGIN TESTING AREA
    '** Stage 2 Test Complete - able to retrieve a list of how many rows are in use
    '** Stage 3 test - retrieve countries
    Sheets("Sheet1").Activate
    count = 2
    For Each v In dict.keys
    countries = ""
    rowCount = 0
    If dict.Item(v) > 1 Then
        With ActiveSheet
           Set rnData = .UsedRange
            With rnData
                .AutoFilter Field:=1, Criteria1:=v
               .Select
                'xlCellTypeVisible = 12
                 For Each rngArea In .SpecialCells(xlCellTypeVisible).Areas
                 tmp = .SpecialCells(xlCellTypeVisible).Rows
                Next
                For Z = 2 To rowCount
                    If countries = "" Then
                        countries = .Range("I" & Z).Value
                    Else
                        countries = countries & ", " & .Range("I" & Z).Value
                    End If
                Next Z
            End With
        End With
         Sheets("Sheet3").Cells(count, 7).Value = countries
    End If
    count = count + 1
    Next v
    '**  Testing block              **
    Sheets("Sheet3").Columns("A:I").AutoFit
    MsgBox "End loop"
                                                

    The code below is only semi-tested but it should give you the idea of how to loop through the visible data of an AutoFiltered Range. You can't use code like "For r = 2 to Rows.Count" because the code stops after the first non contiguous row. However,
    you can use For Each loop to loop through the rows and get the row number from there.
    An explanation of the code to set rngVisible. (Note that a space and underscore at the end of a line is a line break in an otherwise single line of code.)
    With .AutoFilter.Range   This is the entire AutoFilter Range (Includes column headers, visible and non visible rows)
     .Offset(1, 0)     Moves down one row off the column headers but now includes an additional row at the bottom below the data. (Still includes visible and non visible rows)
     .Resize(.Rows.Count - 1, .Columns.Count)     Removes the additional row due to Offset (Still includes visible and non visible rows)
    .SpecialCells(xlCellTypeVisible)      Only include the visible rows.
        Sheets("Sheet1").Activate
        For Each v In dict.keys
            countries = ""
            If dict.Item(v) > 1 Then
                With ActiveSheet
                    Set rnData = .UsedRange
                    With rnData
                        .AutoFilter Field:=1, Criteria1:=v
                    End With
                    'Note that AutoFilter.Range is an inbuilt object variable _
                    for the entire range covered by the AutoFilter
                    With .AutoFilter.Range
                        'Following tests if any rows (other than column header) are visible _
                        in the AutoFilter.Range.  If > 1 then more than just column headers. _
                        Attempting to set the rngVisible will error if not at least one row _
                        of visible data.
                        If .Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count > 1 Then
                            'Assign the visible data to a range variable
                            Set rngVisible = .Offset(1, 0) _
                                       .Resize(.Rows.Count - 1, .Columns.Count) _
                                       .SpecialCells(xlCellTypeVisible)
                        Else
                            MsgBox "No visible data. Procesing terminated."
                            'Left for you to handle what you want to do if the _
                             filter does not exist in the data and no visible rows present
                            Exit Sub
                        End If
                    End With
                    'Loop through the rows of rngVisible
                    'and get the row numbers
                    For Each rngRow In rngVisible.Rows
                        Z = rngRow.Row
                        If countries = "" Then
                           countries = .Range("I" & Z).Value
                        Else
                           countries = countries & ", " & .Range("I" & Z).Value
                        End If
                    Next rngRow
                End With
            End If
        Next v
    Regards, OssieMac

  • Inablility to retrieve values of session variables in irpt page

    We currently are using xMII 11.5.  We are having difficulty retrieving values assigned to our created session variables. 
    We have defined 2 users, each associated with session variables whose values differ by user.  Each user is associated with a different irpt page which retrieves information based on the values passed by the session variables.  Both pages return correct information in the grid using the as the param.1 value on the opening of the page. 
    On one page, we are able to retrieve the values of the session variables in Javascript by placing hidden fields on the document and using the document.getelementbyID("hiddenValue1").value.  The other irpt will only bring back the name of the of the session variable in the curly braces, .
    Both users are set up the same in System Security and Data Access.  If we switch the pages opened for the user in the Portal Navigation, one page will return the values no matter which user and the other page will always bring back the session variable name in the braces.  This makes us believe that it is not a problem with the user setup or the definition of the session variables.
    Would anyone be able to help us understand what needs to be done to correct this issue?

    Michelle,
    Have you tried URL encoding your irpt pass through parameters in your Navigation link?  Perhaps the commas and parenthesis are causing some issues ( http://help.sap.com/saphelp_xmii115/helpdata/en/Getting_Started/Template_Editor/Query_Construction.htm )
    Just to clarify, the Role/User attributes defined in LHSecurity are truly session properties, and the session properties are shown by the PropertyAccessServlet results.  Adding the name/value pairs to the URL are only a one-shot pass through to the ReportServlet that processes web pages with .irpt extenstions, so they don't actually set the session properties and are non-retentive beyond the one page.  As you are presently doing with the navigation links, we typically recommend URL passthroughs for page to page activities and using the session itself for name/value pairs that you want to set once and use anywhere throughout your application.
    document.APPLET.getPropertyValue(NAME); will also give you access to the session through javascript, but if you do a view...source in the browser after your TeamLeaderView web page has loaded you should see the results of the search/replace efforts of the ReportServlet, and the javascript you are using to get values out of hidden form field elements should simply reflect the text you see in the view source window.
    If they work inside APPLET tags like you mentioned for Param.1 you could also use document.APPLET.getQueryObject().getParam(1); instead of the hidden form field elements, and remember that you have 32 params and if they are not used in the underlying query can provide a very nice place to 'catch' the results like you are are doing with hidden form field elements that could potentially get reset by a form button.
    Regards,
    Jeremy

Maybe you are looking for

  • Can you get your money back from canceling a pre-order?

    I recently pre-ordered an album that I no longer want.  I canceled the pre-order but my current balance on my account hasn't changed.  I spent $17 on the album, and want to know if there is any way that I can get that back. Thanks, Logan

  • 1136: Wrong Number of Arguments

    Hi, I'm a flash beginner and I wanted to do a "Space Invaders" like game. Now I get an error, wehn I try to call a function in an other function.is that not allowed? I want that the Bullet shoots directly when I click. but when I hold the left mouse

  • Name of field in a structure

    Hi all, hope somebody can help me. Is there an easy way to find out the name of a specific field in a structure? Example: data: begin of hugo, name type string, surname type string, end of  hugo. hugo.name = 'HUGO'. hugo.surname = 'WOLF' Now I want t

  • Qosmio X70-A-K2S - How do I get to the BIOS menu?

    Hello! I have a laptop Qosmio X70-A-K2S. I want to replace one of the hard drives on the SSD. How do I get to the BIOS menu? Recommendations from the user manual (reboot and release F2 for 1 sec.) do not help. I can not get any BIOS menu or BOOT menu

  • HT1349 how can I get Icloud on my computer

    How can I get icloud on my mac?