Sequence - Possibility of Shell Script

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

ds_search2008
Participant
Posts: 75
Joined: Thu Nov 27, 2008 10:12 am

Post by ds_search2008 »

Len to be honest its very much hard to understand the code under job properties dialog box. Could you please suggest me a simple option to trace the problem.

Thank you
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

ds_search2008 wrote:The Sequencer mode is set to "Any" only. I have check it. However I'm receiving SeqActJobs..JobControl (@Coordinator): Note: Sequencer 'Sequencer' was entered, but never exited log message.
As noted, the only time you should get a message like that is for an "All" Sequencer where not all input links "fired". I fear we're missing something quite fundamental here as everything you've posted now looks fine and doesn't explain why two jobs run rather than one and why you're seeing this log message. :?
-craig

"You can never have too many knives" -- Logan Nine Fingers
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

ds_search2008 wrote:Len to be honest its very much hard to understand the code under job properties dialog box. Could you please suggest me a simple option to trace the problem.
He didn't ask you to understand it, he ask you to post it so *he* can see what was generated. :wink:
-craig

"You can never have too many knives" -- Logan Nine Fingers
LenGreenwood
Premium Member
Premium Member
Posts: 37
Joined: Mon Dec 08, 2008 4:02 am
Location: Milton Keynes, UK

Post by LenGreenwood »

Yep, post the code or a DSX & I can probably interpret it for you.

Only way to trace this sort of thing, that I can think of, would be to put Routine stages into the sequence between other stages, using calls to UtilityMessageToLog to log messages containing the actual values of various job variables or expressions. For example, calling UtilityMessageToLog with an argument that has the value of the expression:

Code: Select all

Convert(@FM,"",EXC_Read_Seq_AcCode.$CommandOutput)
just before it gets to the job activity that runs the "CA" job wold be instructive I think.
savis
Premium Member
Premium Member
Posts: 27
Joined: Tue Apr 15, 2008 11:06 pm

Post by savis »

ds_search2008 wrote:
I checked the Execute command activity

Triggers

Name: ACTCD_CA
Expression Type: Custom(conditional)
Expression: Convert(@FM,"",EXC_Read_Seq_AcCode.$CommandOutput) = 'CA'

Name: ACTCD_SA
Expression Type: Custom(conditional)
Expression: Convert(@FM,"",EXC_Read_Seq_AcCode.$CommandOutput) = 'SA'

Name: ACTCD_OA
Expression Type: Custom(conditional)
Expression: Convert(@FM,"",EXC_Read_Seq_AcCode.$CommandOutput) = 'OA'

All the three job activities--->Triggers tab
output link names --Expression type are set to - OK - (Conditional)

:cry: I'm not sure why savingsaccount job is running in parallel. :cry:
Can you try the below code in your trigger expression?

Name: ACTCD_CA
Expression Type: Custom(conditional)
Expression: If <Execute_Command_label>.$CommandOutput Matches "CA" Then 1 Else 0

Name: ACTCD_SA
Expression Type: Custom(conditional)
Expression:If <Execute_Command_label>.$CommandOutput Matches "SA" Then 1 Else 0

Name: ACTCD_OA
Expression Type: Custom(conditional)
Expression: If <Execute_Command_label>.$CommandOutput Matches "OA" Then 1 Else 0

Gurus,
Please correct me if I am wrong

Thanks,
Savis
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

Well, there's really no need for the "else" in the expresion and "matches" with no wildcards is the same as an equality check, so...
-craig

"You can never have too many knives" -- Logan Nine Fingers
Post Reply