Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Bloc de code
/* ___ Déclarations _____________________________________________________________________
date        myDate
num_e(4,0)  myYear
num_e(2,0)  myMonth
num_e(2,0)  myDay
num_e(8,0)  myDateNum

/* ___ Code _____________________________________________________________________________
myYear      = &date_annee(myDate)                             /* extrait l'année de la date myDate (l'année sera au format SSAA)  
myMonth     = &date_mois(myDate)                              /* extrait le mois de la date myDate
myDay       = &date_jour(myDate)                              /* extrait le jour de la date myDate 
myDateNum   = &date_to_num(myDate)                               /* convertit la date myDate au format numérique (format SSAAMMJJ) 

...

Bloc de code
/* ___ Déclarations _____________________________________________________________________
alpha( 100) fileAlias
alpha(  10) fileMode
alpha(5000) myAlpha
image       myImage
num_bin_4   nb4ReturnCode

/* ___ Code _____________________________________________________________________________
myAlpha   = 'my text to be transformed to an image variable (2205)
fileAlias = 'myTransformation'
fileMode  = 'w'

charger_dll   'VATOOLBX.DLL'
appeler_dll   'VATOOLBX.DLL' 'VaToolBxOpenFile'    fileAlias myImage fileMode nb4ReturnCode
appeler_dll   'VATOOLBX.DLL' 'VaToolBxWriteString' fileAlias myAlpha          nb4ReturnCode
appeler_dll   'VATOOLBX.DLL' 'VaToolBxCloseFile'   fileAlias                  nb4ReturnCode
decharger_dll 'VATOOLBX.DLL'

/* la variable myImage contient le texte initialement contenu dans la variable myAlpha.

...

Bloc de code
/* ___ Declarations _____________________________________________________________________
alpha( 50) wAttributeName
alpha(256) wAttributeValue

/* ___ Code _____________________________________________________________________________
wAttributeName  = 'myLabel'							/* Etiquette
wAttributeValue = *blank							/* *blank pour supprimer l'attribut de la session de l'utilisateur
appeler_dll 'VaToolBx' 'VaToolBxCloudSetUserAttribute' wAttributeName  -
                                                       wAttributeValue

Management Rules

Management rules (MR) can be used if we don't want to repeat the same code on different parts of the code.
The management rule can have parameters and must be seen as a text that will be parsed inside the code.

1 - Parameters

The parameter 1 of the MR will be placed in place of the :01 value etc.
The :01 (:xx) value can be present multiple times inside the MR.
The :01 (:xx) value can be placed anywhere in the code, even to replace an Adelia order or part of it.


...

Règles de gestion

Les règles de gestion (RG) peuvent être utilisées quand on veut répéter le même code dans différentes parties d'un programme ou bien dans différents programmes et quand on a pas la possibilité d'utiliser des procédures.
Une règle de gestion peut avoir des paramètres et doit être vue comme un bloc de texte qui serait collé dans le code en remplaçant les paramètres par leur valeur explicite.

1 - Paramètres

Le paramètre 1 de la règle de gestion sera placé tel quel à la place de la valeur :01 de la règle de gestion, il en sera de même pour les paramètres suivants.
La valeur :01 (:xx) pourra être présente plusieurs fois dans le source de la règle de gestion.
La valeur :01 (:xx) pourra être placée n'importe où dans le code de la règle de gestion, même pour remplacer un ordre adelia ou une partie d'un ordre adelia.

Bloc de code
titleExemples de code de règle de gestion
Bloc de code
titleExamples of code of a Management Rule
/* ___ ManagementRG Rule "MyMa_BeautifulBelle_MRRG" ________________________________________________

/* ___ DeclarationsDéclarations _____________________________________________________________________
decl alpha( 50)              w:01_val
decl ref(cli_usr_:02 client) wCli_usr_:02
decl num_e(9,0)              sqlcode_mr

/* ___ Code _____________________________________________________________________________
wcli_usr_:02  = :03							
ifsi wcli_usr_:02 = *blank 
	wcli_usr_:02 = *user
endfin
updmaj_sql client cli_usr_:02 = :wcli_usr_:02
sqlcode_mr = *sqlcode
:06 insertinserer_mrrg BOL_TRC_:05('*DEBUG';'my beautiful MR, sqlCode : ' // sqlcode_mr ;1)
:04 = sqlcode_mr 

2 -

...

Utilisation

Pour insérer une RG, on utilisera l'ordre INSERER_RG

...

To use a MR, we simply have to insert it with the INSERT_MR order

Bloc de code
titleExamples of code of insertion of a Management Rulede codes d'insertion d'une règle de gestion
/* ___ Code _____________________________________________________________________________
insertinserer_mrrg myma_beautifulbelle_mrrg(test;cre;'milkwater';mrReturnCode;C; )  
insertinserer_mrrg myma_beautifulbelle_mrrg(test;maj;*blank;mrReturnCode;S;*)

...


...

Objets graphiques

1 - get an object from his object name

...