Re: Indirection | Sujet: Re: Indirection par drcharly93 sur 19/2/2004 1:30:11
Salut William,
Un début d' ébauche
//*** Déclaration de cTVA ***
cTVA est une classe
mTabTVATaux est un tableau de 0 réels //Tableau de taux de TVA
mTabTVAMontant est un tableau de 0 réels //Il faut peut être utiliser un monétaire
mNbrLignes est un entier //Nombre de ligne
FIN
//*** Methdode meth_TVALignesAffecte ***
PROCEDURE meth_TVALignesAffecte(pValeur est une chaîne)
sUneLigne est une chaîne
sUnTaux est une chaîne
sunMontant est une chaîne
i est un entier
SI SansEspace(pValeur) = "" ALORS RETOUR //ne fait rien si pvaleur est vide
SI Droite(pValeur) <> "/" ALORS pValeur = "/" //on rajoute / en fin si il n'existe pas
:mNbrLignes = ChaîneOccurrence (pValeur,"/")//On récupère le nombre de ligne
Dimension(:mTabTVATaux,:mNbrLignes)//On redimensionne le tableau
Dimension(:mTabTVAMontant,:mNbrLignes)//On redimensionne le tableau
BOUCLE //Pour lire toutes les lignes
i++
sUneLigne = ExtraitChaîne (pValeur,i,"/")//On récupère une ligne
SI SansEspace(sUneLigne) = "" ALORS SORTIR //Si on a plus de lignes alors on sort
sUnTaux = ExtraitChaîne(sUneLigne,1,"=") //On récupère le taux de la tva
sunMontant = ExtraitChaîne(sUneLigne,2,"=") //On récupère le montant
:mTabTVATaux[i] = Val(sUnTaux)
:mTabTVAMontant[i] = Val(sunMontant)
FIN
//*** meth_TVALignesAffecte ***
PROCEDURE meth_TVALignesAffecte(pValeur est une chaîne)
sUneLigne est une chaîne
sUnTaux est une chaîne
sunMontant est une chaîne
i est un entier
SI SansEspace(pValeur) = "" ALORS RETOUR //ne fait rien si pvaleur est vide
SI Droite(pValeur) <> "/" ALORS pValeur += "/" //on rajoute / en fin si il n'existe pas
:mNbrLignes = ChaîneOccurrence(pValeur,"/") //On récupère le nombre de ligne
Dimension(:mTabTVATaux,:mNbrLignes) //On redimensionne le tableau
Dimension(:mTabTVAMontant,:mNbrLignes) //On redimensionne le tableau
BOUCLE //Pour lire toutes les lignes
i++
sUneLigne = ExtraitChaîne(pValeur,i,"/")//On récupère une ligne
SI SansEspace(sUneLigne) = "" ALORS SORTIR //Si on a plus de lignes alors on sort
sUnTaux = ExtraitChaîne(sUneLigne,1,"=")//On récupère le taux de la tva
sunMontant = ExtraitChaîne(sUneLigne,2,"=") //On récupère le montant
:mTabTVATaux[i] = Val(sUnTaux)
:mTabTVAMontant[i] = Val(sunMontant)
FIN
//*** meth_GetTotalTVA ***
PROCEDURE meth_GetTotalTVA()
nMontantTVA est un réel
i est un entier
SI :mNbrLignes = 0 ALORS RENVOYER 0
POUR i = 1 A :mNbrLignes
nMontantTVA += :mTabTVAMontant[i]
FIN
RENVOYER nMontantTVA
//*** meth_MAJChamps ***
PROCEDURE meth_MAJChamps(pPrefixeChampsTaux est une chaîne, pPrefixChampsMontant est une chaîne)
i est un entier
POUR i = 1 A :mNbrLignes
{pPrefixeChampsTaux+i}..Visible = Vrai
{pPrefixeChampsTaux+i}..Valeur = :mTabTVATaux
{pPrefixChampsMontant+i}..Visible = Vrai
{pPrefixChampsMontant+i}..Valeur = :mTabTVAMontant
FIN
Pour utiliser cette classe
TVA est un objet cTVA
TVA:meth_TVALignesAffecte(Req_Facture.TvaLigne)
TVA:meth_MAJChamps("Rub_TVATx", "Rub_TVAVal")
|
|
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
|