FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Contrôle validité de date Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
Contrôle validité de date Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Contrôle validité de date Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Contrôle validité de date Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Contrôle validité de date Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Contrôle validité de date Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Contrôle validité de date Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Contrôle validité de date Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Contrôle validité de date Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Contrôle validité de date Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Contrôle validité de date Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Contrôle validité de date Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Contrôle validité de date Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Contrôle validité de date Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Contrôle validité de date Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le deal à ne pas rater :
LEGO Icons 10331 – Le martin-pêcheur
35 €
Voir le deal

 

 Contrôle validité de date

Aller en bas 
5 participants
AuteurMessage
lepetitmarocain




Nombre de messages : 341
Age : 82
Localisation : Région Parisienne (à mon grand désespoir)
Date d'inscription : 04/07/2018

Contrôle validité de date Empty
MessageSujet: Contrôle validité de date   Contrôle validité de date EmptySam 6 Avr 2019 - 9:30

Bonjour à tous.
Je voudrais savoir s'il existe une commande qui contrôle si une date saisie est valide.
Genre ISDATE dans d'autres language.
Peut être quelqu'un d'entre vous a développé un sous programme a insérer dans celui que l'on écrit?
Merci par avance
Revenir en haut Aller en bas
Marc

Marc


Nombre de messages : 2466
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

Contrôle validité de date Empty
MessageSujet: Re: Contrôle validité de date   Contrôle validité de date EmptySam 6 Avr 2019 - 10:16

Bonjour Lepetitmarocain !

Citation :
s'il existe une commande qui contrôle si une date saisie est valide
La commande souhaitée n'existe pas en Panoramic.

En 100% Panoramic, tu peux t'inspirer, voire utiliser le programme de Bignono/Nardo26 >> ici <<


Et bien sûr, tu as la DDL de Klaus qui permet ce contrôle.
Regarde dans l'aide de KGF, la fonction MaskEdit.
res% = DLL_call6("MaskEdit",f%,obj%, p1%,p2%,p3%,p4%)


Bonne programmation !


Dernière édition par Marc le Dim 7 Avr 2019 - 8:31, édité 1 fois
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Contrôle validité de date Empty
MessageSujet: re   Contrôle validité de date EmptySam 6 Avr 2019 - 18:03

Valide par rapport à quoi ?
C'est à toi de faire la fonction en fonction de tes critères.
Laughing
Revenir en haut Aller en bas
Jack
Admin
Jack


Nombre de messages : 2395
Date d'inscription : 28/05/2007

Contrôle validité de date Empty
MessageSujet: Re: Contrôle validité de date   Contrôle validité de date EmptySam 6 Avr 2019 - 18:56

Lepetitmarocain a ouverts 3 posts sur le même sujet.
J'en ai fusionné deux et supprimé le troisième.

_________________
Contrôle validité de date Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Contrôle validité de date Empty
MessageSujet: Re: Contrôle validité de date   Contrôle validité de date EmptySam 6 Avr 2019 - 20:12

Salut tout le monde.
J’ai publié un code Panoramic contenant un script VBS qui répond parfaitement à la demande.
C’est ici

Voici un rappel du code en question :

Code:

rem ============================================================================
rem           Fonction pour vérifier si une date est valide
rem ============================================================================

message IsDateValide("32/02/2018")      : ' <--- 0
message IsDateValide("10/08/1950")      : ' <--- 1
message IsDateValide("janvier 18,2014") : ' <--- 1
message IsDateValide("01-01-01")        : ' <--- 1

end
rem ============================================================================
' Script VBS vérifiant la validité d'une date
' La fonction IsDateValide(d$) retourne la valeur
' 1 si le paramètre transmis d$ représente une date valide,
' sinon elle retourne 0
' ------------------------------------------------------------------------------
' Les différentes formes de dates suivantes sont acceptées
' Exemples d'appel :
' IsDateValide("32/02/2014")        : ' ---> 0
' IsDateValide("29/02/2016")        : ' ---> 1
' IsDateValide("29/02/2014")        : ' ---> 0
' IsDateValide("janvier 18,2014")   : ' ---> 1
' IsDateValide("18 janvier 2014")   : ' ---> 1
' IsDateValide("01-01-01")          : ' ---> 1
' IsDateValide("2014, Février, 10") : ' ---> 1
' IsDateValide("18,01,2014")        : ' ---> 1
' ------------------------------------------------------------------------------
FNC IsDateValide(d$)
    dim_local f$,retour$,resultat$,g$
    f$ = "IsDate.vbs"      : ' Fichier temporaire contenant le script
    retour$ = "retour.txt" : ' Fichier temporaire contenant le résultat de la fonction
    g$ = chr$(34)          : ' caractère guillemet
