F.A.Q. Business-ObjectsConsultez toutes les FAQ
Nombre d'auteurs : 15, nombre de questions : 19, dernière mise à jour : 16 juin 2013
Par exemple comment afficher tous les mois dans un tableau même s'il n'y a rien eu certains mois ?
A) Soit, il existe quelque part ailleurs dans une table le même champ où cette donnée existe
(par exemple peut-être que vous n'avez pas vendu l'article X ce mois-là, mais que si on prend la table avec tous les articles vendus, vous en avez vendu d'autres durant le mois en question)
Dans ce cas-là faites une seconde requête, avec moins de conditions, qui ramène uniquement la donnée dont vous avez besoin (par exemple, dans la table avec vos ventes, ramenez uniquement le champ de date, sans condition d'objet).
Cela va créer dans BO une donnée synchronisée, et dans votre tableau utilisez-la à la place de la donnée créée par votre requête principale.
B) Soit, la donnée manquante n'existe nulle part ailleurs (votre entreprise est fermée en juillet, vous ne vendez jamais rien ce mois-là)
Dans ce cas créez un faux tableau croisé, mettez en tête de colonne le nom que vous voulez faire apparaître (vos 12 mois par exemple) et dans le corps du tableau, sous chaque colonne, mettez une formule comme :
=IF([donnée]="tete de colonne";[résultat];0)
Autre solution, si la donnée manquante est dans une liste de valeurs courte, on peut créer une requête SQL pour gérer le problème de la même façon que dans A), par exemple pour les mois :
SELECT
1
AS
Mois FROM
dual
UNION
ALL
SELECT
2
AS
Mois FROM
dual
UNION
ALL
SELECT
3
AS
Mois FROM
dual
UNION
ALL
SELECT
4
AS
Mois FROM
dual
UNION
ALL
SELECT
5
AS
Mois FROM
dual
UNION
ALL
SELECT
6
AS
Mois FROM
dual
UNION
ALL
SELECT
7
AS
Mois FROM
dual
UNION
ALL
SELECT
8
AS
Mois FROM
dual
UNION
ALL
SELECT
9
AS
Mois FROM
dual
UNION
ALL
SELECT
10
AS
Mois FROM
dual
UNION
ALL
SELECT
11
AS
Mois FROM
dual
UNION
ALL
SELECT
12
AS
Mois FROM
dual