Formatting web form query fields to be passed to RFC query FM

We have a web front end used to query the SAP sales database. The fields can accept multiple or range selections. We have written a couple of FM (RFC enabled function modules) to retrieve the data based on the queries.
The question is, what is the best way to handle multiple selections in the FM interface. Currently we are using SELOPT structures to handle the select criteria.
On the web front end, is it simple and feasable to format the form fields in the SELOPT structure or is there a better way.
Below is the interface currently proposed for the FM:
FUNCTION ZE_GET_SALES_ORDERS.
""Local interface:
*" IMPORTING
*" REFERENCE(I_ORDER_STATUS) TYPE CHAR01 OPTIONAL
*" REFERENCE(I_INVOICE_AUTH_FLAG) TYPE CHAR01 OPTIONAL
*" TABLES
*" T_VALID_SOLDTO STRUCTURE SELOPT
*" T_SOLDTO STRUCTURE SELOPT OPTIONAL
*" T_CUSTOMER_PO STRUCTURE SELOPT OPTIONAL
*" T_SALES_ORDER STRUCTURE SELOPT OPTIONAL
*" T_DATE_RANGE STRUCTURE SELOPT OPTIONAL
*" T_STARS_QUOTE STRUCTURE SELOPT OPTIONAL
*" T_BILLTO STRUCTURE SELOPT OPTIONAL
*" T_SHIPTO STRUCTURE SELOPT OPTIONAL
*" T_INVOICE_NUM STRUCTURE SELOPT OPTIONAL
*" T_ORDER_HEADERLIST STRUCTURE ZORDERVIS_ORDERHEADER OPTIONAL
*" T_INVOICE_LIST STRUCTURE ZORDERVIS_INVOICE_LIST OPTIONAL
*" T_ORDER_HEADERLIST_SUMM STRUCTURE
*" ZORDERVIS_ORDERHEADER_SUMMARY OPTIONAL
*" T_SELECT_PARAMS STRUCTURE W3QUERY OPTIONAL
*" T_ORDER_CREATE STRUCTURE SELOPT OPTIONAL
*" EXCEPTIONS
*" VALIDATION_CUST_MISSING
Any advice or direction would be greatly appreciated.
Thanks in advance,
Jennifer

Basically you can't! The RFC iView is in my opinion a bad way to get data out of SAP. It is difficult to edit and passing paramaters is a nightmare.
Any chance you can use Visual Composer instead, or maybe right a little portal component to do the same thing?
Ps: if you're using SSO< the username that is used to start the RFC is the same username in the backend system, so maybe you can use sy-uname?
Cheers

