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

WinDev Discussion :

[WD9]comment puis-je trier par code de TVA


Sujet :

WinDev

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 571
    Points : 353
    Points
    353
    Par défaut [WD9]comment puis-je trier par code de TVA
    Bonjour tout le monde,

    voila je réalise une application sous Windev9 qui permet de gérer les interventions et réaliser les factures d'un garage RENAULT.

    Donc pour la facture j'utilise "l'état". Dans cette facture, il y a les renseignement du client... mais également les actes et les produits necessaire pour l'intervention (cela est répertorié dans un tableau qui est composé de plusieurs colonnes tel que : référence, désignation... et le code TVA) On peux avoir différent code TVA en général 1 ou 2. En dessous de mon tableau j'ai un récapitulatif des prix (Montant HT des actes, Montant HT des produits, ...., mais j'aimerai trié cela par rapport au code TVA.

    Dans le document word intitulé "Etat_Facture.RTF" qui est composé de deux pages : la première représente la facture actuellement et la deuxième la facture comme je souhaiterais qu'elle soit(voir au niveau du code TVA)

    Puis, le document word intitulé "Les fenêtres.doc" permet de préciser, de montrer les fenêtres qui me permettent de remplir la facture.

    A SAVOIR : voici comment mes données sont récupérées
    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    res est un booléen
    SI Confirmer("Que voulez-vous faire", "Voulez-vous imprimer?") = Oui ALORS
    	HLitRecherchePremier(LIGNE_MO,LM_NUMFACT, CreationFacture.NumFacture)
    	SI PAS HTrouve ALORS
    		Indice est un entier = Tableau_des_actes_de_l_intervention..Occurrence
    		Compteur est un entier
    		POUR Compteur = 1 A Indice
    			TableSelectPlus(Tableau_des_actes_de_l_intervention, Compteur)
    			EnregistrementActe.NumF = CreationFacture.NumFacture
    			EnregistrementActe.RefActe = Tableau_des_actes_de_l_intervention.LMA_REFACTE
    			EnregistrementActe.NbHF = Tableau_des_actes_de_l_intervention.LMA_NBHUTIL
    			EnregistrementActe.PU = Tableau_des_actes_de_l_intervention.Prix_Unitaire_HT
    			EnregistrementActe.Rem = Tableau_des_actes_de_l_intervention.Remise
    			EnregistrementActe.TVA = Tableau_des_actes_de_l_intervention.Code_TVA
    			HExécuteRequête(EnregistrementActe,hRequêteDéfaut)
    		FIN
    	SINON
    		Indice = Tableau_des_actes_de_l_intervention..Occurrence
    		POUR Compteur = 1 A Indice
    			TableSelectPlus(Tableau_des_actes_de_l_intervention, Compteur)
    			Modif_Acte_Facture.NumF = CreationFacture.NumFacture
    			Modif_Acte_Facture.pRefActeF = Tableau_des_actes_de_l_intervention.LMA_REFACTE
    			Modif_Acte_Facture.NbHeurF = Tableau_des_actes_de_l_intervention.LMA_NBHUTIL
    			Modif_Acte_Facture.PriHeurF = Tableau_des_actes_de_l_intervention.Prix_Unitaire_HT
    			Modif_Acte_Facture.RemiseF = Tableau_des_actes_de_l_intervention.Remise
    			Modif_Acte_Facture.TxTVAF = Tableau_des_actes_de_l_intervention.Code_TVA
    			HExécuteRequête(Modif_Acte_Facture,hRequêteDéfaut)
    		FIN	
    	FIN
     
    	HLitRecherchePremier(LIGNE_PRODUIT,LP_NUMFACT, CreationFacture.NumFacture)
    	SI PAS HTrouve ALORS
    		Indice  = Table_Req_Produit..Occurrence
    		POUR Compteur = 1 A Indice
    			TableSelectPlus(Table_Req_Produit, Compteur)
    			EnregistrementProduit.NFact = CreationFacture.NumFacture
    			EnregistrementProduit.RefPdt = Table_Req_Produit.LPA_REFPDT
    			EnregistrementProduit.QteF = Table_Req_Produit.LPA_QTECONS
    			EnregistrementProduit.PU = Table_Req_Produit.Prix_Unitaire_HT
    			EnregistrementProduit.Rem = Table_Req_Produit.Remise
    			EnregistrementProduit.TVA = Table_Req_Produit.Code_TVA
    			HExécuteRequête(EnregistrementProduit,hRequêteDéfaut)
    		FIN
    	SINON
    		Indice  = Table_Req_Produit..Occurrence
    		POUR Compteur = 1 A Indice
    			TableSelectPlus(Table_Req_Produit, Compteur)
    			Modif_Produit_Facture.NumF = CreationFacture.NumFacture
    			Modif_Produit_Facture.pRefPdtF = Table_Req_Produit.LPA_REFPDT
    			Modif_Produit_Facture.QteF = Table_Req_Produit.LPA_QTECONS
    			Modif_Produit_Facture.PriF = Table_Req_Produit.Prix_Unitaire_HT
    			Modif_Produit_Facture.TxRemF = Table_Req_Produit.Remise
    			Modif_Produit_Facture.TXTVAF = Table_Req_Produit.Code_TVA
    			HExécuteRequête(Modif_Produit_Facture,hRequêteDéfaut)
    		FIN	
    	FIN
     
    	iAperçu(i100)
    	iInitRequeteEtat(Etat_Facture_CF)
    	iImprimeEtat(Etat_Facture_CF)
    	DateFacture est une Date = DateVersChaine(Etat_Facture_CF.CHAMP58, "JJMMAAAA")
    	NomFichier est une chaîne = ("C:/Documents and Settings/PHILLIPE/Mes documents/Mes fichiers reçus/Cour/RENAULT/Etat/"+CreationFacture.Combo_NomCLIENT..ValeurAffichée+CreationFacture.Combo_ImmatVEHICULE..ValeurAffichée+"-"+DateFacture+".pdf")
    	iDestination(iPDF, NomFichier)
    	iImprimeEtat(Etat_Facture_CF)
    	iDestination(iImprimante)	
    	iImprimeEtat(Etat_Facture_CF)
    FIN
    Comment feriez-vous pour 'trier' par code TVA??
    J'avais pensé utilisé un tableau mais je vois pas trop comment je peux faire pour trier par code TVA??

    Cordialement

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 50
    Points : 60
    Points
    60
    Par défaut
    Salut,
    M'a l'air bien compliqué tout ça


    Un index/tri prenant en compte le code TVA ne serait il pas la solution à ton problème ?

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 571
    Points : 353
    Points
    353
    Par défaut
    Tout d'abord merci pour ta réponse,

    Un index/tri prenant en compte le code TVA ne serait il pas la solution à ton problème ?
    Comment tu fais "un index/tri"??

    Merci d'avance!!

  4. #4
    Expert éminent sénior
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 413
    Points : 19 609
    Points
    19 609
    Par défaut
    Utilise du SQL, tu économiseras des centaines de lignes de codes inutiles...

    Les fonctions H... sont pratiques quand il n'est question que d'un seul fichier, dès que tu as + d'un fichier à gérer dans un traitement ---> SQL.

  5. #5
    Débutant  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 571
    Points : 353
    Points
    353
    Par défaut
    Bonjour tout le monde,

    Merci pour ta réponse donc si je comprend bien tu me conseil d'utiliser une requête mais le résultat de cette requête, je l'affiche dans un tableau??!!La comme ca je vois pas trop comment faire pour afficher le résultat de la requête dans un tableau??

    voila j'ai réfléchi à mon problème et j'ai pensé de faire la chose suivante :
    1) que les champs situé en dessous du tableau deviennent un tableau c'est à dire que les champs "Montant des actes (HT)" , "Montant des produits (HT)", "Montant total (HT)", "Code TVA", "Taux TVA", "Montant TVA" soit en forme de tableau.
    2) que je modifie le code se situant au niveau de "l'ouverture de l'état" pour obtenir le tri souhaité (par rapport au code TVA) :
    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
    ....................................
    Indice est un entier = Modif_Acte_Produit_CF.Table_Acte_Produit..Occurrence
    Compteur est un entier
    POUR Compteur = 1 A Indice
    	TableSelectPlus(Modif_Acte_Produit_CF.Table_Acte_Produit, Compteur)
    	SI Modif_Acte_Produit_CF.Table_Acte_Produit.Type = "Acte" ALORS
    		MontantActe = MontantActe + Modif_Acte_Produit_CF.Table_Acte_Produit.Montant
    		TotalRemise = (TotalRemise + Modif_Acte_Produit_CF.Table_Acte_Produit.Remise)
    	SINON
    		MontantProduit = MontantProduit +Modif_Acte_Produit_CF.Table_Acte_Produit.Montant
    		TotalRemise = (TotalRemise +Modif_Acte_Produit_CF.Table_Acte_Produit.Remise)
    	FIN
    FIN
    MontantTotalHT = MontantActe + MontantProduit
    CodeTVA = Modif_Acte_Produit_CF.Table_Acte_Produit."Code TVA"
    SI CodeTVA = 2 ALORS
    	TauxTVA = 19.60
    FIN
    MontantTVA = (MontantTotalHT*TauxTVA)/100
    TotalFacture = MontantTotalHT + MontantTVA
    TotalRemise = TotalFacture * TotalRemise
    TotalAPayer = TotalFacture - TotalRemise
    Mais je voit pas trop comment je pourrais le modifier, si quelqu'un pourrais m'aider, me guider.. ce serait généreux de sa part!!

    Merci d'avance!!

    Voila j'ai cherché et malheureusement je pouvait pas faire plus d'un tableau dans le même état et vu que j'en avait déja un j'étais bloqué alor j'ai eu l'idée de faire mon tableau moi-même c'est à dire en utilisant des "champ libéllé" et des "champ calculée".

    Voici mon code :
    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
    Indice est un entier = Modif_Acte_Produit_CF.Table_Acte_Produit..Occurrence
    Compteur est un entier
    POUR Compteur = 1 A Indice
    	TableSelectPlus(Modif_Acte_Produit_CF.Table_Acte_Produit, Compteur)
    	SI Modif_Acte_Produit_CF.Table_Acte_Produit.Type = "Acte" ALORS
    		SI Modif_Acte_Produit_CF."Code TVA" = 2 ALORS
    			MontantActe_2 = MontantActe_2 + Modif_Acte_Produit_CF.Table_Acte_Produit.Montant
    			CodeTVA_2 = 2
    			TotalRemise_Euro = (TotalRemise_Euro + Modif_Acte_Produit_CF.Table_Acte_Produit.Remise)
    		SINON
    			MontantActe_1 = MontantActe_1 + Modif_Acte_Produit_CF.Table_Acte_Produit.Montant
    			CodeTVA_1 = 1
    			TotalRemise_Euro = (TotalRemise_Euro + Modif_Acte_Produit_CF.Table_Acte_Produit.Remise)
    		FIN
    	SINON
    		SI Modif_Acte_Produit_CF."Code TVA" = 2 ALORS
    			MontantProduit_2 = MontantProduit_2 +Modif_Acte_Produit_CF.Table_Acte_Produit.Montant
    			CodeTVA_2 = 2
    			TotalRemise_Euro = (TotalRemise_Euro +Modif_Acte_Produit_CF.Table_Acte_Produit.Remise)
    		SINON
    			MontantProduit_1 = MontantProduit_1 +Modif_Acte_Produit_CF.Table_Acte_Produit.Montant
    			CodeTVA_1 = 1
    			TotalRemise_Euro = (TotalRemise_Euro + Modif_Acte_Produit_CF.Table_Acte_Produit.Remise)
    		FIN
    	FIN
    FIN
    MontantTotalHT_2 = MontantActe_2 + MontantProduit_2
    MontantTotalHT_1 = MontantActe_1 + MontantProduit_1
    TauxTVA_2 = 19.60
    TauxTVA_1 = 5.50
    MontantTVA_2 = (MontantTotalHT_2*TauxTVA_2)/100
    MontantTVA_1 = (MontantTotalHT_1*TauxTVA_1)/100
    TotalFacture_Euro = MontantTotalHT_2 + MontantTotalHT_1 + MontantTVA_1 + MontantTVA_2
    TotalFacture_Franc = (TotalFacture_Euro*6.55957)
    TotalAPayer_Euro = TotalFacture_Euro - TotalRemise_Euro
    TotalAPayer_Franc = (TotalAPayer_Euro*6.55957)
    TotalRemise_Franc = (TotalRemise_Euro*6.55957)
    Mais maintenant je souhaiterais faire en sorte que si le code TVA = 1 n'existe pas alors que les champ y correspondant ne soit pas visible. Je vois pas trop comment faire.

    Est-ce que quelqu'un pourrait-il m'aider??

    Cordialement!!

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

Discussions similaires

  1. Comment puis-je interprêter du code SOAP dans Delphi 2005
    Par PHIL45 dans le forum Web & réseau
    Réponses: 1
    Dernier message: 06/07/2007, 11h44
  2. [NotifyIcon]Comment changer l'icone par code ?
    Par exclusif dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/01/2007, 18h25
  3. Comment faire Copier/Coller par code VBA sur INTERNET...
    Par GESCOM2000 dans le forum Access
    Réponses: 5
    Dernier message: 02/01/2006, 13h19
  4. [TChart] Comment changeer le style par code ?
    Par obione dans le forum Composants VCL
    Réponses: 3
    Dernier message: 09/12/2005, 16h52
  5. CSS comment puis-je modifier mon code pr avoir un bord blanc
    Par pierrot10 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 30/09/2005, 20h19

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