Restful Data Serice - multiple parameters

Hello,
               I have some problems with RESTful web services and especially with finding tutorials or videos on this topic explaining more than simple one-parameter-get services.
I have studied the simple one-parameter-get service explained in Oracle documentaton (oracle.example.hr) and I test the template employees/{id} with the handler GET that works fine..
Now I want to modify the query. I want to filter the employees for the columns depno and sal, so I need two parameters.
Here is what I have done:
1) modify query in "select * from emp  where deptno = :id and sal = :s" ;
2) modify "Source Type" from "Query on row" to "Query";
3) add a new parameter named s;
Now I have a question: which is the correct URI Template that I have to insert? I have tried with emplyees/{id, s}, emplyees/{id},{s}, emplyees/{id}/employees/{s} and many other but it doesn't work.
I set the bind variables with the values 20 (id) e 800 (s). The result the I aspect is the JSON of the employee SMITH but I see only {items: [ ] }
In my browser I see this adress: "http://localhost:8080/ords/gt/hr/employees/20%7Bs%7D". The first variable is correctly binded into 20 but the second isn't binded.
Other question about the oracle.example.hr: in the query of the template empsec/{empname} is used twice the variable :empname but there isn't the corresponding bind variable. Why? When is necessary use bind variables?
Thanks in advance.
Federico

Thanks Vlad for your answer.
I followed your suggestion and I manually replaced the second parameter with its values in the address but it doesn't work, the result is the same {items: [ ] } .
This is the address that I have in my browser http://localhost:8080/ords/gt/hr/employees/20/employees/800 and my Uri Template is employees/{id}/employees/{s}.
What am I doing wrong?
Thanks,
Federico

