Pass dynamic number of paramters?

I am making a .NET 1.0 style query. I have a requirement to pass any number of "states" as a filter on my query. So, how do I make a query where the number of states is unknown?....aside from putting in 52 parameters and handling nulls on them all?
Current code:
public List<EventLocation> GetEventLocationsByState(string state)
List<EventLocation> eventLocations = new List<EventLocation>();
string sql = string.Empty;
OracleCommand command = null;
int rowsEffected = 0;
// Query V_LOCATION_INFO table
m_connection.Open();
sql += "SELECT EVE_RID, EVE_EVENT_CODE, LOC_NAME, LOC_ST_ADDRESS, LOC_ST_CITY, STATE, ";
sql += " LOC_ST_ZIP_CODE, LOC_PHONE ";
sql += "FROM V_LOCATION_INFO ";
sql += "WHERE STATE = :pState ";
command = new OracleCommand(sql, m_connection);
command.CommandType = CommandType.Text;
// IN - State
// Execute
OracleDataReader reader = command.ExecuteReader();
while (reader.Read())
EventLocation eventLocation = new EventLocation();
// OUT - Event ID
eventLocation.EventID = Convert.ToInt64(reader["EVE_RID"]);
// OUT - Event Code
if (reader["EVE_EVENT_CODE"] != DBNull.Value)
eventLocation.EventCode = reader["EVE_EVENT_CODE"].ToString();
// OUT - Location Name
if (reader["LOC_NAME"] != DBNull.Value)
eventLocation.LocationName = reader["LOC_NAME"].ToString();
// OUT - Location Street Address
if (reader["LOC_ST_ADDRESS"] != DBNull.Value)
eventLocation.LocationStreetAddress = reader["LOC_ST_ADDRESS"].ToString();
// OUT - Location City
if (reader["LOC_ST_CITY"] != DBNull.Value)
eventLocation.LocationCity = reader["LOC_ST_CITY"].ToString();
// OUT - Location State
if (reader["STATE"] != DBNull.Value)
eventLocation.EventCode = reader["STATE"].ToString();
// OUT - Location Zip Code
if (reader["LOC_ST_ZIP_CODE"] != DBNull.Value)
eventLocation.LocationZipCode = reader["LOC_ST_ZIP_CODE"].ToString();
// OUT - Location Phone Number
if (reader["LOC_PHONE"] != DBNull.Value)
eventLocation.LocationPhone = reader["LOC_PHONE"].ToString();
eventLocations.Add(eventLocation);
++rowsEffected;
m_connection.Close();
if (rowsEffected == 0)
return null;
return eventLocations;
}

See also How to use OracleParameter whith the IN Operator of select statement

