Вы находитесь на странице: 1из 8

COBOL—

1. File status error 92 logic error(opened in input and trying to write on it)FS 39 mismatch
in lrel,blocksize,recfm b/w COBOL & JCL .
2.41 &42 trying to open or close file which is already open or close.
3. Compiler option SSRANGE,NOSSRANGE for subscript out of range checking.
4.Explicit scope terminator brackets it’s preceding verb.
5.It’s not possible to pass an index via linkage. Index is handled by OS.
6. A VSAM file that has never contained a record is treated as unavailable. Attempting to
open for input will fail. An empty file can be opened for output only. When you open for
output, COBOL will write a dummy record to the file & then delete it out.( You will get a file
status of 35)
7. Level 77 is elementary data item.cannot be subdivided to Another item nor they cannot
subdivided themselves.
8. Internally there is no difference between Redefines & Renames. Both of them occupies
same storage area.

REDEFINED data items can be Qualified and can be treated as a separate variable
throughout the program. RENAMED items can not be Qualified and treated as an
alias of the original item.

You can REDEFINE an elementary item or Group item as a elementary of group.


Only group items can be RENAMED as a elementary or fixed group.

WHAT ARE THE APPLICATION OF REDEFINES & RENAMES?


REDEFINES
1. DATA CONVERSION 2. NAME ALIAS 3. PARTIAL VALUE 4. VARIABLE
OVERRIDE
RENAMES
1. REGROUPING 2. NAME ALIAS 3. PARTIAL ACCEPT/DISPLAY 4. GROUP
OVERRIDE
9. WHEREVER I CAN'T USE THE VALUE CLAUSE?
1. EXTERNAL variables
2. FILE & LINKAGE section (except CNC)
3. REDEFINES Clause (subfields only)
4. RENAMES Clause (66 leveled item)
5. External FLOATING Point items ( Hmm.. I hope, you know, what is External
Floating points)
6. USAGE INDEX
10. How do you read vsam file?

A1: VSAM files can be read and write same like cobol files. But only difference is
you have to give the dsn path of your vsam file in jcl step while compile time.
select empfile assign to dd1
dd1 will have the dsn parameter with vsam file path.

A2: It is similar to the sequential read but here first a pointer is set and then the
file is read from that particular record. For example:
START file name KEY >= file key ( Key of the VSAM file). After the pointer is set the
file is read
READ file name NEXT
In PS files we can only do a sequential read but in VSAM we can do a random read
and this is possibe by setting the key of the VSAM.
11. we can't use PIC clause in comp-1 & comp-2.
12. EXTERNAL clause can not be specified in LINKAGE SECTION.
13. Called program will have linkage section

DATA DIVISION. PROGA



WORKING-STORAGE SECTION. LINKAGE SECTION.
01 PARM-LIST. 01 USING-LIST.
05 PART-NO PIC X(4). 10 PART-ID PIC X(4).
05 USA-SALES PIC 9(5). 10 SALES PIC 9(5).

PROCEDURE DIVISION. PROCEDURE DIVISION
… USING USING-LIST.
CALL “PROGA” ….
USING PARM-LIST. GOBACK.

14. We can use the variables passed by the calling program, in the procedure division
of the called program. The name need not be the same.
• Entries in the LINKAGE SECTION can be in any order, but the entries in the USING
clause must be in the order of their usage in the CALL statement of the CALLing
program.
Positions Correspond - Not by Names
CALL "ProgramName" USING P1, P2, P3, P4.
PROCEDURE DIVISION USING P2, P4, P1, P3.

• Instead of a STOP RUN statement, the called program must contain an EXIT
PROGRAM statement to transfer control back to the calling program.

