Français
Source/ Codesnippets

date Eingabe vérifier

 

KompilierenMarqueSéparation
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Datum-Eingabe prüfen
Lauffähig ab Profan-Version 6.6

PROC CHECKINPUT

    PARAMETERS DAT$
    Declare laenge%,zeichen$,zeichen%,Fehler%
    Ret$=
    let laenge%=len(dat$)

    if Neq(laenge%,10)

        case gt(laenge%,10):Ret$=Zuviele Zeichen!
        case lt(laenge%,10):Ret$=Zuwenig Zeichen!
        return 1 FEHLER

    ENDIF

    zeichen%=0
    Fehler%=0

    if gt  (val(mid$(gettext$(datum&),1,2)),31) wenn erste 2 Zeichen > 31

        Fehler%=1
        zeichen%=laenge% damit nicht erst die Schleife durchlaufen wird
        ret$=Tag ist größer 31!

    Endif

    if gt  (val(mid$(gettext$(datum&),4,2)),12) wenn Monatszeichen > 12

        Fehler%=1
        zeichen%=laenge% damit nicht erst die Schleife durchlaufen wird
        ret$=Monat ist größer 12!

    Endif

    Whilenot equ(zeichen%,laenge%)

        inc zeichen%
        let zeichen$=Mid$(dat$,zeichen%,1)

        if equ(zeichen%,3) Wenn 3tes Zeichen (muss . sein)

            if neq$(zeichen$,.)

                ret$=Drittes Zeichen muss ein Punkt sein
                Fehler%=1
                zeichen%=laenge% Damit Schleifenausstieg!

            endif

        elseif equ(zeichen%,6) Dito

            if neq$(zeichen$,.)

                ret$=Sechstes Zeichen muss ein Punkt sein
                Fehler%=1
                zeichen%=laenge% Damit Schleifenausstieg!

            endif

        else

            if equ$(zeichen$,0)

                let Fehler%=0

            elseif equ$(zeichen$,1)

                let Fehler%=0

            elseif equ$(zeichen$,2)

                let Fehler%=0

            elseif equ$(zeichen$,3)

                let Fehler%=0

            elseif equ$(zeichen$,4)

                let Fehler%=0

            elseif equ$(zeichen$,5)

                let Fehler%=0

            elseif equ$(zeichen$,6)

                let Fehler%=0

            elseif equ$(zeichen$,7)

                let Fehler%=0

            elseif equ$(zeichen$,8)

                let Fehler%=0

            elseif equ$(zeichen$,9)

                let Fehler%=0

            else

                ret$=Es wurde ein nichtnummerisches Zeichen gefunden
                Fehler%=1 Wenn unerlaubtes Zeichen
                zeichen%=laenge% Damit Schleifenausstieg!

            endif

        Endif

    Wend

    Case equ(Fehler%,1):Return 1
    RETURN 0 Wenn bis hierhin dann kein Fehler gefunden

ENDPROC

BEISPIELPROGRAMM:
Declare ende%,CHECKER&,DATUM$,Datum&
Declare ret$ Diese Variable um eine Fehlermeldung an eine Messagebox zu übergeben
Declare check% Diese Variable um Prozedurrückgabe abzufangen
WINDOWSTYLE 63
WindowTitle Datumeingabe überprüfen (c) Rolf Koch
WINDOW 100,100-350,110
CLS 0
USEFONT MS SANS SERIF,13,0,0,0,0
SETDIALOGFONT 1
let Datum$ = date$(0)
let datum& = @createEdit (%HWND,datum$,10,15,80,20)
let CHECKER& = @createButton(%HWND,Datum prüfen,10,45,150,20) Ist besser mit einem Schliessenbutton
ENDE%=0

WHILENOT ENDE%

    WAITINPUT

    If GetFocus(CHECKER&)

        let Datum$=GetText$(datum&)
        CHECKINPUT datum$
        CHECK%=@%(0) Rückgabe aus PROZEDUR (1=FEHLER)

        if equ(CHECK%,1)

            MessageBox(ret$,Eingabe überprüfen!,32) Ret$ wird oben definiert!
            let Datum$ = date$(0)
            settext datum&,datum$
            setfocus(datum&)

        Else

            TextColor RGB(255,255,0),0
            DRAWTEXT 100,16,
            TextColor RGB(255,255,0),0
            DRAWTEXT 100,16,Add$(Ergebnis Datum: ,datum$) Hier nur zur Demo!

        ENDIF

    ENDIF

WEND

 
15.07.2007  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

1.588 Views

Untitledvor 0 min.
H.Brill10.10.2022
rquindt22.04.2016
Torben Nissen16.02.2015
Klaus Ernst04.03.2014
plus...

Themeninformationen

cet Thema hat 1 participant:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie