1. #1
    Xeromem's Avatar
    Registered
    03/06/03
    Posts
    1,118
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/5

    OGM-nummer genereren in VB6

    ik verlang al een tijdje naar een eenvoudig programma die voor mij een gestructureerde mededeling kan creeeren, de zogenaamde OGM.

    daar mijn kennis over het programmeren nihil is, vraag ik jullie vriendelijke tn-gamers' hulp

    ik heb een stukje vb code kunnen bemachtigen van een vriendelijke heer, hier te vinden -> http://www.torbeyns-mineur.be/program/finance.bas
    er staat een stukje code tussen ivm ogm, misschien dat het jullie gemakkelijker maakt

    ik heb al een layout verwezenlijkt, download eventueel onderstaande vb6-projectje om te zien wat mijn bedoelingen zijn

    -> ogm.7z <-

    OGM berekenen is niet zo moeilijk, je neemt een 10 cijferig getal waar jij een logica in ziet en deelt die door 97 waarna je de restwaarde (2 getallen na de komma, afgerond) neemt. Die plak je dan weer achter je 10 cijferig getal en je hebt een OGM!
    het is eenvoudig, maar zo'n klein progje zou het leven voor mij en alle geïnteresseerden misschien een toch stuk gemakkelijker maken
    met een programma die de berekeningen zelf doet, ellimineer je ook de kans om fouten te maken

    alvast bedankt
    no votes  

  2. #2
    Red2048's Avatar
    Registered
    18/01/08
    Location
    Antwerpen
    Posts
    104
    iTrader
    12 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Heb vroeger een gelijkaardige project geschreven in vb6, heb het even aangepast voor uw project.
    Verwijder de "finance.bas" module uit het bovenstaand project en plaats onderstaande code in je "OGMGEN" form.

    Code:
    Option Explicit
    
    Const sOGM_MASK_FORMAT = "+++K/F/C+++"          ' zonder spaties
    'Const sOGM_MASK_FORMAT = "+++ K/F/C +++ "      ' met spaties
    
    Private Sub Form_Load()
    
        Text1.Text = "2561024768"   ' voorbeeld nummer
        
    End Sub
    
    Private Sub Command1_Click()
    
        Dim sNormal As String
        Dim sStruct As String
    
        OGM_Generate Text1.Text, sNormal, sStruct
        
        Text2.Text = sNormal
        Text3.Text = sStruct
        
    End Sub
    
    Private Sub Command2_Click()
        Clipboard.Clear
        Clipboard.SetText Text2.Text
    End Sub
    
    Private Sub Command3_Click()
        Clipboard.Clear
        Clipboard.SetText Text3.Text
    End Sub
    
    Private Function OGM_Generate(ByVal sInput As String, _
                                  ByRef sOutput1 As String, _
                                  ByRef sOutput2 As String)
    
        If IsNumeric(sInput) And Len(sInput) = 10 Then        ' "2561024768"
    
            Dim ubRest As Byte
            ubRest = CDbl(sInput) - (Int(CDbl(sInput) / 97) * 97)   ' "19"
            sOutput1 = sInput & Format(ubRest, "00")                ' "256102476819"
    
            Dim str As String
            str = sOGM_MASK_FORMAT                                  '   = "+++K/F/C+++"
            str = Replace(str, "K", Mid(sOutput1, 1, 3))            ' K = "256"   klant nummer
            str = Replace(str, "F", Mid(sOutput1, 4, 4))            ' F = "1024"  factuur nummer
            str = Replace(str, "C", Mid(sOutput1, 8, 5))            ' C = "76819" controle nummer
            sOutput2 = str                                          '   = "+++256/1024/76819+++"
    
        Else
    
            MsgBox "Onjuist Nummer.", , "Error"
            
            sOutput1 = ""
            sOutput2 = ""
        
        End If
        
    End Function
    In A'pen apen apen apen na.
    no votes  

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in