Supplying multiple values to the IN select query
Hi,
I just wanted to know if there is a more efficient way of supplying values to my SELECT IN statement. What we do is, we are given an excel file containing a single column of serial numbers then we format the content for it to be read by pl sql. By format, I mean put single quotes on the serial numbers then separate then by comma.
Like, we get sent
8181818181818
2323123525241
1231231231234
then, we have to format it to look like this (using formulas in excel)
'8181818181818',
'2323123525241',
'1231231231234'
in the process, I have to do a lot of copying and pasting which seems to take some time.
So, is there a way to make pl sql process the serial numbers passed to me as an excel file or are there any other alternate methods that I can use?
are these numbers or alpha-numeric in nature? Oracle can do some implicit translation on numbers. Not sure why you are having to put them in single-quotes. It is better to not do implicit conversions, however, it can make things easier.
SQL> create table abc (a varchar2(10));
Table created.
SQL> insert into abc values (123456789);
1 row created.
SQL> insert into abc values ('122456789');
1 row created.
SQL> select * from abc;
A
123456789
122456789
SQL> create or replace procedure i_abc(p_in varchar2)
is
begin
insert into abc values (p_in);
commit;
end;
Procedure created.
SQL> exec i_abc(1234444);
PL/SQL procedure successfully completed.
SQL> select * from abc;
A
123456789
122456789
1234444
SQL> exec i_abc('123445555');
PL/SQL procedure successfully completed.
SQL> select * from abc;
A
123456789
122456789
1234444
123445555
Similar Messages
-
Passing multiple values to the QUERY BDOC parameter?
hi All,
Below is my Query BDOC Anchor Before Query Execute even handler... I'm trying to pass multiple values to the bq.Z_PartnerFunction query parameter... i.e.
PARTNER_FCT in( '00000012','ZDIVMGR','ZAREADR')
is it possible without creating new Query Bdoc ?
====================================
Private Sub aempchoicewinTCWSearchTAnchor_beforeQueryExecute(ByRef bq As BusinessQuery, ByRef cancel As Boolean)
If Not bq Is Nothing Then
If sWcDummy = "Yes" Then
bq.WcDummy = sWcDummy
End If
bq.Z_PartnerFunction = "00000012"
If ctrlZ_Territory.Value <> "" Then
bq.PRNB_TerrID = "*" & ctrlZ_Territory.Value
End If
End If
End Sub
================================
Thanks in advance
HetalHi,
it looks that you already enhanced the query BDoc because you have a new query parameter bq.Z_PartnerFunction, right?
To which BDoc parameter is this BQ parameter mapped? And how looks the related where clause?
For a single filter normally a "=" operator is used. Therefore your example with "in" won't work.
If these three partner functions are fixed then you might hardcoded them directly in the where clause (supposed the BDoc is not used somewhere else where you don't want to have this filter).
Or you might add 3 new BDoc parameters, add 3 new where clauses using a disjunction for them (and using an embracing bracket). In this case always all these 3 BQ parameters need to be filled (or all stay empty) to avoid a SQL syntax error.
Regards,
Wolfhard -
How to select multiple values from the parameters in BI Publisher report
How to select multiple values from the parameter drop down in BI Publisher, and how to handle this mulitple values from the report sql...
Hi kishore,
I have used all the steps as you mentioned in your previous reply....including checking Mulitple Selection Check Box..
Iam able to get the results when I am selecting one value..
and also I am able to handle multiple values the in the query by using IN :Parameter, but seems when we select more than one value from the parameter drop down i think the Bi Publisher is sending the values in concatenated form something ilke
ex: "'ACCOUNT','HR','SALES'" ,and when trying to display the parameters values in the output, its throwing the error as 'missing right paranthesis' ....on the whole do you have any solution which would handle
1.Single selection.
2.Multiple selection.
3.'ALL' Values.
4.Separating the concatenated string into individual strings and dispaly them on the output of the report..etc..in case of Mulitple selection.
Ex:
Concatenated String from BI Publisher:"'ACCOUNT','HR','SALES'"
Expected Output on the report:ACCOUNT,HR,SALES
reply to this would be much appreciated....
thanks,
manoj -
How to select multiple values from the Parameters in the concurrent program
How to select multiple values from the Parameters defined in the concurrent program...and i believe multiple selection is not a direct feature of EBS, but is there any workaround solution to acheive mulitple selection?
I think there's no way to do that using standard feature.
Some workaround I use :
1. If the number of selections are fixed, you could use multiple parameters for the same valueset. For example :
Selection1 : <choose first selection>
Selection2: <choose 2nd selection>
..etc.
If you don't use it then leave it empty.
2. Use text varchar valueset and enter it manually and separate by comma (or other value) , eg : selection1,selection2,selection3....etc. -
How to get multiple values from the list
I've a list of an item which I queried it from the database. I also created a button that will takes a selected items from the list when it was clicked. I used javabean to get the data from database.
<% // clicked on Select District Button
Vector vselectedDistrict = new Vector();
Vector vdistrictID = new Vector();
String tmpSelectDistrict = "";
tmpSelectDistrict = request.getParameter("bSelectDistrict");
if(tmpSelectDistrict != null)
// get multiple values from the list
String[] selectedDistrict = request.getParameterValues("usrTDistrict");
vselectedDistrict.clear();
vdistrictID.clear();
if((selectedDistrict != null) && (selectedDistrict.length != 0))
for(int i=0;i<selectedDistrict.length;i++)
vselectedDistrict.addElement(selectedDistrict);
vdistrictID = dbaseInfo.getcurrentDistrictID(nstate,vselectedDistrict);
for(int i=0;i<vdistrictID.size();i++)
out.println("district = " + selectedDistrict[i]); out.println("district ID= " + vdistrictID.get(i).toString());
%>
// get vdistrict from the database here......
<select name="usrTDistrict" size="5" multiple>
<% for(int i = 0; i< vdistrict.size(); i++)
%>
<option value="<%=vdistrict.get(i).toString()%>"><%=vdistrict.get(i).toString()%></option>
<%
%>
</select>
<input type="submit" name="bSelectDistrict" value="Select District">
Lets say the item that i selected from the list is 'Xplace' and I clicked on the Select District button,
what I got is this error message:
org.apache.jasper.JasperException: Unable to convert string 'Xplace' to class java.util.Vector for attribute usrTDistrict: java.lang.IllegalArgumentException: Property Editor not registered with the PropertyEditorManager
So where is going wrong and what the message means?. Any help very much appreciated. ThanksThese are just guesses that might hopefully steer you in directions you haven't looked in yet.
I presume you used triangle brackets (< >) to avoid having the Jive Forum think it was the "italics" tag?
Are you certain this: dbaseInfo.getcurrentDistrictID(nstate,vselectedDistrict);
expects a Vector as its second parameter? And returns a Vector?
I don't believe you've shown how you use the javabean, or its code? Perhaps it should be rewritten to accept an array of strings instead of a Vector? -
Multiple value variable - not showing Multiple values in the report
Hi,
I have careated a Multiple value variable for one of the characteristics in my Query. however, When i run the Query and select multiple values for the same, the report displays values for only the first selection.
Could you help me resolve this ?
Rgds
ShwetaHello Shweta,
Are you running the report in the Analyzer excel or Web?
May be you can check the following:
1. Use the latest FEP. It is working for me.
2. May be the other values that you selected do not have corresponding keyfigures values. Hence it is showing only the first one.
Try selecting other values ( except first one selected this time )
Regards,
Sheik Bilal -
Date range to be displayed & Displaying multiple values on the report
Hi,
I have date range parameters, but I also need it to be displayed it on the report. Is there any way I can display it. E.G If a parameter is created one can drag and drop it on the report if it needs to be displayed on the report, I tried to do the same for the date range parameter but it does not work.
Also If a parameter is created by selecting the option 'Allow Multiple Values', and if you drag and drop it on the report only the first value is displayed and the rest does not show. Has anyone tried this before and been successful in displaying multiple values in the report.
Thanks in advance.Hi,
A multi-value parameter is actually treated as an array in Crystal Reports.
To display the values selected in the parameter, create a formula from the Field Explorer and type this code:
Join({?ParameterName},",");
Place this formula on the header or the footer sections of the report.
Regarding the date range issue, please follow Sastry's advice and it should work fine.
Make sure you're using the parameter in the Minimum and Maximum functions. For eg: If I was to create a date range parameter called OrderDate, my formula to show the start date would look like this:
Minimum({?OrderDate})
-Abhilash -
Multiple values for the Parameter
1. Had any tried the selecting MULTIPLE values for the parameter in Oracle Discoverer Plus Releae 4.1 Version 4.1.37.00.0. If so can please let me know how to implement it.
2. In a Page-Detail Cross Tab workbook, I have to show the weighted average instead of the avg or sum. Any inputs please.
3. I have to compare two periods (TOP) of datapoints. Any inputs please.If you wanted to eliminate the need for users to type in the parameter values, you could create a LOV on the desired column. This will produce a distinct list of all valid values where the user would simply select as the wish. Of course you still need to check the "let user enter multiple values" checkbox if you want them to select more than one.
-DG -
Best practice for multiple instances of the same BEX query
Hi there,
I'm wondering what's the best way to use multiple instances of the same BEX query. Let me explain what I mean:
I have a dashboard with different queries feeding different period of time such as: week to date, month to date and so on. One query for each since it is based on a user exit.
For each query I want to show different data in different sections of my dashboard. Per example: sales per directors or sales per customer group, sales per day, sales per week and the like.I tried to connect a simple bar chart via a direct connection but with no success due to the multiple lines generated by the addition of the sales director, customer group, week number and so on.
My question is about the way to connect the different queries efficiently in order to show the different data while avoiding multiple useless lines.
The image above shows the query browser where, per example, for a Month to date query there will be mutiple line for each week as well as one line for each director. If, for two different components, I want to show data per week and data per director or other representation what is the best practice:
Add another instance of the same query and only put the week information and another one will only the director info?
Should I bind those to the excel file and use formulas to make final calculations?
Will there be a performance issues for adding different instances of the same query
I have 6 different queries (read 6 user exit that filters time via user exit).
Depending on the best practices there might be 4 instances for each for a total of 24 instances in the query browser.
I hope my question is clear enough, if not please do not hesitate I'll clarify as much as possible.
Regards,
SteveHi Steve,
Might be trying for solution for a long time, If i understood your question clear let me clarify you few points.
You are trying to access the bex query which is designed with the exit's in the background based on the logic and trying to call the entire dimensions and key-figures in a single connection. Then you are trying to map those data in the charts.
Steve, try to make more connections based upon the logic and split them. use the same query but split them by sales per customer group, sales per day, sales per week by making three different connections and try. You can merge the prompts from all connections.
Hope this Helps!!!
Sorry if i misunderstood your question.
--SumanT -
How can we read the screen field values from the report selection screen wi
Hi expart,
How can we read the screen field values from the report selection screen with out having an ENTER button pressed .
Regards
Razzuse this code...
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_posnr.
**Read the Values of the SCREEN FIELDs
CALL FUNCTION 'DYNP_VALUES_READ' -
How to change a value of the field Selection Conditions in Manage- Request
Hi,
How to change manualy a value of the field Selection Conditions in Manage infocube -> Requests ?Hi,
Here is the reason i need to do this:
The data is loaded by DTP in process chain. Overlaping requests are deleted. But, iIn some cases requests with the same selection options need not to be deleted. My idea was to change selection options in Manage(infocube) with Abap program without changing selection options in DTP filter, so that the system would not recognize requests as "overlaping requests".
So, where is the information about shown in the field Selection Options is stored? In which tables?
Thanks
Tigr_Z -
LRM-00112: multiple values not allowed for parameter 'query'
Hello,
I am getting below error while trying to execute below query...please help:
exp username/password file=query.dmp log=query.log tables=schema_name.tablename query=\"where PRODUCT_KEY IN\'4541450,4541455,4541475,4541504,
4541505,4674142,4674201,4674202,4673982,4674000,4674114,4674118,4654432,4715806,4715807,4716122,4716133,4870247,5321008'/"
LRM-00112: multiple values not allowed for parameter 'query'
EXP-00019: failed to process parameters, type 'EXP HELP=Y' for help
EXP-00000: Export terminated unsuccessfullyyeah i have tried using paranthesis as well...it has given below error then:
exp schema/password file=query.dmp log=query.log tables=schema_name.table_name query="where PRODUCT_KEY IN (4541450,4541455,4541475,4541504,4
541505,4674142,4674201,4674202,4673982,4674000,4674114,4674118,4654432,4715806,4715807,4716122,4716133,4870247,5321008)"
./export.ksh: syntax error at line 1 : `(' unexpected -
How to get multiple values from the db using select
hi all,
i am using oracle 9i database
i created a procedure
create or replace procedure sample_proce
as
to_i varchar2(50)
begin
select to_id into to_i from sample where flag in('y');
dbms_output.put_line('hai'|| to_i);
end;
when i executed this procedure the following error occurred.
error at line 5 fetching too many rows.
but when i execute the select query alone i can able to view all the rows.
how to resolve iti used the following procedure
create or replace procedure sample_proc
as
begin
for s in(select to_id from sample where flag='y')
loop
dbms_output.put_line(s.to_id);
end loop.
end;
it is executed fine. i can able to fetch all the rows.
how to pass all these values into the another procedure.
we usually pass only one value into another procedure, i do no how to pass all the values . please help me.
Thank u. -
Publish multiple values to the databus from a PowerShell script
Hello, I’m hoping someone may have a good suggestion on how to pass data from a child powershell process to the parent process in a fashion that Orchestrator can publish on its databus. So I have the below script, where I have to call a child powershell
session because the activity that run the script natively only opens a powershell 2.0 session, so for the cmdlets I want to use we have to call a child session that will open in PS version 4. The problem I seem to be running into is that the new object
is a hash table and it appears if there is more than one value the Orchestrator databus doesn’t like it. Perhaps there is a better way. I can get a clean result if the script only returns one value.
$VAR
= PowerShell {
CD
HFH:
$DirRules
= Get-CMDeviceCollection
-CollectionId 'SMS110101'
$Names
= $DirRules.CollectionRules
| Select
RuleName
New-Object
pscustomobject -Property @{
Rules
= $Names
$List = $VAR.Rules
$Results = $List.RuleName
$ResultsHi,
if $Results has multiple values you can get each result if you add after your code:
#... You're code from before ...
$Result=@()
foreach ($Item in $Results)
{$Result += $Item
Then define Result as Published Data in the "Run .Net Script" Activity".
Regards,
Stefan
www.sc-orchestrator.eu ,
Blog sc-orchestrator.eu -
Get multiple values from a html select
I have a <select> object on my html page, with ~50 <option> values.
My user must be able to select many options (with the ctrl key).
How can I get more than one value with request.getParameter("...") ??
currently, when I select more than 1 options, and I submit the form, I can only get the last selected item in my JSP.
Thanks in advance!
example:
<form method="get">
<p>Teachers:</p>
<select name="profs" size="10">
<option value="prof 1">prof 1</option>
<option value="prof 2">prof 2</option>
<option value="prof 3">prof 3</option>
</select>
<input type="submit" name="action" value="addSubject">
</form>Hi,
just use getParameterValues("yourParameter") instead of getParameter("yourParameter")
Hope this helps
Maybe you are looking for
-
Callmanager upgrade 6.1.2 to 6.1.3 partition problem
Hi All, im trying to upgrade from 6.1.2 to 6.1.3 however, the ISO is about 2Gigs and I get the error "There is not enough disk space in the common partition to perform the upgrade. Please use either the Platform Command Line Interface or the Real-Tim
-
Group & alternative account number field
hi, 1) i do not see group account number field in FS00, FSS0 or FS01/02/03 but i can see alternative account no. i know this alternative acc no is meant for country specific. why i cannot see this group acc number field? 2) why i do not see country s
-
Hi Colleague, I need to show a pop-up window on an event. How can i achieve this in ABAP WD. Code Snippet would be helpful. Regards, Piyush
-
Hi, Have configured Oracle streams to replicate data in real time between source and target tables. When i try to set dml handler as well as error handler to a table, operation pair it is taking either of them. Can't both dml & error handlers be set?
-
Blending mode help please!!!!!
Hi everyone. I'm now using a mac for indesign and I've found that to preview different blending modes (normal-multiply-screen etc) on an object I have to click on each mode separately. Is there any way you can cycle through them and see the results?