Focal Point
Parallel groups was excuted after the before flowing happened an error

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/1381057331/m/118108044

May 12, 2010, 10:42 PM
swell.wang
Parallel groups was excuted after the before flowing happened an error
Dear all,
this day ,i happened to a strange thing when etl flow running.
the elt flow like this below

schedule ->start ->flow1 ->flow2

1、flow1 contains folw11,flow12,flow13...
2、flow2 is a parallel group that contains flow21,flow22,flow23...(these flow are also contains some flow,just like flow221,flow222,flow223....)
3、flow1 to flow2 ,I have set the condition is Ok Default Condition
there're no problem until this morning .flow12 happend an error ,and the flow13 did not run(that's right),
but the flow2 did run(that's wrong.)

do anyone konw how this happened ?and why?
now the code is like blow.pls help me.3ks all.


 -*DM_JOB_TYPE=1 
-*DM_USERID=Administrator 
-*DM_REQ_ACT=A 
-*DM_REQ_DESC=ETL入口程序 
-*DM_SCHDCODE=230001110000150123590000000000000000000000000000000 
-*DM_SCHDSTRT=20100427 
-*DM_SCHDEND=20150824 
-**Scheduler Type     : Multi-Days. 
-**Day(s) of the Week : Tuesday Wednesday Thursday 
-**Scheduler Start    : 2010/04/27 00:15:00 
-**Scheduler Stop     : 2015/08/24 23:59:00 
 
-*************************************************** 
 
-:START_PRC 
SET PANEL=9999 
SET NWTIMESTAMP=ON 
SET MORE=OFF 
SET 2PARTNAME=ON 
-RUN 
 
-*[Variables to Control Request] 
-SET &&CM__AUTHOR = 'Administrator'; 
-SET &&CM__REQUEST = 'etl_all'; 
-SET &&CM__RETURN = 0; 
-SET &&CM__FOCCPU = &FOCCPU.EVAL; 
-SET &&KILL_RPC = 'N'; 
-SET &DISP_JOB = PTHDAT (7, 'etl_all','A7'); 
-DEFAULT &DBMSERROR = 10000000 
-DEFAULT &STARTAT = 0 
-DEFAULT &STOPAT  = 1000000000 
 
-TYPE  (ICM18122) Request - etl_all (Owner: Administrator) submitted. 
-GOTO :DEP_11; 
 
 
 
-*[Main Condition] 
-*[Main End] 
 
-*[Dependence] 
-:DEP_1 
-TYPE  (ICM18027) DEP_1: flow forecast_increment started. 
 EX CMASAP REQ_NAME = forecast_increment, CM_ASYNC = ON, APPDIR = etltest, DEP_ALIAS = DEP_1, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-GOTO :DEP_8; 
 
-:DEP_8 
-TYPE  (ICM18027) DEP_8: flow pf_yyts started. 
 EX CMASAP REQ_NAME = pf_yyts, CM_ASYNC = ON, APPDIR = etltest, DEP_ALIAS = DEP_8, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-GOTO :DEP_9; 
 
-:DEP_9 
-TYPE  (ICM18027) DEP_9: flow forecast_sum_into started. 
 EX CMASAP REQ_NAME = forecast_sum_into, CM_ASYNC = ON, APPDIR = etltest, DEP_ALIAS = DEP_9, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-GOTO :DEP_10; 
 
-:DEP_10 
-TYPE  (ICM18027) DEP_10: flow rate_order_rate_all started. 
 EX CMASAP REQ_NAME = rate_order_rate_all, CM_ASYNC = ON, APPDIR = etltest, DEP_ALIAS = DEP_10, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-GOTO :ENDDEP 
 
-:DEP_11 
-TYPE  (ICM18027) DEP_11: flow before_deal started. 
 EX CMASAP REQ_NAME = before_deal, CM_ASYNC = OFF, APPDIR = etltest, DEP_ALIAS = DEP_11, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-TYPE  (ICM18039) DEP_11 before_deal Return Code = &&DEP_11_RC 
-IF (&&DEP_11_RC EQ 0) GOTO :DEP_1; 
-GOTO :ENDDEP 
 
-:ENDDEP 
-EXIT 
 
-:STOPRPCS 
-TYPE  (ICM18094) User termination via KILL_RPC flag 
 
END 
-RUN 
SET PANEL=0 
SET NWTIMESTAMP=OFF 
SET MORE=ON 
SET 2PARTNAME=OFF 
-RUN
 

This message has been edited. Last edited by: swell.wang,


webfocus 7.65
windows xp sp3
excel,html ,pdf,and graph
May 12, 2010, 10:59 PM
Waz
Although I like the way it looks, can you please post your code between the
[CODE] 
[/code] Tags


Waz...

Prod:WebFOCUS 7.6.10/8.1.04Upgrade:WebFOCUS 8.2.07OS:LinuxOutputs:HTML, PDF, Excel, PPT
In Focus since 1984
Pity the lost knowledge of an old programmer!

May 12, 2010, 11:07 PM
swell.wang
ok.
3ks
I have changed that


webfocus 7.65
windows xp sp3
excel,html ,pdf,and graph
May 13, 2010, 04:27 PM
Dan Satchell
-IF (&&DEP_11_RC EQ 0) GOTO :DEP_1; 


In your code, I see the necessary return code check only in the DEP_11 step. Simlar RC checks should appear in all steps. Are you certain the condition properties are set for all steps?


WebFOCUS 7.7.05
May 15, 2010, 11:59 PM
swell.wang
hi Dan,
the whole flow is like this:
schedule ->start ->DEP_11 ->DEP_1
->DEP_5
->DEP_8
->DEP_9

when DEP_11 goto -DEP_1/DEP_5/DEP_8/DEP_9 ,I have setted 'Ok Default Condition' condition.
flows in the Dep_11, I set default condition.
should i set the same condition in son flows of Dep_1 ?


webfocus 7.65
windows xp sp3
excel,html ,pdf,and graph
May 16, 2010, 03:26 PM
Dan Satchell
As currently coded, there is nothing to keep DM from proceeding from one step to the next, except &&KILL_RPC. Therefore, yes you need to set the continuation condition for each step.


WebFOCUS 7.7.05
May 17, 2010, 12:06 AM
swell.wang
Dan S,
thanks for you reply.
I will try it again then post the result later.


webfocus 7.65
windows xp sp3
excel,html ,pdf,and graph
May 17, 2010, 07:12 AM
swell.wang
quote:
Originally posted by Dan Satchell:
As currently coded, there is nothing to keep DM from proceeding from one step to the next, except &&KILL_RPC. Therefore, yes you need to set the continuation condition for each step.

hi,Dans,I checked my code again ,but didnot found any question,could you help me check it?

here are the codes of flow Dep_11 .
I wonder that if &&KILL_PRC in the flow etl_all could be used in the son flows of Dep_11(flow name is before_deal).
Just like global variable ?





 -*DM_JOB_TYPE=1 
-*DM_USERID=Administrator 
-*DM_REQ_DESC=数据准备入口 
 
-*************************************************** 
 
-:START_PRC 
SET PANEL=9999 
SET NWTIMESTAMP=ON 
SET MORE=OFF 
SET 2PARTNAME=ON 
-RUN 
 
-*[Variables to Control Request] 
-SET &&CM__AUTHOR = 'Administrator'; 
-SET &&CM__REQUEST = 'before_deal'; 
-SET &&CM__RETURN = 0; 
-SET &&CM__FOCCPU = &FOCCPU.EVAL; 
-SET &&KILL_RPC = 'N'; 
-SET &DISP_JOB = PTHDAT (11, 'before_deal','A11'); 
-DEFAULT &DBMSERROR = 10000000 
-DEFAULT &STARTAT = 0 
-DEFAULT &STOPAT  = 1000000000 
 
-TYPE  (ICM18122) Request - before_deal (Owner: Administrator) submitted. 
-GOTO :DEP_25; 
 
 
 
-*[Main Condition] 
-*[Main End] 
 
-*[Dependence] 
-:DEP_1 
-TYPE  (ICM18027) DEP_1: flow to_tradeinfo started. 
 EX CMASAP REQ_NAME = to_tradeinfo, CM_ASYNC = OFF, APPDIR = etltest, DEP_ALIAS = DEP_1, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-TYPE  (ICM18039) DEP_1 to_tradeinfo Return Code = &&DEP_1_RC 
-IF (&&DEP_1_RC EQ 0) GOTO :DEP_2; 
-GOTO :ENDDEP 
 
 
-:DEP_18 
-TYPE  (ICM18027) DEP_18: flow to_duty_bdm started. 
 EX CMASAP REQ_NAME = to_duty_bdm, CM_ASYNC = OFF, APPDIR = etltest, DEP_ALIAS = DEP_18, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-TYPE  (ICM18039) DEP_18 to_duty_bdm Return Code = &&DEP_18_RC 
-IF (&&DEP_18_RC EQ 0) GOTO :DEP_47; 
-GOTO :ENDDEP 
 
-:DEP_20 
-TYPE  (ICM18027) DEP_20: flow to_duty_cr started. 
 EX CMASAP REQ_NAME = to_duty_cr, CM_ASYNC = OFF, APPDIR = etltest, DEP_ALIAS = DEP_20, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-TYPE  (ICM18039) DEP_20 to_duty_cr Return Code = &&DEP_20_RC 
-IF (&&DEP_20_RC EQ 0) GOTO :DEP_21; 
-GOTO :ENDDEP 
 
-:DEP_21 
-TYPE  (ICM18027) DEP_21: flow to_duty_mdm started. 
 EX CMASAP REQ_NAME = to_duty_mdm, CM_ASYNC = OFF, APPDIR = etltest, DEP_ALIAS = DEP_21, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-TYPE  (ICM18039) DEP_21 to_duty_mdm Return Code = &&DEP_21_RC 
-IF (&&DEP_21_RC EQ 0) GOTO :DEP_28; 
-GOTO :ENDDEP 
 
-:DEP_25 
-TYPE  (ICM18027) DEP_25: flow to_duty_pr started. 
 EX CMASAP REQ_NAME = to_duty_pr, CM_ASYNC = OFF, APPDIR = etltest, DEP_ALIAS = DEP_25, PRNT_REQ = &&CM__REQUEST 
-RUN 
-IF (&&KILL_RPC EQ 'Y') GOTO :STOPRPCS; 
-TYPE  (ICM18039) DEP_25 to_duty_pr Return Code = &&DEP_25_RC 
-IF (&&DEP_25_RC EQ 0) GOTO :DEP_1; 
-GOTO :ENDDEP 
 
 
-:ENDDEP 
-EXIT 
 
-:STOPRPCS 
-TYPE  (ICM18094) User termination via KILL_RPC flag 
 
END 
-RUN 
SET PANEL=0 
SET NWTIMESTAMP=OFF 
SET MORE=ON 
SET 2PARTNAME=OFF 
-RUN 
 



webfocus 7.65
windows xp sp3
excel,html ,pdf,and graph
May 17, 2010, 09:08 PM
Dan Satchell
Your posts are very confusing. In your first post, you want to know why your parallel group ran after flow 12 failed and flow 13 was cancelled, but instead of displaying code for flows 12 and 13, you display code for your parallel group (which I didn't realize until your latest post). In your latest post, I still don't see flows 12 and 13. In addition, there are references to flows 2 and 47, but those flows are not present in the code. Finally, there is a flow 1, which should not happen when you also have a flow 1 in your parallel group.


WebFOCUS 7.7.05
May 20, 2010, 06:57 AM
swell.wang
ok,
3ks dan,
may be i did not express clearly,sorry about that.

ps:I have done this question .

thanks very much .