This content has been marked as final. Show 45 replies
I think the following could be a new thread.
I am trying to build new OAF pages for custom application above Oracle Quoting(JTT). For this purpose, i am trying to use the JTT API related to Quoting appliation(oracle.apps.aso.quote.*,...).
However, the transaction(connection) used by the JTT classes(Quote, QuoteLine,...) is different from the OAF(OADBTransaction or connection).
As a result, i am unable to make a single/common data transaction which includes both OAF data(changes) and JTT data(changes).
Can anyone advise me on this regard. That is, combining JTT transaction with OAF transaction(like, once the OAF transaction is rolled back, the associated JTT data changes should also be rolled back and similary for commit).
Thanks in advance,
I did several customizations with Quoting using OAF.
Take a look at the OAF/JTT integration in OA Dev Guide.
The only case, where the Integration stuff didn't work for is when calling the OAF from SideBar Menus, where I solved the problem using cookies JTT uses.
As for doing update/create of quotes, I used PL/SQL APIs from OAF using the ORacleCallableStatement.
Hope this helps.
Thanks for the prompt response.
I see, the OAF/JTT interoperability OA guide is suitable/limited for page level navigation between OAF and JTT. In which case, the transaction of OAF/JTT pages is limited to solely OAF or JTT.
I thought of using OracleCallableStatement and PL/SQL APIs, but thought that is much of rebuild similar to the existing Quoting Java API. So, was tempted to try using the Java API of quoting itself, rather than redevelop.
If at all, this is the only alternative, then other than using jpub(JPublisher) to generate classes for PL/SQL record types, using OracleCallableStatement... , is there any simple alternative to do this.
I appreciate your comments.
For my requirement I needed to update the quote with few few attributes, so developed a pl/sql wrapper around QOT API (aso_quote_Pub) and call this wrapper from OAF.
I guess you might already be familair with how the Quoting get's the DB connection.
It uses TransactionScope.getConnection. So, you should be able to initialize this object in OAF call qot apis.
I have not done this, but this is something I will when have sometime.
Thanks again for the resp.
You are right about the TransactionScope, and i tried to use the followign:
in the ApplicationModule:
Connection amCon = this.getOADBTransaction().getJdbcConnection(); // OAF connection
in the VO:
ConnectionContext cc = new ConnectionContext();
Connection connJTT = TransactionScope.getConnection(); // JTT connection/
... call the Quote.save()...
but the transaction of the OAF is becoming independent of JTT transaction(as the connection established in JTT is different). But, i would like to have a single/common transaction for both.
appreciate your comments.
How have you done your customization?
I have a problem in calling a custom OAF page from a JTT page and passing a parameter.
I've red the Developer's guide and tried to use the getURL() function like this:
You are trying to access a page that is no longer active.
- The referring page may have come from a previous session. Please select Home to proceed.
Have you got any idea to resolve this?
Here is the sample code,
StringBuffer expUrl = new StringBuffer("jtfcrmchrome.jsp?page=/xxx/oracle/apps/qot/custom/webui/QotConfigLinesPG&OASF=QOT_QUOTE&OAHP=ASF_MAIN_MENU&qotHdrId="+qotHdrIdBig);
String expUrlStr = ServletSessionManager.getURL(expUrl.toString());
theForm.action = "<%=expUrlStr%>" ; // theForm.qotFrmMainFile.value;
This should work.
Yes, but in his example, he calls the ServletSessionManager.getURL(expUrl.toString()); function only when the string expUrl is complete (with the parameter).
If I append a parameter value from a form field to the resulting strin, it does not work.
In the resulting html page I get this:
Thanks Tapash, but i (and Dario) don't understand: the code jsp is processed before the users select a value for the variable qotLnId, so the variable don't have a value..if i append at the end of the URL (after the use of SessionServletManager.getURL) i have the error... how can i do??
The following might help.