A partir des FDT et des DDM récupérés,
il sera possible de générer les DDL
correspondant aux nouvelles tables DB2, après
accord des DBA du site.
Pour chaque Descripteur et
Super Descripteur ADABAS, un index DB2 sera créé,
composé d’un ou de plusieurs champs.
Toutes les colonnes DB2 sont
par défaut, définies 'not null with default'.
Lorsque des Super
Descripteurs sont définis sur des 'substring'
d'un seul champ ADABAS, il faut penser à créer
une colonne DB2 pour chacun des 'substring' et un
index sera défini sur l’ensemble de ces
colonnes, dans l'ordre prescrit par le Super
Descripteur.
ATTENTION : dans le cas
de DESCRIPTEUR UNIQUE NULL SUPPRESS, vérifier que
l’unicité des enregistrements avec cette clef
est bien prévue dans les programmes.
Les champs multiples et les
groupes périodiques ne sont pas supportés par
DB2. Pour tout MU et/ou PE d’un fichier ADABAS ,
il y aura création d’une table DB2 contenant ce
champ et ayant pour clef primaire, soit celle du
fichier « père », soit celle du
fichier « père » + un identifiant
supplémentaire, pour éviter le doublonnage. Cet
identifiant pourra être un timestamp, donnée
utilisable sous NATURAL et sous COBOL. La génération
de table supplémentaire pour intégrer le MU
et/ou PE ne sera pas systématique : un champ
multiple avec 2 occurrences ne donnera pas forcément
leu à la création d’une nouvelle table DB2
La relation d'intégrité qui
lie table parent et tables enfants est, par défaut,
de type "ON DELETE RESTRICT".
Les champs ADABAS groupés ne
sont pas repris en tant que tels dans la table DB2
(seuls sont repris les champs qui composent le
groupe).
Exemple de tables DB2 résultantes du
FDT et DDM décrits plus haut
FILE 125 (IMPUTATION-AUX) - 2 userviews
|
|
|
|
|
|
T12501 : correspondant au DDM EL-CYCLE-IMPUTATION-AUX
|
|
|
|
|
|
T
|
L
|
DB
|
Name
|
0
|
Leng
|
S
|
D
|
Remarks
|
|
1
|
A0
|
NUCYCCPTA
|
P
|
10
|
N
|
|
NUMéRO DE CYCLE COMP
|
|
1
|
A1
|
NUCYCSEQ
|
N
|
2
|
N
|
|
NUMéRO SéQUENTIEL DE
|
|
1
|
A2
|
NUINDPAR
|
P
|
10
|
N
|
|
NUMéRO DE L'INDIVIDU
|
|
1
|
A3
|
NUINDBEN
|
P
|
10
|
N
|
|
IDENTIFIANT DE L'IND
|
|
1
|
A4
|
IDORG
|
A
|
4
|
N
|
|
IDENTIFIANT ORGANISM
|
|
1
|
A5
|
DAEFCYC
|
A
|
8
|
N
|
|
DATE DE CYCLE
|
|
1
|
A6
|
ETACYC
|
A
|
1
|
N
|
|
CODE éTAT DU CYCLE D
|
|
1
|
AY
|
CODUGF
|
A
|
4
|
N
|
|
FOREIGN KEY
DUE TO R
|
|
1
|
AZ
|
CODCYCCPTA
|
A
|
2
|
N
|
|
FOREIGN KEY
DUE TO R
|
|
1
|
B0
|
DOMGES
|
A
|
1
|
N
|
|
DOMAINE DE GESTION D
|
|
1
|
B1
|
SSDOMGES
|
A
|
1
|
N
|
|
SOUS-DOMAINE DE GEST
|
|
1
|
B2
|
INCYCNSOL
|
A
|
1
|
N
|
|
INDICATEUR DE CYCLE
|
T12502 : correspondant au DDM EL-SIR-CYCLE-SOLDE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
T
|
L
|
DB
|
Name
|
0
|
Leng
|
S
|
D
|
Remarks
|
|
|
|
|
|
|
|
|
|
|
1
|
CA
|
INTRTCYC
|
A
|
1
|
N
|
D
|
Indicateur de sélect
|
|
1
|
AU
|
NUCYCCPTA-1
|
P
|
10
|
N
|
D
|
NUMéRO DE CYCLE COMP
|
|
|
|
|
|
|
|
|
|
|
Avec 3 tables index, pour
T12501
I12501 01
|
|
|
|
|
|
T
|
L
|
DB
|
Name
|
0
|
Leng
|
S
|
D
|
Remarks
|
|
1
|
AP
|
SPINDBENCYC
|
B
|
14
|
N
|
S
|
|
*
|
|
|
Composé des rubriques suivantes
|
|
|
|
|
|
*
|
|
|
NUINDBEN(1-6)
|
|
|
|
|
|
*
|
|
|
NUCYCCPTA(1-6)
|
|
|
|
|
|
*
|
|
|
NUCYCSEQ(1-2)
|
|
|
|
|
|
I1250102
|
|
|
|
|
|
T
|
L
|
DB
|
Name
|
0
|
Leng
|
S
|
D
|
Remarks
|
|
1
|
AQ
|
SPCYCCPTA
|
B
|
8
|
N
|
S
|
|
*
|
|
|
Composé des rubriques suivantes
|
|
|
|
|
|
*
|
|
|
NUCYCCPTA(1-6)
|
|
|
|
|
|
*
|
|
|
NUCYCSEQ(1-2)
|
|
|
|
|
|
I1250103
|
|
|
|
|
|
T
|
L
|
DB
|
Name
|
0
|
Leng
|
S
|
D
|
Remarks
|
|
1
|
B3
|
SPCYCNSOL
|
A
|
19
|
N
|
S
|
|
*
|
|
|
Composé des rubriques suivantes
|
|
|
|
|
|
*
|
|
|
NUINDBEN(1-6)
|
|
|
|
|
|
*
|
|
|
IDORG(1-4)
|
|
|
|
|
|
*
|
|
|
NUINDPAR(1-6)
|
|
|
|
|
|
*
|
|
|
CODCYCCPTA(1-2)
|
|
|
|
|
|
*
|
|
|
INCYCNSOL(1-1)
|
|
|
|
|
|
Le fichier ADABAS 125
contient un groupe périodique. Il y aura donc création
d’une table DB2 contenant l’ensemble des
rubriques composant ce groupe. La couple NUCYCCPTA
+ NUSEQ est unique, et servira donc de clef pour
cette nouvelle table.
T12503
|
|
|
|
|
|
T
|
L
|
DB
|
Name
|
0
|
Leng
|
S
|
D
|
Remarks
|
|
1
|
A0
|
NUCYCCPTA
|
P
|
10
|
N
|
|
NUMéRO DE CYCLE COMP
|
|
1
|
A1
|
NUCYCSEQ
|
N
|
2
|
N
|
|
NUMéRO SéQUENTIEL DE
|
|
2
|
AB
|
NUIMPX
|
P
|
10
|
N
|
|
NUMéRO D'IMPUTATION
|
|
2
|
AC
|
NUDOAS
|
N
|
2
|
N
|
|
NUMéRO DU DOSSIER AS
|
|
2
|
AD
|
MTIMPX
|
P
|
7,2
|
N
|
|
MONTANT D'UNE IMPUTA
|
Avec son index
I1250301
|
|
|
|
|
|
T
|
L
|
DB
|
Name
|
0
|
Leng
|
S
|
D
|
Remarks
|
|
1
|
AQ
|
SPCYCCPTA
|
B
|
8
|
N
|
S
|
|
*
|
|
|
Composé des rubriques suivantes
|
|
|
|
|
|
*
|
|
|
NUCYCCPTA(1-6)
|
|
|
|
|
|
*
|
|
|
NUCYCSEQ(1-2)
|
|
|
|
|
|
Pour la table T12502 : correspondant au DDM EL-SIR-CYCLE-SOLDE, il y aura création de 2 index (un pour chaque descritpteur).
CREATE
TABLE T12501
(NUCYCCPTA BIGINT NOT NULL ,
NUCYCSEQ INTEGER NOT NULL ,
NUINDPAR BIGINT
NOT NULL ,
NUINDBEN BIGINT
NOT NULL ,
IDORG CHAR(4) NOT NULL ,
DAEFCYC CHAR(8) NOT NULL ,
ETACYC CHAR(1) NOT NULL ,
CODUGF CHAR(4) NOT NULL ,
CODCYCCPTA CHAR(2) NOT NULL ,
DOMGES CHAR(1) NOT NULL ,
SSDOMGES CHAR(1) NOT NULL ,
INCYCNSOL CHAR(1) NOT NULL )
CREATE
TABLE T12502
(INTRTCYC CHAR(1) NOT
NULL ,
NUCYCCPTA
_1 BIGINT NOT NULL )
CREATE
TABLE T12503
(NUCYCCPTA BIGINT NOT NULL ,
NUCYCSEQ INTEGER NOT NULL ,
NUIMPX BIGINT NOT NULL ,
NUDOAS INTEGER NOT NULL ,
MTIMPX DECIMAL(9,2) NOT NULL )
Les super descripteurs ADABAS
donneront lieu à un champ supplémentaire dans la
table DB2. Il sera alimenté lors de la mise à
plat et sera ensuite géré par trigger.
Les DDL de CREATE TABLE
seront générés dans le répertoire
<projet>\CIBLE\DB2\CREATABL
et auront comme nom
CTaaaabb.DDL
aaaa : chrono ou mnémonique de la table, bb :
chrono ou valeur du short name du MU/PE ayant donné
lieu à la création de cette table
Les DDL de DROP TABLE seront
générés dans le répertoire
<projet>\CIBLE\DB2\DROPTABL
et auront comme nom
DTaaaabb.DDL
aaaa : chrono ou mnémonique de la table, bb :
chrono ou valeur du short name du MU/PE ayant donné
lieu à la création de cette table
Les DDL générés seront
transférés sur le host dans des PDS équivalents
aux directories du PC.
CS.CIBLE.DB2.CREATABL(<ddlname>)
CS.CIBLE.DB2.DROPTABL(<ddlname>)
|