11g BPM - Setting instance data of a running process instance
Hi,
What is the recommended pattern for interrupting a running process instance and changing an instance variable (data object) ?
Scenario is:
- process instance is launched with an interactive to look at the instance data
- an event is triggered, effectively interrupting the instance and changing the instance data
- next time the user opens the screen for the interactive the data has changed
Any help much appreciated.
cheers
Tony
Hi Dan,
Hope all is good with you. Thanks for the response.
I am using 11.1.1.6 and have tried a few things, one of which was using an event subprocess and correlations but it didnt change the Data Object as I expected. Maybe I got something wrong and will try again. So you expect the following to work:
- Create a simple process with one string data object, a correlation and one interactive showing the data object.
- Map the correlation to an input parameter
- Set the string data object to some initial value
- Create an event subprocess of the above in the automatic handler swimlane (starts with a message and ends with nothing)
- have the implementation of the start message take a string and an id
- map the id to the correlation
- map the string to the data object in the subprocess
- Create the simple process from Enterprise Manager passing in a correlation id
- View the interactive in the BPM Workspace and see the initial string
- Use EM to fire the event subprocess passing the same correlation id and a new string
- View the interactive in the BPM Workspace and see the new string
so, if you set the data object in the event sub process, it is the same value as the initial instance ? or have I misunderstood ?
I will give it another go, just checking my understanding...
cheers
Tony
Similar Messages
-
Error "Lock not set for: Generate index" while running process chain
SAP BI 7.0
SP 17
I am attempting to run a new process chain and the generate index steps are failing with the below errors:
"Lock NOT set forGenerate index"
"RSSM PROCESS INDEX terminated, because InfoCube/DSO object could not be locked."
The process chain just pauses. I let it finish once and it took 2 hours and then it gave the failure messages. I have looked in sm12 and can see the lock records when the process chain is running - unfortunately I can't make much of what's there - everything looks good to me. I also tried creating the indexes manually inside the cube and then re-ran, but still get the same error. Before running the process chain, I can get the indexes to check to green, but then after running the process chain they go back to red. I have attempted many things (including looking at other forum posts), but I still have the error. Please help. Thanks
Edited by: Brett Hutchinson on Feb 10, 2009 7:50 PMHello,
So Create index is getting failed in you PS right?
1)check if any other loads are running to the same CUBE(May be from other PC's also)
Goto Manage of the cube and check, some times it may happen if any Loads are running into cube I mean Load/DTP & roll up may be running.. if so wait till the others Loads(Jobs) get complete then Repeat the failed index
2) If the Create index is running for long time, then got RSDDV--> Select the CUBE then click on BIA index(Maintenance wizard), you can see a message if indexes are running , this will happen only when some one would have tried to generate the indexes manually and it may got failed due to some reason , since u are running it manually u couldn't identify whether it got failed or not unless you got to RSDDV and check. So delete the index here and then rebuild them through PC
Hope it helps! -
Start a new process from a running process BPM 10.3 STUDIO!
Is it possible to create a process in BPM Studio 10.3 from a running process.
The scenario is that we have a process running listening to a jms queue an when a message
arrives it's starts the process that was requested in the in message.
/Getrif you have a Global Automatic activity listening to a JMS queue, here's how you can create a new work item instance in a process using logic in the Global Automatic activity's method. This uses the "Fuego.Lib.ProcessInstance.create()" method shown below:
// "args" is an associative string array (Any[String])
argsIn as Any[String]
// this assumes that the Begin activity has two argument variables
// named "nameArg" and "amountArg" and you're setting them
// to the variables "name" and "amount" respectively
argsIn["someArgVarName"] = "Hello"
argsIn["someBpmObject"] = myBpmObject
// logic here to determine the name of the process to create an instance in
idOfProcess as String
idOfProcess = <hard coded string that has the id (not the name of the process to instantiate>
ProcessInstance.create(processId : "/" + idOfProcess, arguments : argsIn, argumentsSetName : "BeginIn") ProcessInstance is in the Catalog inside Fuego.Lib.
The processId parameter (the "idOfProcess" variable in the above logic) is the thing I most commonly screw up with this. It is the text you see when you right mouse click the process in the Project Navigator tab -> "Properties". Look at the value in the "Id" field and not the "Name" field here (the name without any space characters). Prefix it with a "/" as is shown here and if you've deployed this using an organization unit (OU) then prefix this to the string also.
The third parameter is almost always "BeginIn". Begin activities in a process can have many incoming argument mappings, the default is "BeginIn". To see yours, double click the process's Begin activity and look at the mapping's name in the upper left corner of the dialog.
"argsIn" is the set of incoming argument variables you want passed into the process. A common mistake is to type in the names of the incoming argument variables without the double quotes like this:
// this will *NOT* work
argsIn[someArgVarName] = "Hello"
argsIn[someBpmObject] = myBpmObject
. . .Here is the correct syntax:
// this *WILL* work
argsIn["someArgVarName"] = "Hello"
argsIn["someBpmObject"] = myBpmObject
. . .In this example, the process has two argument variables. It does not matter if the incoming argument variables are primitive type arguments (e.g. String, Integer, Decimal...) or BPM Objects, it is always done the same way. In this example, there is a String incoming argument called "someArgVarName" and a BPM Object incoming argument called "someBpmObject".
Dan -
11g R2 Grid Infrastructure asmca cannot detect 11g R1 ASM instance
I am playing with 11g ASM with XEN (one node on host (or dom0) and another node on vm (or dom1)) and was trying to do a Clusterware + ASM upgrade from 11.0.6 to 11.2.0. After solving some stupid problem, (see [rootupgrade.sh failed on 11g R1 to R2 Upgrade |http://forums.oracle.com/forums/thread.jspa?threadID=1005424&tstart=0]) so that all services can be started in both nodes, I am trying to upgrade ASM.
I am trying asmca. But it is unable to detect the 11g R1 ASM instance. When started in GUI mode, it just offer to create ASM. When started in silent mode for upgrade, it shows:
oracle@penguin-dom0:~> asmca -silent -upgradeASM
Enter ASMSNMP Password
ORA-01034: ORACLE not availableAnd I can't find anything in ASM alert log
ASM is running from 11g R1 home
oracle@penguin-dom0:~> ps -ef|grep asm
oracle 21811 1 0 Jan06 ? 00:00:00 asm_pmon_+ASM1
oracle 21813 1 0 Jan06 ? 00:00:03 asm_vktm_+ASM1
oracle 21817 1 0 Jan06 ? 00:00:02 asm_diag_+ASM1
oracle 21819 1 0 Jan06 ? 00:00:00 asm_ping_+ASM1
oracle 21821 1 0 Jan06 ? 00:00:00 asm_psp0_+ASM1
oracle 21825 1 0 Jan06 ? 00:00:09 asm_dia0_+ASM1
oracle 21827 1 0 Jan06 ? 00:00:05 asm_lmon_+ASM1
oracle 21829 1 0 Jan06 ? 00:00:03 asm_lmd0_+ASM1
oracle 21831 1 0 Jan06 ? 00:00:03 asm_lms0_+ASM1
oracle 21835 1 0 Jan06 ? 00:00:00 asm_mman_+ASM1
oracle 21837 1 0 Jan06 ? 00:00:00 asm_dbw0_+ASM1
oracle 21839 1 0 Jan06 ? 00:00:00 asm_lgwr_+ASM1
oracle 21841 1 0 Jan06 ? 00:00:00 asm_ckpt_+ASM1
oracle 21843 1 0 Jan06 ? 00:00:00 asm_smon_+ASM1
oracle 21845 1 0 Jan06 ? 00:00:01 asm_rbal_+ASM1
oracle 21847 1 0 Jan06 ? 00:00:00 asm_gmon_+ASM1
oracle 21856 1 0 Jan06 ? 00:00:00 asm_lck0_+ASM1
oracle 22021 1 0 Jan06 ? 00:00:00 /u01/app/oradb/product/11.1.0/db_1/bin/racgimon daemon ora.penguin-dom0.ASM1.asm11g R1 Listener is serving to ASM
oracle@penguin-dom0:~> lsnrctl status
LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 07-JAN-2010 00:33:44
Copyright (c) 1991, 2007, Oracle. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
Alias LISTENER_PENGUIN-DOM0
Version TNSLSNR for Linux: Version 11.1.0.6.0 - Production
Start Date 06-JAN-2010 22:29:51
Uptime 0 days 2 hr. 3 min. 53 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oradb/product/11.1.0/db_1/network/admin/listener.ora
Listener Log File /u01/app/oradb/diag/tnslsnr/penguin-dom0/listener_penguin-dom0/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.2.201)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.2.101)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM1", status READY, has 1 handler(s) for this service...
Service "+ASM_XPT" has 1 instance(s).
Instance "+ASM1", status READY, has 1 handler(s) for this service...
The command completed successfullyNo tnsnames.ora in 11g R1 or Grid Infrastructure home.
Setting ORACLE_HOME to 11g R1 home and ORACLE_SID=+ASM1, I can connect to ASM instance as sysasm using R1 sqlplus
oracle@penguin-dom0:~> export ORACLE_HOME=/u01/app/oradb/product/11.1.0/db_1
oracle@penguin-dom0:~> export ORACLE_SID=+ASM1
oracle@penguin-dom0:~> $ORACLE_HOME/bin/sqlplus / as sysasm
SQL*Plus: Release 11.1.0.6.0 - Production on Thu Jan 7 00:40:15 2010
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
With the Partitioning, Real Application Clusters, Oracle Label Security, OLAP,
Data Mining and Real Application Testing options
SQL> Tried different combinations of ORACLE_HOME (11g R1 db home, grid infrastructure home, 11g R1 clusterware home) and ORACLE_SID (+ASM, +ASM1), but asmca still cannot connect to ASM instance.
Some documents mentioned to configure 'Oracle Restart' and the ASM instance name is +ASM. Are these necessary requirements? If so, where can I find information on Oracle Restart and how to rename the ASM instance? Besides, the documents said it is recommanded to upgrade with OUI, but I've already installed the software, can I still use OUI?
OS: OpenSUSE 11.1, XEN DOM0 and DOM1
Oracle: 11.0.6 upgrade to 11.2.0
Edited by: thtsang on Jan 6, 2010 8:47 AM
Edited by: thtsang on Jan 6, 2010 5:33 PMHi Thtsang,
sorry for not coming back to you earlier and thanks for "the helpful".
So, are you saying that after you have removed all the environment variables, you still got the error message "ORA-01034: ORACLE not available"? I thought you got an "ASM upgrade failed", because ASM was down at the time of the upgrade, which you then corrected saying: "In fact, ASM instance was started from Grid Infrastructure home.". Overall, I need to say that I am a bit confused to be honest.
The alert log entry sounds promising, although, one would need to see more context. For: "But when I use crsctl / srvctl to start ASM, it is still running in 11g R1 Oracle Home." So, something went wrong with the update. For: "BTW, if asmca does not work for me, can I upgrade manually?" - ASMCA is the tool that will perform an ASM upgrade. You can call it interactively, but you will have to use it.
Support note ID 950200.1 - "ASM 11gR2: How To Upgrade An ASM Instance To Release 11gR2 (11.2.0.1.0)?" describes an ASM upgrade to 11.2. Maybe this note can help you and if it is only to analyze what stage your cluster is in right now. It sounds like, this would be first thing that we need to find out.
Good luck. Thanks,
Markus -
Setting instance configuration. from Dev Studio
Hi All,
I am struggling with instance setting from developer studio, I have set host name and port from Tool>IAP Workbench Setting option.
Please find the error detail.
Setting instance configuration..
Endeca parsing resource: Hibernate error: could not get or update next value
IAP workbench Status: RUNNING
Please share with your experience if any one faced this before.
Thanks,
Sunil NHi Pravin,
I am getting this exception on webstudio.log file.
java.sql.SQLException: An SQL data change is not permitted for a read-only connection, user or database.
at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source)
at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown Source)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
at org.hibernate.id.TableGenerator.doWorkInCurrentTransaction(TableGenerator.java:156)
at org.hibernate.engine.TransactionHelper$1Work.doWork(TransactionHelper.java:38)
... 52 more
Caused by: java.sql.SQLException: An SQL data change is not permitted for a read-only connection, user or database.
at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source)
... 64 more
2012-10-25 08:17:26,569 WARN com.endeca.manager.web.SetAppConfigServlet:120 - Error parsing resource: Hibernate error: could not get or update next value
com.endeca.manager.ConfigStoreException: Error parsing resource: Hibernate error: could not get or update next value
at com.endeca.manager.core.ConfigStore.validate(ConfigStore.java:143)
at com.endeca.manager.core.ConfigStore.setResources(ConfigStore.java:75)
at com.endeca.manager.web.SetAppConfigServlet.processRequest(SetAppConfigServlet.java:103)
at com.endeca.manager.web.ManagerServlet.doPost(ManagerServlet.java:117)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
at java.lang.Thread.run(Thread.java:619)
Any idea on this.
Thank,
Sunil -
Problem while having a large set of data to work on!
Hi,
I am facing great problem with processing large set of data. I have a requirement in which i'm supposed to generate a report.
I have a table and a MView, which i have joined to reduce the number of records to process. The MView holds 200,00,000 records while the table 18,00,000. Based on join conditions and where clause i'm able to break down the useful data to approx 4,50,000 and i'm getting 8 of my report columns from this join. I'm dumping these records into the table from where i'll be generating the report by spooling.
Below is the block which takes 12mins to insert into the report table MY_ACCOUNT_PHOTON_DUMP:
begin
dbms_output.put_line(to_char(sysdate,'hh24:mi:ss'));
insert into MY_ACCOUNT_PHOTON_DUMP --- Report table
(SUBSCR_NO, ACCOUNT_NO, AREA_CODE, DEL_NO, CIRCLE, REGISTRATION_DT, EMAIL_ID, ALT_CNTCT_NO)
select crm.SUBSCR_NO, crm.ACCOUNT_NO, crm.AREA_CODE, crm.DEL_NO, crm.CIRCLE_ID,
aa.CREATED_DATE, aa.EMAIL_ID, aa.ALTERNATE_CONTACT
from MV_CRM_SUBS_DTLS crm, --- MView
(select /*+ ALL_ROWS */ A.ALTERNATE_CONTACT, A.CREATED_DATE, A.EMAIL_ID, B.SUBSCR_NO
from MCCI_PROFILE_DTLS a, MCCI_PROFILE_SUBSCR_DTLS b
where A.PROFILE_ID = B.PROFILE_ID
and B.ACE_STATUS = 'N'
) aa --- Join of two tables giviing me 18,00,000 recs
where crm.SUBSCR_NO = aa.SUBSCR_NO
and crm.SRVC_TYPE_ID = '125'
and crm.END_DT IS NULL;
INTERNET_METER_TABLE_PROC_1('MCCIPRD','MY_ACCOUNT_PHOTON_DUMP'); --- calling procedure to analyze the report table
COMMIT;
dbms_output.put_line(to_char(sysdate,'hh24:mi:ss'));
end; --- 12 min 04 secFor the rest of the 13 columns required i am running a block which has a FOR UPDATE cursor on the report table:
declare
cursor cur is
select SUBSCR_NO, ACCOUNT_NO, AREA_CODE, DEL_NO,
CIRCLE, REGISTRATION_DT, EMAIL_ID, ALT_CNTCT_NO
from MCCIPRD.MY_ACCOUNT_PHOTON_DUMP --where ACCOUNT_NO = 901237064
for update of
MRKT_SEGMNT, AON, ONLINE_PAY, PAID_AMNT, E_BILL, ECS, BILLED_AMNT,
SRVC_TAX, BILL_PLAN, USAGE_IN_MB, USAGE_IN_MIN, NO_OF_LOGIN, PHOTON_TYPE;
v_aon VARCHAR2(10) := NULL;
v_online_pay VARCHAR2(10) := NULL;
v_ebill VARCHAR2(10) := NULL;
v_mkt_sgmnt VARCHAR2(50) := NULL;
v_phtn_type VARCHAR2(50) := NULL;
v_login NUMBER(10) := 0;
v_paid_amnt VARCHAR2(50) := NULL;
v_ecs VARCHAR2(10) := NULL;
v_bill_plan VARCHAR2(100):= NULL;
v_billed_amnt VARCHAR2(10) := NULL;
v_srvc_tx_amnt VARCHAR2(10) := NULL;
v_usg_mb NUMBER(10) := NULL;
v_usg_min NUMBER(10) := NULL;
begin
dbms_output.put_line(to_char(sysdate,'hh24:mi:ss'));
for rec in cur loop
begin
select apps.TTL_GET_DEL_AON@MCCI_TO_PRD591(rec.ACCOUNT_NO, rec.DEL_NO, rec.CIRCLE)
into v_aon from dual;
exception
when others then
v_aon := 'NA';
end;
SELECT DECODE(COUNT(*),0,'NO','YES') into v_online_pay
FROM TTL_DESCRIPTIONS@MCCI_TO_PRD591
WHERE DESCRIPTION_CODE IN(SELECT DESCRIPTION_CODE FROM TTL_BMF_TRANS_DESCR@MCCI_TO_PRD591
WHERE BMF_TRANS_TYPE
IN (SELECT BMF_TRANS_TYPE FROM
TTL_BMF@MCCI_TO_PRD591 WHERE ACCOUNT_NO = rec.ACCOUNT_NO
AND POST_DATE BETWEEN
TO_DATE('01-'||TO_CHAR(SYSDATE,'MM-YYYY'),'DD-MM-YYYY') AND SYSDATE
AND DESCRIPTION_TEXT IN (select DESCRIPTION from fnd_lookup_values@MCCI_TO_PRD591 where
LOOKUP_TYPE='TTL_ONLINE_PAYMENT');
SELECT decode(count( *),0,'NO','YES') into v_ebill
FROM TTL_CUST_ADD_DTLS@MCCI_TO_PRD591
WHERE CUST_ACCT_NBR = rec.ACCOUNT_NO
AND UPPER(CUSTOMER_PREF_MODE) ='EMAIL';
begin
select ACC_SUB_CAT_DESC into v_mkt_sgmnt
from ttl_cust_dtls@MCCI_TO_PRD591 a, TTL_ACCOUNT_CATEGORIES@MCCI_TO_PRD591 b
where a.CUST_ACCT_NBR = rec.ACCOUNT_NO
and a.market_code = b.ACC_SUB_CAT;
exception
when others then
v_mkt_sgmnt := 'NA';
end;
begin
select nvl(sum(TRANS_AMOUNT),0) into v_paid_amnt
from ttl_bmf@MCCI_TO_PRD591
where account_no = rec.ACCOUNT_NO
AND POST_DATE
BETWEEN TO_DATE('01-'||TO_CHAR(SYSDATE,'MM-YYYY'),'DD-MM-YYYY')
AND SYSDATE;
exception
when others then
v_paid_amnt := 'NA';
end;
SELECT decode(count(1),0,'NO','YES') into v_ecs
from ts.Billdesk_Registration_MV@MCCI_TO_PRD591 where ACCOUNT_NO = rec.ACCOUNT_NO
and UPPER(REGISTRATION_TYPE ) = 'ECS';
SELECT decode(COUNT(*),0,'PHOTON WHIZ','PHOTON PLUS') into v_phtn_type
FROM ts.ttl_cust_ord_prdt_dtls@MCCI_TO_PRD591 A, ttl_product_mstr@MCCI_TO_PRD591 b
WHERE A.SUBSCRIBER_NBR = rec.SUBSCR_NO
and (A.prdt_disconnection_date IS NULL OR A.prdt_disconnection_date > SYSDATE )
AND A.prdt_disc_flag = 'N'
AND A.prdt_nbr = b.product_number
AND A.prdt_type_id = b.prouduct_type_id
AND b.first_level LIKE 'Feature%'
AND UPPER (b.product_desc) LIKE '%HSIA%';
SELECT count(1) into v_login
FROM MCCIPRD.MYACCOUNT_SESSION_INFO a
WHERE (A.DEL_NO = rec.DEL_NO or A.DEL_NO = ltrim(rec.AREA_CODE,'0')||rec.DEL_NO)
AND to_char(A.LOGIN_TIME,'Mon-YYYY') = to_char(sysdate-5,'Mon-YYYY');
begin
select PACKAGE_NAME, BILLED_AMOUNT, SERVICE_TAX_AMOUNT, USAGE_IN_MB, USAGE_IN_MIN
into v_bill_plan, v_billed_amnt, v_srvc_tx_amnt, v_usg_mb, v_usg_min from
(select rank() over(order by STATEMENT_DATE desc) rk,
PACKAGE_NAME, USAGE_IN_MB, USAGE_IN_MIN
nvl(BILLED_AMOUNT,'0') BILLED_AMOUNT, NVL(SRVC_TAX_AMNT,'0') SERVICE_TAX_AMOUNT
from MCCIPRD.MCCI_IM_BILLED_DATA
where (DEL_NUM = rec.DEL_NO or DEL_NUM = ltrim(rec.AREA_CODE,'0')||rec.DEL_NO)
and STATEMENT_DATE like '%'||to_char(SYSDATE,'Mon-YY')||'%')
where rk = 1;
exception
when others then
v_bill_plan := 'NA';
v_billed_amnt := '0';
v_srvc_tx_amnt := '0';
v_usg_mb := 0;
v_usg_min := 0;
end;
-- UPDATE THE DUMP TABLE --
update MCCIPRD.MY_ACCOUNT_PHOTON_DUMP
set MRKT_SEGMNT = v_mkt_sgmnt, AON = v_aon, ONLINE_PAY = v_online_pay, PAID_AMNT = v_paid_amnt,
E_BILL = v_ebill, ECS = v_ecs, BILLED_AMNT = v_billed_amnt, SRVC_TAX = v_srvc_tx_amnt,
BILL_PLAN = v_bill_plan, USAGE_IN_MB = v_usg_mb, USAGE_IN_MIN = v_usg_min, NO_OF_LOGIN = v_login,
PHOTON_TYPE = v_phtn_type
where current of cur;
end loop;
COMMIT;
dbms_output.put_line(to_char(sysdate,'hh24:mi:ss'));
exception when others then
dbms_output.put_line(SQLCODE||'::'||SQLERRM);
end;The report takes >6hrs. I know that most of the SELECT queries have ACCOUNT_NO as WHERE clause and can be joined, but when i joining few of these blocks with the initial INSERT query it was no better.
The individual queries within the cursor loop dont take more then 0.3 sec to execute.
I'm using the FOR UPDATE as i know that the report table is being used solely for this purpose.
Can somebody plz help me with this, i'm in desperate need of good advice here.
Thanks!!
Edited by: user11089213 on Aug 30, 2011 12:01 AMHi,
Below is the explain plan for the original query:
select /*+ ALL_ROWS */ crm.SUBSCR_NO, crm.ACCOUNT_NO, ltrim(crm.AREA_CODE,'0'), crm.DEL_NO, >crm.CIRCLE_ID
from MV_CRM_SUBS_DTLS crm,
(select /*+ ALL_ROWS */ A.ALTERNATE_CONTACT, A.CREATED_DATE, A.EMAIL_ID, B.SUBSCR_NO
from MCCIPRD.MCCI_PROFILE_DTLS a, MCCIPRD.MCCI_PROFILE_SUBSCR_DTLS b
where A.PROFILE_ID = B.PROFILE_ID
and B.ACE_STATUS = 'N'
) aa
where crm.SUBSCR_NO = aa.SUBSCR_NO
and crm.SRVC_TYPE_ID = '125'
and crm.END_DT IS NULL
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1481K| 100M| | 245K (5)| 00:49:09 |
|* 1 | HASH JOIN | | 1481K| 100M| 46M| 245K (5)| 00:49:09 |
|* 2 | HASH JOIN | | 1480K| 29M| 38M| 13884 (9)| 00:02:47 |
|* 3 | TABLE ACCESS FULL | MCCI_PROFILE_SUBSCR_DTLS | 1480K| 21M| | 3383 (13)| 00:00:41 |
| 4 | INDEX FAST FULL SCAN| SYS_C002680 | 2513K| 14M| | 6024 (5)| 00:01:13 |
|* 5 | MAT_VIEW ACCESS FULL | MV_CRM_SUBS_DTLS_08AUG | 1740K| 82M| | 224K (5)| 00:44:49 |
Predicate Information (identified by operation id):
1 - access("CRM"."SUBSCR_NO"="B"."SUBSCR_NO")
2 - access("A"."PROFILE_ID"="B"."PROFILE_ID")
3 - filter("B"."ACE_STATUS"='N')
5 - filter("CRM"."END_DT" IS NULL AND "CRM"."SRVC_TYPE_ID"='125')Whereas for the modified MView query, the plane remains the same:
select /*+ ALL_ROWS */ crm.SUBSCR_NO, crm.ACCOUNT_NO, ltrim(crm.AREA_CODE,'0'), crm.DEL_NO, >crm.CIRCLE_ID
from (select * from MV_CRM_SUBS_DTLS
where SRVC_TYPE_ID = '125'
and END_DT IS NULL) crm,
(select /*+ ALL_ROWS */ A.ALTERNATE_CONTACT, A.CREATED_DATE, A.EMAIL_ID, B.SUBSCR_NO
from MCCIPRD.MCCI_PROFILE_DTLS a, MCCIPRD.MCCI_PROFILE_SUBSCR_DTLS b
where A.PROFILE_ID = B.PROFILE_ID
and B.ACE_STATUS = 'N'
) aa
where crm.SUBSCR_NO = aa.SUBSCR_NO
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1481K| 100M| | 245K (5)| 00:49:09 |
|* 1 | HASH JOIN | | 1481K| 100M| 46M| 245K (5)| 00:49:09 |
|* 2 | HASH JOIN | | 1480K| 29M| 38M| 13884 (9)| 00:02:47 |
|* 3 | TABLE ACCESS FULL | MCCI_PROFILE_SUBSCR_DTLS | 1480K| 21M| | 3383 (13)| 00:00:41 |
| 4 | INDEX FAST FULL SCAN| SYS_C002680 | 2513K| 14M| | 6024 (5)| 00:01:13 |
|* 5 | MAT_VIEW ACCESS FULL | MV_CRM_SUBS_DTLS_08AUG | 1740K| 82M| | 224K (5)| 00:44:49 |
Predicate Information (identified by operation id):
1 - access("CRM"."SUBSCR_NO"="B"."SUBSCR_NO")
2 - access("A"."PROFILE_ID"="B"."PROFILE_ID")
3 - filter("B"."ACE_STATUS"='N')
5 - filter("CRM"."END_DT" IS NULL AND "CRM"."SRVC_TYPE_ID"='125')Also took your advice and tried to merge all the queries into single INSERT SQL, will be posting the results shortly.
Edited by: BluShadow on 30-Aug-2011 10:21
added {noformat}{noformat} tags. Please read {message:id=9360002} to learn to do this yourself -
Adobe Acrobat XPro - Unable to set automatic date in form
Hello -
I created a layout in Indesign and brought it into Adobe Acrobat XPro to create a form.
I have not been able to get the form to automatically populate a date when it opens. In fact, I am unable to even type in the box now. I entered this code under validate in the text properties:
var f = this.getField("Today");
f.value = util.printd("m/d/yy", new Date());
I also entered this code in another area:
Under page properties, page thumbnails and page properties. Under actions - Select trigger - page open. I added a run a javascript action:
var f = this.getField("Today");
f.value = util.printd("m/d/yy", new Date());
Please help. Thanks so much!You can use the following code to catch and display the error message:
try{
var f = this.getField("Today");
f.value = util.printd("m/d/yy", new Date());
} catch(e) {
var cMsg = "An error occurred setting the date\n";
for(var i in e) {
cMsg += "\n" + i + ": " + e[i];
app.alert(cMsg, 1, 0);
If the error message displays "f is null" then you have a missing field or are using the wrong field name. -
Hi
While calling From Oracle Forms 11g patch set 2(11.1.1.3.0) to Oracle Reports 11g patch set 2(11.1.1.3.0) I found unable to run report error
But its finely working in 10g. The Place of error is in find_report_object
Is any solution to resolve this problem like any registry setting or patches to solve this problem
Please guide me
Regards
Murali N SI was able to download it from this link:
[http://download-llnw.oracle.com/otn/java/jdeveloper/11.1.1.3.0/jdevstudio11113install.exe]
on the general 11g Fusion download page at:
[http://www.oracle.com/technology/software/products/middleware/index.html]
Although the site does appear to be having problems. I got intermittent errors of the page/server not being available. -
How can I set my date and time to ebay network time server?
In the system preferences I would like to set the date and time to ebay UK time?
I thought a quick google would be bring up the server and I can't find it.
At the bottom of every ebay page there is a link to official ebay time
But its not a live feed of time to get it to the second.
I want it to be accurate so that I can use applescript to snipe bargins.
Many Thanks
MattJust trying to go along the free route. I found Garage Buy This doesn't work to well but lets you create an applescript and enters the auction into ical. Then you can set ical to run the script once it gets closer to the time.
Ical only lets you set a time of a minute before the date. So you have to edit the script to add a Delay 59 to have it run 1 second before. From a few refreshes of the time page it looks like ebay time is a second behind, that could be easily be due to time to load the page. anyway i'll opt for a delay of 57secs and give that a try. -
How can I plot two sets of data points in 3d graph?
I am trying to plot two sets of data points in 3d graph. I also need to make a set of data with one color and the other set with a different color. For example, I need to plot 10 (x,y,z) data points in 3d. Maybe 6 points need to be blue, and the other 4 red. Could you tell me how?
What is your LabVIEW version? (things are a bit different in 8.6).
Basically, you create multiple instances of the VI that gets placed automatically when you drop the 3D graph and then wire a different number to the plot ID at the bottom.
You define all the plots (color, style) via the properties dialog.
Have a look at my example posted here. One plot is "blue dots" and one is a "shaded surface". See how far you get.
Message Edited by altenbach on 04-23-2009 01:11 PM
LabVIEW Champion . Do more with less code and in less time . -
Cut off some data from a set of data
I have a set of data our of from power spectral density measurement.
I want to curve fitting with the data.
But I want to cut off below a certain frequency. For instance, the PSD
data
contains {(1,10),(2,3),(3,4),(4,3),...} and I want to fit from 3 Hz
{(3,4),(4,3)...}.
I tried high pass filter but it does not change. I tried several ways such
as
get time stamp and find the index for the element and remove the array
using
'Array'tools. It cuts off the data sets that I wanted to remove but it
does
not remove the frequency values. So it works like {(1,4),(2,3)....}
instead of
{(3,4),(2,3)..}. Please let me know how I can make this work.
Thanks.
Attachments:
new-PSD-factor-v3.vi 522 KBHey Arrow,
I think I understand your question better now. You'll want to use the "delete from array.vi". It can be found by going to all functions>>Array. You'll need to input the array to be edited, which index to begin deleting from and how many elements to delete. From your application it sounds like you'll want to start from element zero and delete the number of elements that corresponds to 0 through 4 Hz.
In addition, you'll need to create an array that represents the frequencies you want to plot (4 1000 Hz or your upper limit). There'll need to be one frequency on your x axis for each element in your PSD array. Then bundle the two arrays together and plot them on an XY plot. You can use the "bundle" vi to accomplish this. You can find examples using clusters from help>>find examples. Then navigate to Fundamentals>>Arrays and Clusters.
Hope this helps out.
Chris Cilino
National Instruments
LabVIEW Product Marketing Manager
Certified LabVIEW Architect -
How to set the date picker to display only months?
I am trying to set the date picker in SSRS 2012 to allow the user just to select the months: and when I run my store procedure I get a can't convert data type from nvarchar to datetime. If I don't comment out of the Where Clause, nothing
is returned if I leave the Where Clause in.
Alter
PROCEDURE RollingReportList
AS
BEGIN
SET NOCOUNT
ON;
SELECT
distinct
[ItemDescription]
,[QuantityOrdered]
,QuanitityCost
= [QuantityOrdered]
* [Price]
,Convert(datetime,(CONVERT(CHAR(4),PE.[LastUpdated],107)
+ '-'
+ (right(CONVERT(CHAR(4),PE.[LastUpdated],112),2))))
as CurrentMonth
,Convert(datetime,(CONVERT(CHAR(3),Datename(MONTH,DATEADD(MONTH,1,PE.LastUpdated)),107)
+ '-'
+ (right(CONVERT(CHAR(4),PE.[LastUpdated],112),2))))
as NextMonth
,Name
FROM
[HQStore].[dbo].[PurchaseOrderEntry]
as PE
inner join
[HQStore].[dbo].[PurchaseOrder]
as PO
on PE.[PurchaseOrderID]
= PO.[ID]
inner join
[HQStore].[dbo].[Store]
as ST
on PE.[storeid]=ST.ID
Where
(@Start
= '01/01/2009'
and @Last
= '12/31/2010')
End
Go
Exec
RollingReportList
Any Help?Try the below....
Where (@Start = '20090101' and @Last = '20101231')
SELECT FORMAT(getdate(), 'MM')
02
Best Regards,Uri Dimant SQL Server MVP,
http://sqlblog.com/blogs/uri_dimant/
MS SQL optimization: MS SQL Development and Optimization
MS SQL Consulting:
Large scale of database and data cleansing
Remote DBA Services:
Improves MS SQL Database Performance
SQL Server Integration Services:
Business Intelligence -
Hi all,
I want to set minimum date with an item however seems like there is slight mistake, can please someone help me
I have the application in apex.oracle.com
workspace = GBT
user = apex
password = apex
Application is TestDate, Page1
I have 2 items
P1_FROM is a date picker
P1_TO is a date picker
P1_TO should not be earlier than P1_FROM
So in P1_TO I have following setting
Highlighted Date &P1_FROM.
Minimum Date &P1_FROM.
When I run it, it is still allow earlier than P1_FROM value.
Can please help me with Highlighted Date and Minimum Date setting.
Regards,
SiereI ran into the same problem trying to set the default date on a date item and found a workaround.
I took the start date from one item (P7_REQ_PICKUP_DATE) and loaded it as the default date for another date item (P7_REQ_RETURN_DATE) via an onChange javascript dynamic action:
var d1 = $x('P7_REQ_PICKUP_DATE').value;
var d = $.datepicker.parseDate("dd-M-yy", d1);
apex.jQuery("#P7_REQ_RETURN_DATE").datepicker("option", "defaultDate", new Date(d));
I'm sure you can substitute defaultDate with minDate and maxDate ...
Tried your workspace but auth error...
Ricker
Edited by: tread on Sep 28, 2011 12:50 PM -
Setting Due Date for task using business days
While this may not be new news to many, I found little information on how to add a certain number of business days to determine the due date for a task to be used in a workflow. For SharePoint 2010 environments that cannot run custom code, I have
found a solution that utilizes two additional columns in the task list. The first column I named
Deadline (a number with no decimal places), which will contain the number of business days until a task is to be completed.
The second I named Business Deadline (a calculated column returning a
Date and Time). The formula for the calculated column is:
=[Modified]+INT(ROUNDDOWN([Deadline]/5,0)*7)+ IF(WEEKDAY([Modified]+MOD([Deadline],5))<MOD([Deadline],5), IF(WEEKDAY([Modified]+MOD([Deadline],5)+2)=7,MOD([Deadline],5)+4, IF(WEEKDAY([Modified]+MOD([Deadline],5)+2)=1,MOD([Deadline],5)+3,MOD([Deadline],5)+2)), IF(WEEKDAY([Modified]+MOD([Deadline],5))=7,MOD([Deadline],5)+2, IF(WEEKDAY([Modified]+MOD([Deadline],5))=1,MOD([Deadline],5)+1,MOD([Deadline],5))))
The workflow on create in the task list then is:
Set Deadline to {number of business days}
then Wait for Deadline to equal {number of business days} 'Necessary to ensure the Business Deadline has been set
'then Set Due Date to CurrentItem:Business Deadline
Hope this helps a few others that are beating their heads against their desks like I was.Hi,
Glad to hear that you solve this issue, thanks for your sharing.
Thanks,
Linda Li
Linda Li
TechNet Community Support -
Recommendation for setting up Data Guard for EBS R12 12.1.3
Hello Experts,
I would like to get some experts opinion and recommendation on setting up Data GUARD for EBS R12.1.3 running on Linux based systems.
Firstly I would wanna let you all know that I am just geek in this subject matter so do excuse me for any mistakes.
While we are planning on setting up Data Gurad fro R12 what are the best practices to consider ?.
We have 2 node rac enabled database and would wanna have non-rac based physical standby, based on this I believe that having db tier on remote or standby site is enough ?
if db node is enough for standby location what are things to be done when a fail over / switch over / role transitioned to standby for the app node from primary site to point db on the
standby location or do we have to have both apps and db tier @ stand by location
--However having a apps tier/node at standby will be of no use as we are planing to run db on mounstate meaning not a active data guard setup.
Please do reply with your recommendation/suggestions/pointers
Thanks in Advance.Service Provider Access resulted in exception 'oracle.apps.fnd.soa.util.SOAException: SystemError: Error while sending message to server. http://ec2-107-22-78-224.compute-1.amazonaws.com:8000/webservices/SOAProvider/EbizAuth?Generate=1132&soa_ticket=Tu2z7GYoWPwq-VdgimKRFg..' when attempting to perform 'GENERATE'. Please view Service Provider logs for more details
Can you find any details about the error in the log?
I have looked at the following Note as well:
Error using the Generate WSDL Button in Oracle E-Business Suite Integrated Soa Gateway Release 12.1.1 [ID 1090946.1]Did the doc help?
Any one know what may be causing this issue? Do we have to do additional setup for SOA gateway after the standard install of the OVM? I tried to follow the steps in the note above but I do not see any entry for "<jdbc_url oa_var="s_apps_jdbc_connect_descriptor"/>" in the file data-sources.xml.
Anyone have any ideas?Have you reviewed these docs?
Oracle E-Business Suite Integrated SOA Gateway Troubleshooting Guide, Release 12 [ID 726414.1]
Oracle E-Business Suite Integrated SOA Gateway 12.1.1 Consolidated One-Off [ID 815196.1]
Thanks,
Hussein
Maybe you are looking for
-
I am positive this has to be simple. How can you programmatically disable/enable a menuitem in Flex 2. I have been beating my head against the wall for two hours now. Any help would be appreciated. Thanks so much for any help! CurtKauf
-
No High Quality Setting for HDV 1080i on QT Export?
hello. a quick question. when exporting a footage from fce as a quicktime movie in hdv 1080i format, why is it that there is no section for quality settings? because it automatically puts "medium" next to the quality button, whereas i'd naturally wou
-
HT4623 How to update Apps in iPad from current country location to previous purchased country?
When attempt update some Apps outside the country where the advice being bought, I found a window reading: ACCOUNT NOT IN THIS STORE - Your account is not valid for use in the Canadian store. You must switch to the Hong Kong store before purchasing.
-
Error in reading table TE417(during print preview)
Hi, We have developed the solution to adjust the legacy invoics which has been created long back before the data will get migrated into SAP or before the Contract Move-In.We are able to create the billing document for the exactly same old legacy bill
-
How do you whiten teeth using iPhoto tools?
How do you whiten teeth using iPhoto tools?