En aquest tema, aprendrem els fonaments de la sintaxi i l'estructura del Llenguatge de Control (CL). Aquest coneixement és essencial per escriure programes CL correctes i eficients.
- Introducció a la Sintaxi de CL
El Llenguatge de Control (CL) és un llenguatge de programació utilitzat principalment en sistemes IBM iSeries (AS/400). La seva sintaxi és diferent de la d'altres llenguatges de programació com C o Java, però és relativament senzilla d'aprendre.
1.1. Estructura Bàsica d'un Programa CL
Un programa CL està format per una sèrie de comandes que s'executen seqüencialment. Cada comanda té una estructura específica que inclou el nom de la comanda i els seus paràmetres.
// Exemple d'un programa CL senzill PGM DCL VAR(&NOM) TYPE(*CHAR) LEN(10) CHGVAR VAR(&NOM) VALUE('Hola') SNDPGMMSG MSG('Missatge: ' *CAT &NOM) ENDPGM
1.2. Components d'una Comanda CL
Cada comanda CL té els següents components:
- Nom de la Comanda: Identifica l'acció que es vol realitzar (per exemple,
DCL
,CHGVAR
,SNDPGMMSG
). - Paràmetres: Proporcionen informació addicional necessària per executar la comanda. Els paràmetres poden ser obligatoris o opcionals.
1.3. Comentaris
Els comentaris en CL es poden afegir utilitzant dues barres inclinades (//
). Els comentaris són ignorats pel compilador i s'utilitzen per documentar el codi.
- Declaració de Variables
Les variables en CL es declaren utilitzant la comanda DCL
. Aquesta comanda especifica el nom de la variable, el tipus de dades i la longitud.
2.1. Tipus de Dades
Els tipus de dades més comuns en CL són:
- Caràcter (
*CHAR
): Utilitzat per emmagatzemar cadenes de text. - Decimal (
*DEC
): Utilitzat per emmagatzemar nombres decimals. - Enter (
*INT
): Utilitzat per emmagatzemar nombres enters.
2.2. Exemple de Declaració de Variables
DCL VAR(&NOM) TYPE(*CHAR) LEN(10) // Variable de caràcter de 10 caràcters DCL VAR(&EDAT) TYPE(*DEC) LEN(3 0) // Variable decimal de 3 dígits DCL VAR(&TOTAL) TYPE(*INT) // Variable enter
- Assignació de Valors a Variables
Per assignar un valor a una variable, s'utilitza la comanda CHGVAR
.
3.1. Exemple d'Assignació de Valors
CHGVAR VAR(&NOM) VALUE('Joan') // Assigna 'Joan' a la variable &NOM CHGVAR VAR(&EDAT) VALUE(25) // Assigna 25 a la variable &EDAT CHGVAR VAR(&TOTAL) VALUE(100) // Assigna 100 a la variable &TOTAL
- Comandes de Sortida
Les comandes de sortida s'utilitzen per mostrar missatges o resultats. Una de les comandes més utilitzades és SNDPGMMSG
.
4.1. Exemple de Comanda de Sortida
- Estructura d'un Programa CL
Un programa CL típic comença amb la comanda PGM
i acaba amb la comanda ENDPGM
. Entre aquestes dues comandes, es col·loquen les comandes que constitueixen el programa.
5.1. Exemple d'un Programa CL Complet
PGM // Declaració de variables DCL VAR(&NOM) TYPE(*CHAR) LEN(10) DCL VAR(&EDAT) TYPE(*DEC) LEN(3 0) // Assignació de valors CHGVAR VAR(&NOM) VALUE('Joan') CHGVAR VAR(&EDAT) VALUE(25) // Enviament de missatge SNDPGMMSG MSG('Hola, ' *CAT &NOM *CAT ' de ' *CAT &EDAT *CAT ' anys.') ENDPGM
Exercicis Pràctics
Exercici 1: Declaració i Assignació de Variables
- Declara una variable de caràcter anomenada
&CIUTAT
amb una longitud de 15 caràcters. - Assigna el valor 'Barcelona' a la variable
&CIUTAT
. - Envia un missatge que digui 'Visc a Barcelona'.
Solució
PGM DCL VAR(&CIUTAT) TYPE(*CHAR) LEN(15) CHGVAR VAR(&CIUTAT) VALUE('Barcelona') SNDPGMMSG MSG('Visc a ' *CAT &CIUTAT) ENDPGM
Exercici 2: Càlculs Simples
- Declara una variable decimal anomenada
&PREU
amb una longitud de 5 dígits i 2 decimals. - Assigna el valor 19.99 a la variable
&PREU
. - Envia un missatge que digui 'El preu és 19.99'.
Solució
PGM DCL VAR(&PREU) TYPE(*DEC) LEN(5 2) CHGVAR VAR(&PREU) VALUE(19.99) SNDPGMMSG MSG('El preu és ' *CAT &PREU) ENDPGM
Conclusió
En aquest tema, hem après la sintaxi i l'estructura bàsiques del Llenguatge de Control (CL). Hem vist com declarar variables, assignar valors i enviar missatges. Aquests fonaments són essencials per escriure programes CL més complexos en els següents mòduls.
Curs de CL (Llenguatge de Control)
Mòdul 1: Introducció al CL
- Què és el Llenguatge de Control?
- Configuració del Teu Entorn
- Sintaxi i Estructura Bàsiques
- Escrivint el Teu Primer Programa CL
Mòdul 2: Comandes Bàsiques de CL
- Introducció a les Comandes de CL
- Comandes de Gestió de Fitxers
- Comandes de Gestió de Treballs
- Comandes de Gestió del Sistema
Mòdul 3: Variables i Expressions
- Comprenent les Variables
- Definint i Utilitzant Variables
- Expressions i Operadors
- Manipulació de Cadenes
Mòdul 4: Estructures de Control
Mòdul 5: Comandes Avançades de CL
- Operacions Avançades de Fitxers
- Programació Avançada de Treballs
- Comandes de Configuració del Sistema
- Seguretat i Permisos