' Enregistrer le script dans le fichier temporaire f$
    FILE_OPEN_WRITE 9999, f$
    file_writeln 9999, "DIM bValeur,fso,MyFile"  : ' debut du script
    file_writeln 9999, "Set fso = CreateObject("+g$+"Scripting.FileSystemObject"+g$+")"
    file_writeln 9999, "Set MyFile = fso.CreateTextFile("+g$+retour$+g$+", True)"
    file_writeln 9999, "bValeur = IsDate("+g$+d$+g$+")"
    file_writeln 9999, "MyFile.WriteLine(bValeur)"
    file_writeln 9999, "MyFile.Close" : ' Fin du script
    FILE_CLOSE 9999             : ' Fin de l'enregistrement
    EXECUTE_WAIT f$             : ' Exécution du script
    FILE_DELETE f$              : ' supprimer le fichier du script
    file_open_read 9999,retour$ : ' ouvrir le fichier contenant la sortie du script
    file_readln 9999,resultat$  : ' Recuperer la valeur de la fonction
    file_close 9999             : ' Fermer le fichier
    file_delete retour$         : ' Supprimer le fichier temporaire
    if resultat$ = "True" then RESULT 1 : else : RESULT 0 : ' Résultat de la fonction
      
END_FNC
rem ============================================================================
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
lepetitmarocain




Nombre de messages : 341
Age : 82
Localisation : Région Parisienne (à mon grand désespoir)
Date d'inscription : 04/07/2018

Contrôle validité de date Empty
MessageSujet: Controle validité de date   Contrôle validité de date EmptyDim 7 Avr 2019 - 15:56

Bonjour à tous.

Merci pour les réponses à cette demande

Merci Papydall pour ta réponse.

Je ne sais pas comment passer la date à, ton sous programme, sachant que les dates à contrôler sont des dates saisie dans un

KGFGRID et que je contrôle avant de mettre à jour

Merci pour ta prochaine réponse

Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Contrôle validité de date Empty
MessageSujet: Re: Contrôle validité de date   Contrôle validité de date EmptyDim 7 Avr 2019 - 19:01

Salut tout le monde.
Du Vieux Tunisien au Petit Marocain  tongue
Personnellement je n’ai jamais utilisé KGFGRID  Embarassed , mais je te propose ce code pour démontrer comment contrôler une date saisie dans un objet quelconque (un EDIT pour cet exemple).
C'est à toi de l'adapter à tes besoins.

Code:

rem ============================================================================
rem          Exemple d’utilisation de la fonction IsDateValide(d$)
rem ============================================================================
label Verif
top 0,100: left 0,200 : height 0,200
alpha  10 : font_bold 10 : top 10,50 : left 10,50 : caption 10,"Saisir une date"
edit   20 : font_bold 20 : top 20,50 : left 20,150 : set_focus 20
button 30 : font_bold 30 : top 30,45 : left 30,300 : width 30,150
caption 30,"Vérifier la date" : on_click 30,verif
end
rem ============================================================================
' Vérifier la validité de la date saisie dans l'EDIT
Verif:
   if IsDateValide(text$(20)) = 0
      message "La date saisie est non valide !!!" + chr$(13) + "Veuillez recommencer SVP !"
      text 20,"" : set_focus 20
   else
      message "Validation de la date : OK"
   end_if
