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

SDK Discussion :

traduire total en lettre


Sujet :

SDK

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 141
    Points : 49
    Points
    49
    Par défaut traduire total en lettre
    mon probleme=
    je veux traduire un champ total (réel) en string
    par exemple 10,250 devient dix dinars deux cent caquent

    j'ai realiser un module en vb (DIGITAL) qui convert de réel en chaine
    mais je ne sais pas comment l'appeller pour traduire le champ total sous crystal report

    et voila le module de conversion qui marche bien sous environnement vb6
    et voila mon code pour appeler le crystal sous vb
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    condition = " {TRAVAUX.CODE_DECISION} = '" & CodeD & "'"
    Report.ReportFileName = App.Path & "\Report3.rpt"
    Report.Connect = CnDATA.ConnectionString
    Report.Destination = crptToWindow
    Report.WindowState = crptMaximized
    Report.ReplaceSelectionFormula condition
    Report.Formulas(0) = "USER='" & utilisateur & "'"
    Report.Action = 1
    Report.Reset
    et ca le module de conversion
    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
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    Public CRN As Currency
    Public Function Digital(ByVal AMOUNT As Double)
     On Error Resume Next
     
                     Dinar = " ÏíäÇÑ "
                     Mellime = " ãáíã "
     
                    V = Int(Math.Abs(AMOUNT))
                    VPS = Val(Right(Format(AMOUNT, "000000000000.000"), 3))
                    WORDINTEGER = AmountWord(V)
                    WORDPS = AmountWord(VPS)
                    If WORDINTEGER <> "" And (VPS <= 2) Then Result = WORDINTEGER & Dinar & " æ " & WORDPS & Mellime & ". "
                    If WORDINTEGER <> "" And (VPS >= 3 And VPS <= 9) Then Result = WORDINTEGER & Dinar & " æ " & WORDPS & Mellime & " . "
                    If WORDINTEGER <> "" And (VPS > 9) Then Result = WORDINTEGER & Dinar & " æ " & WORDPS & Mellime & ". "
                    If WORDINTEGER = "" And (VPS <= 2) Then Result = WORDPS & Mellime & "ÝÞØ áÇÛíÑ "
                    If WORDINTEGER = "" And (VPS >= 3 And VPS <= 9) Then Result = WORDPS & Mellime & ". "
                    If WORDINTEGER = "" And VPS > 9 Then Result = WORDPS & Mellime & " ."
                    If WORDINTEGER = "" And VPS = 0 Then Result = ""
                    If WORDINTEGER <> "" And VPS = 0 Then Result = WORDINTEGER & Dinar & " . "
                    Digital = Result
     
    End Function
    Public Function AmountWord(ByVal AMOUNT As Double)
      On Error Resume Next
     
            n = Int(AMOUNT)
            c = Format(n, "000000000000")
            c1 = Val(Mid(c, 12, 1))
            Select Case c1
                Case Is = 1: str1 = "æÇÍÏ"
                Case Is = 2: str1 = "ÇËäÇä"
                Case Is = 3: str1 = "ËáÇËÉ"
                Case Is = 4: str1 = "ÇÑÈÚÉ"
                Case Is = 5: str1 = "ÎãÓÉ"
                Case Is = 6: str1 = "ÓÊÉ"
                Case Is = 7: str1 = "ÓÈÚÉ"
                Case Is = 8: str1 = "ËãÇäíÉ"
                Case Is = 9: str1 = "ÊÓÚÉ"
            End Select
     
            c2 = Val(Mid(c, 11, 1))
            Select Case c2
                Case Is = 1: str2 = "ÚÔÑ"
                Case Is = 2: str2 = "ÚÔÑæä"
                Case Is = 3: str2 = "臂辊"
                Case Is = 4: str2 = "ÇÑÈÚæä"
                Case Is = 5: str2 = "ÎãÓæä"
                Case Is = 6: str2 = "ÓÊæä"
                Case Is = 7: str2 = "ÓÈÚæä"
                Case Is = 8: str2 = "ËãÇäæä"
                Case Is = 9: str2 = "ÊÓÚæä"
            End Select
     
            If str1 <> "" And c2 > 1 Then str2 = str1 + " æ" + str2
            If str2 = "" Then str2 = str1
            If c1 = 0 And c2 = 1 Then str2 = str2 + "É"
            If c1 = 1 And c2 = 1 Then str2 = "ÇÍÏì ÚÔÑ"
            If c1 = 2 And c2 = 1 Then str2 = "ÇËäì ÚÔÑ"
            If c1 > 2 And c2 = 1 Then str2 = str1 + " " + str2
            c3 = Val(Mid(c, 10, 1))
            Select Case c3
                Case Is = 1: str3 = "ãÇÆÉ"
                Case Is = 2: str3 = "ãÆÊÇä"
                Case Is > 2: str3 = Left(AmountWord(c3), Len(AmountWord(c3)) - 1) + " ãÇÆÉ"
            End Select
            If str3 <> "" And str2 <> "" Then str3 = str3 + " æ" + str2
            If str3 = "" Then str3 = str2
     
            c4 = Val(Mid(c, 7, 3))
            Select Case c4
                Case Is = 1: str4 = "ÇáÝ"
                Case Is = 2: str4 = "ÇáÝÇä"
                Case 3 To 10: str4 = AmountWord(c4) + " ÂáÇÝ"
                Case Is > 10: str4 = AmountWord(c4) + " ÇáÝ"
            End Select
            If str4 <> "" And str3 <> "" Then str4 = str4 + " æ" + str3
            If str4 = "" Then str4 = str3
            c5 = Val(Mid(c, 4, 3))
            Select Case c5
                Case Is = 1: str5 = "ãáíæä"
                Case Is = 2: str5 = "ãáíæäÇä"
                Case 3 To 10: str5 = AmountWord(c5) + " ãáÇííä"
                Case Is > 10: str5 = AmountWord(c5) + " ãáíæä"
            End Select
            If str5 <> "" And str4 <> "" Then str5 = str5 + " æ" + str4
            If str5 = "" Then str5 = str4
     
            c6 = Val(Mid(c, 1, 3))
     
            Select Case c6
                Case Is = 1: str6 = "ãáíÇÑ"
                Case Is = 2: str6 = "ãáíÇÑÇä"
                Case Is > 2: str6 = AmountWord(c6) + " ãáíÇÑ"
            End Select
            If str6 <> "" And str5 <> "" Then str6 = str6 + " æ" + str5
            If str6 = "" Then str6 = str5
            AmountWord = str6
    End Function
    merci

  2. #2
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 141
    Points : 49
    Points
    49
    Par défaut
    d'autre facon je veux ecrire
    digital(champ se trouve en crystal report) pour le traduire

    voila j'ecrit cette code et sa marche bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim brut As String
    CnDATA.Close
    CnDATA.Open
    sql = " select  sum(BRUT) from travaux where code_decision='" & CodeD & "'"
    rs.Open sql, CnDATA
    brut = Digital(rs.Fields(0))
     
    Report.Formulas(1) = "total  ='" & brut & "'"
    donc je reussite dans la converture de un seul champ
    mais le probleme maintenant comment je peut converture un champ appartient a un group

    brut de group ID_BENIFICIAIRE


    svp aider moi

Discussions similaires

  1. Traduire les chiffres en lettres
    Par forum dans le forum Contribuez
    Réponses: 0
    Dernier message: 23/05/2012, 16h03
  2. ecrire le total en lettre
    Par rawasi dans le forum Excel
    Réponses: 1
    Dernier message: 03/02/2012, 09h10
  3. Traduire chiffre en lettre
    Par Msysteme dans le forum SSRS
    Réponses: 1
    Dernier message: 21/10/2011, 12h17
  4. Traduire en lettres un montant en chiffres ?
    Par JauB dans le forum VB.NET
    Réponses: 3
    Dernier message: 04/10/2010, 13h51
  5. absence totale des lettres avec accent
    Par heeedi dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 06/03/2010, 15h22

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