-
Notifications
You must be signed in to change notification settings - Fork 0
/
RTVPGMSRCG.RPGLE
78 lines (58 loc) · 2.83 KB
/
RTVPGMSRCG.RPGLE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
h copyright('Volubis')
Dusrspc s 20 inz('RTVPGMSRC QTEMP')
Dcompteur s 3 0
Dpointeur s *
Dptrinfos s *
Dinfosliste ds based(ptrinfos)
D offset 10i 0
D taille 10i 0
D nbpostes 10i 0
D lgposte 10i 0
dptrliste s *
DPGML0100 ds based(ptrliste)
d pgm 10
d bib 10
d module 10
d bibmodule 10
d srcf 10
d srcl 10
d srcm 10
d attribut 10
dQBNLPGMI PR EXTPGM('QBNLPGMI')
d space 20
d format 8 const
d pgmlib 20 const
d erreur 8 const
dQUSPTRUS PR EXTPGM('QUSPTRUS')
d space 20
d ptr *
C *entry plist
C parm pgmlib 20
C parm demande 3 0
C parm wsrcf 10
C parm wsrcl 10
C parm wsrcm 10
C parm wnbr 3 0
c callp QBNLPGMI(usrspc : 'PGML0100' :
c pgmlib : x'0000000000000000')
c callp QUSPTRUS(usrspc : pointeur)
* gestion de la liste (positionnement sur la partie entête)
c eval ptrinfos = pointeur + 124
* positionnement sur le premier poste
c eval ptrliste = pointeur + offset
c eval wnbr = nbpostes
* boucle (nbpostes fois)
c do nbpostes
c eval compteur = compteur + 1
c if compteur > 1
c eval ptrliste = ptrliste + lgposte
c endif
* recherche si N° de module = N° demandé
c if compteur = demande
c eval wsrcf = srcf
c eval wsrcl = srcl
c eval wsrcm = srcm
c leave
c endif
c enddo
c eval *inLR = *On