Similar Messages

  • Passing Dynamic Number of Elements and Attributes in Orchestrator

    i am having trouble determining the best way, from a powershell snippet in a Run .Net Activity, to pass a dynamic list of elements with each element having a dynamic list of attributes .   Example:
    on one call of the activity the data might be the following:
    element1 with 3 attributes
    element2 with 2 attributes
    element3 with 0 attributes
    on another call of the activity the data be the following:
    element1 with 0 attributes
    element2 with 3 attributes
    i understand how to create objects, arrays, and hashes. i would like to know the best way to pass the data above from the .Net activity powershell snippet (where the data is created) to another activity.   Ideally I would like to pass
    a custom object created with powershell (not an array or hash), but research tells me that it is not possible to publish an object on the Orchestrator databus.  Any assistance is appreciated.

    You can try combining the parameters into a single string in PowerShell separated by a delimiter like a semi-colon. Then you can have a single parameter in the Invoke Runbook activity. Once the parameter is passed you can then use the Split Field activity
    that is included in the Data Manipulation IP. 
    http://orchestrator.codeplex.com/releases/view/83934 
    You could do something similar for the SQL Query. Just combine the string to a single output in PowerShell and use the PARSENAME function, or something similar, to separate out your parameters. 
    Matthew Dowst |
    Blog | Twitter

  • Passing dynamic table to function module

    Hi all,
    actully i have to pass dynamic internal table from function module.
    for that i use syntax
    move <dyn_table> to data_tab.
    but now my question is that in fm parameters what is the  type spec & associated type for data_tab in fm parameters.
    regards,
    anuj

    Hi
    Good
    Here is a simple example of passing an internal table "itab" to a function module "REUSE_ALV_LIST_DISPALY".
    It displays the internal table data into a list format.
    data : itab like ztest213 occurs 0 with header line.
    tables : ztest213 .
    select * from ztest213 into table itab.
    loop at itab.
    call function 'REUSE_ALV_LIST_DISPLAY'
    exporting
    I_INTERFACE_CHECK = ' '
    I_BYPASSING_BUFFER =
    I_BUFFER_ACTIVE = ' '
    I_CALLBACK_PROGRAM = ' '
    I_CALLBACK_PF_STATUS_SET = ' '
    I_CALLBACK_USER_COMMAND = ' '
    i_structure_name = 'ztest213'
    IS_LAYOUT =
    IT_FIELDCAT =
    IT_EXCLUDING =
    IT_SPECIAL_GROUPS =
    IT_SORT =
    IT_FILTER =
    IS_SEL_HIDE =
    I_DEFAULT = 'X'
    I_SAVE = ' '
    IS_VARIANT =
    IT_EVENTS =
    IT_EVENT_EXIT =
    IS_PRINT =
    IS_REPREP_ID =
    I_SCREEN_START_COLUMN = 0
    I_SCREEN_START_LINE = 0
    I_SCREEN_END_COLUMN = 0
    I_SCREEN_END_LINE = 0
    IR_SALV_LIST_ADAPTER =
    IT_EXCEPT_QINFO =
    I_SUPPRESS_EMPTY_DATA = ABAP_FALSE
    IMPORTING
    E_EXIT_CAUSED_BY_CALLER =
    ES_EXIT_CAUSED_BY_USER =
    tables
    t_outtab = itab
    exceptions
    program_error = 1
    others = 2
    if sy-subrc 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    endloop.
    Thanks
    mrutyun^

  • Passing dynamic parameter to stored procedure from CR formula?

    Dear all,
    I need to insert in some textboxes the right string based on the desired Language Code.
    I crated a stored procedure in my db.
    CREATE PROCEDURE MY_GET_TRANSLATION
         @TextID nvarchar(8),
         @LangCode int
    This parameters are used as keys to get the Trans field.
    I created a workshop formula: GetTranslation
    Please, can someone suggest the correct statement to call my MY_GET_TRANSLATION  stored procedure passing parameters?
    I would like to call the GetTranslation formula from all my textboxes, passing the specific TextID value
    and visualized the right translated string.
    For example:
    in my TEXT1 textbox, I would like to call the GetTranslation formula passing the parameters
    TextID = "T000001"
    and
    LangCode = 13    (Italian language)
    How can pass dynamic parameters to a formula?
    How can pass dynamic parameters to a stored procedure from a CR formula?
    Regards
        Emanuele

    Dear Jason,
    I'm trying to modify a SAP B1 CR marketing report.
    This CR marketing document is called by SAP B1 automatically passing the Document Number and Document Type.
    The report uses the right SAP B1 tables to read the information of the header and rows of the document.
    The language of the document is contained in a field of the header table
    {MyMarketingDocTable.LanguageID}
    I created a user table named "MyTranslationTable" where I added some strings in different langiages.
    For example:
    TexiID            TextString              LangID
    T00001          Delivery                          8      
    T00001          Consegna                     13       (Italian translation)
    T00002          Invoice                           8
    T00002          Fattura                         13       (Italian translation)
    In the header of the report I'd like, for example, to visualise the string "Consegna" if my document is a delivery in italian language.
    I'd like to implement this method to translate all the textboxes (header, comments, etc.) based on the languageID of my document.
    For each textboxes, in the CR designer statically I know what TextID I want to visualized but dinamically I need to pass to my stored procedure the right language. I'd like my report automatically gets the language at run-time. I don't want that when I press the Print-preview button in SAP B1, the report asks to prompt the languageID.
    It already read the DocNum and DocType and it already filter the SAP B1 tables basing on the DocNum and DocType of the document. In this way it reads the right row in the SAP B1 table and in this way I can read all the fields of this row (also the languageID of the actual document).
    Regards
        Emanuele
    Edited by: Emanuele Croci on Dec 3, 2010 9:03 AM

  • Passing dynamic parameters to an IR Report

    Hello,
    We have installed Hyperion BI+ 9.3.1. We are in the process of evaluating the development of IR reports which would
    have a requirement to have parameters passed dynamically. For example, we'd be interested in passing a date as a parameter which then would be used by the query inside IR to filter/bring back data from the database pertinent to the date being passed.
    The need for this is because once developed we want to execute the IR on a weekly basis whereby the date keeps moving forward to be then used to extract relevent data.
    Any thoughts on how this can be done? Also, on a related note are there any backend command line utilities or interfaces that can be used to pass the parameter dynamically to the IR report?
    Thanks in advance
    Rajesh

    Doug,
    Thanks for the response. The delivery of the report output would be via Workspace (iHTML). I mentioned date parameter as an example. The report or reports may need to accept other paramaters as well - like department id or product. While the number of parameters and the nature of the parameters would be known ahead of time the value would need to be derived dynamically (by say reading a database table containing transactional data)
    As for the command line utility, I am thinking more along the lines of say Oracle Reports which enables you to invoke a run-time command (rwcli60 for example) and pass the necessary arguments to the report.
    I have seen the sample java programs that are shipped with the product (and we have used one of them called AddBqy) but haven't seen one that enables passing dynamic parameters.
    I will look into the SmartCut option as recommended by you.
    Any more insights/suggestions will be greatly appreciated.
    Thanks
    Rajesh

  • Dynamic number of Combo boxes in an applet

    Hi,
    I'm quite new to Java & rite now, i've an reqt to build an applet. The problem is my applet will be having a dynamic number of combo boxes in it. This number is based on the parameter passed to the applet..
    any eg or references to a similar reqt would be very helpful.
    Regards
    -Sree Ram

    Define your combo boxes dynamically and put them in a vector:
    int numberOfComboBoxes = 7;
    Vector comboBoxes = new Vector( numberOfComboBoxes );
    for ( int i = 1; i <= numberOfComboBoxes; i++ ) {
    comboBoxes.add( i - 1, new Choice() );
    Now you can reference the combo boxes any time you like, no matter how many of them there are:
    for ( int j = 1; i < numberOfComboBoxes; i++ ) {
    System.out.println( ((Choice)comboBoxes.get( j - 1 )).getSelectedItem() );
    }

  • Passing Dynamic Parameter to URL

    Hi All,
    I have a Webdynpro Application, where I am calling a separate iView through a URL (Quick link to that iView) using a LinkToAction UI element.
    Now, we need to pass a parameter (say Part Number) to the external iView through our webdynpro application.
    The external iView when called should be filled with a value by default. This value has to be retreived on some parameter from the main application.
    Can anybody suggest how to achieve this? We are presently using a common URL, so when the external window opens the iView will be blank. But now we need that when the user navigates to the external window, it should appear with the corresponding value.
    How can we make the URL to pass dynamic parameters?
    Any suggestions on this will be appreciated.
    Thanks,
    Becky.

    Hi Becky,
    A Web Dynpro application can get URL parameters passed to the iView with the following code:
    WDProtocolAdapter.getProtocolAdapter().getRequestObject().getParameter();
    You can send URL parameters to a Web Dynpro page in the following ways:
    ●      Add to the URL a parameter called DynamicParameter, whose value is a set of key-value pairs to send to the page.
    The following is the format for the DynamicParameter parameter:
    DynamicParameter="param1=value1&param2=value2&"&
    The value ("param1=value1&param2=value2&") must be URL encoded.
    ●      Add to the URL parameters that start with sap-.
    ●      Add parameters to the businessParameters parameter of the navigateAbsolute() or navigateRelative() method, as described in Absolute Navigation and Relative Navigation.
    iView Parameters
    The following are the URL parameters that get passed to each iView on the page, and then to the underlying Web Dynpro application:
    ·        The static parameters defined in the Application Parameters property for each iView. The property value is a set of key-value pairs in the following format:
    param1=value1&param2=value2&
    ·        The parameters passed to the page (those defined in the DynamicParameterparameter as well as all parameters starting with sap-).
    For isolated iViews in a Web Dynpro page, only the parameters specified in the Parameters to Pass from Page Request property for each iView are passed to that iView.
    The property value is a list of parameter names, separated by commas, as follows:
    param1,param2,param3
    To specify all parameters, enter an asterisk (*).
    We did same for one of the requirement in our project let us know if you have any issues.
    Regards
    Jeetendra

  • How to select data from a table by passing document number from another tab

    How to select data from a table by passing document number from another table.
    for eg:-
    I want to display name, adres, region from ADRC table
    by using field delivery document number
    Kind Regards,
    Shanbagavalli.S

    Hi Shanbagavalli,
    There are multiple solutions to this questions a few i will try to answer and then you can take the best required for your requirements.
    **Consider that you have a Internal table having document number from other table..
    SELECT NAME ADRES REGION FROM ADRC
           INTO IT_ADRC
           FOR ALL ENTRIES IN IT_DOC
           WHERE DOCUMENT_NO = IT_DOC-DOCUMENT_NO.
    **Consider that you have 1 document number then
    SELECT NAME ADRES REGION FROM ADRC
         INTO IT_ADRC
         WHERE DOCUMENT_NO = W_DOCUMENT_NO.
    Hope this solves your problem.
    Regards,
    Kunjal

  • Creation of an RFC to pass notification number from IOMS into SAP.

    hi sap,
    i have a  requirment to such as:
         Creation of an RFC to pass notification number from IOMS into SAP. The RFC containing notification number must access notification details via transaction IW23.
         Creation of an RFC to pass notification field specific information from SAP to IOMS. Upon accessing the notification inside SAP the following field information must be passed back to IOMS.
    can you please help me out with the RFC which would be much helpful to me.
    when i give the RFC then through the RFC the IOMS will pass the NOTIFICATION NUMBER. Based on the notication number i have to pass the data that belongs to that perticlar NUMBER.
    your help is much aprreicated and thanks in advance.
    regards,
    laya.

    I dont know what is IOMS and what platform they are using.
    If you want to access data from Non-SAP system or Insert from non SAP system, you need to develop remote enabled function modules, check for standard function modules.
    Check package IWOC, for standard function modules.
    Thanks and Regards,

  • Can I create a dynamic number of inputs during runtime?

    Can I create a dynamic number of inputs during runtime?
    Oracle 11g
    Application Express 4.0.2.00.06
    Here is my problem:
    We have a table that holds metadata about files (hardcopy or softcopy files).
    We expect we may need more columns in the table at some point and don't want to modify the table or the application.
    So in order to do this I would like to create:
    A table called TBL_FILE with the columns:
    TBL_FILE_ID               NUMBER                (This will be the primary key)
    TBL_FILE_NAME          VARCHAR2(1000) (This will be the name of the file)
    A second table will be called TBL_FILE_META with the columns:
    TBL_META_ID               NUMBER               (This will be the primary key)
    TBL_FILE_ID               NUMBER                (This will be the forign key to the file table)
    TBL_META_COLUMN     VARCHAR2(30)     (This is what the column name would be if it existed in TBL_FILE)
    TBL_META_VALUE          VARCHAR2(1000) (This is the value that record and the 'would be' column)
    So a person can have as much meta data on the file with out having to add columns to the table.
    The problem is how can I allow users to add as much data as they like with out having to re develop the page.
    Other things to note is that we would like this to be on a single page.
    I know how to add we can create multi-row inserts by using a SQL Query (updateable report),
    however the TBL_META_VALUE column in the TBL_FILE_META will sometimes be a select list and other times a text box or number field.
    So I don't see now a SQL Query (updateable report) would work for this and I can't create an array of page items at run time can I?
    Any idea's how I could accomplish this? Is there a better way of doing this?
    Also is there a term or a name for what I am doing by creating these 'virtual' columns in another table?
    I found this method when looking at Oracles Workflow tables.

    Welcome to the Oracle Forums !
    >
    Can I create a dynamic number of inputs during runtime?
    Oracle 11g
    Application Express 4.0.2.00.06
    Here is my problem:
    We have a table that holds metadata about files (hardcopy or softcopy files).
    We expect we may need more columns in the table at some point and don't want to modify the table or the application.
    So in order to do this I would like to create:
    A table called TBL_FILE with the columns:
    TBL_FILE_ID NUMBER (This will be the primary key)
    TBL_FILE_NAME VARCHAR2(1000) (This will be the name of the file)
    A second table will be called TBL_FILE_META with the columns:
    TBL_META_ID NUMBER (This will be the primary key)
    TBL_FILE_ID NUMBER (This will be the forign key to the file table)
    TBL_META_COLUMN VARCHAR2(30) (This is what the column name would be if it existed in TBL_FILE)
    TBL_META_VALUE VARCHAR2(1000) (This is the value that record and the 'would be' column)
    So a person can have as much meta data on the file with out having to add columns to the table.
    The problem is how can I allow users to add as much data as they like with out having to re develop the page.
    >
    Creating Page Items dynamically is not available. You will have to create excess items and hide/show , etc. But you cannot change the Item Type. All in all, too many limitations in this approach.
    >
    Other things to note is that we would like this to be on a single page.
    >
    The 100 item limit will hit you if you go with extra item on page. With Tabular Form that should not be a limitation, unless you are exceeding the 50 item limit of APEX_APPLICATION.G_Fnn items, and the 60 column limitation of Report region with "Use Generic Column Names (parse query at runtime only)" of Dynamic region.
    >
    I know how to add we can create multi-row inserts by using a SQL Query (updateable report),
    however the TBL_META_VALUE column in the TBL_FILE_META will sometimes be a select list and other times a text box or number field.
    >
    If the type if item is variable it only means you need a way to store the item type. Meta Data of the Meta Data.
    >
    So I don't see now a SQL Query (updateable report) would work for this and I can't create an array of page items at run time can I?
    >
    Yes, you can do it. Updatable report/ Tabular Form query can be constructed from the Meta Data using PL/SQL Function Returning SQL Query . It will be a bit of coding in PL/SQL where you use the Meta Data and the Meta Data of the Meta Data to piece together your SELECT with the right APEX_ITEMs. It might have a performance penalty associated with it, but will not be a serious degradation.
    >
    Any idea's how I could accomplish this? Is there a better way of doing this?
    Also is there a term or a name for what I am doing by creating these 'virtual' columns in another table?
    I found this method when looking at Oracles Workflow tables.
    >
    I guess that is just a good TNF. It is the Master-Detail Design Pattern, that sound more modern ? ;)
    Regards,

  • FTP how to pass dynamic filename/directory location - reading a file in 11g

    Hi All,
    We r using FTP adapter(SOA 11g) for getting files in remote server, May i know how to pass dynamic filename and directory where the file exists for reading in server.
    Thanks,
    Rak

    Hey according to my understanding, the Dynamic partner links are set only for the Outbound invocations only. Is my understanding right? if so, how do we create the dynamic partnerlinks for the ftp get kind of stuff...??
    Thanks in advance

  • How to pass dynamic filename to Receiver JMS channel

    Hi experts,
    I want to pass the dynamic filename to receiver JMS message Properties.
    for example
    I am passing directory name via adapter module AF_Modules/DynamicConfigurationBean with key and value combination like below. How to pass dynamic filename value to a dynamic property ( say DCJMSMessageProperty1)
    eg.
    key.0 - >insert http://sap.com/xi/XI/System/JMS DCJMSMessageProperty0
    value.0 - >  testdirectory ( which is static value)
    Note: Im have not created any ESR object . i just have to bypass the file to a jms queue. I have used AAE integrated configuration scenario ( file to jms )
    Regards,
    Balaji
    Edited by: Balaji Pichaimuthu on Jan 27, 2011 4:45 PM
    Edited by: Balaji Pichaimuthu on Jan 27, 2011 4:46 PM

    Already given link for the dynamic configuration code snippet in the earlier reply... Below is the code snippet
    Note: Use Adapter Specific Message Attributes for the target Communication Channel(CC).Check the indicator for filename in the advanced tab of CC
    //UDF code
    String filename="";
    String NameSpace = "http:/"+"/sap.com/xi/XI/System/JMS";
    try{
          DynamicConfiguration conf = (DynamicConfiguration) param.get(
            StreamTransformationConstants.DYNAMIC_CONFIGURATION);
          DynamicConfigurationKey key  =  DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File",   "FileName");
           // read filename value
           filename = conf.get(key);     
          // So far we extracted filename value .. now do your logic  something like this...
          DynamicConfigurationKey key2 = DynamicConfigurationKey.create(NameSpace,"yourjmsvalue goes here");
           conf.put(key2,filename);
         } catch(Exception e){

  • How to pass dynamic messages in a program

    Hello Experts,
        Would any one say..In a module pool program..I supose to pass dynamic messages..How can i do..
    Thanks in advance..
    Prashanthi

    Is this what you are looking for ? Re: Call MESSAGE dynamically

  • How to pass dynamic selection to logical databse using ldb_process function

    dear friends,
                         can anybode tell me how to pass dynamic selection to the logical database when i m using LDB_PROCESS function module.  however, in EXPRESSIONS paramter of the function module i m  passing the selecti-option, it is passing their also but when i used more than  two select-option or paramter it throw an exception FREE_SELECTIONS_ERROR.
    SO PLEASE GUIDE ME HOW TO PASS MORE THAN TWO SELECT-OPTION IN LOGICAL DATANSE DYNAMICALLY USING LDB_PROCESS.

    would be nice if you post the answer to all

  • Pass dynamic values to search-query in wlp-syndication-config for RSS

    Hi All,
    I want to pass dynamic values to the <search-query> element for the <syndication-feed> node in the wlp-syndication-config.xml file for implementing RSS feeds.
    Here's a sample
    <syndication-feed>
              <name>RSSFeed</name>
              <search-query>cm_objectClassInstance=='Node' &amp;&amp; date == 'x'_</search-query>
              <search-type>pubmeta</search-type>
         </syndication-feed>
    I tried passing the parameter in the url but the feed doesn't read it. The only option i have is to manually put the value to get the content from the repository, which sucks...because the values can change any time. is there any way that I can avoid it
    Any help on this would be appreciated.
    Thanks,
    K

    James:
    Passing filters to an IR within the URL is described here
    http://download.oracle.com/docs/cd/E14373_01/appdev.32/e11838/app_comp.htm#sthref989
    Varad

Maybe you are looking for