Variables de formule dans les états 
Une variable de formule est une formule définie par l’utilisateur qui détermine une valeur de variable. Par opposition à la variable de valeur, la valeur par défaut d’une variable de formule n’est pas fixée. Lorsque vous exécutez un état qui utilise des variables de formule, le système calcule automatiquement leur valeur (par exemple, à l’aide de la date système ou d’autres variables).

Exemple : votre état affiche les données de l’exercice en cours et de l’exercice précédent. Si vous créez deux variables indépendantes pour l’exercice en cours et précédent, vous devez saisir les deux exercices à l’écran de sélection lors de l’édition de l’état. Si vous définissez la variable de l’exercice précédent comme une variable de formule dont la valeur est issue de la variable d’exercice en cours, vous devez uniquement saisir l’exercice en cours à l’écran de sélection.
Pour plus d’informations sur la création des variables de formule, reportez-vous à
Création des variables de formule.À l’aide des variables de formule, vous pouvez créer plusieurs nouveaux types d’états. Les exemples ci-dessous illustrent la manière dont vous pouvez utiliser les variables de formule dans vos états.
Exemple 1 : périodes d’analyse
Reportez-vous à l’exemple d’état 0R-FOVAR (bibliothèque 0R1) fourni avec la composante applicative Ledgers spéciaux (FI-SL).
Cet état utilise des variables de formule pour créer des colonnes d’état contenant douze périodes. Lorsque vous saisissez la période de l’état et l’exercice de l’état pendant l’établissement de l’état, le système édite les données pour la période de l’état et les onze périodes précédentes.
Pour définir l’exemple d’état avec périodes d’analyse, vous devez créer douze variables de formule pour les douze périodes et douze variables de formule pour l’exercice correspondant. Vous devez créer des variables dans l’ordre indiqué dans le tableau ci-dessous.
Vous créez un ratio pour chaque paire de variables lorsque vous créez un état Report Writer (vous devez d’abord créer les sets multidimensionnels et de base qui contiennent les variables de formule). Vous pouvez également choisir de saisir les variables directement dans la définition d’état si vous créez un état Report Painter.
Variables de formule utilisées dans l’exemple d’état avec périodes d’analyse
|
Variable de période |
Formule |
Variable d’exercice |
Formule | |
Colonne 12 |
&0R-RP00 |
‘#S002’ |
&0R-RY00 |
‘#S001’ |
Colonne 11 |
&0R-RP01 |
IF ‘0R-RP00’ > 1 THEN ‘0R-RP00’ - 1 ELSE 12 |
&0R-RY01 |
IF ‘0R-RP01’ < ‘0R-RP00’ THEN ‘0R-RY00’ ELSE ‘0R-RY00’ - 1 |
Colonne 10 |
&0R-RP02 |
IF ‘0R-RP01’ > 1 THEN ‘0R-RP01’ - 1 ELSE 12 |
&0R-RY02 |
IF ‘0R-RP02’ < ‘0R-RP01’ THEN ‘0R-RY01’ ELSE ‘0R-RY01’ - 1 |
Colonne 9 |
&0R-RP03 |
IF ‘0R-RP02’ > 1 THEN ‘0R-RP02’ - 1 ELSE 12 |
&0R-RY03 |
IF ‘0R-RP03’ < ‘0R-RP02’ THEN ‘0R-RY02’ ELSE ‘0R-RY02’ - 1 |
Colonne 8 |
&0R-RP04 |
IF ‘0R-RP03’ > 1 THEN ‘0R-RP03’ - 1 ELSE 12 |
&0R-RY04 |
IF ‘0R-RP04’ < ‘0R-RP03’ THEN ‘0R-RY03’ ELSE ‘0R-RY03’ - 1 |
Colonne 7 |
&0R-RP05 |
IF ‘0R-RP04’ > 1 THEN ‘0R-RP04’ - 1 ELSE 12 |
&0R-RY05 |
IF ‘0R-RP05’ < ‘0R-RP04’ THEN ‘0R-RY04’ ELSE ‘0R-RY04’ - 1 |
Colonne 6 |
&0R-RP06 |
IF ‘0R-RP05’ > 1 THEN ‘0R-RP05’ - 1 ELSE 12 |
&0R-RY06 |
IF ‘0R-RP06’ < ‘0R-RP05’ THEN ‘0R-RY05’ ELSE ‘0R-RY05’ - 1 |
Colonne 5 |
&0R-RP07 |
IF ‘0R-RP06’ > 1 THEN ‘0R-RP06’ - 1 ELSE 12 |
&0R-RY07 |
IF ‘0R-RP07’ < ‘0R-RP06’ THEN ‘0R-RY06’ ELSE ‘0R-RY06’ - 1 |
Colonne 4 |
&0R-RP08 |
IF ‘0R-RP07’ > 1 THEN ‘0R-RP07’ - 1 ELSE 12 |
&0R-RY08 |
IF ‘0R-RP08’ < ‘0R-RP07’ THEN ‘0R-RY07’ ELSE ‘0R-RY07’ - 1 |
Colonne 3 |
&0R-RP09 |
IF ‘0R-RP08’ > 1 THEN ‘0R-RP08’ - 1 ELSE 12 |
&0R-RY09 |
IF ‘0R-RP09’ < ‘0R-RP08’ THEN ‘0R-RY08’ ELSE ‘0R-RY08’ - 1 |
Colonne 2 |
&0R-RP10 |
IF ‘0R-RP09’ > 1 THEN ‘0R-RP09’ - 1 ELSE 12 |
&0R-RY10 |
IF ‘0R-RP10’ < ‘0R-RP09’ THEN ‘0R-RY09’ ELSE ‘0R-RY09’ - 1 |
Colonne 1 |
&0R-RP11 |
IF ‘0R-RP10’ > 1 THEN ‘0R-RP10’ - 1 ELSE 12 |
&0R-RY11 |
IF ‘0R-RP11’ < ‘0R-RP10’ THEN ‘0R-RY10’ ELSE ‘0R-RY10’ - 1 |
Les variables de formule &0R-RP00 (période de la dernière colonne) et &0R-RY00 (exercice de la dernière colonne) sont les seules variables indépendantes des colonnes d’état. Chaque paire de variables calcule la période et l’exercice de la période précédente. L’exercice change lorsque le système calcule les périodes précédentes sur la base de la période un.
Exemple 2 : affichage des périodes d’un trimestre t
Cet exemple d’état affiche trois colonnes pour les périodes d’un trimestre t.
Pour définir les colonnes d’état, vous devez d’abord créer la variable de valeur &TRIMESTRE pour la caractéristique Période. Saisissez
Trimestre comme description de variable. Cette variable est la variable indépendante. Vous devez ensuite créer trois variables de formule (présentées dans le tableau ci-dessous) pour les trois périodes du trimestre.Variables de formule utilisées pour calculer les périodes du trimestre t
|
Variable de période |
Formule | |
Colonne 1 |
&PERT1 |
‘TRIMESTRE’ * 3 - 2 |
Colonne 2 |
&PERT2 |
‘TRIMESTRE’ * 3 - 1 |
Colonne 3 |
&PERT3 |
‘TRIMESTRE’ * 3 |
L’exemple ci-dessus part du principe que le premier trimestre se compose des périodes 1, 2 et 3. Vous saisissez les variables de formule &PERT1, &PERT2 et &PERT3 dans les ratios si vous créez un état Report Writer. Vous pouvez également choisir de saisir les variables directement dans la définition de colonne si vous créez un état Report Painter.
La variable indépendante &PERIODE n’est pas utilisée directement dans l’état ; elle est utilisée indirectement par les variables de formule. Lorsque vous exécutez le groupe d’états de l’état, le Report Writer crée la zone de saisie Trimestre pour la variable indépendante &TRIMESTRE. Vous pouvez ensuite saisir le trimestre un, deux, trois ou quatre pour éditer votre état pour le trimestre concerné.
Exemple 3 : affichage des périodes du trimestre t en fonction d’une période p
Cet exemple d’état affiche trois colonnes pour les périodes du trimestre t. Contrairement à l’état de l’exemple 2, vous saisissez une période dans le trimestre et non le trimestre lui-même à l’écran de sélection d’état pour déterminer les trois colonnes de période.
Pour définir les colonnes de l’état, vous devez d’abord créer la variable de valeur &PERIODE pour la période de la caractéristique. Saisissez
Période comme nom de variable. Cette variable est la variable indépendante. Vous devez ensuite créer trois variables de formule (présentées dans le tableau ci-dessous), qui déterminent les trois périodes du trimestre.
Variables de formule utilisées pour calculer les périodes du trimestre t en fonction d’une période p
|
Variable de période |
Formule | |
Colonne 1 |
&PERT1 |
((‘PÉRIODE’ - 1) DIV 3 + 1) * 3 - 2 |
Colonne 2 |
&PERT2 |
((‘PÉRIODE’ - 1) DIV 3 + 1) * 3 -1 |
Colonne 3 |
&PERT3 |
((‘PÉRIODE’ - 1) DIV 3 + 1) * 3 |
L’exemple ci-dessus part du principe que le premier trimestre se compose des périodes 1, 2 et 3. La variable indépendante &PERIODE n’est pas utilisée directement dans l’état ; elle est utilisée indirectement par les variables de formule. Lorsque vous exécutez le groupe d’états de l’état, le Report Writer crée la zone de saisie Période pour la variable indépendante &PERIODE. Vous pouvez ensuite saisir la période un, deux ou trois pour éditer votre état pour les périodes du premier trimestre.
Exemple 4 : affichage d’un nombre variable de colonnes pour les périodes p1 à p12
Cet exemple d’état vous permet de créer un état contenant un nombre variable de colonnes pour les périodes un à douze. Il n’est pas possible de définir un nombre variable de colonnes directement dans la définition d’état. Vous pouvez cependant le faire en créant un bloc de colonnes constitué de douze colonnes, chacune représentée par une variable de formule.

