Forums développeurs windev Tunidev
Howdy Guest! Connexion / Create an account
Se connecter
Utilisateur :
Mot de passe :
 
  • Portail
  • Forums
  • Recherche
  • Members
  • Calendrier
  • Aide
Forums développeurs windev  /  Forums Développeurs WINDEV  /  Forum windev 11 & plus récentes v
« Précédent 1 ... 49 50 51 52 53 ... 123 Suivant »
 /  un code simple p convertir un montant en dinars en lettre
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
un code simple p convertir un montant en dinars en lettre
ASG2012 Hors ligne
Member
***
Messages : 96
Sujets : 55
Inscription : May 2011
Réputation : 0
Thanks: 0
Given 0 thank(s) in 0 post(s)
#1
07-06-2011, 02:29 PM
dans la procédure déclaration globale de la fenêtre tapez ce code
Code :
n est un entier
n6 est réel
créer une procédure locale de la fenêtre intitulé lettres
Code :
PROCEDURE lettres()

lettre est une chaîne
nIndice est un entier
moNPrix est un monétaire
rNTVA est un réel
mon est un monétaire
n747 est une chaîne
n99 est un entier
k est un entier
b est un entier
j est un entier
TTC est un monétaire


tunite est un tableau de 9 chaînes
m est une chaîne
c est une chaîne
d est une chaîne
u est une chaîne


n44 est un entier
n2 est un entier
n3 est un entier
n4 est un entier
n5 est une chaîne
n22 est un entier
n33 est un entier

zmille est une chaîne
zcent est une chaîne
zdix est une chaîne
zunite est une chaîne
zmille1 est une chaîne
zcent1 est une chaîne
zdix1 est une chaîne
zunite1 est une chaîne
tdix est tableau de 9 chaînes
tcent est un tableau de 9 chaînes
//VPUHTFO ESt  REEL DOUBLEl
rVPUHTFO est  réel
//total=0
TTC =0

tunite[1]="un"
tunite[2]="deux"
tunite[3]="trois"
tunite[4]="quatre"
tunite[5]="cinq"
tunite[6]="six"
tunite[7]="sept"
tunite[8]="huit"
tunite[9]="neuf"

tdix[1]="onze"
tdix[2]="douze"
tdix[3]="treize"
tdix[4]="quatorze"
tdix[5]="quinze"
tdix[6]="seize"
tdix[7]="dix-sept"
tdix[8]="dix-huit"
tdix[9]="dix-neuf"

tcent[1] ="dix"
tcent[2] ="vingt"
tcent[3] ="trente"
tcent[4] ="quarante"
tcent[5] ="cinquante"
tcent[6] ="soixante"
tcent[7] ="soixante-dix"
tcent[8] ="quatre-vingts"
tcent[9] ="quarte-vingt-dix"
m=" "
c=" "
d=" "
u=" "
n=SAI_Total_Facture  // le champ ou s'affiche le montannt à convertir
n6=SAI_Total_Facture  // le champ ou s'affiche le montant a convertir en lettre
n22=n/100000
n33=(n modulo 100000)/10000
n44=((n modulo 100000)modulo 10000)/1000
n2=n modulo 100000modulo 10000 modulo 1000/100
n3=n modulo 100000modulo 10000 modulo 1000modulo 100/10
n4=n modulo 100000modulo 10000 modulo 1000modulo 100modulo 10
n747=NumériqueVersChaîne(n6)
b=Taille(n747)
n99 = Position(n747, ".", 1)
k=b-n99
n5=Droite(n747,k)
j=Taille(n5)
SI j>3 ALORS
    n5=Gauche(n5,3)
FIN
SI j=1 ALORS
    n5=n5+"00"    
FIN
SI j=2 ALORS
    n5=n5+"0"    
FIN

SI n22=0 ALORS
    zcent1=" "
SINON
    SI n22=1 ALORS
        zcent1=" cent"
    SINON
        zcent1=tunite[n22]+" "+"cent"
    FIN
FIN

SI n33=0 AND n44=0 ALORS
    zdix1=" "
    zunite1=""
FIN

SI n33=0AND n44<>0 ALORS
    zdix1=" "
    zunite1=tunite[n44]
SINON
    SI n44<>0 ALORS
        zunite1=tunite[n44]
    SINON
        zunite1=" "
    FIN
    SI n33<> 0 ALORS
        zdix1=tcent[n33]
    FIN
    SI n33=1AND n44=0 ALORS
        zunite1="dix"
    FIN
    SI n33=1AND n44<>0 ALORS
        zdix1=""
        zunite1=tdix[n44]
    FIN
    SI n33=7 AND n44=0 ALORS
        zdix1=tcent[6]
        zunite1="dix"
    FIN
    SI n33=7 AND n44<>0 ALORS
        zdix1=tcent[6]
        zunite1=tdix[n44]
    FIN
    SI n33=9 AND n44<>0 ALORS
        zdix1=tcent[8]
        zunite1=tdix[n44]
    FIN
    SI n33=9AND n44=0 ALORS
        zdix1=tcent[8]
        zunite1="dix"
    FIN
    
    SI n33<>0 AND n44=0 ALORS
        zdix1=tcent[n33]
        zunite1=" "
    FIN
