espace_print.png

 

 

Commandes par thèmes (4D)

Booléens (opérations sur les valeurs vrai / faux)

Chaînes de caractères

Conteneur de données (opérations sur le contenu du presse papier)

Dates et heures

Enregistrements (commandes a priori non utile dans sPAIEctacle)

Fonctions mathématiques

Fonctions statistiques

Images (commandes non utilisables dans sPAIEctacle)

Impressions

Outils

Notions de champ et commande

Les champs sont des données directement stockées dans une des tables du fichier de données. Elle peuvent avoir un formatage simple prédéfini (par exemple les noms sont en majuscules). Dans les courriers ou les états, un champs est indiqué de la façon suivante : [NomDeLaTable]NomDuChamp.

Les commandes sont des données complexes ou formatées (par exemple le cumul brut des paies d'un contrat ou le numéro de sécurité social d'un salarié formaté avec des espaces).

Les commandes 4D en particulier, permettent différentes opérations sur les champs du fichier de données. Elles sont classées par thèmes.

Booléens (opérations sur les valeurs vrai / faux)

Faux retourne la valeur booléenne Faux.

Non retourne la valeur inverse de booléen. Par exemple Non(Vrai) donnera la valeur booléenne Faux.

Vrai retourne la valeur booléenne Vrai.

Chaînes de caractères

Caractere

La fonction Caractere retourne le caractère dont le code Unicode ASCII est donné en argument.

Par exemple Caractere(234) donnera "ê" sous Windows.

Chaine

La commande Chaine retourne sous forme de chaîne alphanumérique l'expression de type numérique, date, heure, chaîne ou booléen donnée en argument. Un second argument permet de définir le format.

Par exemple :

Chaine(1/3;"##0.00000") donnera 0.33333

Chaine([Salarie]DateEntree) permettra d'utiliser la commande SiSinonTexte sur le champ [Salarie]DateEntree.

Code de caractere

La fonction Code de caractere retourne le code Unicode ASCII du caractère donné en argument.

Par exemple Code de caractere("ê") donnera "234" sous Windows.

Convertir caracteres

Commande obsolète 

Inserer chaine

La commande Inserer chaine permet d'insérer une chaîne de caractère dans une autre chaîne, à partir d'un caractère donnée.

Par exemple Inserer chaine("sctacle";"PAIE";2) va insérer "PAIE" dans la chaîne "sctacle" à partir du 2ème caractère soit "sPAIEctacle".

ISO vers MAC

Commande obsolète

Longueur

La commande Longueur retourne le nombre de caractère d'une chaîne.

Par exemple Longueur("sPAIEctacle") donnera 11.

Mac vers ISO

Commande obsolète

Mac vers Windows

Commande obsolète

Majusc

La commande Majusc convertit une chaîne da caractère en majuscules. L'argument optionnel "*" permet de conserver les accents.

Par exemple :

Majusc("hélène") donnera HELENE

Majusc("hélène";*) donnera HÉLÈNE

Minusc

La commande Minusc convertit une chaîne de caracère en minuscules. L'argument optionnel "*" permet de conserver les accents.

Par exemple :

Minusc("HÉLÈNE") donnera helene

Minusc ("HÉLÈNE";*) donnera hélène

Num

La fonction Num retourne sous forme de numérique l'expression de type chaîne, booléen ou numérique passée en argument.

Par exemple :

Num("A1B2C3") donnera 123

Num("-123e2") donnera -12300

Num("123e-2") donnera 1,23

Num(Vrai) donnera 1

Num(Faux) donnera 0

Position

La fonction Position retourne la position d'une chaîne dans une autre chaîne. Un premier argument optionnel permet d'indiquer le nombre de caractère à ignorer, un second  permet notamment de prendre en compte la casse et les accents.

Par exemple :

Position("PAIE", "sPAIEctacle") donnera 2

Position("pàie", "sPAIEctacle") donnera 2

Position("pàie", "sPAIEctacle";1;*) donnera 0

Position("PAIE", "sPAIEctacle et LaPAIE";5) donnera 18

Remplacer caracteres

La commande Remplacer caracteres retourne une chaîne résultant du remplacement des caractères, dans une chaîne source, à partir d'une position départ, par une autre chaîne.

Par exemple :

Remplacer caracteres("spaiectacle";"PAIE";2) donnera sPAIEctacle

Remplacer caracteres("novembre";"déc";1) donnera décembre

Remplacer chaine

La commande Remplacer chaine permet de remplacer dans une chaîne source, une chaîne de caractère par une autre. L'argument optionnel "*" permet de tenir compte de la case et des accents.