Similar Messages

  • Web Forms Number Field - Not processing decimals!

    We have created a monster web form on a clients site. As it is, we have had to setup an API to deal with the data after its been generated by BC and modify it before sending it on to the client. The client saw no reason for fields that did not have anything entered against them to be sent through in the workflow notification - and I agreed. 
    Now after all these other problems have been resolved, I discover that all my  "number" fields cannot process a decimal place, and they round up or down. BC have suggested I need to recreate the form and just make them all 'text strings'.
    Not good enough. Its an EPIC form with over 100 fields in it. We, in good faith, read the instructions that can be found here: http://kb.worldsecuresystems.com/478/bc_478.html?bc-partner
    that state "Number - a text box that must have a number entered into it". No note about NOT using decimals!
    The confusing thing is, it lets you enter the decimal from the front end, even displays the web form confirmation page correctly with decimals. But when it creates a case in BC, it rounds the numbers. So its only at this late testing stage that we have discovered the issue
    Does anyone have any ideas about faster ways of re-creating this entire form ?
    I did submit a support ticket, and was told to switch to the old UI and then just change the type of the fields. But when we try to change a form field from 'number' to 'string' it brings up the message "WARNING: Field updated successfully but type not changed as field has associated values.". Then they said to:
    Copy that specific webform change the type fields of the form and then remove the old webform and re-name this one copy with the first webform name. The copy option is available under the link I have provided to you.
    However this still means we need to change *all* the fields and then get every field' s ID and insert it into the javascript. Very very time consuming
    So A) everyone else be warned and B) Does anyone have a shortcut?
    Thanks!!

    Thanks for confirming my fears
    Its a shame that since its such a long standing thing, it hasnt actually been added to the knowledgebase... which when we started this project (long before this schmozzle of a new system was introduced) was the most relevant place to look.  When I start something, I tend to look in the KB.... not think "oh perhaps I should check the FAQ's in case there is a long standing issue that isnt contained in the KB".

  • SQL Query Issue - (inner not passing to outer query)

    Hello everyone:
    Here is my SQL query:
    SELECT RD.SITE,
      ROUND(
      (SELECT COUNT (DISTINCT PB.EMP_ID)
      FROM BOOK PB
      WHERE PB.EMP_ID IN
        (SELECT PB.EMP_ID FROM BOOK PB
      (SELECT COUNT (DISTINCT PB.EMP_ID)
      FROM BOOK PB
      WHERE PB.EMP_ID IN
        (SELECT PB.EMP_ID FROM BOOK PB
    WHERE MO.QUALIFIER > 4
      )* 100, 2) AS PERCENTAGE
    FROM BOOK PB
    LEFT JOIN POSITION MO
    ON PB.EMP_ID = PO.EMP_ID
    INNER JOIN PHYS_LOCATION RD
    ON MO.HOUSED         = RD.SITE_ID
    WHERE MO.ACTUAL_END IS NULL
    GROUP BY RD.SITE;Why am I getting the overall percentage for all Sites as opposed to each percentage calculating for each individual site. I grouped by RD.SITE, so I presumed it would calculate percentages for each site. What did I do wrong?
    Thank you for your assistance.

    AquaNX4 wrote:
    Hello everyone:
    Here is my SQL query:
    SELECT RD.SITE,
    ROUND(
    (SELECT COUNT (DISTINCT PB.EMP_ID)
    FROM BOOK PB
    WHERE PB.EMP_ID IN
    (SELECT PB.EMP_ID FROM BOOK PB
    (SELECT COUNT (DISTINCT PB.EMP_ID)
    FROM BOOK PB
    WHERE PB.EMP_ID IN
    (SELECT PB.EMP_ID FROM BOOK PB
    WHERE MO.QUALIFIER > 4
    )* 100, 2) AS PERCENTAGE
    FROM BOOK PB
    LEFT JOIN POSITION MO
    ON PB.EMP_ID = PO.EMP_ID
    INNER JOIN PHYS_LOCATION RD
    ON MO.HOUSED         = RD.SITE_ID
    WHERE MO.ACTUAL_END IS NULL
    GROUP BY RD.SITE;Why am I getting the overall percentage for all Sites as opposed to each percentage calculating for each individual site. I grouped by RD.SITE, so I presumed it would calculate percentages for each site. What did I do wrong?Because that is what you are requesting. Your scalar subquery to get the percentage is not restricted by the current site. Add filter columns to restrict the selected values for the computation
    Edited by: riedelme on May 8, 2013 7:26 AM

  • Web Form Error

    I'm having a promblem on our simple quick contact form
    We are getting this when submitting... but before it was ok
    ERROR: An error occurred while processing credit card
    here's the link to our site
    http://www.jdteterlaw.com/
    test the rRequest Consult form
    Thanks

    Hi Dave Blubaugh,
    To expand further on what I mentioned in my previous post; when a web form is created within the admin console, the 'Anti-bot Fraud Protection' module is now included by default. This module is not used to verify Credit Cards - what this module does is create a hidden input field (i.e. a honeypot) for that form. Therefore, if this hidden field is populated, an error will be returned. This is due to the fact that spam bots usually populate all fields as sometimes they cannot differentiate between whether a field is hidden or not - it is used as a preventive measure to reduce spam.
    Now the confusion here is that the error returned is “ERROR: An error occurred while processing credit card”. This is because the feature was originally introduced for the online shop. As mentioned in my previous post, there is a bug logged where we have requested to update this error message to something more generic as this module is now used across all web forms. I suspect this update will be rolled out with our next release, however at the moment this is not something I can guarantee.
    There have also been reports of this error being triggered randomly, yet this is not something we can replicate. Please note that if you use a tool to auto-populate the web form’s fields, this will populate the hidden ‘honeypot’ field causing the error to be thrown. If you do believe that the error message is being thrown incorrectly, I will need you to submit a case directly to support so we can investigate this.
    I hope this clarifies things and additional information on this feature can be found in the following document: http://forums.adobe.com/docs/DOC-2882.
    To answer your questions directly, yes, the 'Anti-bot Fraud Protection' module does render the {module_ccsecurity} module tag. When the form is viewed live, that module tag then renders the ‘honeypot’ field.
    The module tag {module_error} itself cannot be modified. But you can modify the layout this tag resides in as well as the template assigned to this layout. Therefore, effectively you can assign a different template to this layout that does not include the breadcrumbs module. You can modify this layout via Site Manager > System Pages > General.

  • Passing a parameter list from a web form to a report

    I am using FORMS6 and REPORTS6, with OAS 4.07 on NT4 (SP3).
    In client server mode all works well - i am able to pass parameter lists from my calling form to the relevant reports and view them (using RUN_PRODUCT).
    However, when i try and do the same by deploying the web Form I come up against several obstacles.
    1. How do you pass a parameter list over without using "Paramform=Yes" - a waste of time seeing a html version of the reports parameter form when all the necessary parameters have been selected in the form.
    2. if i use web.show_document, with paramform=no, the report runs but with it's default settings.
    Any light you can shed would be greatly appreciated.

    Hi Tony ,
    Launcher form is just a simple form(Non database form) which will be having all fields that is required for the report and button to run the report .
    When button pressed trigger
    Pass all the parameters which are required using Run_product tool & Call the report by Web.Show_document
    Best way to see the report is in .pdf format in adobe acrobat reader
    I hope it will help you
    Bye
    Rao guduru

  • Passing entire SQL query to BIP server from Forms

    Hi
    I want to pass the entire SQL statement or only a WHERE clause dynamically constructed on Forms side to BI Publisher server at runtime.
    I have come across this article:
    http://blogs.oracle.com/BIDeveloper/2009/12/dynamic_sql_query_in_data_template.html
    It mentions about using pwhereclause which could be constructed dynamically.
    Is it possible to pass the entire SELECT statement and has anyone done this before? May I have some tips on this?
    Thanks and kind regards,
    Aparna

    My requirement is as follows:
    1) I have a customised application which contains the definition of the report (report id, report name, the screen id on which the report is to appear as a record in the list and so on). This is where I would like to record the SQL statement which will be used to retrieve data for the report.
    2) Once I launch the report from my application, it will pass SQL statement and other data (template, format, output file name, path where the output file will be saved, URL from which the output file will be launched after saving).
    Thus, on BI Publisher server side, I shall only create a report, and will create a data template that will reference the SQL query that has been passed from application. I don't want to even specify parameters in Bi Publisher and want to specify them only in the application.
    Is this possible?
    Currently, I'm using a web service called 'PublicReportService' of BI Publisher to pass template, format, output file name, report path etc.). However, I am not sure how to pass an SQL query from Oracle Forms via this web service to BI Publisher.
    Can someone please guide me?
    Thanks and kind regards,
    Aparna

  • Using Form to pass value to query parameters in the selct part of query

    I created a form in Access 2007 to pass 2 values to an Access query.  I am doing this to create delimited output (very large) with the parameters included in the selected data. The select works and is something like this:
    SELECT "^"+!FORM!EXPORT2DAT!PREF_VALUE+"_"+Replace(UCase([column_1])," ","_")+"^|" AS OUTPUT_column1, "^"+!FORM!EXPORT2DAT!COMPANY_VALUE+[COLUMN_3]+"
    ([COMPANY_VALUE])"+"^|" AS OUTPUT_column2,....................
    The form has text boxes for the values I want to pass PREF_VALUE and COMPANY_VALUE to the query parameters, and an execute button to open the query when clicked.
    However when I enter the values and click the execute button, I still get the parameter boxes for the 2 parameters. 1 for this: !FORM!EXPORT2DAT!PREF_VALUE, and FORM!EXPORT2DAT!COMPANY_VALUE. I thought I was filling in with the form text box values.
    Can I use the form's text boxes to pass values to concatenated using(+) columns in the select part of the query as I'm doing above?
    Thanks in advance for your response.

    I have never seen a select statement like that! 
    For query criteria I would use this --
       [FORMS]![EXPORT2DAT]![PREF_VALUE]
                   and              [FORMS]![EXPORT2DAT]![COMPANY_VALUE]
    Build a little, test a little

  • Value field in web form

    Hi
    I want to put a default value in a web form feild but when a user clicks the form field the value disappears to allow them to input their text.
    How is this done? I tried adding  value="text" but this make the value permanent and has to be deleted by the user before they can fill in the field.
    Anyone got any ideas?
    Thanks
    Ken

    I used this from StackOverflow...
    <html>
    <head>
    <title>
    </title>
    <script lang='javascript'>
    function makeBlank(obj,defMsg){
        if(obj.value==defMsg){
            obj.value="";
    function fillDefValue(obj,defMsg){
        if(obj.value==""){
            obj.value=defMsg;
    </script>
    </head>
    <body>
    <input style="width:190px" onblur="fillDefValue(this,'User Name')" onfocus="makeBlank(this,'User Name')" value="User Name" name="fromname" id="fromname" type="text">
    </body>
    </html>
    Works nicely :-)

  • I am creating a web form from a template and I need to change a field. It is just a text field at the moment but I need to change it to a field that the customer can fill in. How do I do this?

    I am creating a web form from a template and I need to change a field. It is just a text field at the moment but I need to change it to a field that the customer can fill in. How do I do this?

    See this thread:
    http://answers.acrobatusers.com/Is-add-instructional-text-text-field-disappear-clicked-q19 5078.aspx

  • Oracle EBS Web Form (Query Only)

    Hi,
    I need to create responsibility in which all forms or web form should be query only.
    When i tried this with individual forms (QUEYR_ONLY="YES") its working but web form not working please guide how can i do with web forms.
    Regards
    Rehan

    877432 wrote:
    Hi,
    I need to create responsibility in which all forms or web form should be query only.
    When i tried this with individual forms (QUEYR_ONLY="YES") its working but web form not working please guide how can i do with web forms.
    Regards
    RehanAFAIK, it is not possible for Self-Service pages. You may log a SR to confirm the same with Oracle support.
    Thanks,
    Hussein

  • Passing Parameter from URL to Web Forms - Oracle 10 Application Server

    Hi All -
    I want to pass parameter from a URL to 10g Oracle Web Forms - Oracle Application Server 10.1.2
    http://server1/forms/frmservlet?config=SATWEB_SSO&otherparams=username_sso=BABUS
    How to receive this 'username_sso' value inside my forms application ?
    Created a Parameter in the same name as URL parameter 'username_sso' in forms but didn't receive the value. I want to know how to receive the value of this parameter within forms from URL.
    Thanks - Suresh

    Try this,
    1. Create a parameter in the formsweb.cfg (say username_sso) under default section ( or you can create it in your own config section)
    2. Add the username_sso in otherparams parameter as username_sso=%username_sso%
    3. Add this username_sso parameter in your form.
    4. Run the form as
    http://<machine>:<port>.....?form=blahblah....&otherparams=username_sso=scott
    Regards,
    Arun

  • Query form when field pre-filled - How?

    Greetings:
    I am going to use a single form for creating, modifying, and deleting records as such functionality is available from a form created (table based) using Portal's form wizard.
    I am attempting to pre-fill one of the fields on the form (it tells me where the form was called from) for use when inserting a record. However, if I perform a query instead, I get no results as the pre-filled field is used in building the query. What I want to do then, is save-off the pre-filled value to a local variable upon the form being created; then, perform a RESET on the form to allow for querying. I'm not having success saving-off this pre-filled value to a variable.
    Question 1: What function call and where should I place it, to save-off this pre-filled form value (Additional PL/SQL tab section)?
    Question 2: How to perform a Reset action on the form after saving-off the pre-filled value?
    Many thanks for any ideas and guidance.
    Ed in Tampa

    Greetings:
    I've put this code in the QUERY_TOP button's SQL BUTTON EVENT HANDLER (for Query), as I have the Loc_Code field pre-filled with a value (hard-coded from the calling page):
    DECLARE
    v_Loc_Code varchar2(15) := NULL;
    BEGIN
    p_session.set_value(
    p_block_name => 'DEFAULT',
    p_attribute_name => 'A_LOC_CODE',
    p_value => v_Loc_Code);
    doQuery;
    END;
    I'm attempting to clear-out this field if I query; however, querying still does not return anything.
    Am I doing this in the correct place? Is this field really getting a NULL value now?
    Thanks for any and all guidance.
    Ed in Tampa

  • Opening web form in SmartView 11.1.2 - decimal formatting

    I have a web form that consist of regular rows (accounts) and formula rows. The form is setup to display minimum 0 and maximum 2 decimal places for all cell types and this format is correct when I display the web form in Planning. However, when I open this web form through SmartView, these cell type precision does not retain. In fact, it always display round up whole number for regular rows and 2 decimal places for formula rows. Is this a default for SmartView? I am aware of the setting in Options > Formatting that allows me to change the decimal places, but it seems to apply to the entire grid instead of a particular row.
    My client is very specific on their format and they want to open up the web form via SmartView. Ideally we want the format that shows up in Planning to be the same in SmartView. It will be greatly appreciated if anyone can shed some light whether this can be done or not.
    Thanks,
    Kelly

    Click on File>Preferences in the workspace and you get the preferences window. If you choose Planning from the left hand side, then navigate to the "Display Options" tab, you can change the "Allow Search When Number of Pages Exceeds:" setting to be a very high number (e.g. 99999999). Click OK and return to the form and you will be presented with a "normal" drop down list. Note this is a global setting for every form.
    Regards
    Ed

  • Pre populating the database field when a user logs into web forms

    Hi,
    When my users log into the web forms application I want the database name field to be pre populated, how do I do this, I presume it can be defined in the config files ?
    Thanks in anticipation.
    SDG.

    Hi,
    I think u are refering to the username, password, database field (connect string)
    here. If this is the case then you can use LOGON(username, password||'@'||connectstring) procedure and hardcode the connect string.
    Best Regards
    Rajesh Alex

  • How we create dynamic add form field in web form

    How we create dynamic add form field in web form?

    Hi,
    Thanks for reply.
    I need to create a form in which "add more" input field dynamically. For
    example sometime we need field on or more. Please look at the demo, I need
    to create form as per demo in business catalyst:
    http://www.openjs.com/scripts/examples/addfield.php

Maybe you are looking for