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

SAP Crystal Reports Discussion :

[XI] Plusieurs enregistrements en une seule ligne


Sujet :

SAP Crystal Reports

  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 6
    Points
    6
    Par défaut [XI] Plusieurs enregistrements en une seule ligne
    Bonjour,
    J'ai une table de commande et bien sûr son acolyte une table de lignes de commande. La requête de sélection renvoie autant de lignes qu'il y a de lignes de commande. Mais j'aimerai afficher ces lignes en une seule du style "LigneCommande1 - LigneCommande2 - ... - LigneCommandeN"
    Comment puis je procéder ?
    Merci de vos réponses

  2. #2
    Membre émérite
    Avatar de L.nico
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2003
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 143
    Points : 2 679
    Points
    2 679
    Par défaut
    Bonjour,
    si j'ai bien compris ce que tu veux, tu pourrais tout simplement concatener dans une variable chaine (au niveau détail) et afficher cette dite variable en fin de groupe de commande.
    Bonne continuation.

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 13
    Points : 11
    Points
    11
    Par défaut Plusieurs enregistrements en une seule ligne
    Bonjour,

    J'aimerai savoir si quelqu'un a la solution pour l'affichage en ligne.
    Car je suis confronté au meme problème.

    Merçi

  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 13
    Points : 11
    Points
    11
    Par défaut Affichage sur une seule ligne du contenu de la zone détail
    Voila, j'ai trouvé une solution.
    Ci-joint l'extrait d'une documentation sur crystal qui explique comment faire afficher un total cumulé. En reprenant le meme principe, on peut faire afficher en une ligne le contenu de la zone détail, il suffit d'utiliser stringVar à la place de CurrencyVar.

    Pour créer des totaux cumulés à l'aide d'une formule
    1. Création d'un rapport à l'aide des exemples de données de Xtreme.mdb.
    Reliez les tables Clients et Commandes entre elles et placez les champs
    suivants de gauche à droite dans la section Détails :
    {clients.NOM DU CLIENT}
    {commandes.ID COMMANDE}
    {commandes.MONTANT COMMANDE}
    2. Dans le menu Affichage, cliquez sur Explorateur de champs.
    3. Sélectionnez Champs de formule dans la boîte de dialogue de
    l’Explorateur de champs et cliquez sur Nouveau.
    4. Affectez le nom "TotalCumulé" à la formule et cliquez sur Utiliser l'éditeur.
    L'Editeur de formule est actif dans l'Atelier de formule qui s'affiche.
    5. Saisissez les données suivantes dans la zone Formule :
    WhilePrintingRecords;
    CurrencyVar Montant;
    Montant := Montant + {commandes.MONTANT COMMANDE};
    6. Cliquez sur le bouton Enregistrer et fermer de l'Atelier de formule.
    7. Placez cette formule dans la section Détails de votre rapport, à droite du
    champ {commandes.MONTANT COMMANDE}.
    Cette formule imprime le total cumulé des valeurs du champ Montant
    commande.
    8. Dans le menu Insertion, cliquez sur Groupe et regroupez le rapport sur
    le champ {clients.NOM DU CLIENT}.
    9. Dans l'Atelier de formule, créez "RéinitialiserMontant" :
    WhilePrintingRecords;
    CurrencyVar Amount := 0;
    Cette formule signifie :
    Définir la valeur de la variable Montant sur 0.
    10. Placer cette formule dans la section En-tête de groupe 1 de votre rapport.
    La section En-tête de groupe 1 n'apparaissant qu'une seule fois pour
    chaque groupe, le paramètre @RéinitialiserMontant s'exécute à chaque
    changement de groupe. Ainsi, la variable Montant est redéfinie sur 0 pour
    chaque nouveau groupe.
    11. Sélectionnez la formule @RéinitialiserMontant dans le rapport et utilisez
    l'Editeur de mise en forme pour la supprimer pour qu'elle n'apparaisse
    pas lors de l'impression finale.
    12. Dans l'Atelier de formule, créez "AfficherMontant" :
    WhilePrintingRecords;
    CurrencyVar Montant;
    Cette formule affiche simplement la valeur actuelle de la variable Montant
    à tout moment.
    13. Placez cette formule dans la section Pied de page de groupe 1 de votre
    rapport.

  5. #5
    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 emilie et merci d'avoir donné la réponse

    Pense au TAG en bas de ton écran

  6. #6
    Membre émérite
    Avatar de L.nico
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2003
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 143
    Points : 2 679
    Points
    2 679
    Par défaut
    Dites moi ...
    je bigle où la réponse n'a absolument rien à voir avec la question ...... !?

  7. #7
    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
    Citation Envoyé par L.nico
    Dites moi ...
    je bigle où la réponse n'a absolument rien à voir avec la question ...... !?
    J'avais pas lu... mais en effet

  8. #8
    Membre émérite
    Avatar de L.nico
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2003
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 143
    Points : 2 679
    Points
    2 679
    Par défaut
    ok j'ai bien relu la réponse d'emilie qui elle n'avait pas bien lu la mienne .....(je proposais déjà une solution similaire sans la détailler)
    Il faut effectivement avoir 3 formules, une d'initialisation, une où est effectuée la concaténation et une qui sert à afficher le résultat en bloc .....
    En prenant une variable chaine, on arrive bien sûr à concaténer au niveau détail pour afficher au niveau fin de groupe ...
    Ta solution doit sûrement fonctionner car elle est la copie conforme d'un cumul manuel ......
    Attention tout de même à une chose :
    la taille d'une variable chaine dépend de la version de CR :

    version 9 et moins : 255 caractères
    version 10 et + : 64 ko.

    il faut être certain de ne pas dépasser les limites instaurées par la taille max de la variable chaine. Dans ton cas le problème ne se pose pas, mais cette solution est valable pour les version 10 et +.
    Bonne continuation.

  9. #9
    Inactif  
    Avatar de Aitone
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    3 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 3 562
    Points : 4 493
    Points
    4 493
    Par défaut
    Citation Envoyé par BiM
    Pense au TAG en bas de ton écran
    Ce n'est pas lui (elle ? -> Emilie1 = Emilien ?) qui a ouvert ce post

    Par contre chapeau pour cette réponse très bien détaillée

Discussions similaires

  1. [AC-2003] Plusieurs enregistrements sur une seule ligne
    Par romainrogo dans le forum IHM
    Réponses: 22
    Dernier message: 20/11/2015, 11h30
  2. [XL-2003] Plusieurs enregistrements sur une seule ligne
    Par romainrogo dans le forum Excel
    Réponses: 2
    Dernier message: 16/01/2014, 10h09
  3. Réponses: 2
    Dernier message: 29/03/2006, 16h36
  4. plusieurs enregistrements dans une seul ligne
    Par Celelibi dans le forum Requêtes
    Réponses: 3
    Dernier message: 03/01/2005, 15h55
  5. Insérer plusieurs enregistrements en une seule requête
    Par pyd001 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/02/2004, 10h38

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