Similar Messages

  • How to search data with multiple parameters =SESSION

    Dear Günter Schenk
    Please help
    I have two Tables with many fields
    1.       tbl_users
    2.       tbl_transection
    Now problem is that I want when user login he make search in " tbl_usr_transection " related its own Transactions other then he view all user data
    I have one column about user in transaction table i.e. "fld_transection_by"
    I am using SESSION to filter all transaction its related user and its working fine.
    <?php echo $_SESSION['login_id']; ?>=<?php echo $row_rstbl_transections[' fld_transection_by ']; ?>
    Now how to make search from filter rows in many field
    Please explain in detail
    Thanks in Advance

    Hi, It sounds like you need to carry those variables into your mySQL statement.

  • REST Sender adapter - multiple dynamic parameters

    Dear
    We are currently configuring a sender REST adapter which be called as such:
    http://host:port/RESTAdapter/pi/query/jira/solman/getsystems?sap-client=001&cust=00009999
    (even encoding the question url or only question mark and ampersand doesn't help)
    However whenever we try this, we can see following error returned by PI:
    The sender adapter is configured properly according to the documentation on SAP Help:
    Has anyone encountered this issue before?
    We might think this is a bug, as the interface works fine when we use following pattern:
    But only when we use the url as follows:
    http://host:port/RESTAdapter/pi/query/jira/solman/getsystems%3Fsap-client=001&cust=00009999
    We had to encode the question mark in the URL (%3F) in order for PI to pick the right channel with the correct parameters.
    When using the normal question mark (e.g. used with the Chrome Advanced REST Client), we basically receive the same error as above:
    Have any of you encountered this before, or have any of you used multiple parameters before in the sender REST adapter.
    Thanks for any feedback.

    Hi Nicolas,
    Were you able to resolve this issue. We are also facing similar issue. We are try to specify multiple dynamic query parameter in PI RFC Sender adapter endpoint and getting similar errors. Please let me know if you have found any solution.
    Thanks
    -Pradeep

  • Problem while Binding multiple Parameters to View Object[Solved]

    Hello,
    I am facing problem while binding multiple parameters with different data types in View Object query. For example suppose I have following query in my view object.
    SELECT Header.ADDED_BY
    Header.BATCH_ID,
    FROM BATCH_HEADER Header
    WHERE :1='deptAdmin' and Header.BATCH_ID
    in
    select batch_id from batch_header_dept_mapping where dept_id in(SELECT * FROM TABLE(CAST(:0 AS TABLE_OF_VARCHAR)))
    I am able to pass the Bind variables of Array type for : 0 , using Steve's ArrayOfStringDomain example. (ArrayOfStringDomain) .
    But after passing value to second bind parameter ie.. :1 .
    I am getting the error as follows.
    ## Detail 0 ##
    java.sql.SQLSyntaxErrorException: ORA-00932: inconsistent datatypes: expected - got CHAR.
    I tried to set
    setWhereClauseParam(1,11); // 11 is Number
    setWhereClauseParam(0,arr); // arr is arr = new Array(descriptor,conn,deptid); for in parameter.
    But of no use , Please let me know if any thing missing form me or have any another solutions. Also please provide me any example if have.
    Thank you,
    Sandeep
    Edited by: user11187811 on Oct 23, 2009 7:27 AM
    Edited by: user11187811 on Oct 26, 2009 12:52 AM
    Edited by: user11187811 on Oct 26, 2009 6:51 AM

    hi.
    but when using non-Oracle named parameter binding styles as you've done (ie. , :1), regardless of what number you give each bind variable, they are sequenced 0, 1, 2 etc. As such your bind variable :1 is the 0th parameter, and your bind variable  is the 1st parameter.Your statment is correct.
    :1 i used was actually on 0th position and :0 was on 1 position. Like you said in sequence 0,1,2 etc. Now i get the answer and i corrected My mistake by assigning right values to right binding variable. and problem just solve.
    Thanks Chris.

  • How to submit InfoPath form data to multiple SharePoint lists at one time?

    Hi,
    I'm looking for a way to submit certain data in InfoPath form to separate SharePoint lists at the same time. I have a form that has two views with many data in them. I want to keep these data in separate SharePoint list besides keeping them in the XML. I know that you can submit to a form library using SharePoint document library data connection, but I'm not sure if you can use several data connections for submitting data to multiple SharePoint lists. Is it only possible to do using code? If yes, can anyone show a sample. I have never coded in InfoPath, though I used C# a lot in .Net.
    Thank you!Regards,
    R.D.M.

    This is an old thread but I tripped over a codeless method to do this with OOB InfoPath 2010 and SP 2010. 
    Assuming your main InfoPath form is published to a document library with the promoted fields that you want to see.
      Publish your form to a new document library to capture the secondary data fields that you want separated out.
    Using the Publishing Wizard do the following:
    Go to – File then Publish
    Select SharePoint Server “ Publish form to a SharePoint Library”
    Enter location of your SharePoint or InfoPath Forms Services Site: 
    accept the default in this field from the first published event
    Next screen, keep the default or change it, Form Library, Site Content Type or Admin Approved
    Next screen, What do you want to do?
    Create a new form library
    Add new document library name and description
    Next screen, Remove all promoted fields not applicable to the new library and add all of the ones you want to see data for.
    Click Next and Publish
    Come back into the form: If you don’t have buttons added directly to the form to submit or update, add them.
    Create a new Action rule on the button
    Label the rule to keep it straight
    Condition, occurs when button clicked
    Add action, Submit data
    Use data connection to the second library created
    Create a second new Action rule on the same button
    Label the rule to keep it straight
    Condition, occurs when button clicked
    Add action, Submit data
    Use original data connection to the library
    Then you can add another action to close the form or do whatever you need.
    Republish the form to both libraries to set the template for both.
    File – Publish – SharePoint Server
    Select Secondary library from drop down follow the rest of the prompts
    Follow step 5a again, select Primary library from drop down, Add back in all of the promoted fields needed for the primary library and follow the prompts.
    DOCUMENT YOUR FORM WELL FOR MAINTENANCE
    Special considerations, your primary library needs a unique ID to reference in your secondary library.
    Your secondary library will need a unique ID that is not related to the primary if you are going to store multiple records for a single primary library reference. 
    Example: One form, multiple updates.

  • How do you expose PL/SQL Webpages via REST Data Services?

    I am in a bit of a pickle.  I have a 3rd party vendor which wants to send data back us.  They do it via a standard http form post to a webservice (actually with normal html form inputs) that we have to implement.  I have this done in the form of a PL/SQL package.  Now the hard part.....before we decommissioned our Oracle HTTP server and went to using REST Data Services, we could just reference the schema and procedure name via the DAD.  We no longer have a web tier environment at our disposal, just Weblogic Servers and REST Data Services plus the database running APEX.  Is there any way that I can build/publish an end point that can receive normal post transactions (they do not and will not communicate with us using SOAP, REST, or XML).  What I am basically needing is to get my PL/SQL out there where it can work as an old fashion form processor taking the POST/GET parameters and then processing them.  Is there any way to do this with REST Data Services or APEX? 

    Try changing:
    UPDATE exav.problems
    SET active_with = null
    WHERE active_with='''|| user_id ||''';
    to:
    UPDATE exav.problems
    SET active_with = null
    WHERE active_with = user_id;
    You only need to add the quotes if you are building a string to be executed dynamically, like:
    EXECUTE IMMEDIATE
    'UPDATE exav.problems
    SET active_with = null
    WHERE active_with='''|| user_id ||'''';

  • In reciever jdbc adapter config sending data to multiple tables

    Hi Masters,
          Can u help me with examples step by step procedure of sending data to multiple tables in reciever jdbc adapter .. configuration....
    thanks in advance,
    jp.

    Hi,
    My understanding is you are  trying to use one scenario for ex a file to jdbc and want to post data into multiple tables.
    If you are using Message Prortocol XML SQL format then once you define the data type for one structure then juz right click on the statement name and select Duplicate. This will create another statement in the same data type change the table name and the parameters in the duplicates strucutre.
    <b>Document Formats for the Receiver JDBC Adapter</b>
    http://help.sap.com/saphelp_nw70/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    All the other configurations are same simple file to jdbc scenario.
    Cheers,
    *RAJ*

  • How to submit data from multiple Input Ports in single SUBMIT button  click

    Hi,
    I am in SPS8.
    What exactly steps I need to perform to submit data from multiple Input Ports.
    I couldn't able to submit One input Form and one Input Table to BAPI data service in single SUBMIT button click.
    I debugged the VC application in SPS8.
    While debugging, I found that when I click the SUBMIT button in the Input Form, Only data in that Input
    form are being passed to the BAPI, But not the Table Form data.
    If I click on the SUBMIT button in another Input Table, Only data from that table is being passed to the BAPI, but not the Input form data.
    Essentially I need to submit both of them in one SUBMIT button.
    Thanks,
    Ramakrishna

    Ramakrishna,
    From the word document that you sent to me the steps you are missing to map the appropriate information into the BAPI is first you are not mapping all data rows into the table input port. To do this double click on the input table view and change your selection mode from single to multiple. Then when you click on your link between the BAPI and your input table you will see a new option appears under data mapping "Mapping Scope" select All Data Rows.
    That's the first part of the problem to get the BAPI to recognize both the inputs coming from the form and the table eliminate the submit button from the form. Drag and drop a link from the output port of the table view to the Input port of the BAPI. Double click on the link between the BAPI and the table view and open the expressions editor for the two fields:
    1/ Automatic Source
    2/ SKIP_ITEMS_WITH_ERROR
    On the hierarchical folder structure on the right expand expand the Data Fields node to find the fields from the form and map them accordingly.
    Now when you hit the submit button on your table it should pass the BAPI all the parameters from both the form and the table.
    Hope this helps,
    Cheers,
    Scott

  • MDM ABAP API: Query with Multiple Parameters

    I would like to query MDM repository passing multiple parameters. I used the following code, however, it didn't work.
    If I pass only one parameter, it works fine.
    DATA lt_query                  TYPE mdm_query_table.
    DATA ls_query                 TYPE mdm_query.
    DATA lv_search_text       TYPE string.
    DATA lt_result_set            TYPE mdm_search_result_table.
    DATA ls_result_set           LIKE LINE OF lt_result_set.
    * Fill query structure with FIRST parameter
        ls_query-parameter_code  = 'Name'.
        ls_query-operator        = 'CS'. 
        ls_query-dimension_type  = mdmif_search_dim_field.    
        ls_query-constraint_type = mdmif_search_constr_text.
        lv_search_text = 'BMW'.
        GET REFERENCE OF lv_search_text INTO ls_query-value_low.
        APPEND ls_query TO lt_query.
    * Fill query structure with SECOND parameter
        ls_query-parameter_code  = 'Model'.
        ls_query-operator        = 'CS'. 
        ls_query-dimension_type  = mdmif_search_dim_field.    
        ls_query-constraint_type = mdmif_search_constr_text.
        lv_search_text = '2009'.
        GET REFERENCE OF lv_search_text INTO ls_query-value_low.
        APPEND ls_query TO lt_query.
    * Query on records (search for value 'BMW' model '2009' in table Products)
        CALL METHOD lr_api->mo_core_service->query
          EXPORTING
            iv_object_type_code = 'Products'                  
            it_query            = lt_query
          IMPORTING
            et_result_set       = lt_result_set.

    Hi,
    I see you are not clearing your local structure "ls_query".  This could be reason of problem,  try this and let us know the result:
    DATA lt_query                  TYPE mdm_query_table.
    DATA ls_query                 TYPE mdm_query.
    DATA lv_search_text       TYPE string.
    DATA lt_result_set            TYPE mdm_search_result_table.
    DATA ls_result_set           LIKE LINE OF lt_result_set.
    Fill query structure with FIRST parameter
        ls_query-parameter_code  = 'Name'.
        ls_query-operator        = 'CS'. 
        ls_query-dimension_type  = mdmif_search_dim_field.    
        ls_query-constraint_type = mdmif_search_constr_text.
        lv_search_text = 'BMW'.
        GET REFERENCE OF lv_search_text INTO ls_query-value_low.
        APPEND ls_query TO lt_query.
    CLEAR ls_query.
    Fill query structure with SECOND parameter
        ls_query-parameter_code  = 'Model'.
        ls_query-operator        = 'CS'. 
        ls_query-dimension_type  = mdmif_search_dim_field.    
        ls_query-constraint_type = mdmif_search_constr_text.
        lv_search_text = '2009'.
        GET REFERENCE OF lv_search_text INTO ls_query-value_low.
        APPEND ls_query TO lt_query.
    CLEAR ls_query.
    Query on records (search for value 'BMW' model '2009' in table Products)
        CALL METHOD lr_api->mo_core_service->query
          EXPORTING
            iv_object_type_code = 'Products'                  
            it_query            = lt_query
          IMPORTING
            et_result_set       = lt_result_set.

  • Probs sharing a report that uses SETPARAM to pass multiple parameters

    Ok we have master DB account Disco that creates reports. I also have oracle acct Duser for the users to run the reports.
    Per Metalink Note:304192.1, we've got the setparam stuff working to pass in date parameters into our sheet. This works fine when I run the report as Disco. When I try to share the report to Duser, it still prompts for the dates, but then the report returns all 0's for the results. I have no idea why this is happening.
    Any suggestions on how to share reports with other users that pass in parameters would be much appreciated. thanks!!
    Allen

    Hi Allen,
    I would always recommend that you use sys_context to pass parameters. You can search this site for sys_context or take a look at (Re: Passing multiple parameters into Custom Folder... for more details.
    Rod West

  • Insert data into multiple tables

    Hi all,
    I've a requirement where i need to insert data into multiple tables using PL/SQL procedure
    Procedure should have two parameters
    1. Table Name (parameter1)
    2. Data (parameter2)
    Based on these two parameters i need to insert data into table (parameter1) using data (parameter2)
    ex:
    Procedure insert_data (p_table  IN VARCHAR2
                          ,p_data   IN -- what should be the datatype?
    IS
    l_statement VARCHAR2(2000);
    BEGIN
    -- insert data into tables
    INSERT INTO p_table
    values (....);
    END insert_data;Thanks in advance!!

    BEDE wrote:
    Amen to that!
    So, I believe a better approach would be the following...
    Suppose you have N datafiles with the same structure, and you wish to insert into the database the data from all those files.
    For that, you should have a single table, named, say incoming_file_data, which should be structured more or less like below:
    create table incoming_file_data (
    filename varchar2(250) not null -- name of the file inserted from
    ,file_time timestamp -- timestamp when the data was inserted
    ,... -- the columns of meaningful data contained in the lines of those files
    );And you will insert the data from all those files in this table, having normally one transaction for each file processed, for otherwise, when shit happens, some file may only get to be partially inserted into the table...
    Maybe one good approach would be to create dynamically an external table for the file to be loaded, and then execute dynamically insert select into the table I said, so that you will have only one insert select for one file instead of using utl_file... RTM on that.If the file structures are the same, and it's just the filename that's changing, I would have a single external table definition, and use the alter table ... location ... statement (through execute immediate) to change the filename(s) as appropriate before querying the data. Of course that's not scalable if there are multiple users intenting to use this, but generally when we talk about importing multiple files, it's a one-user/one-off/once-a-day type of scenario, so multi-user isn't a consideration.

  • Discoverer worksheet: working with data between multiple sheets

    Hi All,
    Is there a way to use data between multiple discoverer worksheets? What I am trying to do is combine data from different worksheets and display that data in another sheet. I believe it is not possible in discoverer at the moment (I might be wrong). I am not being able to do this any other way, because the data to be calculated requires user input. Which is (to my knowledge) only possible by using parameters via the worksheets. If there is a workaround, please let me know.
    Regards

    Your best best is a custom folder within the EUL and then create the parameters based on the custom folder.
    If you don't want to do that you can join can create bogus joins between two folders by created an item called "join" or something like that and then get all the tables pulled into each other. Performance will likely be messy and require careful use of conditions, summations, etc... due to the fact the join will essentially be a Cartesian join of two tables.
    To answer your direct question: No, there is no way to reference other worksheets for display purposes within discoverer.

  • Bi publisher report issues with selecting multiple parameters.

    Hi there I have a Bi publisher report when I query it for a single parameter it works fine and gives me the result.
    But when I select multiple parameters Lets say I have selected 3 parameters and try to view the results it does nt give me a proper report. It leaves me some blanks and gives me negative values.
    The report is working finr for one parameter In order to select two parameters I added the following code in the sql query
    and ( coalesce(null, :JOB_ID) is null
    or c.JOB_ID in (:JOB_ID)) .
    Can some one please let me know if this is correct or should I have to add anything else in the query.
    Even if I hard code it by saying JOB ID IN ('x','y','Z') and try to run the report it is not giving me exact values.
    BUt when I run the same query in database am getting correct values..
    Can anyone help me with this issue please??
    Thanks

    1. What version of BIP are you using?
    2. Can you please paste here your complete SQL data model?
    3. Can you get us an example how this will work?
    4. Can you be more specific about the error you get and the output?
    thanks
    Jorge

  • Returning multiple parameters as response from a servlet

    Hii Javaites
    I want a servlet to return multiple parameters as response.
    In my functionality , i am callling the servlet from a swing client .
    I need to get two xml strings as response from the servlet.
    Right now i am using
    PrintWriter pw=response.getWriter();
    pw.write(xmlString);
    for writing xml string . but wht if i want to send another String (xmlString2) as resposne from the servlet to the swing application ?

    You have several possibilities. If you control the XML formats you could unify the data into one XML message. You could modify your Swing app to make two requests. If it needs two separate pieces of info it is more logical to do it as two separate requests. If you really must do it this way, you could use the Zip classes (built in to Java) to put the two XML files together into a Zip file and then send that.

  • Splitting comma seperated column data into multiple rows

    Hi Gurus,
    Please help me for solving below scenario. I have multiple value in single column with comma seperated values and my requirement is load that data into multiple rows.
    Below is the example:
    Source Data:
    Product         Size                                 Stock
    ABC              X,XL,XXL,M,L,S                 1,2,3,4,5,6
    Target Data:
    Product         Size                                 Stock
    ABC              X                                     1
    ABC              XL                                   2
    ABC              XXL                                 3
    ABC              M                                    4
    ABC              L                                      5
    ABC             S                                        6
    Which transformation we need to use for getting this output?
    Thanks in advance !

    Hello,
    Do you need to do this tranformation through OWB mapping only? And can you please tell what type of source you are using? Is it a flat file or a table?
    Thanks

Maybe you are looking for