Les variables de formule mappent les périodes non désirées jusqu’à la période 16. Si des données ont été comptabilisées pour la période 16 dans votre système, nous vous conseillons d’utiliser une période distincte qui ne contient aucune données (par exemple, la période 17).
Pour définir les colonnes de l’état, vous devez d’abord créer les variables de valeur &PER_DE et &PER_A pour la caractéristique « Période ». Ces variables sont des variables indépendantes. Vous devez ensuite créer des variables de formule (présentées dans le tableau ci-dessous) qui se réfèrent toutes aux variables de période indépendantes. Après avoir créé les variables de formule, vous devez les saisir dans un set de base (créé pour la caractéristique « Période ») si vous créez un état Report Writer. Vous pouvez également choisir de les saisir directement dans la définition de colonne si vous créez un état Report Painter.
Variables de formule utilisées pour afficher un nombre variable de colonnes d’état
|
Variable de période |
Formule | |
Colonne 1 |
&PER01 |
IF 1 >= ‘PER_DE’ AND 1 <= ‘PER_A’ THEN 1 ELSE 16 |
Colonne 2 |
&PER02 |
IF 2 >= ‘PER_DE’ AND 2 <= ‘PER_A’ THEN 2 ELSE 16 |
Colonne 3 |
&PER03 |
IF 3 >= ‘PER_DE’ AND 3 <= ‘PER_A’ THEN 3 ELSE 16 |
Colonne 4 |
&PER04 |
IF 4 >= ‘PER_DE’ AND 4 <= ‘PER_A’ THEN 4 ELSE 16 |
Colonne 5 |
&PER05 |
IF 5 >= ‘PER_DE’ AND 5 <= ‘PER_A’ THEN 5 ELSE 16 |
Colonne 6 |
&PER06 |
IF 6 >= ‘PER_DE’ AND 6 <= ‘PER_A’ THEN 6 ELSE 16 |
Colonne 7 |
&PER07 |
IF 7 >= ‘PER_DE’ AND 7 <= ‘PER_A’ THEN 7 ELSE 16 |
Colonne 8 |
&PER08 |
IF 8 >= ‘PER_DE’ AND 8 <= ‘PER_A’ THEN 8 ELSE 16 |
Colonne 9 |
&PER09 |
IF 9 >= ‘PER_DE’ AND 9 <= ‘PER_A’ THEN 9 ELSE 16 |
Colonne 10 |
&PER10 |
IF 10 >= ‘PER_DE’ AND 10 <= ‘PER_A’ THEN 10 ELSE 16 |
Colonne 11 |
&PER11 |
IF 11 >= ‘PER_DE’ AND 11 <= ‘PER_A’ THEN 11 ELSE 16 |
Colonne 12 |
&PER12 |
IF 12 >= ‘PER_DE’ AND 12 <= ‘PER_A’ THEN 12 ELSE 16 |

