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 :

Script: initialisation variable à un objet du DataSet


Sujet :

BIRT

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Points : 40
    Points
    40
    Par défaut Script: initialisation variable à un objet du DataSet
    Bonjour,
    dans l'onglet Script, je souhaiterais initialiser une variable à une valeur de mon DataSet, j'ai essayé avec le code suivant mais ça ne marche pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var = dataSetRow["principal"];
    Comment initialiser cette variable à l'objet "principal" du DataSet?

    Merci d'avance pour vos réponses.

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 143
    Points : 1 353
    Points
    1 353
    Par défaut ???
    Justement un DataSetRow retourne... un tas de valeurs de la base.

    Vous voulez l'initialiser avec laquelle?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par Stefan C Voir le message
    Justement un DataSetRow retourne... un tas de valeurs de la base.

    Vous voulez l'initialiser avec laquelle?
    En fait, l'objet "principal" se trouve dans mon DataSet. Je souhaite récupérer cet objet dans un Script (dans l'onglet Script). Pour cela, j'ai utilisé le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var = dataSetRow["principal"];
    mais BIRT m'affiche une erreur ("il manque un nom de variable....").

    Savez-vous comment récupérer une valeur d'un dataSet dans l'onglet Script?

    Merci d'avance pour vos réponses.

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 143
    Points : 1 353
    Points
    1 353
    Par défaut Script?
    L'onglet Script à quel endroit?

    Il en existe un pour chaque composant...

    Si vous souhaitez "avoir" chaque valeur recupérée de la base, il faudrait charger un vecteur avec ces valeurs dans le Script sur le dataSet sur le OnFetch.

    BIRT c'est sequentiel.

    exemple d'execution de rapport Run :

    initialize

    connexion 1..n
    beforeOpen 1
    afterOpen 1
    beforeClose 1
    afterClose 1
    .. N

    dataset 1..n
    beforeOpen 1
    afterOpen 1
    onFetch 1
    beforeClose 1
    afterClose 1

    ..N

    objets dans le rapport 1..n

    finish

    Pour un Render :


    objets dans le rapport 1..n ( aucune connexion à la base , c'est juste de l'affichage )

    Pour un RunAndRender = les 2

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par Stefan C Voir le message
    L'onglet Script à quel endroit?

    Il en existe un pour chaque composant...

    Si vous souhaitez "avoir" chaque valeur recupérée de la base, il faudrait charger un vecteur avec ces valeurs dans le Script sur le dataSet sur le OnFetch.

    BIRT c'est sequentiel.

    exemple d'execution de rapport Run :

    initialize

    connexion 1..n
    beforeOpen 1
    afterOpen 1
    beforeClose 1
    afterClose 1
    .. N

    dataset 1..n
    beforeOpen 1
    afterOpen 1
    onFetch 1
    beforeClose 1
    afterClose 1

    ..N

    objets dans le rapport 1..n

    finish

    Pour un Render :


    objets dans le rapport 1..n ( aucune connexion à la base , c'est juste de l'affichage )

    Pour un RunAndRender = les 2
    Pour simplifier le problème,
    je souhaite, dans l'onglet script (à droite de l'onglet Master Page), utiliser un champ d'un dataSet. Pour ceci j'utilise le code suivant qui ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (dataSetRow["principal"] == 'O') return 'OUI';
    Comment faire pour utiliser le champ d'un dataSet dans l'onglet Script. Je vois pas ce qui est faux dans mon code.

    Merci d'avance pour vos réponses.

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 143
    Points : 1 353
    Points
    1 353
    Par défaut Map
    Pour cette fonctionnalité pas besoin de passer par du script.

    Dans un tableau vous avez un onglet "Map". C'est là que vous pouvez appliquer des règles d'affichage du type "Si dataSetrow[toto] in (1,2,3) Alors 123"

    Sinon c'est bien sur le onFetch dans le Script sur l'objet DataSet. Utiliser row et non DataSetrow

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Points : 40
    Points
    40
    Par défaut
    Citation Envoyé par Stefan C Voir le message
    Pour cette fonctionnalité pas besoin de passer par du script.

    Dans un tableau vous avez un onglet "Map". C'est là que vous pouvez appliquer des règles d'affichage du type "Si dataSetrow[toto] in (1,2,3) Alors 123"

    Sinon c'est bien sur le onFetch dans le Script sur l'objet DataSet. Utiliser row et non DataSetrow
    Sur le onFetch? Pourrais-tu me dire où se trouve le onFecth dans l'onglet Script?

    Merci d'avance pour ta réponse.

  8. #8
    Membre expérimenté

    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 143
    Points : 1 353
    Points
    1 353
    Par défaut Etapes...
    1. Tu selectionne le Dataset à gauche.

    2. Tu clique sur le onglet Script à droite.

    3. Dans le Onglet script , en haut dans la drop-down avec beforeopen etc, tu séléctionnes onFetch.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. script JS & variable globale
    Par MANU_2 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/09/2005, 08h27
  2. Problème variable et objet
    Par Hacken dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/09/2005, 14h10
  3. utiliser un script pour inserer des objets 3D
    Par s_mihai dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 09/08/2005, 13h52
  4. Problème d'initialisation variable tableau
    Par HeZiX dans le forum Langage
    Réponses: 3
    Dernier message: 08/06/2005, 16h30
  5. Réponses: 5
    Dernier message: 25/05/2005, 22h29

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