1) I understand what is a GDA,LDA and PDA.But sometimes i had been asked confusing questions.In which all entities they can be defined and used.
Can someone please repeat it.That in Programs,Subprograms,Subroutines(inline- External),Copycodes. Where all we can define them,use them.
Please correct my question if it is wrong.
2) Locking of adabas file and records in case of Read and Find.And how does a Find- get combination let us get better result than read -get.Or this statement is just conditional.
Can someone please elaborate the answer in term of database side activities.
Subprograms can have PDA, LDA, and GDA. HOWEVER, a GDA in a subprogram creates a new instance of a GDA. Thus a program cannot share a GDA with a subprogram it CALLNATs.
External subroutines can have all three. Unlike a subprogram, an external subroutine can share a GDA with an object that PERFORMs it.
Internal subroutines do not "have" any GDA, LDA, or PDA. The objects they are in (e.g. programs, subprograms, etc) possess them.
The same is true for Copycode.
FIND-GET versus READ-GET makes no sense as far as a performance comparison (which I presume is what you mean by "better result". FIND versus READ (w/wo updates/gets) is a lengthy topic. It involves MultiFetch, TO versus ENDING AT, number of records that satisfy a criteria, etc.