View previous topic :: View next topic
|
Author |
Message |
Kevin Dcosta
New User
Joined: 01 Jan 2008 Posts: 35 Location: Hyderabad
|
|
|
|
if i start a new transaction instead of doing an XCTL, that means the starter transaction will continue to run which might cause performance issues, so always we should not use START when we can use XCTL. Please confirm my understanding. |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
No, it depends on your application requirements. There are times when you want to start a transaction (for example, if you're starting an interval controlled transaction which is going to run unattached to a terminal), and there are times when you want to transfer control to another program. They both are needed, and they both serve their own unique purpose in CICS.
And unless you've got some really, really ugly transaction programs, CICS performance typically is pretty low on the priority list. Worry about the business logic and application design first, then if there's performance issues deal with them at the appropriate time. |
|
Back to top |
|
|
Kevin Dcosta
New User
Joined: 01 Jan 2008 Posts: 35 Location: Hyderabad
|
|
|
|
yes i undertand that START is must for starting a background transaction, but i mean like START with terminal id(current terminal) specified and without time interval would be same as doing XCTL, however since a start would not end the previous transaction so one should not use START in such a given scenario. |
|
Back to top |
|
|
CICS Guy
Senior Member
Joined: 18 Jul 2007 Posts: 2146 Location: At my coffee table
|
|
|
|
Kevin Dcosta wrote: |
yes i undertand that START is must for starting a background transaction, but i mean like START with terminal id(current terminal) specified and without time interval would be same as doing XCTL,. |
Not the same, the started transaction will not start until the current transaction completes and frees the terminal.
Quote: |
however since a start would not end the previous transaction so one should not use START in such a given scenario |
Actually, the other way around, the XCTL does not end the current transaction.... |
|
Back to top |
|
|
Kevin Dcosta
New User
Joined: 01 Jan 2008 Posts: 35 Location: Hyderabad
|
|
|
|
Quote: |
Actually, the other way around, the XCTL does not end the current transaction.... |
So how should one decide between XCTL and START given the above scenario of START with terminal id(current terminal) specified and without time interval. |
|
Back to top |
|
|
CICS Guy
Senior Member
Joined: 18 Jul 2007 Posts: 2146 Location: At my coffee table
|
|
|
|
Generally, the start is used across terminal write/reads of pseudo-conversational transactions, but the RETURN with the next transid is usually the choice for this.
The xctl is used to transfer the current transaction from one program to another. |
|
Back to top |
|
|
Kevin Dcosta
New User
Joined: 01 Jan 2008 Posts: 35 Location: Hyderabad
|
|
|
|
Thanks a lot... |
|
Back to top |
|
|
Kevin Dcosta
New User
Joined: 01 Jan 2008 Posts: 35 Location: Hyderabad
|
|
|
|
i was trying to goback to the previous screen, i tried doing start transid it didnt work , i tried doing xctl to the previous screen it didnt work but return with immediate worked. is there something that i have missed while defining the transactions ??? please help |
|
Back to top |
|
|
martin9
Active User
Joined: 01 Mar 2006 Posts: 290 Location: Basel, Switzerland
|
|
|
|
depending on your need,
you are able to do both ways...
if your starting transaction must finish, then let it finish!
or start an asynchronous task omitting the terminal...
you have all the possibilities, just how you need it...
if you get any perfomance problems then rethink your
design...
anyway in the last post:
try the RETURN TRANSACTION with IMMEDIATE...
regards,
martin9 |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
Application logic is needed ... something told the application to display the map, so you need to reset that field or fields and go back to the program. Unlike a PC, there's no memory of previous screens in a CICS region so there's no going back unless the application logic supports it. |
|
Back to top |
|
|
Kevin Dcosta
New User
Joined: 01 Jan 2008 Posts: 35 Location: Hyderabad
|
|
|
|
i have the application logic in the previous program where i intend to transfer the control , my issue is that the control does not get transferred until i do return-immediate, xctl and start-termid should also work but the control remains in the same module. |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
As previously mentioned, start-termid won't display the map until the current transaction that is tied to the screen ends. XCTL might be having the same issue -- you might want to run through the code using CEDF to check out what's going on. |
|
Back to top |
|
|
Kevin Dcosta
New User
Joined: 01 Jan 2008 Posts: 35 Location: Hyderabad
|
|
|
|
sorry to bother you all, i was coding the transid when giving start incorrectly. |
|
Back to top |
|
|
|