Le code Occulter colonnes nulles doit être activé dans la mise en page standard affectée à l’état pour que les colonnes qui ne contiennent pas de valeurs ne soient pas affichées dans l’édition d’états.
Lorsque vous exécutez le groupe d’états de l’état, le Report Writer crée des zones de saisie pour les variables indépendantes &PER_DE et &PER_A qui déterminent l’intervalle de période.
Exemple 5 : calcul des valeurs par défaut pour un exercice décalé
Vous pouvez créer des variables de formules qui proposent par défaut la période actuelle ainsi que l’exercice actuel à l’aide de la date système. Si vous utilisez un exercice décalé, vous pouvez créer des variables de formule qui calculent la période et l’exercice exacts en utilisant la date système et la période en cours.
Exemples de variables de formule pour calculer les valeurs par défaut d’un exercice décalé
Description |
Formule |
Année civile de la date système |
‘#S001’ |
Mois civil de la date système |
‘#S002’ |
Exercice décalé calculé à partir de la date système (l’exercice décalé commence en juillet) |
IF ‘#S002’ > 6 THEN ‘#S001’ + 1 ELSE ‘#S001’ |
Période calculée à partir de la date système (l’exercice décalé commence en juillet) |
IF ‘#S002’ >6 THEN ‘#S002’ - 6 ELSE ‘#002’ + 6 |