| Next Tip?
Home » CICS, Cobol

CICS interview Questions Part – V

9 August 2009 219 views No Comment
1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Q51)   What is the difference between EXEC CICS HANDLE CONDTION and an EXEC CICS IGNORE command?

A51)   A HANDLE CONDITION command creates a “go-to” environment. An IGNORE command does not create a go-to environment; instead, it gives control back to the next sequential instruction following the command causing the condition. They are opposites.

Q52)   What happens when a CICS command contains the NOHANDLE option?

A52)   No action is going to be taken for any exceptional conditional occurring during the execution of this command. The abnormal condition that occurred will be ignored even if an EXEC CICS HANDLE condition exist. It has the same effect as the EXEC CICS IGNORE condition except that it will not cancel the previous HANDLE CONDITION for any other command.

Q53)   When a task suspends all the handle conditions via the PUSH  command, how does the task reactivate all the handle conditions?

A53)   By coding an EXEC CICS POP HANDLE command.


Q54)   Explain re-entrancy as applies to CICS.

A54)   Reentrant   program  is   a  program  which  does  not  modify itself  so  that  it  can   reenter to itself  and continue  processing   after   an   interruption   by  the  operating  system which, during   the   interruption, executes other   OS  tasks  including    OS    tasks    of   the    same     program.    It   is   also  called  a “reenterable”  program  or”serially  reusable”  program.

A quasi-reentrant program is a reentrant program under the CICS environment.  That   is,   the  quasi-reentrant  program is a CICS program which does not modify itself. That way it can reenter to itself and continue   processing after an interruption by CICS which,  during  the  interruption, executes other  tasks  including  CICS  tasks  of  the  same  program. In  order  to  maintain  the  quasi-reentrancy,  a  CICS  application  program  must  follow  the  following  convention:

Constants in Working Storage: The quasi-reentrant program defines only constants in its ordinary data area (e.g. working Storage Section ). These constants will never be modified and shared  by  the tasks.

Variable in Dynamic  Working  Storage: The quasi reentrant  program acquires a unique storage area ( called Dynamic Working  Storage –DWS) dynamically  for  each  task by issuing  the  CICS  macro equivalent  GETMAIN.  All variables  will be placed in  this DWS for each task. All counters  would   have  to be initialized  after the DWS has been  acquired.

Restriction on Program  Alteration: The  program must   not   alter   the   program  itself.  If  it  alters  a CICS macro  or  command,   it   must  restore  the  alteration   before   the   subsequent  CICS  macro  or command.

Q55)   What are the CICS commands available for program control?

A55)   The  following  commands  are  available  for  the  Program  Control services:

1.     LINK: To pass control  to  another  program  at  the   lower  level,  expecting  to  be  returned.

2.     XCTL: To pass control to another  program  at the same  level,  not expecting  to be returned.

3.     RETURN: To return   to    the    next   higher-level program  or  CICS.

4.     LOAD: To  load  a  program.

5.     RELEASE: To  release  a  program.

Q56)   How is addressability achieved to the data outside programs working-storage.?

A56)   The  Base  Locator  for   Linkage  ( BLL )  is  an  addressing convention  used  to  address  storage outside  the  Working  Storage Section  of  an   application  program. If BLL is used for the input commands (e.g.: READ, RECEIVE), it will improve the performance,  since  the  program  would  be  accessing directly the  input buffer  outside  of  the  program. In  order   to  work  as  intended,  the  program  must  construct BLL  based  on  the following  convention:

1).  The  parameter  list  must  be  defined  by  means    of  a  01 level  data  definition  in  the Linkage Section   as   the  first area  definition  to  the  Linkage  Section,  unless  a communication  area  is  being  passed  to  the   program,  in  which case  DFHCOMMAREA must be defined  first. The parameter list   consists   of  a  group  of  the  address pointers, each of which is defined as   the full word binary field ( S9(8)  COMP ). This is called  the   BLL cells.

2). The parameter list is followed by a group of  01 level data definitions, which would be the  actual

data  areas.  The  first  address  pointer  of  the  parameter  list  is  set  up  by  CICS  for  addressing the   parameter  list  itself.   From  the   second   address  pointer onward, there  is  a  one-to-one correspondence  between  the  address  pointers  of  the parameter  list and  01  level  data  definitions.

3). VS  COBOL  II   provides CICS application  programs  with a significant improvements in the  area of addressability  through the special ADDRESS register. Therefore, if an application  program is written  in  VS  COBOL II, the   program  is  no  longer requires building  the  BLL cells  in  the  Linkage  Section.

Q57)   Explain the various ways data can be passed between CICS programs.

A57)   Data can be passed between CICS programs in three ways- COMMAREA, TRASIENT DATA QUEUE & TEMPORARY STORAGE QUEUE.

Data can be passed to a called program using the COMMAREA option of the LINK or XCTL command in a calling program. The called program may alter the data content of COMMAREA and the changes will be available to the calling program after the RETURN command is issued in the called program. This implies that the called program does not have to specify the COMMAREA option in the RETURN command.

If the COMMAREA is used in the calling program, the area must be defined in the Working Storage Section of the program   (calling), whereas, in  the  called  program,  the  area must  be   defined   as  the  first   area   in   the   Linkage  Section, using  reserved  name  DFHCOMMAREA.

