Pass in parameters
Hello, I have the following line in one of my forms:
FORM PRINT_THINGS TABLES P_COL_WIDTH
USING P_DATA_DETAIL(1000) TYPE C.
where p_col_width is the width of each column of a table (i.e., p_col_width is an internal table) and p_data_detail is a string containing all the actual data. When I tried to run it, however, this is what I got:
Parameters must be specified either with "p" (pass by reference) or with "VALUE(p)" (pass by value).
May I know what is wrong with this code? Thanks a lot!
Regards,
Anyi
Please define like this.
<b>types: t_data_detail(1000) type c.</b>
* FORM PRINT_THINGS *
* --> P_COL_WIDTH *
* --> P_DATA_DETAIL(1000) *
form print_things tables p_col_width
<b> using p_data_detail type t_data_detail.</b>
endform.
Regards,
Rich Heilman
PS.
Put yourself on the SDN world map (http://sdn.idizaai.be/sdn_world/sdn_world.html) and earn 25 points.
Spread the wor(l)d!
Similar Messages
-
Issues passing drillthrough parameters from a multi-level tablix in SSRS 2008 R2
Hello,
I am really struggling with trying creating a drillthrough report that starts with a matrix (tablix) and passing those parameters. I am using SSRS 2008 R2.
Here's my scenario:
I have a matrix that has mulitple levels where you can drill down. Here an example with all the levels open:
Active
Term
Leave
Total
128
88
121
United States
110
80
85
New York
65
30
57
Manhattan
10
6
9
Buffalo
20
23
4
Albany
35
1
44
Texas
45
50
28
Dallas
40
30
22
Houston
5
20
6
France
18
8
36
Centre
18
8
36
Blois
7
2
8
Druex
6
1
15
Tours
5
5
13
I want to drillthrough to another report - Detail Report. As I understand it, I would click the 65 for New York and I would see the detail for the 65 Active people. If I click the 2 under Blois, I would see the 2 terminated people in Blois. My understanding
for this to work, the Detail Report would need a a parameter for each of the level possibilities in the matrix that I could click: Country, State, City as well as the Status (Active, Term, Leave).
While I understand about passing parameters, what I don't understand is how to pass the parameters if they are blank. Let's say I clicked 65 for New York, I would need to pass State = New York Status = Active. But the remaining parameters (Country
and City would be null). I know Country doesn't need to be Null in this case.
My Detail Report has the parameters defaulted to Null, but whether I put the parameters in a Filter for the dataset or in the query itself, I cannot get it to ignore the Nulls.
As a crazy work-around (I think) I can put in the Where of the query something along the lines of: this:
and (a.Country in (@paramCountryCode) or NULL in (@paramCountryCode) )
and I would need to do that for each parameter. Usually I have to use 'ALL' instead of NULL, I'm note sure why.
Additionally, in the Report Action of the Main Report, I need to pass those parameters for each level and their Status. I am also not clear whether or not I need to put in all the parameters on each of the levels (Country, State, City) of the matrix. And if
I do, do I need to make the expressions an IIF statement stating whether or not they are In Scope?
All the examples I was able to find, only showed one or maybe two parameters being passed. Doing the way I am trying, seems convoluted, error-prone and tedious. I really hope that I am wrong.
Is there a better way to approach drilltrough reports from a matrix when there are multiple levels?
Thank you for the help.
~JHi Jenna_Fire,
According to your description, you have a matrix contains total for each group on each level. Now your requirement is, when you click on any number (data field or total), it will go to the detail report which returns all the detail information of the people
within the group scope. For example, if you click on the total of Active users in United States, it will return the detail information of Active users in New York and Texas. Right?
In this scenario, we should set the parameter (@Country, @State, @City) allow multiple values in both main and detail report. And in Default Value (@Country, @State, @City), query out all distinct values. In the textbox which contains
those total values, when set use these parameters to run the report, we only need to pass the parameters of parent groups. For example, if we click on the total of Active users in New York, we only need to pass Country, State, Status to detail report, and
in the detail report, the City parameter will use all distinct values (Default Values) because we don't pass the City parameter. We have tested this case with sample data in our local environment. Here are steps and screenshots for your reference:
1. Create parameter Country, State, City and Status in both main report and detail report. Set both Available Value and Default Value get values from query (Create a dataset for each parameter, use "select distinct [column] from [table]" as query). Set allow
multiple values for parameter Country, State and City in both reports.
2. In corresponding textbox, pass appropriate parameters in go to report Action.
4. Filter data in detail report (in where clause or using filters).
5. Save and preview. It looks like below:
Reference:
Using Parameters to Connect to Other Reports
If you have any question, please feel free to ask.
Best Regards,
Simon Hou -
Problem with passing date parameters in cursor
Is there any problem in passing date parameters and like clause as below
CURSOR eftcursor(start_date DATE, end_date DATE, where_clause varchar2) IS
select * from r_records
where created_date between start_date and end_date and description like where_clause;
and in the open statement
select to_date('01/06/2010 00:00:00', 'dd/mm/yyyy hh24:mi:ss') into startDate from dual;
select to_date('01/07/2010 00:00:00', 'dd/mm/yyyy hh24:mi:ss') into endDate from dual;
str := '%something%aaaaa%';
open eftcursor(startDate ,endDate , str);
Do i need to do any kind of conversion in the cursor where clause or when i am passing the parameter in open statement.Almora wrote:
Do i need to do any kind of conversion in the cursor where clause or when i am passing the parameter in open statement.No, your code looks correct -- ou're passing a date to the cursor.
You might consider whether you really need an explicit cursor though. An implicit cursor is easier to code and performs better. -
What is the better way to pass input parameters between components?
Hi all,
I had a dispute with a colleague about passing data between different WDP Development Components. The situation is like this:
Colleague has a SearchWDP (parent) und I have a BrowseWDP (child). After searching for some objects and clicking a hit in the SearchWDP, the corresponding details should be shown in BrowseWDP, via passing a bunch of parameters such as selected item's id, etc.
Now which of the following is the better practice:
- Defining a node in BrowseWDP (child) with isInputParameter set to TRUE, creating a similar node from the same type (simply via ModelBinding, both WDPs are using the same model) in SearchWDP, and defining a mapping between them so that SearchWDP fills the input nodes. From BrowserWDPs perspective, I'd call this Pull method.
or...
- Defining a node in BrowseWDP (child) with isInputParameter set to FALSE, creating a setter method in BrowseWDP Interface Controller for the collection (to be passed as parameters) and calling a wdContext.nodeBlaBla().bind(pInputParameterFromModelType). From BrowserWDPs perspective, I'd call this Push method.
The colleague's argumentation in favor of Push has not convinced me at all and I'd like to ask your opinions. Is there a best practice or recommendation for this scenario? TIA
ps: Any answer will be rewarded.Hi Cuneyt,
Refer the links below, they are very informative!
http://help.sap.com/saphelp_nw04s/helpdata/en/22/15a441cd47a209e10000000a155106/content.htm
http://help.sap.com/saphelp_nw04s/helpdata/en/67/cc744176cb127de10000000a155106/content.htm
These links are a part of the WebDynpro ABAP documentation, but the concepts are same for WDA and WDJ.
Considering your scenario, I would recommend the first alternative you have mentioned (if you refer the second link its called External Context Mapping), where component controller context node of component A (SearchWDP) is the source for Interface controller context (same name) of component B (BrowseWDP).
Thanks.
Chitrali -
Passing URL parameters to PL/SQL Pages
Hi,
I want to pass parameters from url to the PL/SQL page . How is this possible?
http://myserver/pls/portal/url/PAGE/page_group/page/testplsqlpage?course_ref=##COURSE_ID##&staff_ref=##STAFF_ID##
I will to received course_ref and staff_ref in the PL/SQL page and pass the values to SQL query so that its filtered.
Can pls anyone guide me? If there is any alternate way or there is sample code pls let me know
Many Thanks
GaneshHi Mick,
Thanks for your reply. However my problem is still not resolved.
I have created a Omniportlet with lists the staff details. When I click on the staff link I am passing to parameters as follows
http://servername/pls/portal/url/PAGE/CCM_MIS_PORTAL/TUTOR_HOME/Course_Info?Param1=10017031/M2523&Param2=001434
on the receving page I have a omni portlet which must receive these 2 parameters and pass it on to the query and filter the results.
On the received page I have created 2 page parameters (Param1 and Param2)
I have assigned these 2 paramaters to the portlet paramers through page parameters' section
on the omni portlet in the query I have created 2 bind variables (p1, p2) and the default value of the bind variable is set using ##Param1## and ##Param2## so the received values from page is passed to to bind variable and hence to the query.
However the omni portlet is not received the parameters and I can not figure out whats wrong?
Is there any problem with my URL (guide says I should use relative URL)
Please help -
How does one pass import parameters to a report within a method?
Hello all,
Well how does one pass import parameters to a report which is within a method ...end method.
for example :
method 123
SUBMIT reportname using selection '1000'
endmethod .
Here we need to pass values into the selection screen and run the report for those values.
The values are say 'ABC' ( tablename "DEF" and field name "HIJ" ).
I hope the question is clear, awaiting your response
Thanks and Regards,
Sandeep.Go to SE24
Parameters: Give the Parameter name, Typing method is "Type" is the domain type that u are selecting, say for e.g : Parameter is "P_CONT" , its associated type "CHAR32" etc
For Select Options: Parameter name say "S_CUST", Type"importing". For this you need to give an associated type which must be created as "TABLE TYPE " in SE11. That table type needs to have a "LINE TYPE" .
LINE TYPE is a Structure created with components "SIGN, OPTION, LOW & HIGH" for select-Options.
NOTE: for a Table type related to Customer data fields "say KUNNR", the line type created must have the Component Type and data Type corresponding to the Data Element associated with "KUNNR" ;i.e: "CHAR" etc.
See if this is clear to you or revert back in case of any Confusion. -
Any Easy Way to pass initial parameters to a VI created with New VI?
In LabVIEW 2010 I can use OpenG's New VI function to create and launch a VI that is built from a template.
Is there any easy way to pass initial parameters from the VI that creates the New VI to the New VI that will be available as soon as the New VI starts?Check out the Control Value Set invoke node. I personally don't like this node, and tst has got a great suggestion to promote cleaner, less fragile syntax for launching VI's dynamically that require input parameters.
a.lia-user-name-link[href="/t5/user/viewprofilepage/user-id/88938"] {color: black;} a.lia-user-name-link[href="/t5/user/viewprofilepage/user-id/88938"]:after {content: '';} .jrd-sig {height: 80px; overflow: visible;} .jrd-sig-deploy {float:left; opacity:0.2;} .jrd-sig-img {float:right; opacity:0.2;} .jrd-sig-img:hover {opacity:0.8;} .jrd-sig-deploy:hover {opacity:0.8;} -
How To Pass Multiple Parameters In URL with Report Builder
Hi,
I use apex 4.2 with database xe 11g and i use report builder to build my report i use this link to call report
function runrep(){
var vurl = 'http://192.168.0.57:8889/reports/rwservlet?userid=retail/1@xe&destype=cache&desformat=PDF¶mform=no&report=item_cost&P_BATCH_NO='+$v('P138_BATCH_NO');
popupURL(vurl);
now i want to pass Multiple Parameters like P138_ITEM_CODE , P138_UOM_CODE
how can i add this Parameters in URL ?
Regards
AhmedRamani_vadakadu wrote:
window.open("http://hq-orapp-03.kuf.com:9704/xmlpserver/~weblogic/kufpec/BTA/KUF_CONF_ITINUD.xdo?_xpf=&_xpt=1&_xdo=%2F~weblogic%2Fkuf%2FBTA%2FKUF_CONF_ITINUD.xdo&_xmode=&_paramsP_BTM_ID="+parseInt(document.getElementById('P3_BTA_ID').value)+"&_xt=KUF_CONF_ITINUD&_xf=pdf&_xautorun=true&id=weblogic&passwd=kuf2011","_blank");
the above code we are using apex JS to BI publisher calling for report as PDF
i don't know exactly where your parameters , did you customize my link to multiple parameters
'http://192.168.0.57:8889/reports/rwservlet?userid=retail/1@xe&destype=cache&desformat=PDF¶mform=no&report=item_cost&P_BATCH_NO='+$v('P138_BATCH_NO'); -
Use hyperlink to open another page , and pass some parameters to that page
Hi
Thank you for reading my post.
How i can use hyperlink to open another jsp file in a new window meanwhile pass some parameters to it.
for example i need something like this :
http://127.0.0.1:8080/myProj/faces/Viewmessage.jsp?messageID=10
i can not use session bean because i must open that in a new window and use hyperlink not Action
Thank youI tried the following in the equivalent of your Viewmessage (page bean):
ExternalContext eContext = FacesContext.getCurrentInstance().getExternalContext();
String text = "Parameters: ";
Iterator it = eContext.getRequestParameterNames();
Map requestParams = eContext.getRequestParameterMap();
while (it.hasNext()) {
String key = (String)it.next();
String value = (String)requestParams.get(key);
text += "; " + key + " = " + value;
staticText1.setText(text);That works as expected when you reach that new page via a hyper link.
The session object is also the same as in your `old' window. So be careful about synchronization!
I hope this helps.
-- Marco -
Passing User Parameters through Run_Report_Object
hi,
How to pass multiple user parameters through run_report_object.example i have to pass 20 parameters, have i write 20 statements? is there any way to come in single statement.i am using Forms 6i.
thks in advance,A parameter list can be the second parameter of RUN_REPORT_OBJECT,
rjob := RUN_REPORT_OBJECT(rep_id,paramlist_id);
Gerald Krieger -
Passing multiple parameters between two report portlets on the same page
Hi,
I want to pass multiple parameters between two report portlets on the same page.
I have been succussful passing a single parameter between two portlets. The
following are the steps :
(1) Created first report based on the query
SELECT htf.anchor('http://192.168.0.84:7778/servlet/page?&_pageid=97&_dad=portal30&_schema=portal30&_mode=3&dept_code='||DEPTNO,DEPTNO) Department, ename FROM EMP;
(2) Created 2nd report
select * from EMP where DEPTNO = :dept_code
(3) Added pl/sql code before display page on the 2nd report
portal30.wwv_name_value.replace_value(
l_arg_names, l_arg_values,
p_reference_path||'.dept_code',portal30.wwv_standard_util.string_to_table2(nvl(g
et_value('dept_code'),10)));
(4) Created a page and added these reports as portlets.
Sofar it works fine for one parameter (deptno) . Now I want to add one more
parameter say empno to my first report query and would like to pass both the
parameters deptno and empno to the 2nd report. Please tell me how to pass multiple parameters ?
Thanks
AsimHi,
You will have to do the same thing
The select will be like this
SELECT htf.anchor('http://toolsweb.us.oracle.com:2000/servlet/page?_pageid=97&_dad=mb&_schema=mybugs&_mode=3&dept_code='||DEPTNO||'&empno='||empno,DEPTNO) Department,ename
FROM EMP
In the additional plsql code do the same for empno like this
mybugs.wwv_name_value.replace_value(l_arg_names,l_arg_values, p_reference_path||'.dept_code',mybugs.wwv_standard_util.string_to_table2(nvl(get_value('dept_code'),10)));
mybugs.wwv_name_value.replace_value(l_arg_names,l_arg_values, p_reference_path||'.empno',mybugs.wwv_standard_util.string_to_table2(get_value('empno')));
Thanks,
Sharmila -
Trouble Passing URL Parameters between Applications
Hi All,
I am having trouble Passing URL Parameters between Applications for BW queries as data sources. I know I am getting the data from the sending application correctly, because I an printing to the screen using a Text Component.
Date From: 1/1/2008
Date To: 3/14/2014
Here is the code from the sending application On Select :
"http://localhost:56572/aad/web.do?APPLICATION=WIMO_SUMMARY_OPEN_DETAIL&designersessionid=37a1cfaa7e734cd9afa35cb4cd627d41" +
+ DS_1.getVariableValueExt("ZPORDAT3") +
+ DS_1.getVariableValueExt("ZPORDAT5"));
Here is the code from the recieving application Global Script Variable"
Xv_DateFrom String True
Xv_DateTo String True
Here is the code from the receiving application On Startup"
DS_2.setFilter("0CALDAY",[Xv_DateFrom, Xv_DateTo]);
When I click the results of the sending Application the popup window opens for the receiving application but I get all the records for the BW receiving query, it does not restrict to the values in ("ZPORDAT3") 1/1/2008 and ("ZPORDAT5") Date To: 3/14/2014.
So, I would expect it is my receiving code, but I am not sure.
Hope you can help?
NormanHi Norman,
As Jörg said, please put "&" before each of your variable names at your url. For the second part,I didn't try it for date intervals but keep in mind just in case:
APPLICATION.openNewWindow("http://localhost:56572/aad/web.do?APPLICATION=WIMO_SUMMARY_OPEN_DETAIL&designersessionid=37a1cfaa7e734cd9afa35cb4cd627d41" +
"&Xv_DateFrom=" + DS_1.getVariableValueExt("ZPORDAT3") +
"&Xv_DateTo=" + DS_1.getVariableValueExt("ZPORDAT5"));
Here is the code from the recieving application Global Script Variable"
Xv_DateFrom String True
Xv_DateTo String True
Here is the code from the receiving application On Startup"
DS_2.setFilterExt("0CALDAY", {"low": Xv_DateFrom , "high " : Xv_DateTo});
Best regards,
Onur -
How to pass two parameters in one url?
the tutorial teaches me to use
/faces/Details.jsp?personId=#{currentRow.value['PERSON.PERSONID']}
to pass one parameter.
How can i pass two parameters in one url?
/faces/Details.jsp?personId=#{currentRow.value['PERSON.PERSONID']}&personName=#{currentRow.value['PERSON.PERSONNAME']}
is not right.The '&' character needs to be escaped, lest it be interpreted by the application server as a separator character in the HTTP query string. Instead of '&', try '%26'.
// Gregory -
Pass date parameters to dataprocessor in Java
Hello I have created java class to execute data templates, but I have problem when I pass date parameters as it was from application dataprocessor fails without any error message and does not return any data (except output xml file header). How to pass date parameters correctly?
import java.sql.*;
import oracle.apps.xdo.dataengine.DataProcessor;
import com.sun.java.util.collections.Hashtable;
class oraConn
public static void main (String args []) throws SQLException
System.out.println("Start");
try {
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
java.util.Properties ora_property = new java.util.Properties();
Connection conn =
DriverManager.getConnection("jdbc:oracle:thin:user/pass@host:port:sid");
try {
DataProcessor dataProcessor = new DataProcessor();
dataProcessor.setDataTemplate("/home/user/definition.xml");
Hashtable parameters = new Hashtable();
parameters.put("c_period_start_date","2009/01/01 00:00:00");
parameters.put("c_period_end_date","2009/12/31 00:00:00");
parameters.put("c_employed_before_date","");
parameters.put("c_org_hierarchy","63");
dataProcessor.setParameters(parameters);
dataProcessor.setConnection(conn);
dataProcessor.setOutput("/home/user/Out.xml");
dataProcessor.processData();
} catch (Exception e)
{System.out.println ("Data procesor Fail.");}
} catch (SQLException ex) {
System.out.println ("\n*** SQLException caught ***\n");
while (ex != null) {
System.out.println ("SQLState: " + ex.getSQLState ());
System.out.println ("Message: " + ex.getMessage ());
System.out.println ("Vendor: " + ex.getErrorCode ());
ex.printStackTrace();
ex = ex.getNextException ();
System.out.println ("");
}}}}Found out solution to my problem. I needed to import date not as string but as Date type.
-
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!!
AllenHi 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 -
AppIntegrator - Issue with Passing Application parameters
Hi,
I've created a WebApplication system using 'HowTos' (com.sap.portal.howtos.webapp.par) file and set the system parameters.
I've created a generic iView with AppIntegrator par file (com.sap.portal.appintegrator.sap.par). Where I've passing the parameters as 'ApplicationParameter'. Following are the parameters that I'm passing in the AplicationParameter..
redirectTo=/test/ourenv/myfile.ext/($Limited)&Login
but when I see the result through HTTP WATCH, iView passing them as redirectTo=%2Ftest%2Fourenv%2Fmyfile.ext%2F%28%24Limited%29
so the other application is not taking this redirectTo parameter.
Is there any way to stop Decode/Encode the application parameters?
Thanks in Advance,
SatyahI,
Yeah it would not.
The url specification is very clear there are certain symbols which should not be passed in any url. The reason you see encoded url is to ensure that the symbols are preserved in your request.
Your external program can easily decode %2f already in your url , to '/' and get the correct parameters or choose another symbol instead of '/'
There is no other solution. As I just checked up, url specification which applies to any url across the world is very clear on this count.
So encoding has been done to ensure your parameters are coded correctly. The client program should be able o decode it.
The '/' is a reserved character with a specific meaning and cannot be used for anything apart from its specified purpose. You have to encode it if you need to pass it for other purpose.
Refer to this link.
http://www.w3.org/Addressing/URL/uri-spec.html
This is clear on this count.
Regards,
Harish
Maybe you are looking for
-
All day events - synching ical with Symbian S60
I guess this must have come up before..... I cannot find a way of synching all-day events on iCal with my E90. iSync will not sync iCal all-day events across to the E90, just seems to ignore them. I thought I'd be clever and enter all-days as memos o
-
Connect iphone to smarttv for watching videos and pictures
Trying to connect iphone to LGsmarttv for watching videos and pictures. We are on the same WIFI, pictures I can see, but no videos .... Do I need apple tv or an app ..
-
Mod_webapp.so file for the tomcat 4.1.10
i have download the tomcat 4.1.10. but if i want to use mod_webapp how can i compile or from where can i download the web_app.so file? thanks
-
How to cancel reinstall of mac os x 10.4.11 with disk issue
I have a major problems with my imac g5 and attempted to reinstall the os after archiveing hd. Problem is disk 2 is scratched and fails to complete at 80% on garage band. The disk is ejected and the computer restarts to the insert disk 2 screen. I am
-
Ist Photoshop CS3 Extended auf einem Macbook pro mit retina problemlos verwendbar?
Hallo, mich interessiert, ob Photoshop CS3 Extended auf einem Macbook pro mit retina problemlos verwendbar ist? Ich würde mich sehr über eine Antwort freuen. Martin