return
rem ============================================================================
' Script VBS vérifiant la validité d'une date
' La fonction IsDateValide(d$) retourne la valeur
' 1 si le paramètre transmis d$ représente une date valide,
' sinon elle retourne 0
' ------------------------------------------------------------------------------
' Les différentes formes de dates suivantes sont acceptées
' Exemples d'appel :
' IsDateValide("32/02/2014")        : ' ---> 0
' IsDateValide("29/02/2016")        : ' ---> 1
' IsDateValide("29/02/2014")        : ' ---> 0
' IsDateValide("janvier 18,2014")   : ' ---> 1
' IsDateValide("18 janvier 2014")   : ' ---> 1
' IsDateValide("01-01-01")          : ' ---> 1
' IsDateValide("2014, Février, 10") : ' ---> 1
' IsDateValide("18,01,2014")        : ' ---> 1
FNC IsDateValide(d$)
    dim_local f$,retour$,resultat$,g$
    f$ = "IsDate.vbs"      : ' Fichier temporaire contenant le script
    retour$ = "retour.txt" : ' Fichier temporaire contenant le résultat de la fonction
    g$ = chr$(34)          : ' caractère guillemet
' Enregistrer le script dans le fichier temporaire f$
    FILE_OPEN_WRITE 9999, f$
    file_writeln 9999, "DIM bValeur,fso,MyFile"  : ' debut du script
    file_writeln 9999, "Set fso = CreateObject("+g$+"Scripting.FileSystemObject"+g$+")"
    file_writeln 9999, "Set MyFile = fso.CreateTextFile("+g$+retour$+g$+", True)"
    file_writeln 9999, "bValeur = IsDate("+g$+d$+g$+")"
    file_writeln 9999, "MyFile.WriteLine(bValeur)"
    file_writeln 9999, "MyFile.Close" : ' Fin du script
    FILE_CLOSE 9999             : ' Fin de l'enregistrement
    EXECUTE_WAIT f$             : ' Exécution du script
    FILE_DELETE f$              : ' supprimer le fichier du script
    file_open_read 9999,retour$ : ' ouvrir le fichier contenant la sortie du script
    file_readln 9999,resultat$  : ' Recuperer la valeur de la fonction
    file_close 9999             : ' Fermer le fichier
    file_delete retour$         : ' Supprimer le fichier temporaire
    if resultat$ = "True" then RESULT 1 : else : RESULT 0 : ' Résultat de la fonction      
END_FNC
rem ============================================================================

Date Valide:


Date non valide:
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Marc

Marc


Nombre de messages : 2466
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

Contrôle validité de date Empty
MessageSujet: Re: Contrôle validité de date   Contrôle validité de date EmptyDim 7 Avr 2019 - 19:20

Bonsoir à tous !

Papydall a écrit:
J’ai publié un code Panoramic contenant un script VBS...

Oups ! Pardonne-moi Papydall, lors de ma première réponse j'ai oublié que tu avais partagé ce code. Embarassed

Ton code fonctionne parfaitement bien, mais... lors de la saisie d'une date au format mm/jj/aaaa,
il nous dit aussi que c'est correct.
Ainsi, il est possible de taper par exemple 12/29/2001 sans avoir de message d'erreur.

Contrôle validité de date 161
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Contrôle validité de date Empty
MessageSujet: Re: Contrôle validité de date   Contrôle validité de date EmptyLun 8 Avr 2019 - 5:39

Merci Marc pour la remarque !

