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

VB.NET Discussion :

Modifier ParametreField pour chaque facture


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Par défaut Modifier ParametreField pour chaque facture
    Bonjour

    Sur une application que je travail je doit éditer une ou plusieurs factures (avec le montant en letrres) à la fois

    pour avoir le montant en lettres j'ai la fonction

    ConvertMontantLettre(Num Facture) as string

    et dont mon etat j'ai une "ParametreField" pour lui affecter le montant en letrre

    Mon problème est :
    si j'édit une seule facture

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    report.SetParameterValue("MontantEnLettres", ConvertMontantLettre(Num_Facture).ToUpper)
    par contre si je veux éditer plusieurs factures

    je ne vois pas comment modifier ce "ParametreField" pour chaque facture ...?????

    et voici la procédure d'édition des factures

    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
    Sub ImprimerFacture(ByVal Facture1 As String, ByVal Facture2 As String, ByVal Date1 As DateTime, ByVal Date2 As DateTime)
                'Editer les facture entre Facture1 et facture2 et date1 et date2 
                Try
                    With FrmEtatFacturation
                        Dim report As New CR_Facturation_Facture
                        report.SetParameterValue("@Facture1", Facture1)
                        report.SetParameterValue("@Facture2", Facture2)
                        report.SetParameterValue("@Date1", Date1)
                        report.SetParameterValue("@Date2", Date2)
     
                        report.SetParameterValue("MontantEnLettres", Ltr.ConvMontantLettre(Facture1).ToUpper) 
                        .CRView_Facturation.ReportSource = report
                        .Show()
                    End With
                Catch ex As Exception
                       ..............
                End Try
            End Sub

    Merci

  2. #2
    Membre Expert Avatar de callo
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2004
    Messages
    887
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 887
    Par défaut
    - tu peux créer une classe avec les objets à passer en paramètre à ta procédure d'édition. La classe aura comme membres: NumeroFacture et DateFacture. Soit ParamEdition cette classe;

    - tu créer ensuite une liste de ParamEdition.

    - Tu boucles avec un foreach sur la liste et tu appelles ta procédure d'édition en passant les paramètres:
    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
     
    Dim lstParametres As New List(Of ParamEdition)
    ParamEdition param1 = new ParamEdition() 
    param1.NumeroFacture = "FACT252"
    param1.DateFacture= "12/09/2012"
    lstParametres.Add(param1)
     
    ParamEdition param2 = new ParamEdition() 
    param2.NumeroFacture = "FACT722"
    param2.DateFacture= "09/10/2013"
    lstParametres.Add(param2)
    '.........
    ParamEdition paramN = new ParamEdition() 
    paramN.NumeroFacture = "FACTN..."
    paramN.DateFacture= "12/11/2013"
    lstParametres.Add(paramN)
     
    For Each item In lstParametres
       ImprimerFacture(item.NumeroFacture, item.DateFacture) 
    Next
     
    Sub ImprimerFacture(ByVal MaFacture As String, ByVal MaDateFacture As DateTime)
                'Edite les facture de la liste
                Try
                    With FrmEtatFacturation
                        Dim report As New CR_Facturation_Facture
                        report.SetParameterValue("@NumeroFacture", MaFacture)
                        report.SetParameterValue("@DateFacturation", MaDateFacture)
                        report.SetParameterValue("@MontantEnLettres", Ltr.ConvMontantLettre(MaFacture).ToUpper) 
                        .CRView_Facturation.ReportSource = report
                        .Show()
                    End With
                Catch ex As Exception
                       ..............
                End Try
            End Sub

  3. #3
    Membre très actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Par défaut
    Merci pour la proposition

    mais se que je veux éviter c'est d'appler la procédure "ImprimerFacture" plusieurs fois

    Se que je veux c'est appeler un seul etat qui contient plusieurs factures et pour chaque facture son montant en lettres et n'est pas appeler plusieurs etats contenant une seule facture

Discussions similaires

  1. Réponses: 9
    Dernier message: 04/01/2011, 16h10
  2. [VB.NET] Taille differente pour chaque colonne dans DATAGRID
    Par stephane93fr dans le forum Windows Forms
    Réponses: 14
    Dernier message: 12/01/2005, 16h50
  3. Réponses: 3
    Dernier message: 23/01/2004, 21h02
  4. [Composants] TRichEdit: Une police pour chaque ligne
    Par naili dans le forum C++Builder
    Réponses: 3
    Dernier message: 16/03/2003, 15h59

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