Guest
Has anyone used one of these e-mail nodes successfully ?
I have a fairly complicated job stream, so I apologize for the lengthy post. The job stream runs 3 Job Stream nodes, 2 of which run Fact builds that create work files that build on/rely on each other that are then used in the last Job Stream which executes a DIM Build. There is a variable called JOB_ERROR that gets passed all along the path of the entire job stream. There are CONDITION Nodes in between each job stream node. On JOB_ERROR = FALSE, execute the next job stream node. On TRUE, execute a Procedure Node that basically echoes a message, and is succeeded by the next condition node. All of these are set to "CONTINUE" on Failure in the Detail tab. In every node, where applicable, the ACTION is to return the value of JOB_ERROR.
I would like the e-mail node to execute if JOB_ERROR is TRUE.
For example, refer to below "diagram"
if ("6)Job Stream Node 1" fails, it sets JOB_ERROR=TRUE.
"(8) Cond. Node 2" has an ACTION defined as <IF JOB_ERROR then RETURN FALSE else RETURN TRUE> and DETAILS - Action on Failure defined as CONTINUE.
If Job_error = TRUE, the Condition Node executes to a value of FALSE, so it passed execution to "(10)ABORT_Procedure Node 2". ACTION here is a LOGMSG, DETAILS-Action on Failure = CONTINUE. JOB_ERROR value has not changed.
Next is the "(11) Cond. Node 3"...ACTION defined as <IF JOB_ERROR then RETURN FALSE else RETURN TRUE> and DETAILS - Action on Failure defined as CONTINUE. Job_Error is still TRUE, so this evaluates to FALSE, so it runs "(13)ABORT Procedure Node 3". Which only has one Successor -- the E_MAIL node.
SO -- if failure occurs anywhere at or after "(6)Job Stream Node 1", I would expect E-MAIL node to execute. DETAILS-Action on Failure= CONTINUE.
For my test, I have forced a failure in "(6)Job Stream Node 1" == bad SQL code in the PST_P procedure node.
I have almost all logging turned on for this job stream.
When I execute it I am getting the failure, but no e-mail.
The log file says
"Email Node 15 'email'; Suspended -> Terminate".
It has the same message for the Abort Procedure Nodes and the END JOB node. None of them appear to execute, even though I have them set to CONTINUE.
Is there another setting or flag I am missing ? Something at a higher level that overrides the Continue option ?
Please help !
The basic diagram translated to text as best I can:
++++++++++++++++++++++++++++++++++++++++++++++++++++++
(1)Start node --> (2)Start Condition Node
if (2)=TRUE ---> (3)Start Job Stream Node 0
if (2)=FALSE ---> (4)ABORT_Procedure Node 0
(3)Start Job Stream Node ---> (5) Cond. Node 1
if (5)=TRUE ---> (6)Job Stream Node 1
if (5)=FALSE ---> (7)ABORT_Procedure Node 1
(4)ABORT_Procedure Node ---> (98) E-Mail Node
(6)Job Stream Node 1 ---> (8) Cond. Node 2
(7)ABORT_Procedure Node 1 ---> (8) Cond. Node 2
if (8)=TRUE ---> (9)Job Stream Node 2
if (8)=FALSE ---> (10)ABORT_Procedure Node 2
(9)Job Stream Node 2 ---> (11) Cond. Node 3
(10)ABORT_Procedure Node 2 ---> (11) Cond. Node 3
if (11)=TRUE ---> (12)Job Stream Node 3
if (11)=FALSE ---> (13)ABORT_Procedure Node 3
(12)Job Stream Node 3 ---> (99) End Job Stream Node
(13)ABORT_Procedure Node 3 ---> (98) E-Mail Node
(98) E-Mail Node ---> (99) End Job Stream Node
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
I have a fairly complicated job stream, so I apologize for the lengthy post. The job stream runs 3 Job Stream nodes, 2 of which run Fact builds that create work files that build on/rely on each other that are then used in the last Job Stream which executes a DIM Build. There is a variable called JOB_ERROR that gets passed all along the path of the entire job stream. There are CONDITION Nodes in between each job stream node. On JOB_ERROR = FALSE, execute the next job stream node. On TRUE, execute a Procedure Node that basically echoes a message, and is succeeded by the next condition node. All of these are set to "CONTINUE" on Failure in the Detail tab. In every node, where applicable, the ACTION is to return the value of JOB_ERROR.
I would like the e-mail node to execute if JOB_ERROR is TRUE.
For example, refer to below "diagram"
if ("6)Job Stream Node 1" fails, it sets JOB_ERROR=TRUE.
"(8) Cond. Node 2" has an ACTION defined as <IF JOB_ERROR then RETURN FALSE else RETURN TRUE> and DETAILS - Action on Failure defined as CONTINUE.
If Job_error = TRUE, the Condition Node executes to a value of FALSE, so it passed execution to "(10)ABORT_Procedure Node 2". ACTION here is a LOGMSG, DETAILS-Action on Failure = CONTINUE. JOB_ERROR value has not changed.
Next is the "(11) Cond. Node 3"...ACTION defined as <IF JOB_ERROR then RETURN FALSE else RETURN TRUE> and DETAILS - Action on Failure defined as CONTINUE. Job_Error is still TRUE, so this evaluates to FALSE, so it runs "(13)ABORT Procedure Node 3". Which only has one Successor -- the E_MAIL node.
SO -- if failure occurs anywhere at or after "(6)Job Stream Node 1", I would expect E-MAIL node to execute. DETAILS-Action on Failure= CONTINUE.
For my test, I have forced a failure in "(6)Job Stream Node 1" == bad SQL code in the PST_P procedure node.
I have almost all logging turned on for this job stream.
When I execute it I am getting the failure, but no e-mail.
The log file says
"Email Node 15 'email'; Suspended -> Terminate".
It has the same message for the Abort Procedure Nodes and the END JOB node. None of them appear to execute, even though I have them set to CONTINUE.
Is there another setting or flag I am missing ? Something at a higher level that overrides the Continue option ?
Please help !
The basic diagram translated to text as best I can:
++++++++++++++++++++++++++++++++++++++++++++++++++++++
(1)Start node --> (2)Start Condition Node
if (2)=TRUE ---> (3)Start Job Stream Node 0
if (2)=FALSE ---> (4)ABORT_Procedure Node 0
(3)Start Job Stream Node ---> (5) Cond. Node 1
if (5)=TRUE ---> (6)Job Stream Node 1
if (5)=FALSE ---> (7)ABORT_Procedure Node 1
(4)ABORT_Procedure Node ---> (98) E-Mail Node
(6)Job Stream Node 1 ---> (8) Cond. Node 2
(7)ABORT_Procedure Node 1 ---> (8) Cond. Node 2
if (8)=TRUE ---> (9)Job Stream Node 2
if (8)=FALSE ---> (10)ABORT_Procedure Node 2
(9)Job Stream Node 2 ---> (11) Cond. Node 3
(10)ABORT_Procedure Node 2 ---> (11) Cond. Node 3
if (11)=TRUE ---> (12)Job Stream Node 3
if (11)=FALSE ---> (13)ABORT_Procedure Node 3
(12)Job Stream Node 3 ---> (99) End Job Stream Node
(13)ABORT_Procedure Node 3 ---> (98) E-Mail Node
(98) E-Mail Node ---> (99) End Job Stream Node
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>