Le script considère comme valide une date sous les formes suivantes (c'est le comportement normal de la fonction VBS IsDate) :
jj/mm/aaaa
jj-mm-aaaa
jj,mm,aaaa
jj mm aaaa
mm/jj/aaaa
etc.
aaaa  jj mm
etc.

Bon, j’avoue que ça peut poser problème avec la notation anglaise mm/jj/aaaa contrairement de la notation française jj/mm/aaaa.

J'ai modifié le code pour tenir compte de ces différents formats de date.
Désormais, le code accepte  seulement les formats suivants :
JJ/MM/AAAA
JJ MM AAAA
JJ,MM,AAAA
Il accepte aussi l’année sur 1, 2, 3 ou 4 chiffres, tandis que le jour et le mois, ils doivent être saisis sur deux chiffres chacun.

Code:

rem ============================================================================
rem          Exemple d’utilisation de la fonction IsDateValide(d$)
rem ============================================================================
label Verif
dim err$ : err$ = "La date saisie est non valide !!!" + chr$(13) + "Veuillez recommencer SVP !"
dim t$
top 0,100: left 0,200 : height 0,200
alpha  10 : font_bold 10 : top 10,50 : left 10,10
t$ = "Saisir une date" + chr$(13) + "sous forme : JJ/MM/AAAA" + chr$(13)
t$ = t$ + string$(18," ") + "JJ MM AAAA" + chr$(13)
t$ = t$ + string$(18," ") + "JJ,MM,AAAA"
caption 10,t$
edit   20 : font_bold 20 : top 20,55 : left 20,170 : set_focus 20
button 30 : font_bold 30 : top 30,50 : left 30,300 : width 30,150
caption 30,"Vérifier la date" : on_click 30,verif
end
rem ============================================================================
' Vérifier la validité de la date saisie dans l'EDIT
Verif:  
   if (numeric(mid$(text$(20),4,2)) = 0)
      message err$ : text 20,"" : set_focus 20 : return
   end_if
   if (val(mid$(text$(20),4,2)) > 12) or IsDateValide(text$(20)) = 0
      message err$ : text 20,"" : set_focus 20
   else
      message "Validation de la date : OK"
   end_if
return
rem ============================================================================
' Script VBS vérifiant la validité d'une date
' La fonction IsDateValide(d$) retourne la valeur
' 1 si le paramètre transmis d$ représente une date valide,
' sinon elle retourne 0
' ------------------------------------------------------------------------------
' Les différentes formes de dates suivantes sont acceptées
' Exemples d'appel :
' IsDateValide("32/02/2014")        : ' ---> 0
' IsDateValide("29/02/2016")        : ' ---> 1
' IsDateValide("29/02/2014")        : ' ---> 0
' IsDateValide("12/29/2001")        : ' ---> 0
' IsDateValide("01-01-01")          : ' ---> 1
' IsDateValide("18,01,2014")        : ' ---> 1
FNC IsDateValide(d$)
    dim_local f$,retour$,resultat$,g$
    f$ = "IsDate.vbs"      : ' Fichier temporaire contenant le script
    retour$ = "retour.txt" : ' Fichier temporaire contenant le résultat de la fonction
    g$ = chr$(34)          : ' caractère guillemet
' Enregistrer le script dans le fichier temporaire f$
    FILE_OPEN_WRITE 9999, f$
    file_writeln 9999, "DIM bValeur,fso,MyFile"  : ' debut du script
    file_writeln 9999, "Set fso = CreateObject("+g$+"Scripting.FileSystemObject"+g$+")"
    file_writeln 9999, "Set MyFile = fso.CreateTextFile("+g$+retour$+g$+", True)"
    file_writeln 9999, "bValeur = IsDate("+g$+d$+g$+")"
    file_writeln 9999, "MyFile.WriteLine(bValeur)"
    file_writeln 9999, "MyFile.Close" : ' Fin du script
    FILE_CLOSE 9999             : ' Fin de l'enregistrement
    EXECUTE_WAIT f$             : ' Exécution du script
    FILE_DELETE f$              : ' supprimer le fichier du script
    file_open_read 9999,retour$ : ' ouvrir le fichier contenant la sortie du script
    file_readln 9999,resultat$  : ' Recuperer la valeur de la fonction
    file_close 9999             : ' Fermer le fichier
    file_delete retour$         : ' Supprimer le fichier temporaire
    if resultat$ = "True" then RESULT 1 : else : RESULT 0 : ' Résultat de la fonction      
END_FNC
rem ============================================================================
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
lepetitmarocain




Nombre de messages : 341
Age : 82
Localisation : Région Parisienne (à mon grand désespoir)
Date d'inscription : 04/07/2018

Contrôle validité de date Empty
MessageSujet: controle de validité de date   Contrôle validité de date EmptyMar 9 Avr 2019 - 15:44

Bonjour à tous

Merci Papydall pour ton exemple, que j'ai pu adapter à mon problème.

Bonne soirée sous le soleil Tunisien

Revenir en haut Aller en bas
Contenu sponsorisé





Contrôle validité de date Empty
MessageSujet: Re: Contrôle validité de date   Contrôle validité de date Empty

Revenir en haut Aller en bas
 
Contrôle validité de date
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» FNC IsDateValide(d$) pour vérifier la validité d'une date
» Combo date : sélecteur de date
» Validité du rnd ?
» Date <-> Date julienne
» controle du son

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: