View previous topic :: View next topic
|
Author |
Message |
seman18
New User
Joined: 08 Feb 2009 Posts: 67 Location: hz
|
|
|
|
I am not very clear about what things are done when the PLI with DB2 code are compiled, and what things are done when the compiled code is promoted, could someone explain it, thx! |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Compilation and promotion are not unique for pli or pli/db2.
Compile takes source code as input and generates an executable load module as output.
Promotion involves elevating components to the next "higher" operational level. In a simpler environment ror example, when developers are done testing an applicaton or changes to one, the code is promoted to production.
In more complex environment, promotion may be from development to a formal test environment. From there to a User Acceptance Test environment (that is virtually a mirror of production) where final user sign-off is made) and then to Production.
The promotion process is entirely organization specific. Depending on the size of IT, there may be different promotion processes due to incomplete evolution. |
|
Back to top |
|
|
seman18
New User
Joined: 08 Feb 2009 Posts: 67 Location: hz
|
|
|
|
I know how to deal with the C code containing ESQL.As Iknow, the source code should be prepared in DB2 server. Two things would be done, one is it would update the source code where ESQL statement would be commented out , and reaplce with c sql function call statement, and add timestamp; other thing is to make package or plan; after that, developer could copy the updated source code back and compile and link using compiler, then it could run.
And I found there are some differences for PL1DB2 code process. Till now, I just find pl1 code would be compiled and splitted to two part, one is lbt for pl1, other is dbr for ESQL, and do the binding in promot process, coud you explain detail the process, especially the deep side, thx! |
|
Back to top |
|
|
seman18
New User
Joined: 08 Feb 2009 Posts: 67 Location: hz
|
|
|
|
And what's the DBR? |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Quote: |
And what's the DBR? |
The dbr i'm familiar with has to do with database recovery - which i suspect is not what you are interested in. Possibly you mean dbrm (database request module). This is generated from the sql that was stripped out of the source code.
Quote: |
coud you explain detail the process, especially the deep side |
Suggest you talk with your dba or senior developer(s) as to how your compile/bind process is implemented. I am not familiar with the term "deep side". |
|
Back to top |
|
|
seman18
New User
Joined: 08 Feb 2009 Posts: 67 Location: hz
|
|
|
|
I did not find dbrm after compile the plidb2 code, where can I find it? |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Quote: |
I did not find dbrm after compile the plidb2 code, where can I find it? |
This would be site-specific. Your dba or seniors should know. Both the db2 pre-compile and the bind refer to the dbrm. |
|
Back to top |
|
|
seman18
New User
Joined: 08 Feb 2009 Posts: 67 Location: hz
|
|
|
|
In our company, we just compile the code in changeman, and then promot with DBP file, will it go through the process: precompile code to two part, one is for PLI withough SQL, other is DBRM containing SQL, and then compile the PL1 part code, then bind the DBRM to plan or package, right |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Probably. . .
Exactly what is done is known by those who support your environment. No one here at the forum is familiar with your particular configuration.
People here are willing to help, but we do not have site-specific info for most organizations.
Is there some reason you are unwilling to communicate with them and get the correct answers for your system? I would very much encourage getting to know the senior/support people as they can be invaluable. |
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6248 Location: Mumbai, India
|
|
|
|
Hi,
seman18 wrote: |
In our company, we just compile the code in changeman, and then promot with DBP file, will it go through the process: precompile code to two part, one is for PLI withough SQL, other is DBRM containing SQL, and then compile the PL1 part code, then bind the DBRM to plan or package, right |
I work on a site which make use of chnage-man but unfotunately I don't speak PL/1. For COBOL-DB2 programs we just need to "promote" & let know the DBA about the DB2 components in the package. We, as an application engineer, call "bind is done automatically when promoted to production" but actually in back-end DBA-approvals are the one which play the actaul role. So I would vote in for Dick's suggestion to get in touch with support/seniors over there.. |
|
Back to top |
|
|
seman18
New User
Joined: 08 Feb 2009 Posts: 67 Location: hz
|
|
|
|
because I don't how to find them, we are offsite:) |
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6248 Location: Mumbai, India
|
|
|
|
Hi,
I'm also working from offhosre (offsite) it should not be a hurdle. There must be one "onsite" counter part with you at your shop - if not how have you been doing all other promotions to production so far..leave this DB2 thing for a moment. . . |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10888 Location: italy
|
|
|
|
You are mixing two different processes...
lets start with a vanilla environment
for the building process pl/i or cobol have the same logic
( no integrated preprocessor )
Code: |
stage - DB2 preprocess
inputs :
source program ( with EXEC SQL' s )
outputs :
DBRM
preprocessed source program ( augmented/modified )
( added some variables definitions,
substituted the EXEC ... with calls to the interface subroutines )
stage - Language compile
inputs :
preprocessed source program
outputs :
object program
stage - linkage editor
inputs :
object program
library subroutines/functions
outputs :
executable load module
stage - DB2 bind
inputs :
DBRMs
outputs :
updates to the proper DB2 system tables
|
in a controlled environment ( SCLM, changeman, endevor )
the build process is automated in the sense that all the steps are processed
according to the controlled environment standards and the object type
in a controlled environment (as a general point)
You build at the lower hierachical level
and promote to the higher levels
the builders do not usually have the authority to promote (always as a general point) |
|
Back to top |
|
|
|