Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Cics Questions

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 4
At a glance
Powered by AI
The key differences between a TSQ and TDQ are that records in a TDQ are deleted after being read while records in a TSQ can be read multiple times. A TDQ must also be predefined while a TSQ can be dynamically created. TSQs are generally faster since they use main memory while TDQs write to disk.

A TSQ is like a scratchpad that stores data temporarily in memory or disk. Records can be read multiple times from a TSQ. A TDQ writes records to a dataset so data is persistent if the program fails, but records are deleted after one read. TDQs must also be predefined.

You would use a TDQ when you want a trigger level to automatically start a transaction after a certain number of records are written, or if you need a batch job to access the queue. A TDQ is also required if data needs to persist across region failures.

Q1) i faced this question in IBM.

they asked me when do you used tsq's and tdq's in real time

they particularly asked me for realtime example for tsq's and tdq's

can anyone plz provide me the situation when we go for the tsq and tdq with example…

Probably this will answer your ques

Uses of Tdq
a. message pooling and sending(use of ATI)
b. report printing(use of ATI)

Uses of TSQ

a. Passing data b/w screens


b. Moving b/w screens while storing the data of previous screen as for validation purpose
c. Report printing.

TDQ
1. ATI like someone mentioned already.
2. Used to submit JCL's from CICS (EXTRAPARTITION only)
3. Used to pass data between CICS and Batch (EXTRAPARTITION only)

TSQ
1. For file/data browsing programs (we use this extensively in our programs. Data that can be
populated in one cics map is stored as an ITEM and items are accessed as per the browse
requirements)
2. For restoring when there is CICS region crashes and downs (not much sure on this one, though)

hi,
i've never used tdq, only tsq.
i found a list of differences between them on the web, but it isn't clear enough when i should only use
a tdq.
could someone help, please?
also, any explanation about the concept of intra-partition or extra-partition would be great.
in my case i'd like to write the tdq in batch mode and read it on cics (it would have to be an extra-
partition, right) and i'm considering using the EXCI interface.
a few differences i found:
tdq items are deleted after being read;
tdq items can only be read sequentially;
tdq can't be created dinamically, but have to pre installed on cics.
thanks for any help.

Keep in mind, you can read a given item within a TSQ and rewrite it if you like, until that TSQ is
deleted.

When accessing an Intra-Partition TDQ, as soon as the record/item is read, it is deleted.

TSQ's can be dynamically created, updated (item level only) and deleted, whereas TDQ's must be
defined as an RDO resource, either by Tech Support or your CICS System Programmer. The maximum
name length of a TDQ is four positions.

An example of an Extra-Partition TDQ defined to your system, would be CSMT, which would probably
indirectly point to DD Name MSGUSR. Look for MSGUSR in your CICS Startup and it probably points to
SYSOUT.

Definition "Transient = Going in and out of existence quickly".

TDQ storage only comes in one flavor - real DASD.

TSQ storage comes in two flavors - real DASD (AUX) or virtual storage (MAIN).

Reading/Writing DASD (TDQ's and AUX TSQ's) requires physical I/O.

Reading/Writing Virtual Storage (memory) does NOT require physical I/O.

Answer: TSQ's utilizing MAIN storage are faster than TDQ's or AUX TSQ's.

regarding TSQ & TDQ........

its like they are temporary storages for holding up ur records that need to be proccessed.. they are
not physically stored mostly thats the cocept of temporary storage.....the processing is also much
faster for the queues as they are available readily in main memory when the application recollects
them.........

theres a big difference between TSQ & TDQ.........in TDQ.. the record is deleted from the queue once it
is read but whereas it does not happen with TSQs.............
**********

TSq -> Its like a scratch pad, This will not go to permanant memory
unless you explicitly specify.
This is used if you have page up/page down logic in your CICS
screens.
Program A calling Program B which selects db2 rows, So in
program B you can write all your rows fetched to a TSQ and
come back to program A, now you can read these rows from TSQ
rather than going to Db2 every time.
If you have large amount of data to be passed between to tasks
of a transaction you can use TSQ.

TDq -> if you want some processing should happen depending on the data that you have read from
the screen for example.

user wants to print the screen, take the information write it to a TDQ
this will trigger a transaction which does the printing.

Trigger level tells n indicates, after nth record is written to a TDQ it should trigger the transaction
associated with it.

TDQ has to be defined prior to use.


TSQ is a temporory storage queue, it can be used for to
pass
data to another program. Thru commarea also can pass data
but only 64k data can be passed.
TSQ is temporary storage queue which is used to
communicate
between the programs. TSQ may write to a VSAM dataset if
defined with AUXILLARY option or to main storage if
defined
with MAIN option. Recovery of data is not possible from
TSQ
of the program fails. However, TSQ can be read multiple
times whithout removing the data elements. Also the
elements in the TSQ can be modified.

In TDQ, the data is always written to a dataset. Recovery


of data is possible when the program abends. However, the
data elements can not be modified and are removed after
the
TDQ is once read
here is one such example of TDQ,

Consider a case like a report has to be produced for every 500 transanctions happened for the day. A
trigger can be set with the TDQ using TRIGLVL parameter and once 500 records( from online
transactions) has been posted it will automatically submit the associated job. real time applications - (
for example in telecommunication domain...if some special privilage has to be given for first 500
customers who have taken PIONEER OFFER of Reliance ( for ex...) after the 500 th customer confirms
his transaction a report will be created through a batch job triggered by TDQ.

TSQ ---

these are just scratch pads

Temporary Storage Queue names are dynamically defined in the application program,
while TDQs must first be defined in the DCT (Destination Control Table). When a TDQ
contains certain amount of records (Trigger level), a CICS transactioncan be
started automatically. This does not happen when using a TSQ. TDQ(extra partition) may
be used by batch application; TSQ cannot be accessed in batch. The Transient Data
Queue is actually a QSAM file. You may update an existing item in a TSQ. A record in a
TDQ cannot be updated. Records in TSQ can be read randomly. The TDQ can be read
only sequentially. Records in Temporary Storage can be read more than once, while
records stored in Temporary Data Queues cannot. With TDQs it is ?one read? only.

TDQ is read destructive, TSQ is not. TSQ can be created dynamically, TDQ cannot be
created dynamically. TSQ is temporary in nature (i:e it will be deleted when the program
finishes execution, unless it is made permanent by making a entry in the Temporary
Storage Table), TDQ is not.

what is an MDT in cics?


APPICATION PROGRAM RECEIVED THE DATA DEPENDING ON YHE
FLAG
OF FIELD.
I.E,FLAG SHOULD BE ONE.

---> BMS(SASIC MAPPING SUPPORT)HAS ABILITY TO CHANGE THE


FLAG FROM 0 TO 1 WHENEVER THE FIELD HAS BEEN MODYFIED.
WHEN THE SAME MAP IS USED MULTIPLE TIMES THEY MUST BE A
MECHANISM TO RESET THE FLAG TO ZERO.
Modified Data Tag.One bit of an attribute character,
which
indicates whether the screen field has been modified or
not
Modified Data Tag. It is used to check whether a field is
modified or not.
it is an modified data tag..used for data control from
terminal to program or vice versa..when mdt = 0 we cannot
modify the data.when mdt=1 we can modify the data...
http://www.scribd.com/doc/17686142/Queues-in-CICSWith-Paging-logic

You might also like