IBM Natural

  Home  Mainframes  IBM Natural


“IBM Natural frequently Asked Questions by expert members with experience in IBM Natural. So get preparation for the IBM Natural job interview”



27 IBM Natural Questions And Answers

3⟩ How to move cursor to a particular field when position is not known?

If you wish to position the cursor to a specified field,

you can use the MARK option,

eg.

INPUT

MARK *#MAP.#ACTION

USING MAP 'IVCLNTM1'

and and to position to a

particular position within a specified field, you use the

MARK POSITION option.

DEFINE DATA LOCAL

1 #A (A10)

1 #B (N4)

1 #C (N4)

END-DEFINE

*

INPUT (AD=M) #A #B #C

IF #A = ’ ’

COMPUTE #B = #B + #C

RESET #C

REINPUT FULL ’Enter a value’ MARK POSITION 5 IN *#A

END-IF

END

 151 views

4⟩ Explain difference between escape(top or bottom) and escape immediate(top or bottom?

ESCAPE TOP indicates that processing is to continue at the

top of the processing loop. This starts the next repetition

of the processing loop.

ESCAPE BOTTOM indicates that processing is to continue with

the first statement following the processing loop. The loop

is terminated and loop-end processing (final BREAK and END

DATA) is executed for all loops being terminated.

Whereas if you specify the keyword IMMEDIATE, no loop-end

processing will be performed(i.e.,final BREAK and END DATA

is not executed for all loops being terminated).

 152 views

5⟩ Tell me Can we update with histogram?

Hitogram retruns the one line output for each key value

from the inverted list. for histogram ADABAS does not have

access to data storage,therefore we can not do any update

add or delete using histogram.

 162 views

6⟩ How to receive data passed through JCL parm parameter in a Natural program? How Data definition is defined in the program?

Normally in JCLs calling natural program, data is passed

using some control cards. In the natural program, the data

is received in the same order using INPUT statement similar

to STACK processing.

Data definition in Natural is done using following:

DEFINE DATA

1 #VARIABLE1 (A10) /* Alphabetic variable of length 10

..

..

END-DEFINE

 187 views

7⟩ Explain difference between read(1) and read work file once?

Read(1) file1 in physical sequence:

1. Used to raed adabas file.

2. here (1 ) represents the number of record to be read

its a processing loop eg

Read(1) file1 in physical sequence

--

---

---

end-read

read work file :

1. Used to read flate file.

2. Once option is used to read only one record

3. its not a processing loop

 147 views

8⟩ Explain difference between read work file 1 and read work file once? Why we are using work file once?

Both used to read sequentila file.

Read work file 1:

1. is a processing loop strating like:

Read work file 1 file1

---

--

--

end- work.

Here ---> file 1 is file name here and 1 is arbitary file

number which is translated into dataset names CMwk01 in jcl.

read work file once:

1. Reads only one reacord is to be read.

2. there is no processing loop

eg. Read work file once

 176 views

9⟩ Explain ADABAS basic concepts. Like inverted list, address converter ,data storage?

ADABASE the adaptable database, is a high-performance,

multithreaded, database management system for mainframe

platforms where database performance is a critical factor.

It is built on INVERTED LIST model.

Inverted List: it is used to resolve Adabas search commands

and read records in logical sequence, is built and

maintained for each field in an Adabas file that is

designated as a key field or “descriptor”.t is called

an “inverted” list because it is organized by descriptor

value rather than by ISN.

ADDRESS CONVERTOR:it contains the RABN's in ISN order. It

determines the physical location of a record. It is an

index that maps the logical identifier of a record (that

is, the ISN) to the relative Adabas block number (RABN) of

the Data Storage block where the record is stored.

DATA Storage:It stores the actual record in the order in

which it was entered

 166 views

10⟩ What is a hyperdescriptor? How does it work?

Its a special kind of discriptor,It is an extension of

Super descriptor and can have maximum of 20 fields.The

hyperdescriptor option can be used to generate descriptor

values based on a user-supplied algorithm.With

hyperdescriptors, “fuzzy” matching is possible; i.e.,

retrieving data based on similar rather than on exact

search criteria. Hyperdescriptors allow multiple virtual

indexes, meaning that several different search index

entries can be made for a single data field.

 144 views

11⟩ What is the quality process in development?

When developing a new program, make sure that you remove unwanted fields or views that are declared inside the DEFINE DATA section. Since when a program is compiled, it picks these fields also in the buffer memory during compilation and resources would be wasted and efficiency is affected.

Do not use unwanted READs inside a FIND statement.

Never use an UPDATE inside a physical READ.

Avoid using COMPUTE statements while performing straight forward addition, subtraction functions, rather use the appropriate ADD, SUB statements for it.

 129 views

14⟩ Is it possible to declare a GDA for an external subroutine?

An external subroutine can access the global data area used

by the invoking object(Program, Subprogram)

Moreover, parameters can be passed with the PERFORM

statement from the invoking object to the external

subroutine. These parameters must be defined either in the

DEFINE DATA PARAMETER statement of the subroutine, or in a

parameter data area used by the subroutine. Programs,

Subprograms and Subroutines Programming Guide

In addition, an external subroutine can have its local data

area, in which the fields that are to be used only within

the subroutine are defined.

However, an external subroutine cannot have its own global

data area.

 128 views

16⟩ Explain the difference between External subroutine and subprogram?

An External Subroutine has got access to the Caller's GDA

where in the subprogram does not have.

The subprogram is like blackboxes as they are not aware of

the caller's environemnt. They take only the parameters and

process it and return the values. e.g. One natural

subprogram can be called through middle tiers like Entirex

and Vitria from a different environment(Lets say a dot net

or java developed web interface).However a similar

interface can not call a natural external subroutine.

As far as calling is concerned you use callnat for

subprogram and perform for external subroutine.

 153 views

18⟩ What is COBOL coding sheet?

1-6 sequence numbers.

7 (*) for comment (-) for continue (D) for debugging.

8-11 called as Area-A in this Area we can write

Divisions,Paragraphs,sections,Level numbers.

12-72 called as Area-B in this area we can write cobol

executable statements like select,accept,display.

73-80 is ignored area by compiler but we can see in source

Listing.

 150 views

19⟩ Can you explain control variable in online screens?

A control variable is used to dynamically set attribute and

colour definitions for a field or group of fields depending

upon a program condition. For example, Consider an order

processing screen that allows you to create new contracts,

modify existing contracts and look-up paid-up contracts.

The screen used for all these functions is the same.

However, when a paid-up contract is shown to the user, you

do not expect it to be displayed in a modifiable state. So,

you protect all the fields of the map and show it

like "read only". However, for modifying an existing, non-

paid-up map, you enable certain fields. So, control

variables can be used in scenarios like this to dynamically

set the attributes of the field.

 128 views