Error in Passing Parameters to Program - ZUJA_update_bpc_dim_lock
Hi Gururs.
I am trying to load Master data from BI characterstic along with its hierarcies acording to HTG by Pravin Datar. http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00380440-010b-2c10-70a1-e0b431255827?quicklink=index&overridelayout=true
But when I come to the step of creating variant for ABAP program ZUJA_UPDATE_BPC_DIM_LOCK or vaiant for ZBPC_UPDATE_BPC_DIM . I enter the required information.
P_APPSET - BPC_try (appset name , also tried with /cpmb/bpc_try, also with its description BPC trial)
P_USER - sanjay
S_DIM - cost_ms (this is the dimension of BPC which is mapped to BI info-object)
But when I try to execute it, it gives folowwing error "The exception 'CX_UJ_OBJ_NOT_FOUND' was raised" which says that appset was not found.
I have tried all ways to pass appset name , still it gives same error.
Any suggesstions , did anyone tried it before ?
Thanks
Sanjay
Hi,
Please read the comment on the article you are mentioning,
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00380440-010b-2c10-70a1-e0b431255827
This might help you
Regards,
G.Vijaya Kumar
Similar Messages
-
Getting error , while passing parameters from one page to another page
Hello friends,
i am getting error, while passing parameters from one page to another page, below code i wrote.
public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
super.processFormRequest(pageContext, webBean);
ArrayList arl=new ArrayList();
EresFrameworkAMImpl am=(EresFrameworkAMImpl)pageContext.getApplicationModule(webBean);
ERecordImpl ERecordObj=new ERecordImpl();
HashMap hMap = new HashMap();
hMap.put("1",ERecordObj.getTransactionName());
hMap.put("2",ERecordObj.getTransactionKey());
hMap.put("3",ERecordObj.getDeferredMode());
hMap.put("4",ERecordObj.getUserKeyLabel());
hMap.put("5",ERecordObj.getUserKeyValue());
hMap.put("6",ERecordObj.getTransactionAuditId());
hMap.put("7",ERecordObj.getRequester());
hMap.put("8",ERecordObj.getSourceApplication());
hMap.put("9",ERecordObj.getPostOpAPI());
hMap.put("10",ERecordObj.getPayload());
// hMap.put(EresConstants.ERES_PROCESS_ID,
if(pageContext.getParameter("item1")!=null)
pageContext.forwardImmediately(EresConstants.EINITIALS_FUNCTION,
OAWebBeanConstants.KEEP_MENU_CONTEXT,
null,
hMap,
true,
OAWebBeanConstants.ADD_BREAD_CRUMB_YES
Error(71,2): method forwardImmediately(java.lang.String, byte, null, java.util.HashMap, boolean, java.lang.String) not found in interface oracle.apps.fnd.framework.webui.OAPageContext
Thanks
krishna.Hi,
You have imported the wrong class for HashMap.
Import
com.sun.java.util.collections.HashMap; instead of java.util.HashMap
Thanks,
Gaurav -
Error when passing parameters in a link
Hi:
i have a report and a form. i've created a link that will point to the form from the report. So i've associated the link to a field of the report and edited it so that a key field in the form will be equal to a value passed from the report's key field. The fact is that passing static values works properly, but when passing parameters from a column it raises an error:
Error: Unable to parse query (WWV-10200)
ORA-06550: line 1, column 37:
PLS-00201: identifier 'NO' must be declared
ORA-06550: line 1, column 9:
PL/SQL: Statement ignored (WWV-11230)
Failed to parse as PORTAL - begin wwv_rptclip.g_row_object :=
NO(wwv_rptclip.g_row_object) ; end; (WWV-08300)
Does anybody know how to solve this problem? or why is the error raised?
Thx.
Regards. Urko.Also, is that a function NO you're trying to use? I'm not sure what that is, so it's possible when Portal tries to parse the sql string and execute it, it's not a recognizable function in the Oracle language or the appropriate grants on that function have not been made to the schema executing the report/form
-
Error in passing parameters from Form to Report
Hi All
I am using 9ids
I want to run report from a form
From one procedure as
vc_runformat:= 'htmlcss'; vc_reportserver:=:Global.repsrv;
set_report_object_property(rep_id,REPORT_EXECUTION_MODE,BATCH);
set_report_object_property(rep_id,REPORT_COMM_MODE,SYNCHRONOUS);
set_report_object_property(rep_id,REPORT_DESTYPE,CACHE);
set_report_object_property(rep_id,REPORT_DESFORMAT,vc_runformat);
set_report_object_property(rep_id,REPORT_SERVER,vc_reportserver);
set_report_object_property(rep_id,REPORT_OTHER,'comp_code='||:global.vc_comp_code||' vc_name='||cust_name||' inv='||inv||' invoice_no='||inv_no||' invoice_date='||inv_dt||' Paramform=no');
vc_reportserverjob:=RUN_Report_Object(rep_id);
vjob_id:=substr(vc_reportserverjob,length(vc_reportserver)+2,length(vc_reportserverjob));
vc_rep_status :=REPORT_OBJECT_STATUS(vc_reportserverjob);
if vc_rep_status='FINISHED' then
web.show_document('/reports/rwservlet/getjobid'||vjob_id||'?
server='||vc_reportserver,'_blank');
else
set_alert_property('alert_ok',alert_message_text,'Report failed with error message '||vc_rep_status||' !');
al:=show_alert('alert_ok');
end if;
END;
Report does not run
now what i have found while rnd that
when i pass a lot of userdefined argument
it gives error.
and if passed one,two,three userdefined argument than it works.
in this example only
when i passed
inv='10016'
dt='06-09-2003'
inv_no='010016'
comp_code='01'
vc_name='PRODIMPEX'
with these reports run fines but
when i increase name data with one caharacter also it gives error
say
vc_name='PRODIMPEXR'
report does not run.
vc_name in report has character type with length 100
but a lot of argument is to be passed more.
I have also checked variable length. its fine
i think there would be some setting in some report system file having the length of parameters
which can be passed.
please help me if u know this.
thanks in advanceHi,
this sounds familiar. Didn't you post exactly the same question a couple of weeks ago ? Don't remember what I replied to you, possibly to use varchar2 instead of character and give it a try. If this doesn't work, I remember that there is a way to use serverside command files for common parameters that needs to be passed. At least I can not find any bug filed against this. If the behavior doesn't change to teh better I therefore suggest to talk to customer support and file a bug.
Frank -
Error while passing parameters to a smart form
Hi all,
I have created a simple Smartform where i am trying to pass two import parameters MATNR(like MAKT-MATNR) and MAKTX(MAKT-MAKTX).tHOUGH THE APPLICATION SEEMS TO RUN FINE BUT IT IS GIVING A WARNING ' Field MAKTX has no defined value '.
Please help in solving this.
Regards,
Bhumikahi,
i think u declare that fields globally, and u are not calling them in the program lines where u have written the code , u have to to declare them in the flow logic also above the code where u are write that one. it asks for import / export params and then it works fine try it......
regards
venkat.>>>>>>>>>>> -
Runtime Error while passing parameters in a BAPI
Hi,
I need to create a loan contract using BAPI_LOAN_CONTRACT_CREATE
But it gives me this runtime error when im passing the values to it.
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_DYN_CALL_ILLEGAL_TYPE', was
not caught and
therefore caused a runtime error.
The reason for the exception is:
The call to the function module "BAPI_LOAN_CONTRACT_CREATE" is incorrect:
In the function module interface, you can specify only
fields of a specific type and length under "CONDITIONHEADER".
Although the currently specified field
"I_CONDHEADER" is the correct type, its length is incorrect.
Missing Handling of System Exception
Program is:
wa_loan-COMP_CODE = 'COPA'.
WA_LOAN-STATUS = '60'.
WA_LOAN-PROD_TYPE = '24A'.
WA_LOAN-LOAN_TYPE = '302'.
WA_LOAN-CURRENCY = 'USD'.
WA_LOAN-CURRENCY_ISO = 'USD'.
APPEND WA_LOAN TO I_LOAN.
WA_CONDHEADER-CONDITION_VALID_FROM = '20120201'.
*WA_CONDHEADER-VALID_FROM = '20120201'.
WA_CONDHEADER-REPAYMENT_TYPE = '2'.
WA_CONDHEADER-DISC_DET = '1'.
WA_CONDHEADER-P_D_RATE = '100'.
WA_CONDHEADER-COMM_CAP = '10000.0000'.
WA_CONDHEADER-CURRENCY = 'USD'.
*WA_CONDHEADER-CURRENCY_ISO = 'USD'.
WA_CONDHEADER-TERM_START = 20120201.
*WA_CONDHEADER-TERMS_START = '20120201'.
WA_CONDHEADER-FINAL_DUE_DATE = 20120201.
*WA_CONDHEADER-DUE_DATE = '20120201'.
*WA_CONDHEADER-EFFINTFROM = 20120201.
*WA_CONDHEADER-EFF_FROM = '20120201'.
APPEND WA_CONDHEADER TO I_CONDHEADER.
WA_PARTNERS-COMP_CODE = 'COPA'.
WA_PARTNERS-PARTNER = '70027'.
WA_PARTNERS-ROLE_TYPE = 'TR0100'.
APPEND WA_PARTNERS TO I_PARTNERS.
CALL FUNCTION 'BAPI_LOAN_CONTRACT_CREATE'
EXPORTING
LOAN = I_LOAN[]
CONDITIONHEADER = I_CONDHEADER[]
CORRESPONDENCE =
USERFIELDS =
TESTRUN = ' '
REFRESH = ' '
PROCESSEXTENSION = ' '
STEERING =
AVOID_INNER_JOIN = ' '
CALLN_APPLN = 'INT'
IMPORTING
LOANNUMBER =
ERROR =
TABLES
PARTNER = I_PARTNERS
CONDITIONS =
FORMULA =
OBJECTS =
COLLATERALS =
ENCUMBRANCES =
CLERKS =
EXTENSION_IN =
RETURN = I_RETURN
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT =
IMPORTING
RETURN =
I am not able to understand where am I going worng.
Kindly Help.
Thanks.shruteie wrote:
>
APPEND WA_LOAN TO I_LOAN."why append?
> APPEND WA_CONDHEADER TO I_CONDHEADER. "why append?
> CALL FUNCTION 'BAPI_LOAN_CONTRACT_CREATE'
> EXPORTING
>"LOAN type BAPILOAN_CREATE --> a structure
>"CONDITIONHEADER type BAPICONDHEAD_CREATE --> a structure
> LOAN = I_LOAN[] "==> this is a table not a structure, why [] added?
> "keep WA_LOAN
> CONDITIONHEADER = I_CONDHEADER[] "==> this is a table not a structure, why [] added?
> "keep WA_CONDHEADER
> Thanks. -
Error in passing parameters in Go Url
Hi every one,
I am using the following go url in my report to navigate between dashboard pages.
'' || cast("Execution Plan-Run"."Start Date" as varchar(20))|| ''
The target column is in the datatype of timestamp(date time)
When i am clicking on any value it navigating but giving the error as
View Display Error
A datetime value was expected (received "11-NOV-11").
Error Details
Error Codes: EUE9D5XW
Thanks in advance.
Edited by: 861096 on Nov 16, 2011 11:38 AM
Edited by: 861096 on Nov 16, 2011 11:39 AMHi,
this sounds familiar. Didn't you post exactly the same question a couple of weeks ago ? Don't remember what I replied to you, possibly to use varchar2 instead of character and give it a try. If this doesn't work, I remember that there is a way to use serverside command files for common parameters that needs to be passed. At least I can not find any bug filed against this. If the behavior doesn't change to teh better I therefore suggest to talk to customer support and file a bug.
Frank -
Getting Error in Crystal report While passing parameters (DB: MS ACCESS)
I have been trying to solve passing parameters in Crystal Reports.
What I have done is :
I added Crystal Reports to my project,
I connect to database using OLE DB (ADO) in database expert form (for your kind information; I did not create or add DataSet1.xsd file the Crystal Reports worked on below code with out parameters and I want report with parameter)
I added below piece of code on my form load event
When I try to pass parameter using .SetparameterValue function, report pop up with bunch of values BUT it does not filter with values which I want, Can anyone tell me that Am I missing something strange ? If yes please guide me
Here is images Links : Dropbox - Creport error
First Image shows my crystal report look, second image shows my DB connection and third one shows the error which I am getting while executing below code
Please help me, I've been trying to solve this problem for two months.
Public Class frmrptProducts
Private Sub frmrptProducts_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim cryRpt As New ReportDocument
Dim CrTables As Tables
Dim crtableLogoninfo As New TableLogOnInfo
Dim crConnectionInfo As New ConnectionInfo
'load report
cryRpt.Load(ReportPath & "CRproducts.rpt")
'parameters definition(if any) This is the part where I pass parameters
Dim ColourName As String = "White"
cryRpt.SetParameterValue("colours", ColourName)
'provide connection info. This is important and you can change it as per your db location
With crConnectionInfo
.ServerName = My.Application.Info.DirectoryPath.ToString() & "\data\db.mdb"
'.DatabaseName = ""
'.UserID = ""
.Password = ""
End With
CrTables = cryRpt.Database.Tables
For Each CrTable In CrTables
crtableLogoninfo = CrTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
Next
CRV.ReportSource = cryRpt
CRV.Refresh()
End SubHI Don,
Thanks for replied, I have come up with some different code and it worked,
Please visit this link and let me know if Am I able to get question resolved Pass more than two parameters to Crystal Reports from VB.NET -
Executing a program and passing parameters using ProcessStartInfo
I am trying to run an application and pass parameters from within a c# desktop application. It appears to attempt to execute but it doesn’t run and the exeProcess shows errors in the locals.
Here is the code:
ProcessStartInfo startBin2TextApp =
new
ProcessStartInfo(strNowRunThis, strDataFile +
" a");
startBin2TextApp.CreateNoWindow =
true;
startBin2TextApp.UseShellExecute =
false; startBin2TextApp.WindowStyle =
ProcessWindowStyle.Hidden;
Process exeProcess =
null;
exeProcess = Process.Start(startBin2TextApp);
This is what is in the Arguments when Process.Start(startBin2TextApp) is ready to execute.
Arguments "C:\\Users\\10065421\\Documents\\ab\\Working\\Projects\\Panel Explorer\\B640130A.DAT a"
After the line is executed, exeProcess shows an error in most of the attributes. For instance, BasePriority shows “exeProcess.BaePriority” threw an exception of type “System.InvalidOperationException”.
I ran this from the command prompt so I know it runs on this machine with the same parameters I am using in the code.
Any ideas?
Thanks.Here is the complete code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.Diagnostics;
using System.Threading.Tasks;
namespace PanelExplorerV1
public
class
CommonCode
public
delegate
void
PassStatusBackFunction(string
msg);
public
void RunBinToText(PassStatusBackFunction
messageCallback)
try
string strStartDirectory =
string strDataPath =
string strDataFile =
string strDataFileTitle =
string strBin2TextPath =
string strDestinationDirectory;
string strNowRunThis =
//int intReturnValue = 0;
strStartDirectory =
Application.StartupPath;
OpenFileDialog dlgCommonDialog =
new
OpenFileDialog();
//CommonDialog dlgCommonDiaglog = new CommonDialog();
dlgCommonDialog.FileName =
//dlgCommonDialog.CancelError = true;
dlgCommonDialog.Filter =
"Binary Data Files (*.dat)|*.dat|All Files (*.*)|*.*";
dlgCommonDialog.ShowDialog();
strDataFile = dlgCommonDialog.FileName;
strDataFileTitle = dlgCommonDialog.Title;
if
(strDataFile.Length == 0)
return;
strDataPath =
Path.GetDirectoryName(strDataFile);
object argumentHolder = 1;
messageCallback("Extracting data from
" + strDataFile +
"!!! Please Wait");
strBin2TextPath = strStartDirectory +
"\\" +
"Bin2Txt.exe";
strDestinationDirectory = strDataPath +
"\\" +
"Bin2Txt.exe";
System.IO.File.Copy(strBin2TextPath,
strDestinationDirectory);
strNowRunThis = strDestinationDirectory;
ProcessStartInfo startBin2TextApp =
new
ProcessStartInfo(strNowRunThis, strDataFile +
" a");
startBin2TextApp.CreateNoWindow =
true;
startBin2TextApp.UseShellExecute =
false;
startBin2TextApp.WindowStyle =
ProcessWindowStyle.Hidden;
Process
exeProcess = null;
exeProcess =
Process.Start(startBin2TextApp);
messageCallback("Finished Extracting
data from " + strDataFile);
return;
catch (InvalidOperationException
inEx)
Console.WriteLine(inEx.Message); -
Error while passing date parameters in procedure and commit issue
Hi
1) I am doing a archiveing records and pls find my code below and i have couple of issue,pls find my code and want to ensure the commit is happening every 100000 rows inserted but i am archeiving a huge table but when i checks the table frequently it shows 0 records and after it shows count the actual rows around 20 million records.How can i ensure it commiting on every 100000 records. pls find my code my db version is 10g on windows
CREATE OR REPLACE PROCEDURE doins as
cnt number:=0;
FOR x IN (select * from Call_log
where trunc(c_date) = to_date('11-Aug-2008','DD-MON-YYYY'))
LOOP
INSERT INTO call_arch
select * from Call_log
where trunc(c_date) = to_date('11-Aug-2008','DD-MON-YYYY');
cnt := cnt + 1;
IF( cnt = 10000 )
THEN
cnt := 0;
commit;
END IF;
commit;
END LOOP;
2) Error while passing date as parameter i am getting following errors while passing date parameter pls find my code and errors
CREATE OR REPLACE PROCEDURE doins(p_date date) as
cnt number:=0;
begin
FOR x IN (select * from Call_log
where trunc(c_date) = to_char(p_date,'DD-MON-YYYY'))
LOOP
INSERT INTO call_arch
select * from Call_log
where trunc(c_date) = to_char(p_date,'DD-MON-YYYY');
cnt := cnt + 1;
IF( cnt = 10000 )
THEN
cnt := 0;
commit;
END IF;
commit;
END LOOP;
end;
exec doins(11-Aug-2008) then gives
SQL> exec doins(11-Aug-2008);
BEGIN doins(11-Aug-2008); END;
ERROR at line 1:
ORA-06550: line 1, column 16:
PLS-00201: identifier 'AUG' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
if i gave exec doins(11-08-2008) it gaves
ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'DOINS'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
rgds
roshCREATE OR REPLACE PROCEDURE doins(p_date varchar2) as
cnt number:=0;
begin
FOR x IN (select A.rowid,A.* from Call_log A
where trunc(c_date) = to_date(p_date,'DD-MON-YYYY'))
--hope that's c_date columne is DATE datatype
LOOP
INSERT INTO call_arch
select * from Call_log
where rowid=x.rowid;
cnt := cnt + 1;
IF( cnt = 10000 )
THEN
cnt := 0;
commit;
END IF;
commit;
END LOOP;
end;
thats your correct procedure - but NOT CORRECT ISSUE.
You should use bulk collect with limit clause and forall clause to do it faster!!! Or Merge clause. -
How to pass parameters to concurrent program report from Forms Personalizn
Hi All,
I am trying to run a report from a menu entry in the AP Invoice entry form. For this I have done the necessary steps of creating the menu entry and am assigning the values for the 2 parameters to a global variable and then launching SRS form.
In SRS form created an action to assign the global variable value to work_order.parameters. I can invoke the SRS OK except that my 2 parameter values appear concatenated in the first parameter itself and are not getting assigned to each of them seperately.
my global variable assignment is as follows :
=${item.inv_sum_folder.vendor_name.value}||'.'||${item.inv_sum_folder.vendor_site_code.value}
and my work_order.parameters value assignment is as follows :
=select nvl(${global.kmg_invalid_po_gv.value}, ${item.work_order.parameters.value}) from dual
It passes parameters OK if i replace custom report with standard AP report. I also made my parameters to be free text (17 character value set) to not validate input, but still no joy.
Any ideas why this is not working ?
Thanks in advance.
ShankarAs Francois said in his answer:
e.g.:Form A call FORM B
In form A (Button's or menu's Trigger code)
DECLARE
param_list_id ParamList;
BEGIN
param_list_id := GET_PARAMETER_LIST('EMPNO');
IF NOT ID_NULL(param_list_id) THEN
DESTROY_PARAMETER_LIST(param_list_id);
END IF;
param_list_id := CREATE_PARAMETER_LIST('empno');
ADD_PARAMETER(param_list_id, 'EMPNO', TEXT_PARAMETER, EMPNO);
CALL_FORM ( 'FORM B.FMX',HIDE,DO_replace,NO_QUERY_ONLY,param_list_id);and in FORM B create a parameter EMPNO (e.g.: varchar2) in node tree(parameter) and at Form level (e.g. WHEN NEW FORM INSTANCE read parameter-
or you could create a GLOBAL variables
or, still,Global procedure in LIB
Regards -
Passing parameters in a html page using xwd_tmppg.create
We are in the initial stage of Developing a OLAP Web Application using
Oracle Express Web Agent 6.3.2,Oracle Express Administrator6.3.2.
Flow of our screens are:-
We have a login screen that authenticates user entry to access his assigned role screen.Based on the role the user selects we will be listing out the analysis in a screen that the user could access.
Express Programs are used to create Role and Analysis screen.
User logged information is passed from login to role screen and to
analysis screen using XWD_APPPG.CREATE that accepts parameters.
Moreover this function can only be used to create html page with out
data views.
Now let us come to our problem-
We need to take the user from analysis screen to detailed data view screen that shows the OLAP cube with a back & exit button.As explained earlier you need to use the function XWD_TMPPG.CREATE to create dataview.It is not possible to pass parameters through this function.This function accepts .html as the only parameter.But we need to pass the userid info to get back to analysis screen for the user to select the next analysis.I need the user logged info available in the template file.
Is there any solution for this problem or any other approach to capture the user logged info in the template file???Hi Aneel,
Thanks for your informative suggestion on how to receive data from
previous page on to the template page using LOCATION.SEARCH.SUBSTRING
function.
I could very successfully get the userid information by implementing
this method within the SCRIPT boundary.
I also want to pass this value to a express program embedded
within the <!--EXPRESS call foot(userid)--> so that it will enable the
user to go back to List of analysis page.her my footer program will
inturn call the Analysis Page with the userid information.That's my
whole idea.
I tried the following methods to acieve my end result-
1)Tried to store the value in a local variable in the template & passed
it to the express program -- Error thrown was "userid is not attached in
the database"
2)Directly specifed location.search.sunstring in the express program..
Still the same error was thrown
3)Thought of storing the value in the name of hidden object .Still this
will not work out because i need to declare the object in the FORM..
Moreover the value is avialable wihin the JAVA SCRIPT range.Out of this
range template is not able to identify this value.
Any idea Aneel form your end.
Can you let me know how to use hidden object in achieving the result.
I have been working very hard for quite sometime.
Advance thanks.
Nanda Kishore -
Passing parameters to Update page
Hi,
I created the search/create/update page going by the instructions in the tutorial exercise. My primary key is a combination of employee number AND sequence number.
When I query the employee in the search page and if the employee has more than one record it displays all the records for that employee.
When I click on the "update" button on one of the record, It is not displaying me the record on which I clicked the "update" button. Instead it is displaying me the other record for the same employee. I believe I need to pass the sequence value as the parameter, but do not know how to pass it. Can anyone one help me accomplish this?
Thanks in advance,
Al
Below is the CO code for SEARCH page:
/*===========================================================================+
| Copyright (c) 2001, 2005 Oracle Corporation, Redwood Shores, CA, USA |
| All rights reserved. |
+===========================================================================+
| HISTORY |
+===========================================================================*/
package lac.oracle.apps.lac.jobperf.server.webui;
import oracle.apps.fnd.common.VersionInfo;
import oracle.apps.fnd.framework.webui.OAControllerImpl;
import oracle.apps.fnd.framework.webui.OAPageContext;
import oracle.apps.fnd.framework.webui.beans.OAWebBean;
import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
import oracle.apps.fnd.framework.webui.TransactionUnitHelper;
import oracle.apps.fnd.framework.OAApplicationModule;
import java.io.Serializable;
import java.sql.Connection;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import oracle.apps.fnd.common.MessageToken;
import oracle.apps.fnd.common.VersionInfo;
import oracle.apps.fnd.framework.OAApplicationModule;
import oracle.apps.fnd.framework.OAException;
import oracle.apps.fnd.framework.server.OADBTransaction;
import oracle.apps.fnd.framework.webui.OAControllerImpl;
import oracle.apps.fnd.framework.webui.OADialogPage;
import oracle.apps.fnd.framework.webui.OAPageContext;
import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
import oracle.apps.fnd.framework.webui.TransactionUnitHelper;
import oracle.apps.fnd.framework.webui.beans.OAWebBean;
import oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean;
import oracle.apps.fnd.framework.webui.beans.layout.OAQueryBean;
import oracle.apps.fnd.framework.webui.beans.message.OAMessageStyledTextBean;
import oracle.apps.fnd.framework.webui.beans.message.OAMessageDateFieldBean;
//import oracle.apps.fnd.framework.webui.beans.message.OAMessageTextInputBean;
import oracle.apps.fnd.framework.webui.beans.table.OATableBean;
import com.sun.java.util.collections.HashMap;
import oracle.bali.share.util.IntegerUtils;
* Controller for ...
public class jobperfCO extends OAControllerImpl
public static final String RCS_ID="$Header$";
public static final boolean RCS_ID_RECORDED =
VersionInfo.recordClassVersion(RCS_ID, "%packagename%");
* Layout and page setup logic for a region.
* @param pageContext the current OA page context
* @param webBean the web bean corresponding to the region
public void processRequest(OAPageContext pageContext, OAWebBean webBean)
super.processRequest(pageContext, webBean);
OAApplicationModule am = pageContext.getApplicationModule(webBean);
// The following checks to see if the user navigated back to this page
// without taking an action that cleared an "in transaction" indicator.
// If so, we want to rollback any changes that she abondoned to ensure
// they aren't left lingering in the BC4J cache to cause problems with
// subsequent transactions. For example, if the user navigates to the
//Create Review page where you start a "Create" transactio unit, then
//navigastes back to this page using the browser Back button and selects
// the Create Review button again, teh OA Framework detects this
// Back button navigation and steps through processRequest() so this
// code is executed before you try to Create another new Review.
if (TransactionUnitHelper.isTransactionUnitInProgress(pageContext,"jobperfCreateTxn", false))
am.invokeMethod("rollbackReview");
TransactionUnitHelper.endTransactionUnit(pageContext,"jobperfCreateTxn");
else if(TransactionUnitHelper.isTransactionUnitInProgress(pageContext,"jobperfUpdateTxn",false))
am.invokeMethod("rollbackReview");
TransactionUnitHelper.endTransactionUnit(pageContext,"jobperfUpdateTxn");
* Procedure to handle form submissions for form elements in
* a region.
* @param pageContext the current OA page context
* @param webBean the web bean corresponding to the region
public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
super.processFormRequest(pageContext, webBean);
OAApplicationModule am;
OADBTransaction oadbxn;
am = pageContext.getRootApplicationModule();
oadbxn = am.getOADBTransaction();
if (pageContext.getParameter("Create") != null)
//Navigate to teh "Create Review" page while retaining the AM.
//Note the use of KEEP_MENU_CONTEXT as opposed to GUESS_MENU_CONTEXT
//since we know the current tab should remain highlighted.
pageContext.setForwardURL("OA.jsp?page=/lac/oracle/apps/lac/jobperf/webui/ReviewPG",
null,
OAWebBeanConstants.KEEP_MENU_CONTEXT,
null,
null,
true, //Retain AM
OAWebBeanConstants.ADD_BREAD_CRUMB_YES,
OAWebBeanConstants.IGNORE_MESSAGES);
else if ("update".equals(pageContext.getParameter(EVENT_PARAM)))
String EmployeeNumber = pageContext.getParameter("EmployeeNumber");
String Seq = pageContext.getParameter("Seq");
//String EmployeeName = pageContext.getParameter("FullName");
System.out.println("Update Selected");
System.out.println(EmployeeNumber);
//System.out.println(EmployeeName);
System.out.println(Seq);
oadbxn.putValue("EmployeeNumber",EmployeeNumber);
oadbxn.putValue( "Seq",Seq);
//oadbxn.putValue("EmployeeName",EmployeeName);
HashMap params = new HashMap(2);
// Replace the current employeeNumber request parameter value with "X"
params.put("EmployeeNumber", EmployeeNumber);
//params.put("EmployeeName", "EmployeeName");
params.put("Seq", Seq);
// IntegerUtils is a handy utility
//params.put("EmployeeName", EmployeeName);
//params.put("EmployeeNumber",IntegerUtils.getInteger(1));
//params.put("EmployeeName",IntegerUtils.getInteger(2));
//params.put("Seq",IntegerUtils.getInteger(2));
// The user has clicked an "Update" icon so we want to navigate
// to the first step of the multistep "Update Employee" flow.
pageContext.setForwardURL("OA.jsp?page=/lac/oracle/apps/lac/jobperf/webui/UpdateReviewPG",
null,
OAWebBeanConstants.KEEP_MENU_CONTEXT,
null,
params, //mir null,
true, // Retain AM
OAWebBeanConstants.ADD_BREAD_CRUMB_YES, // Do not display breadcrumbs
OAWebBeanConstants.IGNORE_MESSAGES);
Below is the CO code for UPDATE page:
/*===========================================================================+
| Copyright (c) 2001, 2005 Oracle Corporation, Redwood Shores, CA, USA |
| All rights reserved. |
+===========================================================================+
| HISTORY |
+===========================================================================*/
package lac.oracle.apps.lac.jobperf.server.webui;
import oracle.apps.fnd.common.VersionInfo;
import oracle.apps.fnd.framework.webui.OAControllerImpl;
import oracle.apps.fnd.framework.webui.OAPageContext;
import oracle.apps.fnd.framework.webui.beans.OAWebBean;
import oracle.apps.fnd.framework.OAApplicationModule;
import oracle.apps.fnd.framework.webui.OADialogPage;
import oracle.apps.fnd.framework.webui.TransactionUnitHelper;
import oracle.jbo.domain.Number;
import oracle.apps.fnd.common.MessageToken;
import oracle.apps.fnd.framework.OAApplicationModule;
import oracle.apps.fnd.framework.OAException;
import oracle.apps.fnd.framework.OAViewObject;
import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
import java.io.Serializable;
* Controller for ...
public class ReviewUpdateCO extends OAControllerImpl
public static final String RCS_ID="$Header$";
public static final boolean RCS_ID_RECORDED =
VersionInfo.recordClassVersion(RCS_ID, "%packagename%");
* Layout and page setup logic for a region.
* @param pageContext the current OA page context
* @param webBean the web bean corresponding to the region
public void processRequest(OAPageContext pageContext, OAWebBean webBean)
// Always call this first
super.processRequest(pageContext, webBean);
// Put a transaction value indicating that the update transaction
// is now in progress.
TransactionUnitHelper.startTransactionUnit(pageContext,"jobperfUpdateTxn");
String EmployeeNumber = pageContext.getParameter("EmployeeNumber"); //small e
String Seq = pageContext.getParameter("Seq");
System.out.println("Into ReviewUpdateCOUpdate IN Process Request values from Page Context");
System.out.println(EmployeeNumber);
//System.out.println(EmployeeName);
System.out.println(Seq);
// We'll use this at the end of the flow for a confirmation message.
String EmployeeName = pageContext.getParameter("FullName");
pageContext.putTransactionValue("FullName",EmployeeName);
Serializable[] params = { EmployeeNumber,Seq}; //small e
OAApplicationModule am = pageContext.getApplicationModule(webBean);
// For the update, since we are using the same VO as teg "Details" page, we
// can use the same initialization logic.
System.out.println("Into ReviewUpdateCOUpdate IN Process Request");
System.out.println(EmployeeNumber); //small e
//System.out.println(EmployeeName);
System.out.println(Seq);
am.invokeMethod("initDetails", params);
//am.invokeMethod("jobperfAMImpl.createReview");
System.out.println("Into ReviewUpdateCOUpdate IN Process Request AFTER INITDETAILS");
System.out.println(EmployeeNumber); //small e
//System.out.println(EmployeeName);
System.out.println(Seq);
} // end processRequest()
* Procedure to handle form submissions for form elements in
* a region.
* @param pageContext the current OA page context
* @param webBean the web bean corresponding to the region
public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
{ //super.processFormRequest(pageContext, webBean);
// Always call this first.
super.processFormRequest(pageContext, webBean);
System.out.println("Into ReviewUpdateCOUpdate INTO Process FORM before apply Request");
OAApplicationModule am = pageContext.getApplicationModule(webBean);
// Pressing the "Apply" button means the transaction should be validated
// and committed.
if (pageContext.getParameter("Apply") != null)
// Generally in the tutorial application and the labs, we've illustrated
// all BC4J interaction on the server (except for the AMs, of course). Here,
// we're dealing with the VO directly so the comments about the reasons
// why we're obtaining values from the VO and not the request make sense
// in context.
OAViewObject vo = (OAViewObject)am.findViewObject("jobperfVO1");
// Note that we have to get this value from the VO because the EO will
// assemble it during its validation cycle.
// For performance reasons, we should generally be calling getEmployeeName()
// on the EmployeeFullVORowImpl object, but we don't want to do this
// on the client so we're illustrating the interface-appropriate call. If
// we implemented this code in the AM where it belongs, we would use the
// other approach.
String EmployeeName = (String)vo.getCurrentRow().getAttribute("FullName");
// We need to get a String so we can pass it to the MessageToken array below. Note
// that we are getting this value from the VO (we could also get it from.
// the Bean as shown in the Drilldwon to Details lab) because the item style is messageStyledText,
// so the value isn't put on the request like a messaqeTextInput value is.
String EmployeeNumber = (String)vo.getCurrentRow().getAttribute("EmployeeNumber");
String Seq = (String)vo.getCurrentRow().getAttribute("Seq");
//ma String employeeNum = String.valueOf(employeeNumber.intValue());
//ma Number employeeNumber = (Number)vo.getCurrentRow().getAttribute("EmployeeNumber");
//ma String employeeNum = String.valueOf(employeeNumber.intValue());
// Simply telling the transaction to commit will cause all the Entity Object validation
// to fire.
// Note: there's no reason for a developer to perform a rollback. This is handled by
// the framework if errors are encountered.
System.out.println("Into ReviewUpdateCOUpdate IN Process Form Request");
System.out.println(EmployeeNumber);
//System.out.println(EmployeeName);
System.out.println(Seq);
am.invokeMethod("apply");
// Indicate that the Create transaction is complete.
TransactionUnitHelper.endTransactionUnit(pageContext, "jobperfUpdateTxn");
// Assuming the "commit" succeeds, navigate back to the "Search" page with
// the user's search criteria intact and display a "Confirmation" message
// at the top of the page.
MessageToken[] tokens = { new MessageToken("EMP_NAME", EmployeeName),
new MessageToken("EMP_NUMBER", EmployeeNumber) };
OAException confirmMessage = new OAException("PER", "LAC_FWK_TBX_T_EMP_CREATE_CONF", tokens,
OAException.CONFIRMATION, null);
// Per the UI guidelines, we want to add the confirmation message at the
// top of the search/results page and we want the old search criteria and
// results to display.
pageContext.putDialogMessage(confirmMessage);
pageContext.forwardImmediately(
"OA.jsp?page=/lac/oracle/apps/lac/jobperf/webui/jobperfPG",
null,
OAWebBeanConstants.KEEP_MENU_CONTEXT,
null,
null,
true, // retain AM
OAWebBeanConstants.ADD_BREAD_CRUMB_NO);
else if (pageContext.getParameter("Cancel") != null)
am.invokeMethod("rollbackReview");
// Indicate that the Create transaction is complete.
TransactionUnitHelper.endTransactionUnit(pageContext, "jobperfUpdateTxn");
pageContext.forwardImmediately("OA.jsp?page=/lac/oracle/apps/lac/jobperf/webui/jobperfPG",
null,
OAWebBeanConstants.KEEP_MENU_CONTEXT,
null,
null,
true, // retain AM
OAWebBeanConstants.ADD_BREAD_CRUMB_NO);
} // end processFormRequest()
Message was edited by:
user617353Hi,
I created a new method(initQueryUpdate) in the VOImpl(here I am also setting the where clause).
Also created a method(initDetailsUpdate) in the AMImpl and I am calling the vo.initQueryUpdate in AM code.
I am also passing the parameters to method via a call in the ReviewupdateCO(am.invokeMethod("initDetailsUpdate", params);).
It is compiling the entire jpr without any errors.
When I Search an employee and clisk on the update button then I am geting the following error.
I tried to pass parameters by putting them on the update button property with the action type of "fireAction.
I also tried by making the actiontype "none" and putting the forwarding apge with parameters in the "Destination URL" property and still I get the error message when I run it. Any one has any clues.
Thanks in Advance,
Ali
Exception Details.
oracle.apps.fnd.framework.OAException: oracle.jbo.SQLStmtException: JBO-27122: SQL error during statement preparation. Statement: SELECT * FROM (SELECT
jobperfEO.EMPLOYEE_NUMBER,
jobperfEO.FULL_NAME,
jobperfEO.PERSON_ID,
jobperfEO.ASSIGNMENT_ID,
jobperfEO.PERIOD_START_DATE,
jobperfEO.PERIOD_END_DATE,
jobperfEO.REVIEW_DATE,
jobperfEO.REVIEW_TYPE,
jobperfEO.REVIEW_STATUS,
jobperfEO.JOB_CLASSIFICATION,
jobperfEO.DISTRICT,
jobperfEO.SUPERVISOR_ID,
jobperfEO.SUPERVISOR_EMPLOYEE_NUMBER,
jobperfEO.SUPERVISOR_NAME,
jobperfEO.QUALITY_OF_WORK,
jobperfEO.QUANTITY_OF_WORK,
jobperfEO.JOB_KNOWLEDGE,
jobperfEO.EFFICIENCY,
jobperfEO.RELATING_TO_OTHERS,
jobperfEO.INITIATIVE,
jobperfEO.RELIABILITY,
jobperfEO.HOUSEKEEPING_SAFETY,
jobperfEO.OVERALL_PERFORMANCE,
jobperfEO.SUGGESTED_IMPROVEMENT_AREAS,
jobperfEO.EMPLOYEE_COMMENTS,
jobperfEO.CREATED_BY,
jobperfEO.CREATION_DATE,
jobperfEO.LAST_UPDATED_BY,
jobperfEO.LAST_UPDATE_DATE,
jobperfEO.SEQ,
jobperfEO.SECOND_SUPRV_EMPNO,
jobperfEO.SECOND_SUPRV_FULLNAME
FROM apps.LAC_CM_PERF_REVIEW jobperfEO) QRSLT WHERE (SEQ = :1 AND ( UPPER(EMPLOYEE_NUMBER) like :3 AND (EMPLOYEE_NUMBER like :4 OR EMPLOYEE_NUMBER like :5 OR EMPLOYEE_NUMBER like :6 OR EMPLOYEE_NUMBER like :7))) ORDER BY EMPLOYEE_NUMBER ASC
at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:891)
at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:865)
at oracle.apps.fnd.framework.OAException.wrapperInvocationTargetException(OAException.java:988)
at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:211)
at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:153)
at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.invokeMethod(OAApplicationModuleImpl.java:749)
at lac.oracle.apps.lac.jobperf.server.webui.ReviewUpdateCO.processRequest(ReviewUpdateCO.java:116)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:587)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1136)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2335)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1734)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:508)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:429)
at _OA._jspService(OA.jsp:34)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:209)
at com.evermind.server.http.GetParametersRequestDispatcher.forward(GetParametersRequestDispatcher.java:189)
at com.evermind.server.http.EvermindPageContext.forward(EvermindPageContext.java:199)
at _OA._jspService(OA.jsp:39)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:534)
## Detail 0 ##
java.sql.SQLException: ORA-01006: bind variable does not exist
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:583)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1986)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1144)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2548)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2933)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:650)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:578)
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:631)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:518)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3375)
at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(OAJboViewObjectImpl.java:828)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4507)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:574)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:544)
at oracle.jbo.server.ViewRowSetImpl.executeDetailQuery(ViewRowSetImpl.java:619)
at oracle.jbo.server.ViewObjectImpl.executeDetailQuery(ViewObjectImpl.java:3339)
at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3326)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:441)
at lac.oracle.apps.lac.jobperf.server.jobperfVOImpl.initQueryUpdate(jobperfVOImpl.java:77)
at lac.oracle.apps.lac.jobperf.server.jobperfAMImpl.initDetailsUpdate(jobperfAMImpl.java:129)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:190)
at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:153)
at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.invokeMethod(OAApplicationModuleImpl.java:749)
at lac.oracle.apps.lac.jobperf.server.webui.ReviewUpdateCO.processRequest(ReviewUpdateCO.java:116)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:587)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1136)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2335)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1734)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:508)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:429)
at _OA._jspService(OA.jsp:34)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:209)
at com.evermind.server.http.GetParametersRequestDispatcher.forward(GetParametersRequestDispatcher.java:189)
at com.evermind.server.http.EvermindPageContext.forward(EvermindPageContext.java:199)
at _OA._jspService(OA.jsp:39)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:534)
java.sql.SQLException: ORA-01006: bind variable does not exist
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:583)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1986)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1144)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2548)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2933)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:650)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:578)
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:631)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:518)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3375)
at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(OAJboViewObjectImpl.java:828)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4507)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:574)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:544)
at oracle.jbo.server.ViewRowSetImpl.executeDetailQuery(ViewRowSetImpl.java:619)
at oracle.jbo.server.ViewObjectImpl.executeDetailQuery(ViewObjectImpl.java:3339)
at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3326)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:441)
at lac.oracle.apps.lac.jobperf.server.jobperfVOImpl.initQueryUpdate(jobperfVOImpl.java:77)
at lac.oracle.apps.lac.jobperf.server.jobperfAMImpl.initDetailsUpdate(jobperfAMImpl.java:129)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:190)
at oracle.apps.fnd.framework.server.OAUtility.invokeMethod(OAUtility.java:153)
at oracle.apps.fnd.framework.server.OAApplicationModuleImpl.invokeMethod(OAApplicationModuleImpl.java:749)
at lac.oracle.apps.lac.jobperf.server.webui.ReviewUpdateCO.processRequest(ReviewUpdateCO.java:116)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:587)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1136)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2335)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1734)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:508)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:429)
at _OA._jspService(OA.jsp:34)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:209)
at com.evermind.server.http.GetParametersRequestDispatcher.forward(GetParametersRequestDispatcher.java:189)
at com.evermind.server.http.EvermindPageContext.forward(EvermindPageContext.java:199)
at _OA._jspService(OA.jsp:39)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:534) -
Passing parameters to PL/SQL table types
Hi Everybody,
I have one question about passing PL/SQL tables types and tabs as IN parameter in procedure.I am working in 11.2.0.2.0 environment. I am stuck on how to pass those values to procedure.Please find below more details:
Table 1:
CREATE TABLE ITEMS
ITEM_ID VARCHAR2(40 BYTE) NOT NULL,
ITEM_NAME VARCHAR2(40 BYTE),
SERIAL NUMBER(2),
ADDED_ON DATE);
Table 2:
CREATE TABLE ITEM_ACTIVITY_INFO
ITEM_ID VARCHAR2(40 BYTE) NOT NULL,
ACCOUNT_TYPE VARCHAR2(1 BYTE),
ID_NUMBER NUMBER(3),
ACTIVATION_DATE DATE);
Table 3:
CREATE TABLE ITEM_GROUP
GROUP_ID NUMBER(2) NOT NULL,
ITEM_ID VARCHAR2(40 BYTE),
GROUP_TYPE VARCHAR2(20 BYTE),
GROUP_DATE DATE);
Table 4:
CREATE TABLE ITEM_ADDRESS
GROUP_ID NUMBER(2) NOT NULL,
NAME VARCHAR2(60 BYTE),
ADDRESS VARCHAR2(100));
Following types are created:
CREATE OR REPLACE TYPE ITEMS_TYPE AS OBJECT
ITEM_ID VARCHAR2(40 BYTE),
ITEM_NAME VARCHAR2(40 BYTE),
SERIAL NUMBER(2),
ADDED_ON DATE);
CREATE OR REPLACE TYPE ITEM_ACTIVITY_TYPE AS OBJECT
ITEM_ID VARCHAR2(40 BYTE),
ACCOUNT_TYPE VARCHAR2(1 BYTE),
ID_NUMBER NUMBER(3),
ACTIVATION_DATE DATE);
CREATE OR REPLACE TYPE ITEM_GROUP_COMP_TYPE AS OBJECT
GROUP_ID NUMBER(2) NOT NULL,
ITEM_ID VARCHAR2(40 BYTE),
GROUP_TYPE VARCHAR2(20 BYTE),
GROUP_DATE DATE
ITEM_ADDRESS_IN ITEM_ADDRESS_TYPE);
CREATE OR REPLACE TYPE ITEM_ADDRESS_TYPE AS OBJECT
GROUP_ID NUMBER(2),
NAME VARCHAR2(60 BYTE),
ADDRESS VARCHAR2(100));
CREATE OR REPLACE TYPE ITEM_GROUP_COMP_TAB AS TABLE OF ITEM_GROUP_COMP_TYPE;
Create or replace procedure ITEM_ADD_CHANGE(
ITEM_IN IN ITEMS_TYPE,
ITEM_ACTIVITY_IN IN ITEM_ACTIVITY_TYPE,
ITEM_GROUP_IN IN ITEM_GROUP_COMP_TAB,
ITEM_OUT IN OUT ITEMS.ITEM_ID%TYPE);
Above are the paramteres we are passing to procedure.
I need help in how to pass parameters to above procedure. All comments and responses will be highly appreciated. Thanks everyone for going through the post. Please let me know if more more information is required on this problem.
Regards
DevBilly Verreynne wrote:
Types used in this fashion, only make sense if the table is based on the type. It makes very little sense to have a table structure and then to duplicate the structure using a type.
The 2 structures may be defined the same. But they are NOT interchangeable and requires one to be converted to the other to use. This is not sensible in my view. It is far easier in that case to simply use the PL/SQL macro +%RowType+ to create a duplicate structure definition - one that can natively be used for touching that table, without conversions required.
If you do want to use types, define the type, then define the table of that type, adding the required constraints (pk, fk, not null, check) to the table's definition.Billy:
Just curious, why do you say it makes very little sense to have a type modeled on a table? I do that a lot. In my case, I am getting the values from an external program, not building them manually, but it makes a lot of sense to me.
One application where I do this a lot has a java front-end that parses HL7 messages. Each message contains at least minimal information about a variable number of entities (and often several rows for an entity) in the database, and must be processed as a single atomic trasnaction. So, rather than have potentially hundreds of parameters to the "main" driver procedures for different message types I created a set of types more or less identical to the tables representing the entities. The java program parses the mesasge and populates the type, then calls the appropriate stored procedure for the message type passing in the populated types. My stored procedure then does inserts/updates or deletes as appropriate over potentially dozens of tables.
John -
Passing Parameters via Post Method from Webdynpro Java to a web application
Hello Experts,
I want to pass few parameters from a web dynpro application to an external web application.
In order to achieve this, I am referring to the below thread:
HTTP Post
As mentioned in the thread, I am trying to create an additional Suspend Plug parameter (besides 'Url' of type String) with name 'postParams' and of type Map.
But when I build my DC, I am getting the same error which most of the people in the thread have mentioned:
Controller XXXCompInterfaceView [Suspend]: Outbound plug (of type 'Suspend') 'Suspend' may have at most two parameters: 'Url' of type 'string' and 'postParams' of type 'Map'.
I am using SAP NetWeaver Developer Studio Version: 7.01.00
Kindly suggest if this is the NWDS version issue or is it something else that I am missing out.
Also, if it is the NWDS version issue please let me know the NWDS version that I can use to avoid this error.
Any other suggestion/alternative approach to pass the parameters via POST method from webdynpro java to an external web application apart from the one which is mentioned in the above thread is most welcome.
Thanks & Regards,
AnuragHi,
This is purely a java approach, even you can try this for your requirement.
There are two types of http calls synchronous call or Asynchronous call. So you have to choose the way to pass parameters in post method based on the http call.
if it is synchronous means, collect all the values from users/parameters using UI element eg: form and pass all the values via form to the next page is nothing but your web application url.
If it is Asynchronous means, write a http client in java and integrate the same with your custom code and you can find an option for sending parameters in post method.
here you go and find the way to implement Asynchronous scenario,
http://www.theserverside.com/news/1365153/HttpClient-and-FileUpload
http://download.oracle.com/javase/tutorial/networking/urls/readingWriting.html
http://digiassn.blogspot.com/2008/10/java-simple-httpurlconnection-example.html
Thanks & Regards
Rajesh A
Maybe you are looking for
-
Since updating to 3.6.15 today, back button no longer works and FF doesn't remember URLs. Not just that memory of previous URLs got wiped out, it still doesn't remember the ones I've typed in since I updated. And No back button, it's really hard to u
-
Windows 7 on iMac 27in bootcamp patch query
Windows 7 on 27inch iMac using bootcamp I am wondering if and when an update will come out, I have read somewhere that this was going to be resolved before the end of the year well the end of the year is here some help as to when and if this fix will
-
I was trying to add more music to my ipod. That's when it would not sync to itunes on my computer. I have tried uninstalling Itunes and refreshing my ipod, none of that worked. Can anyone help me?
-
Converting PDF Portfolio in a single PDF in Acrobat Pro 10
I need help in converting a PDF Portfolio file into a single PDF This was simple to do in Acrobat Pro 9, but now i have upgrade to Pro 10 and this feature seems to have disappeared. Getting rid of this feature would be huge mistake on Adobe's part, s
-
Logical Standby 'CURRENT' log files
I have an issue with a Logical Standby implementation where although everything in the Grid Control 'Data Guard' page is Normal, when I view Log File Details I have 62 files listed with a status of 'Committed Transactions Applied'. The oldest (2489)