Presentació
Llistat de la macro "DAU_GLOB".
Descripció: menú pral. i crit. gen. DAU
1 {SI SE CANCELA}{IR}Inici~~
2
3 {ROTULO}Inici~
4 {ASIGNAR}VG-menú~global~ {;}Per a qualsevol valor torna al Global~
5 {ANIDAR}{VARIABLE}viaMacros~dau_mnu1~
6
7 {CAR}1~~
8 {LLAMAR}Avaluar Propòsit~
9 {MIENTRAS}"{VARIABLE}propòsit~"="QuedarSeADau"~
10 {SI}"{VAR 1}">"0"&"{VAR 1}"<"5"~
11 {ANIDAR}{VARIABLE}viaMacros~dau{VAR 1}~
12 {SI}"{VAR 1}"!="4"&"{VARIABLE}VG-llegir~"="sí"~
13 {ASIGNAR}0~{VARIABLE}viaDocs~DAU_{VAR 1}{VAR 2}{VAR 3}.w51~
14 {SI}"{VAR 1}"="3"~
15 {ANIDAR}{VARIABLE}viaMacros~dauLect~
16 {DE OTRO MODO}
17 {ANIDAR}{VARIABLE}viaMacros~dau_lect~
18 {FIN SI}
19 {FIN SI}
20 {DE OTRO MODO}
21 {CAMPANA}{;}si ha premut qualsevol altra tecla~
22 {FIN SI}
23 {SI}"{VARIABLE}VG-menú~"="global"~
24 {ANIDAR}{VARIABLE}viaMacros~dau_mnu1~
25 {CAR}1~~
26 {LLAMAR}Avaluar propòsit~
27 {FIN SI}
28 {FIN MIENTRAS}
29
30 {IR}Acció{VAR 1}~
31 {TERMINAR}
32
33 {ROTULO}Acció0~
34 {ANIDAR}{VARIABLE}viaMacros~DauPrevi~
35 {REGRESAR}
36
37 {ROTULO}AccióS~
38 {ANIDAR}{VARIABLE}viaMacros~dau_sys~
39 {REGRESAR}
40
41 {ROTULO}AccióW~
42 {ANIDAR}{VARIABLE}viaMacros~dau_wp~
43 {REGRESAR}
44
45
46 {ROTULO}Avaluar Propòsit~
47 {SI}
48 "{VAR 1}"="0"|
49 "{VAR 1}"="S"|"{VAR 1}"="s"|
50 "{VAR 1}"="W"|"{VAR 1}"="w"|
51 "{VAR 1}"="{sortir}"~
52 {ASIGNAR}propòsit~SortirDeDau~
53 {DE OTRO MODO}
54 {ASIGNAR}propòsit~QuedarSeADau~
55 {FIN SI}
56 {REGRESAR}
Comentaris
Macro cridada des de la macro DAU.WPM.
1. {SI SE CANCELA} si apretem F1 (CANCEL.LAR), transferim
l'execució al rètol "inici". En qualsevol moment de l'execució
de la macro, impedeix que el fet de prémer F1 (CANCEL.LAR) ens
faci sortir del programa. Cada cop que l'usuari prem F1 torna a
aquest rètol.
3. {ROTULO} Declara un rètol a partir del qual s'executarà la
macro.
4. {ASIGNAR} assigna a la variable "VG-menú" el valor "global". (En
tot el programa, les variables "VG" són variables globals que es
poden cridar des de qualsevol lloc de l'arbre jeràrquic de
macros). De qualsevol manera, si cancel.lem, ens retorna a la
macro que presenta el menú de DAU (DAU_MNU1.WPM).
5. {ANIDAR} transfereix l'execució a la macro DAU_MNU1.WPM, que
presenta el menú principal del DAU.
7. {CAR}1~~ genera la {VAR 1} amb la pulsació que faci l'usuari, la
qual ens portarà a un altre punt de la macro, sempre depenent de
la resposta triada per l'usuari.
9. {MIENTRAS} mentre el valor de la variable "propòsit" sigui
"QuedarSeADau", transferirà el control a una altra macro,
depenent del valor, segons les condicions que es marquen a
continuació.
La diferència entre {MIENTRAS} i {SI} és que {SI} sols s'executa
una vegada, mentre que {MIENTRAS} es va executant "n" vegades,
mentre no es deixi de complir la condició.
10. {SI} el valor de la {VAR 1} és més gran que "0" i més petit que
"5"...
11. ... {ANIDAR} transfereix l'execució a la macro DAUx.WPM, on "x"
és el valor de la variable {VAR 1} (1-2-3-4). O sigui que amb
aquesta ordre podem desviar l'execució de la macro cap a 4
macros diferents, segons la tecla que hagi pulsat l'usuari.
Cada una d'aquestes 4 macros té una funció diferent:
DAU1.WPM: Procés d'elaboració de documents. Assigna el valor "1"
a les variables {VAR 2} i {VAR 3} i "sí" a la variable "VG-
llegir".
DAU2.WPM: Criteris generals.
DAU3.WPM: Consulta de documents.
DAU4.WPM: Generació de documents.
12. {SI} si el valor de {VAR 1} és diferent de "4" (o sigui 1-2-3)
i la variable "VG-llegir" té el valor de "sí",
13. {ASIGNAR} assignarem a la variable "0" el valor
"c:\{dau}.slc\docs\dau_xxx.w51", on "xxx" correspon al valor de
les opcions del menú que haguem triat, que contindran les
variables {VAR 1}, {VAR 2} i {VAR 3}. Així, la {VAR 0} tindrà el
valor del document que se'ns obrirà segons l'opció que haguem
triat.
14. {SI} si el valor de la variable {VAR 1} és igual a "3"...
15. ... {ANIDAR} transfereix l'execució a la macro DAULECT.WPM, que
presenta un fitxer sota control.
16. {DE OTRO MODO} mentre que si no és igual a 3 (ni igual a 4,
perquè ja ho havíem descartat abans). O sigui si és (1-2)...
17. ... transfereix l'execució a la macro DAU_LECT.WPM, que presenta
també un fitxer sota control, com DAULECT.WPM, però amb unes
altres opcions de moviment per pantalla.
18. {FIN SI} final de la condició de la línia 14.
19. {FIN SI} final de la condició de la línia 12.
20. {DE OTRO MODO} si la variable {VAR 1} no equival a 1-2-3-4,
21. {CAMPANA} sonarà el xiulet de l'ordinador.
22. {FIN SI} final de la condició de la línia 10.
23. {SI} si la variable "VG-menú" té el valor de "global", o sigui
que no li hem donat cap altre valor perquè no hem accedit a cap
menú posterior...
24. {ANIDAR} transfereix l'execució a la macro DAU_MNU1.WPM que
executa el menú principal del programa (retorna al mateix estat
que a la línia 5, on sota el rètol "inici" transferia l'execució
a la macro DAU_MNU1.WPM si premíem la tecla CANCEL.LAR.
Amb aquesta ordre tanquem el bucle d'aquesta condició i això ens
permet que cada vegada que tornem enrere per qualsevol motiu (si
per exemple premem CANCEL.LAR), el programa ens torni a
presentar el menú principal.
25. {CAR}1 tanca el bucle iniciat a la línia 7-8.
26. {LLAMAR} ídem línia 8.
27. {FIN SI} tanca la condició iniciada a la línia 23.
28. {FIN MIENTRAS} tanca la condició iniciada a 9.
30. {IR} transfereix l'execució al rètol "Acció{VAR 1}" (marcant-lo
amb el valor de la variable {VAR 1} també podem desviar
l'execució de la macro cap on ens convingui, segons la pulsació
de l'usuari). Des d'aquí controlarem les altres opcions del menú
diferents d'"1-2-3-4". És a dir, "0", "S" i "W".
31. {TERMINAR} acaba l'execució de la macro.
33. {ROTULO} rètol "Acció0". Subrutina de la macro a la qual es
desvia l'execució si la resposta a "avaluar propòsit" havia
estat "0".
34. {ANIDAR} transfereix l'execució a la macro DAUPREVI.WPM, que ens
permet personalitzar la capçalera del document.
35. {REGRESAR} acaba la subrutina i retorna el control a l'acció
{IR} de la línia 30.
37. {ROTULO} rètol "AccióS". Subrutina de la macro a la qual es
desvia l'execució si la resposta a "avaluar propòsit" havia
estat "S".
38. {ANIDAR} transferir l'execució a la macro DAU_SYS.WPM, que acaba
l'execució del DAU i ens fa sortir al sistema operatiu.
39. {REGRESAR} acaba la subrutina i retorna el control a l'acció
{IR} de la línia 30.
41. {ROTULO} rètol "AccióW". Subrutina de la macro a la qual es
desvia l'execució si la resposta a "avaluar propòsit" havia
estat "W".
42. {ANIDAR} transferir l'execució a la macro DAU_WP.WPM, que acaba
l'execució del DAU i ens retorna a WordPerfect amb la pantalla
neta.
43. {REGRESAR} acaba la subrutina i retorna el control a l'acció
{IR} de la línia 30.
46. {ROTULO} rètol "avaluar propòsit"
47. {SI} comencem una condició:
48. si {VAR 1} és igual a "0", o...
49. ... és igual a "S" o "s", o...
50. ... és igual a "W" o "w", o...
51. ... és igual a la pulsació de tecla corresponent a SORTIR (F7),
52. {ASIGNAR} assigna a la variable "propòsit" el valor
"SortirDeDau".
53. {DE OTRO MODO} altrament, si la pulsació de tecla és una altra,
54. {ASIGNAR} assigna a la variable "propòsit" el valor
"QuedarSeADau".
55. {FIN SI} final de la condició iniciada a 47.
56. {REGRESAR} acaba la subrutina i retorna el control al {LLAMAR}
des d'on l'hem cridat.
Josep Tordera, Lluís de Yzaguirre i Víctor Pàmies
Institut de Lingüística Aplicada (
Universitat "Pompeu Fabra")
Servei de Llengua Catalana (
Universitat de Barcelona)
corr-el: de_yza@upf.es