Hi all,
I need to convert the file path in windows say C:\Documents and Settings\Manoj\Desktop for java as C:/Documents and Settings/Manoj/Desktop .
Is there any utility to convert like this.?
Bhagat Nainani and I, Manoj Das, will present a session on Oracle BPM overview and road map on Monday, October 1 2012, from 12:15-1:15 PM at Moscone South - 308.
Since last OpenWorld, many good things have happened. Many customers have gone live with their BPM 11g deployments, some of whom were nominated for the Innovation Awards. From a product perspective, we delivered 11.1.1.6 and 11.1.1.7 is just around the corner. We will discuss some of the highlights related to both customer successes and product features.
In particular, we will present some of the exciting new capabilities that we are introducing in 11.1.1.7 around business analyst driven model-to-execution, more comprehensive unified BPM suite, more flexible and manageable BPM.
Another significant development is the release of Process Accelerators. We have not only released accelerators, we have ourselves deployed and are using them internally. We will talk about accelerators as well as our learnings.
As the title suggests, we will also share some aspects of our roadmap - there are some very exciting things brewing that I can't wait to share with you on Monday.
Hoping to see you on Monday. Again, the session is in Moscone South - 308 from 12:15-1:15. Looking forward to your tweets on the session - remember to use #oraclebpm and #oow. Finally, as always, feel free to ask Bhagat and me any questions you have, during the session as well as after the session.
Major functionality of OSB is database independent. Most of the internal data-structures that re required by OSB are stored in-memory.Reporting functionality of OSB requires DB tables be accessible.http://download.oracle.com/docs/cd/E14571_01/doc.1111/e15017/before.htm#BABCJHDJ It should hover be noted that we can still run OSB with out creating any tables on database.In such cases the reporting functionality cannot be used where as other functions in OSB will work just as fine.We also see few errors in the log file indicating the absence of these tables which we can ignore. If reporting function is required we will have to install few tables. http://download.oracle.com/docs/cd/E14571_01/doc.1111/e15017/before.htm#BABBBEHD indicates running RCU recommended. OSB reporting tables are bundled along with SOA schema in RCU. OSB requires two simple tables for reporting functionality and installing complete SOA schema is little far fetched. SOA schema contains lot of tables which OSB doesn't require at all. More over OSB tables are too simple to require a tool like an RCU.Solution to it would be to manually create those tables required for OSB. To make life easier the definition of tables is available in dbscripts folder under OSB_HOME.eg. D:\Oracle\Middleware\osb\11gPS2\Oracle_OSB1\dbscripts. $OSB_HOME=D:\Oracle\Middleware\osb\11gPS2\Oracle_OSB1If you are not planning to use reporting feature in OSB, then we can also delete the JDBC data sources that comes along with standard OSB domain.WLST script to delete cgDataSources from OSB
domain
. OSB will work fine with out DB tables and JDBC Datasource.
Oracle service bus can be used as for pass through casses. Some use
cases require propagating the http-response code back to the caller.
http://forums.oracle.com/forums/thread.jspa?messageID=4326052�
is one such example we will try to accomplish in this tutorial.We
will try to demonstrate this feature using Oracle
Service Bus (11.1.1.3.0. We will also use commons-logging-1.1.1,
httpcomponents-client-4.0.1, httpcomponents-core-4.0.1 for writing the
client to demonstrate.First we create a simple JSP which will
always set response code to 304.The JSP snippet will look like <%@
page language="java" contentType="text/xml;
charset=UTF-8" pageEncoding="UTF-8" %><%
System.out.println("Servlet setting Responsecode=304");
response.setStatus(304); response.flushBuffer();%>We
will now deploy this JSP on weblogic server with
URI=http://localhost:7021/reponsecode/For this JSP we will create a
simple Any XML BS We will also create proxy service as shown below
Once the proxy is created we configure pipeline for the proxy to use route node, which invokes the BS(JSPCaller) created in the first place.
So now we will create a error handler for route node and will add a stage.
When a HTTP BS sends a request, the JSP sends the response back. If the response code is not 200, then the http BS will consider that as error and the above configured error handler is invoked. We will print $outbound to show the response code sent by the JSP.
The next actions. To test this I had create a simple clientimport org.apache.http.Header;import org.apache.http.HttpEntity;import org.apache.http.HttpHost;import org.apache.http.HttpResponse;import org.apache.http.HttpVersion;import org.apache.http.client.methods.HttpGet;import org.apache.http.conn.ClientConnectionManager;import org.apache.http.conn.scheme.PlainSocketFactory;import org.apache.http.conn.scheme.Scheme;import org.apache.http.conn.scheme.SchemeRegistry;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager;import org.apache.http.params.BasicHttpParams;import org.apache.http.params.HttpParams;import org.apache.http.params.HttpProtocolParams;import org.apache.http.util.EntityUtils;/** * @author MNEELAPU * */public class TestProxy304{ public static void main(String arg[]) throws Exception{ HttpHost target = new HttpHost("localhost", 7021, "http"); // general setup SchemeRegistry supportedSchemes = new SchemeRegistry(); // Register the "http" protocol scheme, it is required // by the default operator to look up socket factories. supportedSchemes.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 7021)); // prepare parameters HttpParams params = new BasicHttpParams(); HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1); HttpProtocolParams.setContentCharset(params, "UTF-8"); HttpProtocolParams.setUseExpectContinue(params, true); ClientConnectionManager connMgr = new ThreadSafeClientConnManager(params, supportedSchemes); DefaultHttpClient httpclient = new DefaultHttpClient(connMgr, params); HttpGet req = new HttpGet("/HttpResponseCode/ProxyExposed"); System.out.println("executing request to " + target); HttpResponse rsp = httpclient.execute(target, req); HttpEntity entity = rsp.getEntity(); System.out.println("----------------------------------------"); System.out.println(rsp.getStatusLine()); Header[] headers = rsp.getAllHeaders(); for (int i = 0; i < headers.length; i++) { System.out.println(headers[i]); } System.out.println("----------------------------------------"); if (entity != null) { System.out.println(EntityUtils.toString(entity)); } // When HttpClient instance is no longer needed, // shut down the connection manager to ensure // immediate deallocation of all system resources httpclient.getConnectionManager().shutdown(); }}On compiling and executing this we see the below output in STDOUT which clearly indicates the response code was propagated from Business Service to Proxy serviceexecuting request to http://localhost:7021----------------------------------------HTTP/1.1 304 Not ModifiedDate: Tue, 08 Jun 2010 16:13:42 GMTContent-Type: text/xml; charset=UTF-8X-Powered-By: Servlet/2.5 JSP/2.1----------------------------------------
Oracle Service Bus 11gR1 (11.1.1.3) supports running in same JVM as SOA. This tutorial covers on how to do create domain in of SOA+OSB combined to run in single JVM .For this tutorial we will use a flavor WebLogic installer bundled with both OEPE and coherence components (eg oepe111150_wls1033_win32.exe). WebLogic installer bundled with coherence and OEPE components can be seen in the screen shot.Oracle Service Bus 11gR1 (11.1.1.3) has built-in caching support for Business Services using coherence. Because of this we will have to install coherence before installing OSB.
To get SOAand OSB running in the same domain, we have to install the SOA and OSB on the above ORACLE_HOME. After installation we should see both the SOA and OSB homes has highlighted in red.We could also see the coherence components which is mandatory for OSB and optional OEPE also installed.
Now we will execute RCU(ofm_rcu_win_11.1.1.3.0_disk1_1of1) to install the schema for SOA and OSB. New RCU contains OSB tables (WLI_QS_REPORT_DATA , WLI_QS_REPORT_ATTRIBUTE) gets loaded as part of SOAINFRA schema
After this step we will have to create soa+osb domain using config wizard. It is located under $WEBLOGIC_HOME\common\bin\config.* (.cmd or .sh as per your platform) .While creating a domain we will select options for SOA Suite and Oracle Service Bus Extension-All Domain Topologies.We can also bundle Enterprise Manager in the same installation or in a different server. Here in this case we will use the enterprise manager in the same domain. So we selected the Enterprise Manager component also.
There is another option for OSB Oracle Service Bus Extension-Single server Domain Topology. This topology is for users who want to use OSB in single server configuration. Currently SOA doesn't support single server topology. So this topology cannot be used with SOA domain but can only be used for stand alone OSB installations.We can continue with domain configuration till we reach the below screen. Following steps are mandatory if we want to have the SOA and OSB run in same JVMwe should select Managed Server, Clusters and Machines as shown below
After this selection you should see a screen with two servers One managed server for OSB and one managed for SOA. Since we would like to have both the servers in one managed server (one JVM) we will have to do one
Oracle Service Bus 11gR1 (11.1.1.3) supports running in same JVM as SOA. This tutorial covers on how to do create domain in of SOA+OSB combined to run in single JVM . For this tutorial we will use a flavor WebLogic installer bundled with both OEPE and coherence components (eg oepe111150_wls1033_win32.exe). WebLogic installer bundled with coherence and OEPE components can be
seen in the screen shot.Oracle Service Bus 11gR1 (11.1.1.3) has built-in
caching support for Business Services using coherence. Because of this
we will have to install coherence before installing OSB.
To get soa and osb running in the same domain, we have to install the SOA and OSB on the above ORACLE_HOME. After installation we should see both the SOA and OSB homes has highlighted in red.We could also see the coherence components which is mandatory for OSB
and optional OEPE also installed.Now we will execute RCU(ofm_rcu_win_11.1.1.3.0_disk1_1of1) to install the schema for SOA and OSB. New RCU contains OSB tables (WLI_QS_REPORT_DATA , WLI_QS_REPORT_ATTRIBUTE) gets loaded as part of SOAINFRA schema
After this step we will have to create soa+osb domain using config wizard. It is located under $WEBLOGIC_HOME\common\bin\config.* (.cmd or .sh as per your platform) .While creating a domain we will select options for SOA Suite and Oracle Service Bus Extension-All Domain Topologies.There is another option for OSB Oracle Service Bus Extension-Single server Domain Topology. This topology is for users who want to use OSB in single server configuration. Currently SOA doesn't support single server topology. So this topology cannot be used with SOA domain but can only be used for stand alone OSB installations.We can continue with domain configuration till we reach the below screen. Following steps are mandatory if we want to have the SOA and OSB run
in same JVMwe should select Managed Server, Clusters and Machines as shown below
After this selection you should see a screen with two servers One managed server for OSB and one managed for SOA.
Since we would like to have both the servers in one managed server (one JVM) we will have to do one important step here. We have to delete either of the servers and rename the other server with deleted server name.eg delete osb_server1 and rename the soa_server1 to osb_server1 or we can also delete soa_server1 and rename the osb_server1 to soa_server1After this steps proceed as as-usual . If we observe created domain we see only one managed server which contains components for both SOA and OSB ($DOMAIN_HOME/startManagedWebLogic_readme.txt).
@rluttikhuizen: Fault handling in Oracle SOA Suite 11g
"When it comes to technical faults," says Oracle ACE Ronald van Luttikhuizen, "you probably do not want to design error handling in the process itself."
(tags: soa oracleace oracle otn)
Adrian Campbell: Enterprise Architecture and Zombies
EA blogger Adrian Campbell invokes Harry Potter, the Lord of the Rings, Black Adder, and "Pride and Prejudice and Zombies" in this interpretation of Gartner's 10 EA pitfalls.
(tags: entarch zombies gartner)
Nathalie Roman: Oracle Forms -- alive and kicking
Oracle ACE Director Nathalie Roman offers details on a recent Oracle Forms Modernization seminar.
(tags: oracle otn oracleace fusionmiddleware soa)
Trond-Arne Undheim: Is Openness at the heart of the EU Digital Agenda?
Trond-Arne Undheim shares some insight into the upcoming OpenForum Europe Summit 2010, to be held in Brussels.
(tags: oracle otn entarch architect)
Chris Raby: Oracle Financial Analytics Presentations and Photos
Chris Raby shares details on Rittman Mead's series of seminars that combine the company's in-depth technical knowledge with a greater focus on the business perspective.
(tags: entarch bi architect oracle otn)
June Oracle Technology Network NEW Member Benefits - books books and more books!!!
Details on how OTN members can get discounts on books from APress, CRC, Pearson, and Packt Publishing.
(tags: oracle otn community books discounts)
Manoj Neelapu: Oracle Service Bus + SOA in same server
Manoj Neelapu's tutorial covers on how to do create a domain in which SOA and Oracle Service Bus run in a single JVM .
(tags: oracle otn soa architect)
I have state and city dropdown list in asp.net 3.5 applicattion .
but i want city as a textbox when i type keyword then autocomplete mode should be occour .
I want to implement it through juery could u please send code for this.
Thanks
Manoj
Hi All,
I want to set up communication between GSM/GPRS modem and a remote server or PC. How to do that? Do we need some application on PC which will communicate to the GSM modem. I want 2 way commuinication. I want to interface GSM/GPRS modem with some microprocessor which has some LCD display. Can anybody help me in this.
Thanks,
Manoj
I am using master page and when i run this page it show error message which is mention below:
a page can have only one server-side form tag
how can i solve or fix this problem.
Manoj
Hi,
I am very new in Linq, I want to select two coloum of table. so tell me how can i write query for that .
I want to fill dropdown list .
Thanks
Manoj
Is there any way to search for a particular string in a column?
I want to search like SELECT * from email_fts WHERE email_fts MATCH 'to:"[email protected]" OR from:"[email protected]"'
Thanks in advance,
Manoj
Hello All,
I want to hide url, like I dont want to write /register.php directly in href tag, I want to write /register/ so It will open the register.php page directly, like that i want to do for all the webpages. Please help me and tell me how to do this.
Thanks,
Manoj
If i implement it in application delegate class then it works fine.
But in Viewcontroller class crash every time.
i implemented try-catch then it will not crash. but not working.
Thanks
Manoj
Hi
i hv designed one user control, and used on my aspx pages whereever needed.
my user control does not have tag.
now i want to call some javascript function onload of this user control.
can anyone tell me how to achieve....... ?
any help appreciated
Regards,
Manoj
I'm working on a website where a logged-in admin needs the ability to upload and manage multiple PDFs from their computer. They'd need to be able to upload/remove the files. Also, there would need to be a way that they can sort the list of uploaded files and save that order so that other visitors to the page would see the list of files in that particular order.
I looked into jQuery Uploadify among other things. Would javascript be the right way to go?
Thanks,
Manoj
I have a asp.net table inside a scrollable div. I have created a matrix table in which the leftmost table cell acts as a fixed column by using css Position:relative. Now i have a ModalPopupExtender Over that table. When I am trying to open that on the left most cell(the cell which is relative) by clicking on it, the left cell disappears.
How can I click the cell keeping it relative?
I sincerely appreciate the Help
- Manoj
Hi All,
I am new to Jboss and deployment of web applications etc. I have two different war files deployed on the same Jboss server. Further they also share some classes which read different properties based on the application settings (Let's call a common class as CommonClass.class which is present in App1.war and App2.war; CommonClass has a member "FIELD1", so both these war files have CommonClass.class each of which reads different properties, into CommonClass.FIELD1). But during run-time when I access FIELD1 in one application (App2.war-CommonClass.FIELD1) it has the value from another application (App1.war-CommonClass.FIELD1).
Is there any way I can explicitly specify so that JBoss treats these classes and fields to be different? so that both these classes can exist in memory yet hold their respective correct values?
Thanks a ton,
Manoj
This blog describes the steps to embed custom OAF region in a workflow notification.1) Create a custom OAF region with parent layout as stackLayout.Based on your requirement assign controller and AM.Following region I am using here for demonstration.Region Name : XXCUSTNotificationRN2) In the workflow create a message attribute.Value: JSP:/OA_HTML/OA.jsp?OAFunc=XXCUST_NOTIFICATION_RN-&audit_id=-&AUDIT_ID-&wfid=-&WF_IDaudit_id and wfid are the parameters I am using inside the OAF region.
Output
This blog describes how to create KFF in OAF Page.Here I am going to demonstrate with standard Job KFF.
I have created a new structure in Job KFF which I am going to use it in my custom OAF page.Please see the below pic.
In the above created structure I have created following segments.You can see the valuesets also.
In the custom page I have created an item with following properties.
In the Segment List property you can give which segments are going to use in the KFF. The syntax for defining it is
KFF Code|Segment1|Segment2|Segment3|Segment4|Segment N
In the table just create a field to hold the code combination.Please click here to see table script.
Code combination will goes into JOB_ID field of the table.
In the processRequest method of the page controller add following code snippet to attach the KFF structure and CCID column to the KFF bean.
Deploy the files belonging to this solution to the server.
Following is the output of the above solution.
If you click on JobId you can see the KFF window.
Code Combination Id has created in the table.
In this blog I will explain how to add a custom DFF in a custom OAF page.I am using XXCUST_DFF_DEMO table to store the DFF values.Also I am using custom DFF named XXCUST_PERSON_DFF.
Following steps needs to be performed to create this solution.
1) Register the custom table in Oracle Application2) Register the DFF3) Define the segments of DFF4) Create BC4J components for OAF and OA Page which holds the DFF
I will explain the steps in detail below.
Register the custom table in Oracle Application
I am using custom DFF here so I have to register the custom table which I am going to capture the values.Please click here to see the table script.
I am using the AD_DD package to register the custom table.Please click here to see the table registration script.
Please verify the table has registered successfully.
Navigation: Application Developer > Application > Database > Table
Table has registered successfully.
Register the DFF
Next step is to register the DFF. Navigate to Application Developer > Flex Field > Descriptive > Register.
Give details as below.
Click on Reference Fields and set the Reference Field as ATTRIBUTE_CATEGORY.
Click on the Columns button to verify that the columns ATTRIBUTE_CATEGORY,ATTRIBUTE1 .... ATTRIBUTE30 are enabled.
DFF has registered successfully.
Define the segments of DFF
Here I am going to define the segments of the DFF.Navigate to Application Developer > Flex Field > Descriptive > Segments.Query for "XXCUST - Person DFF". Uncheck "Freeze Flexfield Definition".
In my DFF the reference field I want to display a value set which has values "Permanent" and "Contractor". So define a value set XXCUST_EMPLOYMENT_TYPE.
Navigation: Application Developer > Flex Field > Descriptive > Validation > Sets
After that assign the values to above created value sets.
Navigation: Application Developer > Flex Field > Descriptive > Validation > Values
Assign XXCUST_EMPLOYMENT_TYPE to Context Field Valueset.
Setup the Context Field Values based on below table.
Context Code
Segments
Global Data Elements
Phone Number
Email
Fax
Contractor
Manager Extension Number
CSP Name
Permanent
Extension Number
Access Card Number
Phone Number,Email and Fax displays always.When user choose Context Value as "Contractor" Manager Extension Number and CSP Name will show.In case of "Permanent" Extension Number and Access Card Number will show.
Assign value set also as follows.
For Global Data Elements following are the segments.
For "Contractor" following are the segments.
For "Permanent" following are the segments.
Check the "Freeze Flexfield Definition" check box and save.Standard concurrent program "Flexfield View Generator" will generate XXCUST_DFF_DEMO_DFV view which we mentioned in the DFF registration step.
Now the DFF has created successfully and ready to use.
Create BC4J components for OAF and OA Page which holds the DFF
Create the BC4J components ( EO,VO and AM) appropriately.Create the page based on the created VO.For DFF create an item of type "flex" with following property.
Note: You cannot create a flex item directly under a messageComponentLayout region, but you can create a messageLayout region under the messageComponentLayout region and add the flex item under the messageLayout region.
In the Segment List property give the segment names which you want to display.The syntax of this is
Global Data Elements|SEGMENT 1|...|SEGMENT N||[Context Code1]|SEGMENT 1|...|SEGMENT N||[Context Code2]|SEGMENT 1|...|SEGMENT N||...
Eg: Global Data Elements|Phone Number|Email|Fax||Contractor|Manager Extension Number|CSP Name||Permanent|Extension Number|Access Card Number
When you change the Context Value corresponding segments will display automatically by PPR in the page.
You can attach partial action to the DFF bean programmatically so that you can identify the action related to DFF.
pageContext.getParameter(EVENT_PARAM) will return "FLEX_CONTEXT_CHANGEDPersonDFF" when you change the DFF Context.
Page is ready and you can test.
When you choose "Contract" following output you can see.
When you choose "Permanent" following output you can see.
Give proper values and press Apply.You can see values populated in the table.
In this blog I will explain how to add a DFF to a existing OAF page through personalization.I am using Supplier Quick Update Page ( /oracle/apps/pos/supplier/webui/SuppSummPG ).
If you want to see how to create DFF please click here.
In this scenario I am using a custom DFF. Following are the details.
Application -> Payables ( Code: SQLAP )Name -> XXCUST_SUPPLIER_DFFTitle -> XXCUST - Supplier DFFTable Name -> AP_SUPPLIERSDFV View name -> XXCUST_SUPPLIER_DFVReference Fields -> ATTRIBUTE_CATEGORY
Following are the Context Field Details.
Prompt -> Supplier TypeValue Set -> XXCUST_SUP_TYPE ( Values : External and Internal )Reference Field -> ATTRIBUTE_CATEGORY
Below table shows the segment details of XXCUST_SUPPLIER_DFF.
Normal
0
false
false
false
EN-US
X-NONE
X-NONE
MicrosoftInternetExplorer4
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";
mso-bidi-font-family:"Times New Roman";}
Code
Segments
Column
Value
Set
Global Data Elements
Identification Number
ATTRIBUTE1
15 Characters
External
Type
ATTRIBUTE2
XXCUST_EXT_SUP_TYPE
Values
Domestic
International
Internal
Department
ATTRIBUTE2
15 Characters
Following steps you need to perform to create flex item in the Quick Update page.
1) Click on Personalize Page.In the Personalize Page click on Complete View.
2) Click on Create Item.( Based on where you want to place the DFF choose appropriate layout).
3) Create flex item with following details.
4) If you want to arrange the item in the page click on Reorder.
Following is the output.
In this blog I will explain how to conditionally set property of an item through personalization.Let me discuss using a business scenario.
My customer wants to make Hold from Payment/ All Invoices column readonly when the Operating Unit is UK ( Configured in a lookup XXCUST_EXCLUDED_ORGS ).
Analysis
First thing is we have to find out the page and business components.
Page: /oracle/apps/pos/supplier/webui/QuickUpdatePGView Object: oracle.apps.pos.supplier.server.SitesVO
Solution
Download oracle.apps.pos.supplier.server.SitesVO from $JAVA_TOP to JDEV_USER_HOME/myprojects.Make sure the transfer mode of the file (See below table).
Normal
0
false
false
false
EN-US
X-NONE
X-NONE
MicrosoftInternetExplorer4
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:"Times New Roman";
mso-fareast-theme-font:minor-fareast;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;}
File Type
Transfer Mode
.xml
ASCII
.class
Binary
.tar
Binary
.java
ASCII
Since there is no VO attribute available to determine the Site Org against the lookup Org we have to add the logic inside a custom VO attribute. So VO extension is required in this scenario.
Add an attribute "isPymtReadOnlyStr" in the existing query.This column returns 'Y' if there is a match in the lookup otherwise 'N'. Create a transient attribute "isPymtReadOnly" of type BOOLEAN.This will return TRUE if "isPymtReadOnlyStr" is "Y" otherwise FALSE.
The reason behind adding the "isPymtReadOnly" is we are setting the item property as readonly through SPEL.It will recognize only BOOLEAN.But SQL query doesn't support BOOLEAN.So we are building a BOOLEAN attribute from the SQL which will use in the personalization layer to set the item property.
Steps
1) Create a new VO xxcust.oracle.apps.pos.supplier.server.XXCUSTSitesVO which extends from oracle.apps.pos.supplier.server.SitesVO. Make sure the binding style should be same as SitesVO.
Create the XXCUSTSitesVO which same query of SitesVO.Later we will add the new attribute to XXCUSTSitesVO.
At this point of time all the existing VO attributes are of Updatable property as "Always".
Press Finish without creating XXCUSTSitesVORowImpl.java
2) Select the XXCUSTSitesVO from JDeveloper Application Navigator. Modify the query and add the extra column.
3) Create a new transient attribute as follows.
4) Once you modify the query all the existing attributes Updatable property will change to Never.So revert that property back to orginal.
5) Create XXCUSTSitesVORowImpl.java by checking the following check box.
6) Add the following code snippet in XXCUSTSitesVORowImpl.java
7) Create the substitution for SitesVO as follows.
Following entry will get created in current jpx file.
<Substitutes> <Substitute OldName ="oracle.apps.pos.supplier.server.SitesVO" NewName ="xxcust.oracle.apps.pos.supplier.server.XXCUSTSitesVO" /> </Substitutes>
8) Migrate XXCUSTSitesVOImpl.java,XXCUSTSitesVORowImpl.java and XXCUSTSitesVO.xml from desktop to actual instance.
9) Migrate the substitution using jpximporter.
10) Restart the server and verify the substitution has done perfectly.
11) Go to /oracle/apps/pos/supplier/webui/QuickUpdatePG and personalize the page.Set the item read only property to ${oa.SitesVO.IsPymtReadOnly}
12) Click on Apply and in next page click on Return to Application.
Verify your output.
Note: You can remove the substitution using following script.Please click here.
This blog describes the various business events related to concurrent requests.In the concurrent program definition screen we can see the various business events which are attached to concurrent processing.
Following are the actual definition of above business events.
Each event will have following parameters.
Create subscriptions to above business events.Before testing enable profile option 'Concurrent: Business Intelligence Integration Enable' to Yes.
ExampleI have created a scenario.Whenever my concurrent request completes normally I want to send out file as attachment to my mail.So following components I have created.1) Host file deployed on $XXCUST_TOP/bin to send mail.It accepts mail ids,subject and output file.(Code here)2) Concurrent Program to send mail which points to above host file.3) Subscription package to oracle.apps.fnd.concurrent.request.completed.(Code here)Choose a concurrent program which you want to send the out file as attachment.Check Request Completed check box.Submit the program.If it completes normally the business event subscription program will send the out file as attachment to the specified mail id.