Par exemple :

Remplacer chaine("abattement pour frais professionnels";"tement";".") donnera "abat. pour frais professionnels"

Remplacer chaine([Paie]TexteSurBulletin;Caractere(Tabulation);",";*) remplace les tabulations du champ TexteSurBulletin par des virgules

Remplacer chaine("Pays de résidence";"residence";"naissance") donnera "Pays de naissance"

Remplacer chaine("Pays de résidence";"residence";"naissance";*) donnera "Pays de résidence"

Sous chaine

La fonction Sous chaine retourne une partie de la chaîne donnée en argument. La partie à extraire est délimitée soit par le premier caractère et le nombre de caractère à extraire, soit par le nombre de caractère à ignorer.

Par exemple :

Sous chaine("sPAIEctacle";2;4) donnera "PAIE"

Sous chaine("LaPAIE";2) donnera "PAIE"

Supprimer chaine

Supprimer chaine supprime des caractères d'une chaîne donnée en argument. La partie à supprimer est délimitée par le premier caractère et le nombre de caractère à supprimer.

Par exemple :

Supprimer chaine("abattement pour frais professionnels";5;11) donnera "abat frais professionnels"

Supprimer chaine("abattement pour frais professionnels";5;99) donnera "abat"

Windows vers MAC

Commande obsolète

Conteneur de données (opérations sur le contenu du presse papier)

Lire texte dans conteneur

La commande Lire texte dans conteneur retourne le texte présent dans le conteneur de données.

En pratique, cela permet d'insérer dans un état ou un courrier le contenu du presse papier.

Dates et heures

Ajouter a date

Ajouter a date permet d'ajouter ou d'enlever des années, mois et jours à une date donnée.

Par exemple :

Ajouter a date(Date du jour;1;0;0) donnera la date dans un an le même jour

Ajouter a date(Date du jour;0;0;1) donnera la date de demain

Ajouter a date([Contrat]DateDebut;0;-1;0) donnera la date un mois avant la date de début de contrat

Annee de

Annee de retourne l'année d'une date donnée.

Par exemple Annee de (!25/12/1977!) donnera 1977.

Chaine heure

Chaine heure retourne le nombre de seconde donné, au format HH:MM:SS.

Par exemple Chaine heure(46801) donnera 13:00:01 (donnée de type texte).

Date

Date transforme un chaine de caractère en date. Le texte en argument doit avoir la forme JJ/MM/AA. Les séparateurs autorisés sont la barre oblique, le point, la virgule, l'espace et le tiret. Pour l'année, si la valeur saisie est supérieur ou égale à 30 on considère qu'il s'agit de 19.., si la valeur saisie est inférieur à 30, on considère qu'il s'agit de 20..

Par exemple Date("25/12/77") donnera 25/12/1977 (donnée de type date).

Date du jour

Date du jour retourne la date courante telle que définie dans l'horloge système de la machine.

Heure

Heure transforme un chaine de caractère en donnée de type heure. L'argument doit contenir une heure exprimée dans l'un des formats d'heure standard de 4D correspondant à la langue de votre système (voir à ce sujet la fiche Formatage des données). Un second argument permet de formater le résultat.

Par exemple Chaine(Heure("13:00:00");Heure Minute) donnera "13 heures 0 minutes" (donnée de type heure).

Heure courante

Heure courante retourne l'heure courante telle que définie dans l'horloge système de la machine.

Jour de

Jour de retourne le jour d'une date donnée.

Par exemple Jour de (!25/12/1977!) donnera 25.

Mois de

Mois de retourne le mois d'une date donnée.

Par exemple Mois de (Date du jour) donnera le mois de la date courante telle que définie dans l'horloge système de la machine.

Nombre de millisecondes

Nombre de millisecondes retourne le nombre de millisecondes écoulées depuis le démarrage de la machine.

Nombre de ticks

Nombre de ticks retourne le nombre de ticks (1 tick = 1/60ème de seconde) écoulés depuis le démarrage de la machine.

Numero du jour

Numero du jour retourne un numéro représentant le jour de la semaine auquel correspond la date donnée. Le résultat est 1 pour "dimanche", 2 pour lundi, 3 pour mardi, etc... Si la date donnée est invalide, le résultat sera 2.

Par exemple Numero du jour (!25/12/1977!) donnera 1 puisque le 25 décembre 1977 était un dimanche.

Enregistrements (commandes a priori non utile dans sPAIEctacle)

Ces commandes ne sont a priori pas à utiliser, ni dans un état rapide, ni dans un courrier.

