Correspondances déclaration « colonné » free-form
mer 20 février 2019Les nouvelles déclarations free-form des anciennes « cartes » H, F, D sont remplacées par ctl-opt, dcl‑f, dcl‑s, dcl-ds, dcl-pr, dcl-pi…
En attendant de les connaître par cœur, voici une aide pour retrouver les correspondances avec l’ancien formalisme.
Data type | Lettre ancienne forme | Free-form syntax | Examples |
---|---|---|---|
Alphanumeric | A | CHAR(len) VARCHAR(len {: varying-size} ) | DCL-S library CHAR(10); DCL-S libfilembr VARCHAR(33); DCL-S cmdparm VARCHAR(10:4); |
UCS-2 | C | UCS2(len) VARUCS2(len {: varying-size} ) | DCL-S firstName UCS2(10); DCL-S filePath VARUCS2(5000); |
Graphic | DBCS | GRAPH(len) VARGRAPH(len {: varying-size} | DCL-S firstName GRAPH(20); DCL-S fullName VARGRAPH(50); |
Indicator | N | IND | DCL-S isValid IND; |
Packed | P | PACKED(digits {:decimals} ) | DCL-S numRecords PACKED(5); DCL-S salary PACKED(15:2); |
Zoned | S | ZONED(digits {: decimals} ) | DCL-S numRecords ZONED(5); DCL-S salary ZONED(15:2); |
Binary | B | BINDEC(digits {: decimals} ) | DCL-S numRecords BINDEC(9); DCL-S bonus BINDEC(9:2); |
Integer | I | INT(digits) Digits can be 3, 5, 10, 20 | DCL-S index INT(10); |
Unsigned | U | UNS(digits) Digits can be 3, 5, 10, 20 | DCL-S count UNS(20); |
Float | F | FLOAT(bytes) Bytes can be 4, 8 | DCL-S variance FLOAT(8); |
Date | D | DATE { (format) } | DCL-S duedate DATE; DCL-S displayDate DATE(*YMD); |
Time | T | TIME { (format) } | DCL-S startTime TIME; DCL-S displayTime TIME(*USA); |
Timestamp | Z | TIMESTAMP | DCL-S start TIMESTAMP; |
Pointer | * | POINTER | DCL-S pUserspace POINTER; |
Procedure pointer | * | POINTER(*PROC) | DCL-S pProc POINTER(*PROC); |
Object | O | OBJECT{(*JAVA : class)} | DCL-S obj OBJECT(*JAVA:'Cls'); |
[…] un billet précédent, j’ai donné les équivalences entre Rpg colonné et Free-form. Aujourd’hui, nous allons y ajouter une colonne avec les équivalences SQL […]
Un lien IBM sur le sujet :
https://developer.ibm.com/articles/i‑ibmi-rpg-support/