JCL--
1. When looking at your output, the following symbols will determine what kind of
statement is indicated when your job runs:
// Indicates JCL statements
XX Indicates cataloged procedure statements
X/ Indicates a modified cataloged procedures statement
2. column 4 to start continuation.
3. HOW DO YOU REFER BACK A DATASET?
• DSN=*.STEPNAME.DDNAME
• UNIT=AFF=DDNAME
• VOLUME=REF=*.STEPNAME.DDNAME
4. The dataset with single & is called Symbolic parameter. The dataset with double && is
called temporary dataset.
The Symbolic parameter gets the value from PROC.T he temporary datasets are created in
the job flow and gets deleted at the end of the job.
5. condition can only be specified after the step to which it refers.
6. Generation Data Groups are concatenated by specifying each dataset name and the
generation number for all generations of the generation data group. Otherwise to have all
generations of a generation data group, omit the generation number. The DD statement
will refer to all generations. The result is the same as if all individual datasets were
concatenated. If generations are not on the same volume, this will not work.
7.LRECL specifies the length of records
equal to the record length for fixed-length records
equal to the size of the largest record plus the 4 bytes( Record Descriptor Word)
describing the record's size for variable-length records
omit the LRECL for undefined records
LRECL can range from 1 to 32760 bytes
Blocksize must be at least as long as the longest record plus 8 (4 extra bytes for the
record length and 4 for the block length)
8.Can’t use Disp Keep for &&Dataset(temporary)and also not share.
9.default Disp is (new,,).
10.referback can be used in EXEC and DD statement of program *.stepname.ddname.
11.if specifying RECFM=U then omit LREL and specify blksize to length of largest record.
12.System catalog=> DSN,unit,vol.
Dataset label => DSN,DCB
13.The concatenated dataset must have same characteristics(DSORG,RECFM,LRECL).If
Blksize is not same then largest should come first.
14./* must with sysin DD data..
15.Overriding EXEC and DD
• //stepname Exec proc1,parameter.stepinproc=value
• //stepinproc.DDname dd ---
If step name not specified then 1st step will be overridden
16.abend B14 –attempt to store more information in PDS than a directory can store.
17. In COBOL, you retrieve PARM values as shown:

//STEP1 EXEC COBUCLG,PARM.GO='string'


. . . . . . .
LINKAGE SECTION. <== Your COBOL program.
01 PARM
05 PARM-LEN PIC S9(4) COMP.
05 PARM-VAL PIC X(100).
PROCEDURE DIVISION USING PARM.
PARM-LEN will contain the length of the string and PARM-VAL will
contain the string.
18.Sort card
//SYSIN DD *
SORT FIELDS=(2,4,CH,A)
SORT FIELDS=COPY
INCLUDE COND=(41,3,CH,EQ,C'ABC')
SUM FIELD= NONE
19. IEFBR14 A Dummy Program. Does Nothing.
IEBGENER Copies sequential data sets (SYSUT1, SYSUT2, SYSIN, SYSPRINT)
IEBCOPY Copies partitoned data sets
LOADING/UNLOADING
//SYSIN DD *
COPY INDD=SYSUT1,OUTDD=SYSUT2
/*
COMPRESS COPY INDD=SYSUT1,OUTDD=SYSUT1 (only sysut1)
COPY SELECTED PDS MEMBERS COPY INDD=SYSUT1,OUTDD=SYSUT2
SELECT MEMBER=(COBOL,COMP,RUN) <=
SELECT <-> EXCLUDE
IEHDASDR Doing weird things to a DASD (...aka disk)
IEBPTPCH Prints (or punches) partitioned or sequential datsets or members of
partitioned data sets
IEHLIST Prints datasets and VTOC information
IEHPROGM Maintains the catalog. Can delete and uncatalog datasets
IEBCOMPR - COMPARE PS & PDS FILES
//SYSIN DD *
000007 COMPARE TYPORG=PS <= PO for PDS files comparition
000007 //
20. With TYPRUN=SCAN, no data sets are allocated. The system can't detect disk space
problems, region size problems, duplicate data set names, or insufficient allocation of CPU
time.
21. You can request multiple volumes in two ways:
By naming the volumes:
UNIT=unit,VOL=SER=(volume,volume,...,volume)
Or by requesting a number of non-specific volumes:
UNIT=(unit,number)
The number can be from 1 to 59.
22. For sequential data sets, you must specify the units and the primary amount; all the
other sub-parameters are optional.
SPACE=(6233,100)
For a partitioned data set, you must also specify a directory amount:
SPACE=(6233,(100,,20))
You can specify a secondary amount if you want, and you can release unused tracks if
you want:
SPACE=(6233,(100,10,20),RLSE)
** ALX MXIG CONTIG
RLSE,______,ROUND)

DB2--
1. DB2 sets the SQLCODE and SQLSTATE values after each SQL statement executes
SQLCODE = 0, execution was successful
SQLCODE > 0, execution was successful with a warning
SQLCODE < 0, execution was not successful
SQLCODE = 100, no data found
2. Some common SQLCODES to check after a SQL statement :
INSERT -803, Duplicate insert
UPDATE 0, Successful update , 100, no row found
DELETE 0, Successful delete , 100, no row found
SELECT 0, successful , 100, no row found
-811, Multiple rows retrieved.
3. Outline of an Application Program
IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING STORAGE SECTION.
Include SQLCA
Declare Host variables
Include DCLGEN
Declare cursor1
PROCEDURE DIVISION.
Declare cursor2
Cursor operations...
4. Inner Join: combine information from two or more tables by comparing all values that
meet the search criteria in the designated column or columns of on e table with all the
clause in corresponding columns of the other table or tables. This kind of join which involve
a match in both columns are called inner joins.

Outer join: is one in which you want both matching and non matching rows to be returned.
DB2 has no specific operator for outer joins, it can be simulated by combining a join and a
correlated sub query with a UNION.
5. Ten 32K size bufferpools and fifty 4K size buffer pools (BP0 to BP49). Default buffer
pools are BP0, BP1, BP2 & BP32
6. The B37 ABEND in the SPUFI is because of space requirements. The query has resulted
in so many rows that the SPUFI.OUT file is not large enough to handle it; One possible
solution is to increase the space allocation of SPUFI.OUT file.
7. error code -803  Unique Index violation
8. Skeleton Cursor Table (SKCT)  The Executable form of a Plan. This is stored in
SYSIBM.SCT02 table
9.if Host variable declared in copy book then at the time of pre-compile it will give host
variable not defined.
10. BIND mainly performs two things: Syntax checking and Authorization checking.
11. restriction on using UNION in embedded SQL --It has to be in a CURSOR.
12. During the BIND process we specify ISOLATION level ( CS/RR ).
13. collectionA user defined name that is the anchor for packages It has not physical
existence Main usage is to group packages.

VSAM--
1. VSAM can’t be stored in TAPE Volume i.e., VSAM Stored only in DASD
2. length of a RDF 3 Bytes
3. length of a CIDF 4 Bytes
4. maximum size of a CI 32 KBytes (32 * 1024* 8)
5. minimum size of a CI 512 Bytes
6. CI size of LDS 4096 Bytes (4Kbytes)
7. CA size 1 track to 1 cylinder
8. For define KSDS- INDEXED, RRDS- NUMBERED,
ESDS – NONINDEXED,LDS- LINEAR.
9. Queued sequential access method.similar to ESDS data set
10. Repro:is used to copy the ps or sequential files into the vsam liles(like ksds , esds ,
rrds).
Export: is used to take the backups of these data set.
11. Noscratch : It will not delete the GDG versions when the max number of versions for
the GDG is reached.
scratch :It will scratch the older versions of the GDG, giving space for the newer versions.

Empty : It will empty the GDG versions


NoEmpty : It will not empty the GDG versions, rather it will delete the older versions of
the GDG.

SQL—
1. On executing a COMMIT statement in the Program all the open cursors are closed. In
order to avoid this we use the WITH HOLD option.
2. Cursor doesn't have a return type but A Reference Cursor have a return type and it as 2
type one is Strongly Typed Cursor and Weakly Typed Cursor.
3. implicit cursor: implicit cursor is a type of cursor which is automatically maintained by
the Oracle server itself. implicit cursor returns only one row.
4. Explicit Cursor: Explicit Cursor is defined by the Programmer and it has for phases:
declare open fetch and close. explicit Cursor returns more than one row.
5. Some views are updateable e.g. single table view with all the fields or mandatory fields.
Examples of non-updateable views are views which are joins, views that contain aggregate
functions(such as MIN), and views that have GROUP BY clause.

6.Different SQL JOINs


JOIN: Return rows when there is at least one match in both tables
LEFT JOIN: Return all rows from the left table, even if there are no matches in the
right table
RIGHT JOIN: Return all rows from the right table, even if there are no matches in
the left table
FULL JOIN: Return rows when there is a match in one of the tables
10. when the base table is droped.Alias is not dropped. when the base table is
droped.SYNONYM is dropped automatically.(synonym can access specified DB2 sub
system but alias can access other DB2 sub system)
11. There are two types of Synonyms Private and Public

12. TRUNCATE & DROP is a DDL command whereas DELETE is a DML command.
TRUNCATE is much faster than DELETE.

13. collection --a user defined name that is the anchor for packages. It has not physical
existence. Main usage is to group packages.

CICS – Customer Information Control System (CICS) was developed in 1960 by IBM

1.CICS CONTROL PROGRAM, CICS CONTROL TABLES


2.CICS System Initialization program (SIP) is the main job step. •SIP loads System
Initialization Table (SIT).
3. ROLE OF CICS (MULTI TASKING,MULTI THREADING,RE-ENTRANT PROGRAM,QUASI RE-
ENTRANT).
4. To make the application program device independent and format independent CICS
provides Basic Mapping Support (BMS).BMS is a standard facility, to deal with the
formatted screen operations Screen defined through BMS is called a "MAP".

IMS /DB –
1. IMS SUPPORTS
15 LEVELS
255 SEGMENTS
1000 FIELDS
2. PSB can have more than one PCB(logical view of database).
3. Application Control Block is an internal control block consisting of combined
information from the DBD and PSB.
4. An SSA(Segment Search Arguments)is an area of storage that contains data which
identifies the segment to which a DL/I call applies(you can have 1 ssa for each level
of hierarchy. Since ims has a limitation of 15 levels as maximum, we can have
maximum of 15 ssas) SSA must appear in hierarchical order by seg.type
5. two types(Key & search field) of fields available in IMS DB.
6. We get return code space after successful IMS call.
7. Distinguish between an online and batch program in ims environment:- by seeing
the io-pcb in the application program.
8. In a cobol-ims program. The first section to contain any ims related components is
the working storage section.
a. FUNCTION CODES->a function code is a 4 byte code to tell dl/i what kind of
call the program is making.(gu,gn…)
b. INPUT/OUTPUT AREA-> is a standard record description in the working
storage section which holds database segments for manipulation
Linkage section –
PCB MASK-there should be atleast one pcb for each database used. Status code of pcb
mask explains whether a call is successful or not
PROCEDURE DIVISION.
ENTRY ‘DLITCBL’ USING DB-PCB-1, DB-PCB-2. <= Sequence should match that of
:::::::::::: PSB Macro
::::::::::::
CALL ‘CBLTDLI’ USING WS-PARM-COUNT, <= Optional
WS-FUNCTION-CODE,
DB-PCB-MASK,
IO-AREA,
SSA-1, SSA-2, SSA-3, ….
9. WHAT WILL BE THE OUTPUT OF A GU CALL WITH NO SSA?
The first root segment occurrence of the database will be retrieved in segment i/o area
10. Common Status Codes
GB - End of Database during Sequential retrieval using GN
GE - Segment Occurrence as defined in a qualified SSA not found or not added in a
ISRT due to error in Specified path
AI - Error in opening the database dataset
Spaces -Call ended normally

REXX—
1. Restructured EXtended eXecutor language
2. TSO ALTLIB ACTIVATE APPL(EXEC) DA(‘SGMAXS0.TSOUR.MYWORK’) command for
rexx to run from ispf.
3.PULL,SAY,NOP stands for No-operation, LEAVE

CA-7 – CA-7 is a Production control system. It’s an online, real-time, interactive system
which automatically controls, schedules jobs based on the Date and time, job
dependencies and available resources.(before it control M was there).type of queue
1.Status Queue(Request, Ready, Active, Prior-Run,Preprocess, Postprocess)
2. Work Queue(Trailer, disk-Queue-Table,Scratch)
SCHID FREQ
30 Mond
33 Wedn
35 Friday
36 Saturd
37 Sunda
40 Duplic
41 Day 4
51 Month
52 Day a

Вам также может понравиться