FIN







SI n2=0 ALORS
    zcent=" "
SINON
    SI n2=1 ALORS
        zcent=" cent"
    SINON
        zcent=tunite[n2]+" "+"cent"
    FIN
FIN

SI n3=0 AND n4=0 ALORS
    zdix=" "
    zunite=""
FIN

SI n3=0 AND n4<>0 ALORS
    zdix=" "
    zunite=tunite[n4]
SINON
    SI n4<>0 ALORS
        zunite=tunite[n4]
    SINON
        zunite=" "
    FIN
    SI n3<> 0 ALORS
        zdix=tcent[n3]
    FIN
    SI n3=1AND n4=0 ALORS
        zunite="dix"
    FIN
    SI n3=1AND n4<>0 ALORS
        zdix=""
        zunite=tdix[n4]
    FIN
    SI n3=7 AND n4=0 ALORS
        zdix=tcent[6]
        zunite="dix"
    FIN
    SI n3=7 AND n4<>0 ALORS
        zdix=tcent[6]
        zunite=tdix[n4]
    FIN
    SI n3=9 AND n4<>0 ALORS
        zdix=tcent[8]
        zunite=tdix[n4]
    FIN
    SI n3=9AND n4=0 ALORS
        zdix=tcent[8]
        zunite="dix"
    FIN
    
    SI n3<>0 AND n4=0 ALORS
        zdix=tcent[n3]
        zunite=" "
    FIN
FIN
SI zunite1<>" "ALORS
    lettre= zmille1+zcent1+" "+zdix1+" "+zunite1+" milles "+zmille+" "+zcent+" "+zdix+" "+zunite+" dinars"+" "+n5+" "+"millimes"
SINON
    lettre= zmille+" "+zcent+" "+zdix+" "+zunite+" dinars"+" "+n5+" "+"millimes"
FIN

SAI_Montant_facturelettre=lettre    // le champ ou il va placer le montant converti


voilà c'est un code simple et facile à manipuler et qui répond à la plupart des programmeurs tunisiens
  Trouver
  Répondre
ASG2012 Hors ligne
Member
***
Messages : 96
Sujets : 55
Inscription : May 2011
Réputation : 0
Thanks: 0
Given 0 thank(s) in 0 post(s)
#2
07-06-2011, 04:37 PM
un petit problème dans ce code lorsque vous saisissez un montant par exemple deux 2500,531 vous aurez le résultat comme suit deux milles cinq cents dinars 531 millimes
par conte si tu saisie ce montant 2500,000 vous aurez deux milles cinq cent dinars 250 millimes le 250 d'ou il vient en principe il affiche soit deux milles cinq cent dinars soit deux milles cinq cent dinars zéro millimes

comment rectifié ça ?
pourriez vous m'aider

sur vb ce code fonctionne 100%
  Trouver
  Répondre
« Sujet précédent | Sujet suivant »


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  [Windev17] Code C# vers Code windev mk1708 3 4,423 16-11-2015, 03:19 PM
Dernier message: mk1708
  [Windev17] Procédure nombre en lettre en Arabe addora2006 2 3,354 01-10-2015, 02:23 AM
Dernier message: tunidev
  [Windev17] Chiffrre en lettre en arabe indefin 14 4,415 06-03-2015, 08:03 AM
Dernier message: indefin
  Chiffre en lettre en arabe ABDOU 9 3,277 19-02-2015, 05:47 PM
Dernier message: indefin
  compléter un montant avec des zero devant dans une table moradsoft 1 985 23-12-2013, 02:24 AM
Dernier message: Samifred
  [RÉSOLU]Récupération d'un mois en lettre ? Clovis47 3 1,169 12-07-2013, 03:05 PM
Dernier message: Clovis47
  Générer un code par numero code barre faloudja 7 2,773 06-06-2013, 05:41 PM
Dernier message: Daniel-Québec
  convertir une chaine vers un type de classe importer en wind issamwg 0 751 21-07-2012, 10:30 AM
Dernier message: issamwg
  Chiffre en lettre ACHOUR SAID 3 2,515 27-06-2012, 08:20 AM
Dernier message: Devosystem
  Chiffre en lettre dans un état ACHOUR SAID 3 2,104 11-03-2012, 04:05 PM
Dernier message: gwing

  • Voir une version imprimable
  • S’abonner au sujet
Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)

About Tunidev

Forum des developpeurs windev.

Quick Links

  • Contact Us
  • Tunidev
  • Forum Team
  • Lite Version

 

Powered by MyBB, © 2002-2019 MyBB Group.

Focus MyBB Theme by WallBB

Affichage linéaire
Affichage hiérarchique