RE: Réf. : RE: executing two designer programssequential
ly
Deskin, Bob
Bob.Deskin@Cognos.COM
Wed, 2 Jun 2004 16:33:21 -0400
Blush. I should have noticed the sequencing bit as well.
Based on the comment that the data must be re-retrieved, then it seems that you need to set up a retrieval at the start of 89 using PRECOMMANDS FIND. Of course you'll need to make sure that the retrieval works without intervention, otherwise what's the point. Also, rather than a PUSH UPDATE STAY in 88, try POSTCOMMANDS UPDATE STAY. The PRECOMMANDS and POSTCOMMANDS are tied to the designer procedure and so shouldn't cause the same issues as PUSH.
Bob Deskin
Product Manager, Application Development Tools
Cognos Inc. 3755 Riverside Drive, Ottawa ON K1G 4K9 CANADA
bob.deskin@cognos.com (613) 738-1338 ext 7268
-----Original Message-----
From: powerh-l-admin@lists.sowder.com
[mailto:powerh-l-admin@lists.sowder.com]On Behalf Of
nicolas.au@bnpparibas.com
Sent: June 2, 2004 1:46 PM
To: ggjos@hotmail.com
Cc: powerh-l@lists.sowder.com
Subject: Réf. : RE: executing two designer programssequentially
Hi,
The reason why it seems that your procedure 88 is always done after the
procedure 89 no matter how you re-arranged your PUSH statements within the
procedure is that the PUSH command is operated in a LIFO (Last In First
Out) manner.
So when you type 88/89 in the ACTION box,
QUICK will execute all the statements in designer procedure 88 and when it
comes across any PUSH verb, the command string will be placed into a STACK.
Then QUICK will carriy on to execute any further statements until all
statements in that procedure are executed.
QUICK will then execute the designer procedure 89.
When it comes across any PUSH verb, the command string will again be placed
into the same STACK .
Then QUICK will carry on to execute any further statements until all
statements in that procedure are executed.
When all statements in designer procedure 89 are executed, it is this
moment that the STACK will be emptied in the LIFO manner.
So you can imagine that all the commands that were PUSHed in designer
procedure 88 will always be executed after the commands PUSHed in designer
proceudure 89.
I have to emphasise that if you issue the PUSH verb as in the example
suggested by Bob,
PUSH UPDATE STAY, DESIGNER DOIT
then the command UPDATE STAY will be executed first then followed by the
DESIGNER procedure DOIT.
This is because the whole command string "UPDATE STAY, DESIGNER DOIT" is
placed into the STACK and when the STACK is emptied the whole command
string is retrieved and executed.
I am afraid it is not easy to achieve what you want by having the tasks
separated into 2 designer procedures 88 and 89 with some PUSH verbs exist
in both procedure 88 and 89.
Try to see whether you can use the POSTCOMMANDS UPDATE STAY (as Blue
suggested) in your designer procedure 88 instead of the PUSH verb. This way
you can guarantee that UPDATE of your data will be done as soon as all
statements in designer procedure 88 are executed.
Good luck.
Nicolas.
Internet
ggjos@hotmail.com@lists.sowder.com - 02/06/2004 18:12
Envoyé par : powerh-l-admin@lists.sowder.com
Pour : powerh-l
cc :
Objet : RE: executing two designer programs sequentially
Hi bob,
First of all , how this works is that the 88 procedure is run
then
the screen is cleared and the data is recalled .Secondly the 89 procedure
is
then run and the screen is manually updated as in
"U" and return.When done this way every thing works well.I decided to
arrange things in such a way that the 2 procedures would run sequentially ,
instead of 88 recall data ,then 89, I wanted
one action to execute both procedures and save the user needless actions.
Thats when I began having problems.88 generates date-benefit-started which
is needed for 89 to calculate the numbers of days for the claim.As I said,
if the procedures are run separately they work well as long as the screen
is
cleared after 88, and the data is retrieved and 89 is then run.But 89 wont
run without retrieving the data on screen after 88 is run . I tried using a
quiz in front of 89 to report on the screen what data was missing when
the
88 procedure is run and the date-benefit-started is left
out which is needed for 89. I used your example but the 88 commands keep
running last after the 89. That is when I type "88/89" in the action field
of the screen to have both procedures run sequentially ie 88 then 89.I
switched the order in the DOIT push procedure and 88 still runs last after
89.
>Okay. There are a number of issues here. First of all, you have both PUSH
>UPDATE and PUSH UPDATE STAY in 88. The result of this will be that AFTER
>the execution of 88 completes, QUICK will do an Update (U), followed by an
>Update Stay (US). Depending on the context QUICK is in (data or action)
>after the Update, you may get an error or unexpected results, possibly not
>even noticeable.
>
_________________________________________________________________
MSN 8 helps eliminate e-mail viruses. Get 2 months FREE*.
http://join.msn.com/?page=features/virus
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
Mailing list: powerh-l@lists.sowder.com
Subscribe: "subscribe" in message body to powerh-l-request@lists.sowder.com
Unsubscribe: "unsubscribe <password>" in message body to
powerh-l-request@lists.sowder.com
http://lists.sowder.com/mailman/listinfo/powerh-l
This list is closed, thus to post to the list you must be a subscriber.
This message and any attachments (the "message") is
intended solely for the addressees and is confidential.
If you receive this message in error, please delete it and
immediately notify the sender. Any use not in accord with
its purpose, any dissemination or disclosure, either whole
or partial, is prohibited except formal approval. The internet
can not guarantee the integrity of this message.
BNP PARIBAS (and its subsidiaries) shall (will) not
therefore be liable for the message if modified.
---------------------------------------------
Ce message et toutes les pieces jointes (ci-apres le
"message") sont etablis a l'intention exclusive de ses
destinataires et sont confidentiels. Si vous recevez ce
message par erreur, merci de le detruire et d'en avertir
immediatement l'expediteur. Toute utilisation de ce
message non conforme a sa destination, toute diffusion
ou toute publication, totale ou partielle, est interdite, sauf
autorisation expresse. L'internet ne permettant pas
d'assurer l'integrite de ce message, BNP PARIBAS (et ses
filiales) decline(nt) toute responsabilite au titre de ce
message, dans l'hypothese ou il aurait ete modifie.
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
Mailing list: powerh-l@lists.sowder.com
Subscribe: "subscribe" in message body to powerh-l-request@lists.sowder.com
Unsubscribe: "unsubscribe <password>" in message body to powerh-l-request@lists.sowder.com
http://lists.sowder.com/mailman/listinfo/powerh-l
This list is closed, thus to post to the list you must be a subscriber.
This message may contain privileged and/or confidential information. If you have received this e-mail in error or are not the intended recipient, you may not use, copy, disseminate or distribute it; do not open any attachments, delete it immediately from your system and notify the sender promptly by e-mail that you have done so. Thank you.