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 :

[2.6.0] Comment parcourir et modifier les enregistrements d'une DATASET


Sujet :

BIRT

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Points : 39
    Points
    39
    Par défaut [2.6.0] Comment parcourir et modifier les enregistrements d'une DATASET
    Salut,

    J'ai une dataSet( liée à une procédure Stockée) qui récupère ces lignes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     GroupId              dtDebut            dtFin
    
     128                   29/09/2010        05/10/2010  <-- Période 1  
     128                   06/10/2010        12/10/2010  <-- Période 2 
     128                   20/10/2010        26/10/2010  <-- Période 3 
     ...
     135                   13/10/2010        19/10/2010   <-- Période n
    Je veux modifier ces lignes pour avoir cette résultat :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     128                   29/09/2010        12/10/2010  <-- Période 1,2  
     128                   20/10/2010         26/10/2010  <-- Période 3 
     ...
     135                   13/10/2010        19/10/2010   <-- Période n
    Algorithme :
    si ligne(n) .dtDebut = ligne(n-1).dtFin+1) et si ligne(n).groupId= ligne(n-1).groupId
    Alors je fusionne les deux périodes.




    Comment peut-on avoir cette résultat ?

  2. #2
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Bonjour,

    Tu te compliques la vie, regarde du côté des groupes, je suis certaine que tu trouveras ton bonheur.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Points : 39
    Points
    39
    Par défaut
    je n'ai Pas Compris ! comment je peux comparer deux lignes ?
    Pouvez vous m'expliquer SVP !

  4. #4
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Ta méthode n'est pas bonne, il ne faut pas comparer deux lignes, il faut les regrouper, c'est ce que tu veux faire non ? Regrouper par période ?

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Points : 39
    Points
    39
    Par défaut
    Non ,Je veux fusionner des périodes !

    Par exemple j'ai deux périodes :

    periode1[dateDebut1,dateFin1]
    periode2[dateDebut2,dateFin2]
    supposant que ces deux périodes sont successives cad (dateFin1+ 1jour)=dateDebut2


    Je veux fusionner ces deux periodes pour avoir une nouvelle periode3[dateDebut1,dateFin2] !

    je sais pas si vous avez compris ? HELP

  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 OnFetch
    Vous avez un endroit pour scripter ceci : le OnFetch sur le Dataset en question.

    Par contre je pense que ce soit plus facile encore à faire dans le SQL de la proc stoc , c'est une simple colonne calculée.

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Points : 39
    Points
    39
    Par défaut On Fetch ??
    Pouvez vous m'expliquer SVP comment faire avec le OnFetch ?
    Comment je peux modifier les valeurs d'une DataSet, même les supprimer ?

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Points : 39
    Points
    39
    Par défaut
    La solution des proc est compliquée ( il faut créer une table temporelle et comparer chaque ligne avec la ligne suivante .... )

    Est ce possible de modifier les données retourner par une DataSet dans la méthode OnFetch ? HELP

  9. #9
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Bonjour,

    Sur le fetch, on peut faire des choses éventuellement pour regrouper les périodes mais il faut que les données soit triées.

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Points : 39
    Points
    39
    Par défaut
    Je veux comparer deux lignes de ma DataSet :
    Par exemple:

    On Fetch{

    if( row[dtFin](ligne n)=row[dtDebut](ligne n-1)
    je supprime la ligne n


    }

    Est ce possible de faire ce genre de Script avec Birt?

    Si oui, POuvez vous me donner un exemple SVP !

  11. #11
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Non, mais tu peux modifier la période pour ensuite regrouper les lignes.

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Points : 39
    Points
    39
    Par défaut
    je n'ai pas compris votre solution !comment on peut modifier la période ?

    J'ai utilisé Finalement la solution avec des procs !

Discussions similaires

  1. [AC-2003] Modifier les enregistrements d'une table avec recordset?
    Par buzz73 dans le forum IHM
    Réponses: 4
    Dernier message: 29/06/2009, 09h54
  2. [AC-2000] Impossible de modifier les enregistrements d'une requête
    Par mcfly37 dans le forum Requêtes et SQL.
    Réponses: 15
    Dernier message: 29/05/2009, 14h22
  3. comment voir et modifier les membres d'une structure ?
    Par dva2tlse dans le forum Débuter
    Réponses: 12
    Dernier message: 22/11/2008, 14h07
  4. Réponses: 2
    Dernier message: 23/05/2007, 13h38
  5. [MySQL] modifier les enregistrement d'une table mysql par un formulaire
    Par belakhdarbts10 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 15/05/2007, 11h09

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