IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

BIRT Discussion :

Utiliser valeurs d'un DataSet dans une fonction


Sujet :

BIRT

  1. #1
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Points : 2 808
    Points
    2 808
    Par défaut Utiliser valeurs d'un DataSet dans une fonction
    Bonjour à tous et à toutes

    Je possède un DataSet me renvoyant un champ date et un champ ferie (contient une chaine si le jour et ferie, rien sinon) entre autre.
    Ce qui donne par exemple:
    2011-05-01 dsfvdsvdsbvdf
    2011-05-02 NULL
    2011-05-03 NULL
    ...

    je possède un datacube qui ne contient pas le champ ferie. Le groupe du dessus contient les dates.

    Cependant, j'aimerai utiliser ce champ pour grisé ma case lorsque cette date est férié.

    Donc j'aimerai créer une fonction qui prendrait en parametre une date (date de la case de ma crosstab) et qui me renvoie true or false.
    Ce qui veut dire que dans le corps de ma fonction, je dois utiliser le résultat du DataSet afin de comparer la date en paramètre avec les date du DataSet et de récupérer le champ ferie pour savoir s'il est vide ou non


    J'espere que j'ai été clair :S

    Quelqu'un serait faire ce type de fonction???

    Merci d'avance

  2. #2
    Membre averti

    Inscrit en
    Avril 2010
    Messages
    178
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 178
    Points : 418
    Points
    418
    Par défaut
    Bonjour,

    Je réponds un peu vite fait, je serai sans doute hors-sujet mais tant pis.
    Si j'ai bien compris, ton besoin est de griser une case d'un cube, en fonction d'une donnée d'un dataset, correspondant à une date utilisée dans un groupe du cube.

    Tu as dis que ton cube ne contenait pas le champ "férié". Pourquoi ? Il me semble que ce serait la solution à ton problème : tu n'aurais qu'à créer une agrégation de type COUNT(data["férié"]), et mettre une mise en forme conditionnelle (highlight) sur ta case, en fonction de la valeur de ce compteur.

    En tout cas je ne comprends pas ton histoire de fonction. D'après moi ça revient plus ou moins à créer une colonne calculée, contenant une valeur booléenne valant "true" si ton champ "férié" est non nul, ce qui revient à ce que j'ai écrit au dessus.

    Si ma proposition ne te convient pas, pourquoi tiens-tu à faire une fonction (javascript ?) ?

  3. #3
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Points : 2 808
    Points
    2 808
    Par défaut
    Ta méthode me convient, c'est ce que j'essaye de faire mais je ne comprend pas pourquoi il ne veut jamais me le prendre en compte.

    Je résume ta méthode en la combiannat avec la mienne:

    Ajouter dans mon datacube le champ ferie en tant que sumary field:
    * Function: COUNT
    * Data Type: Integer
    * Expression: dataSetRow["ferie"]

    Ajouter un Data Binding nomme "ferie" sur le data cube renvoyant un boolean et ayant comme expression:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (measure["ferie"]) ? true : false
    Sur la case a griser creer un highlight
    * data["ferie"] equal to true
    * Appliquer un style


    Mon soucis c'est que ce n'est pas un int mais un string donc mon erreur est:
    Can not convert the value of c1679b47-74ad-3704-2d97-be872c86cab2 to Integer type
    Ceci représente ma premiere étape lorsque je fais un COUNT je suppose!!!

Discussions similaires

  1. Utilisation d'un tableau java dans une fonction JS
    Par bilou69 dans le forum Général JavaScript
    Réponses: 24
    Dernier message: 19/07/2011, 12h32
  2. utiliser le resultat d´un select dans une fonction
    Par charlie_p07 dans le forum PostgreSQL
    Réponses: 8
    Dernier message: 12/03/2008, 20h54
  3. Utilisation de variables de Gui dans une fonction
    Par campofelliz dans le forum Interfaces Graphiques
    Réponses: 4
    Dernier message: 20/08/2007, 17h46
  4. Réponses: 6
    Dernier message: 21/06/2007, 15h59
  5. Réponses: 23
    Dernier message: 10/01/2007, 01h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo