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

ASP.NET Discussion :

Crystal report et quete dynamique


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2002
    Messages : 193
    Par défaut Crystal report et quete dynamique
    Bonjour,

    dans la page principal de mon site je construit une requete dynamiquement, j'aimerais pouvoir afficher le resultat de cette requete dans crystal report ... cette requete sera differente a chaque chargement de page ...

    comment puis je faire ? la passée en paramètre ?
    est ce possible de crée un dataset avec des requete dynamique ?

    je debut vraiment au niveau crystal report donc soyez gentils svp

    merci d'avance

    PS: si quelqu'un connais un bon tuto en fr sur crystal report , je suis preneur

  2. #2
    Membre émérite
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Par défaut
    Salut,

    Je comprends pas ce que tu entends par requête dynamique.

    Ton état crystal est sensé se baser sur une requête.
    Changer la requête n'est pas possible étant donné que tu utilises les champs de cette requête pour composer ton état.

    Que veux-tu faire exactement ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2002
    Messages : 193
    Par défaut
    Le probleme c'est que ma requete est construite dynamiquement dans ma page vb , elle depend de certain parametre ... des fois fois j'aurais 3 clause dans mon where, des fois j'en aurais pas ... tout depend des parametre que je vais recevoir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    If TB_date_deb.Text <> " " Then
                Dim str_query As String
                Dim str_temp As String
                Dim tableau() As String
                str_temp = ""
                str_query = ""
                If LB_choix.SelectedItem.Text = "Action" Then
                    str_query = "SELECT SUM(AF.Heure), AC.nom_Action "
                    str_query = str_query + "FROM A_Fait as AF "
                    str_query = str_query + "INNER JOIN Actions AS AC ON AC.ID_Action = AF.FK_Action "
                    str_temp = "GROUP BY AC.nom_Action "
                End If
                If LB_choix.SelectedItem.Text = "Apllication" Then
                    str_query = "SELECT SUM(AF.Heure), AP.nom_Application "
                    str_query = str_query + "FROM A_Fait as AF "
                    str_query = str_query + "INNER JOIN Application AS AP ON AP.ID_Application = AF.FK_Application "
                    str_temp = "GROUP BY AP.nom_Application"
                End If
                If LB_choix.SelectedItem.Text = "Zone" Then
                    str_query = "SELECT SUM(AF.Heure), Z.nom_Zone "
                    str_query = str_query + "FROM A_Fait as AF "
                    str_query = str_query + "INNER JOIN Zones AS Z ON AC.ID_Zone = AF.FK_Zone "
                    str_temp = "GROUP BY Z.nom_Zone"
                End If
     
                tableau = Split(LB_vl.SelectedItem.Text, " - ")
     
                If LB_vl.SelectedItem.Text <> "Tous" Then
                    str_query = str_query + "WHERE (AF.FK_Employe ='" + tableau(0).Trim + "') AND (CONVERT(datetime, AF.date_A_fait, 103) >= CONVERT(datetime, '" + TB_date_deb.Text + "', 103)) AND (CONVERT(datetime, AF.date_A_fait, 103) <= CONVERT(datetime, '" + TB_date_fin.Text + "', 103))"
                Else
                    str_query = str_query + "WHERE (CONVERT(datetime, AF.date_A_fait, 103) >= CONVERT(datetime, '" + TB_date_deb.Text + "', 103)) AND (CONVERT(datetime, AF.date_A_fait, 103) <= CONVERT(datetime, '" + TB_date_fin.Text + "', 103)) "
                End If
                str_query = str_query + str_temp
     
                px.Text = str_query
     
            End If

  4. #4
    Membre émérite
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Par défaut
    Dans ce cas, je te conseille de passer par une table temporaire.

    Tu y mets les colonnes que tu veux afficher et un InstanceID
    Tu lie ton état à cette table temporaire et tu n'as que l'instanceId à passer à ton état.
    Ton état devra récupérer toutes les données de la table temporaire lié à ton InstanceID

    Dans ton code, tu alimentes ta table temporaire grâce à une command

    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    str_query = 
        "INSERT tmpMATABLE (INSTANCEID, COL1, COL2) " & _
        "SELECT @InstanceID, SUM(AF.Heure), AC.nom_Action "
        ...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2002
    Messages : 193
    Par défaut
    ok merci pour ton aide, as tous hasard tu n'aurais pas un liens vers un petit tuto qui expliquerais comment utiliser les table temporaire ?

    car je debut en ASP , pas toujours évident ...lol avant je developpais en php

  6. #6
    Membre émérite
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Par défaut
    Malheureusement, j'ai pas vraiment de liens à te proposer.
    Les tutoriaux concernant crystal report sont assez rares...

    La solution que je te donne est celle que j'utilise pour mes projets.

    La notion de table temporaire est un terme que j'utilise personnellement pour définir des tables dont les données sont temporaires, mais elles existent physiquement dans la base de données.

    Le principe est simple

    > J'alimente ma table avec les données que je veux éditer
    > J'édite l'état
    > Je supprime les données de la table

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2002
    Messages : 193
    Par défaut
    ok, je vois le principe que tu utilise.

    Merci pour tes réponses

Discussions similaires

  1. Réponses: 5
    Dernier message: 23/08/2012, 17h00
  2. [C#][Crystal Report]création en dynamique de rapport
    Par doudou_rennes dans le forum VB.NET
    Réponses: 2
    Dernier message: 29/05/2007, 16h43
  3. Crystal reports - Création dynamique?
    Par Zoilus dans le forum Delphi
    Réponses: 1
    Dernier message: 25/10/2006, 16h05
  4. [Crystal Report] Afficher une image dynamiquement
    Par ntondini dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 09/08/2005, 09h58
  5. [Crystal report] Order BY Dynamique
    Par moimoimoi dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 26/05/2004, 17h05

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