Q58)   What is the difference between using the READ command with INTO option and SET option?

A58)   When  we  use  INTO  option  with  the  READ  command  the  data  content  of  the  record  will  be moved  into   the    specified  field  defined  in  the  Working  Storage  Section  of  the  program. When we  use SET  option  with  the  READ  command ,  CICS  sets  the  address pointer  to  the  address of the  record  in  the file  input / output  area  within  CICS,  so that  the  application  program  can  directly  refer  to  the record without  moving  the record  content   into  the  Working  Storage  area  defined  in  the  program. Therefore, the SET  option  provides  a  better   performance  than  the  INTO  option.

Q59)   Can we define an alternate index on VSAM/RRDS  ?

A59)   No

Q60)   What is the difference between the INTO and the SET option in the EXEC CICS RECEIVE MAP command?

A60)   The INTO option moves the information in the TIOA into the reserved specified area, while the SET option simply returns the address of the TIOA to the specified BLL cell or  “address-of” a linkage-section.

Q61)   How to establish dynamic cursor position on a map? How to get the cursor position when we receive a map?

A61)   We  dynamically  position a  cursor  through  an  application  program  using a symbolic  name  of the  symbolic map by  placing  -1  into  the field length field ( i.e.,  fieldname + L) of  the  field  where you  wish to  place  the  cursor. The SEND MAP command to be issued must have the CURSOR option ( without  value ). Also,  the  mapset  must  be  coded  with  MODE = INOUT in the  DFHMSD macro. We   get   the   cursor position   when   we   receive   a  map  by  checking  EIBCPOSN,  which is  a  halfword    ( S9(4) COMP) binary field  in  EIB,  and  contains  offset  position  (relatively to zero )  of  the  cursor  on  the  screen.


Q62)   What is MDT?

A62)   MDT  (  Modified  Data  Tag  )  is  one  bit  of  the  attribute  character.  If  it  is  off ( 0 ), it  indicates  that this  field  has  not  been  modified  by  the  terminal  operator.  If  it   is on  ( 1 ),  it  indicates  that  this field has  been modified  by  the  operator.  Only  when MDT  is  on,  will the  data  of  the  field  be sent  by  the  terminal  hardware to  the  host computer ( i.e.,  to  the  application  program,  in  end ). An  effective  use  of  MDT    drastically   reduces the  amount  of   data   traffic  in  the communication  line,  thereby   improving performance  significantly.   Therefore, BMS maps  and   CICS   application programs should  be developed based  on   careful considerations  for  MDT.

Q63)   What are the three ways available for a program to position the cursor on the screen?

A63)

I.     Static positioning. Code the insert cursor (IC) in the DFHMDF BMS macro.

II.    Relative positioning. Code the CURSOR option with a value relative to zero(position 1,1 is zero) .

III.  Symbolic positioning. Move high values or -1 to the field length in the symbolic map(and code CURSOR on the SEND command).

Q64)   Name three ways the Modified Data Tag can be set on?

A64)   The Modified Data Tag can be set on:

1. When the user enters data into the field.

2. When the application program moves DFHBMFSE to the attribute character.

3. By defining it in the BMS macro definition.

Q65)   What is a mapset?

A65)   A mapset is a collection of BMS maps link-edited together.

Q66)   What is the function of DFHMDF BMS macro?

A66)   The DFHMDF macro defines fields, literal, and characteristics of a field.

Q67)   Why is a TERM ID recommended in naming a TSQ?

A67)   In  order  to  avoid  confusion  and  to  maintain  data  security,  a  strict  naming convention   for QID  will be required  in  the installation.  Moreover,  for  a  terminal-dependent task  (e.g., pseudo-conversational  task),  the  terminal  id  should be  included  in  QID   in   order   to   ensure  the uniqueness  of  TSQ  to  the  task.

Q68)   Explain the basic difference between Intra partition TDQ and Extra partition TDQ.

A68)

INTRA  PARTITION  TD  QUEUEs  It is a  group of sequential records which are  produced by the same  and / or  different transactions within a CICS region.   These   Qs   are   stored   in    only    one  physical   file  (  VSAM  ) in  a  CICS  region,   which  is   prepared   by  the  system  programmer.  Once  a  record   is   read   from  a  queue,  the  record  will  be logically  removed  from   the  queue;   that  is  the record  cannot  be  read  again. EXTRA  PARTITION   TD  QUEUEs  It  is  a   group  of   sequential   records  which   interfaces   between       the  transactions   of   the  CICS  region  and  the  systems outside  of  CICS region.  Each  of   these   TDQs    is   a   separate  physical  file,  and  it  may be  on  the  disk,  tape,  printer  or  plotter.


Q69)   What are the differences between Temporary Storage Queue (TSQ) and Transient Data Queue (TDQ).?

A69)   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 transaction can 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.

Q70)   What is the difference between getting the system time with EIBTIME and ASKTIME command?

A70)   The  ASKTIME  command  is  used  to  request  the  current  date  and  time. Whereas,  the  EIBTIME field   have   the   value  at  the  task  initiation  time.

Popularity: unranked [?]

Related interview questions

Leave your response!

You must be logged in to post a comment.