Numero enregistrement retourne le numéro de l'enregistrement courant de la table donnée en argument.

Numerotation automatique retourne le prochain numéro automatique de la table donnée en argument.

Fonctions mathématiques

Abs

Abs retourne la valeur absolue positive d'un chiffre

Par exemple Abs(-12,3) donnera 12,3

Arrondi

Arrondi retourne la valeur arrondie du nombre donné en argument. Un second argument permet de préciser le nombre de décimales.

Par exemple

Arrondi(16,857;2) donnera 16,86

Arrondi(16857;-3) donnera 16000

Convertisseur Euro

La commande Convertisseur Euro permet d'effectuer tout type de conversion de valeurs entre les différentes monnaies des pays de la "zone euro" et l’Euro lui-même. Il est possible de convertir une monnaie nationale en Euros, des Euros en une monnaie nationale, une monnaie nationale en une autre monnaie nationale (dans ce cas, la conversion s’effectue toujours par l’intermédiaire de l’Euro).

Le premier argument est la valeur à convertir, le second est le libellé de la monnaie dans laquelle valeur est exprimée, le troisième le libellé de la monnaie dans laquelle la valeur doit être convertie.

Les valeurs prises en compte sont les suivantes :

Libellé monaie

Valeur pour 1 Euro

Code ISO

Drachme grecque

340,750

GRD

Escudo portugais

200,482

PTE

Euro

1

EUR

Florin néerlandais

2,20371

NLG

Franc belge

40,3399

BEF

Franc français

6,55957

FRF

Franc luxembourgeois

40,3399

LUF

Lire italienne

1936,27

ITL

Livre irlandaise

0,787564

IEP

Mark allemand

1,95583

DEM

Mark finlandais

5,94573

FIM

Peseta espagnole

166,386

ESP

Schilling autrichien

13,7603

ATS

Par exemple :

Convertisseur Euro(100;Franc français;Euro) donnera 15,24

Convertisseur Euro([Paie]NetAPayer;Euro;Lire italienne) donnera le montant du champ NetAPayer en Lires italiennes

Ent

Ent retourne la partie entière du nombre donné en argument, en l'arrondissant à l'entier inférieur.

Troncature

Troncature retourne la nombre donné en argument, tronquée à partir du nombre de décimales spécifié en second argument.

Par exemple :

Troncature(216,897;2) donnera 216,89

Troncature(216,897;-2) donnera 200

Autres commandes mathématiques

Arctan(nombre) retourne en radians la valeur de l'angle dont la tangente est nombre.

Cos(nombre) retourne le cosinus de nombre (exprimé en radians).

Dec(nombre) retourne la partie décimale de nombre.

Exp(nombre) retourne l'exponentielle (e=2,71828...) de nombre.

Hasard retourne une valeur entière aléatoire comprise entre 0 et 32 767 (inclus).

Log(nombre) retourne le logarithme népérien de nombre.

Modulo(nombre1;nombre2) divise nombre1 par nombre2 et retourne le reste sous forme d'un nombre entier.

Racine carree(nombre) retourne la racine carrée de nombre.

Sin(nombre) retourne le sinus de nombre (exprimé en radians).

Tan(nombre) retourne la tangente de nombre (exprimé en radians).

Fonctions statistiques

Les fonction statistiques ont pour argument une table. Elles retourne l'Ecart type, la valeur Max Min ou Moyenne, la Somme Somme des carres ou Variance de la table.

Par exemple la commande Max([Paie]NetAPayer) utilisée dans un état rapide donnera le net à payer le plus élevé de la sélection de départ.

Images (commandes non utilisables dans sPAIEctacle)

Commandes ne pouvant pas être utilisée dans sPAIEctacle.

Impressions

Page impression retourne le numéro de la page en cours d'impression.

Les commandes Niveau et Sous total ne sont a priori pas à utiliser, ni dans un état rapide, ni dans un courrier. Pour effectuer des tris et sous-totaux dans un état rapide, il convient d'insérer une ligne de sous-total.

Outils

Choisir

La commande Choisir retourne l’une des valeurs passées en argument (valeur1, valeur2, etc...) en fonction d'un critère de type booléen ou numérique.

Par exemple

Choisir([Paie]NetAPayer<200;"moins de 200 euros";"plus de 200 euros") retournera "moins de 200 euros" si le champ NetAPayer est inférieur à 200

Choisir(Numero du jour(Date du jour);"dimanche";"lundi";"mardi") retournera le jour en toute lettre du dimanche au mardi, rien les autres jours (la valeur1 correspond à 0, la valeur2 correspond à 1, etc...)