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

Forms Oracle Discussion :

Validation saisie champs formulaire avec valeurs numériques


Sujet :

Forms Oracle

  1. #1
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 205
    Points : 78
    Points
    78
    Par défaut Validation saisie champs formulaire avec valeurs numériques
    bonjour à vous
    je veux amener les utilisateurs de mon application à saisir dans un champ d'un de mes formulaire que des caractères numériques. mais je sais po trop comment m'y prendre.
    je viens à vous pour obtenir de l'aide. merci d'avance!!

  2. #2
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Points : 5 306
    Points
    5 306
    Par défaut
    Le rapport avec SQL et PL/SQL ?

    Peux tu donner plus de précisions ?

  3. #3
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 205
    Points : 78
    Points
    78
    Par défaut plus de précision
    ok, j'ai créé une table appartement et l'une de ses propriétés et niveau qui est de type number.
    Pour eviter des erreurs lors d'un enregistrement, je veux qu'on saisisse dans mon champ niveau de mon formulaire que des caractères numériques.
    PAr exemple si on tape 'A' soit, rien n'est ecrit dans mon champ ou on m'envoi un message pour me dire que cè pas un caractère numérique. Le problème, je sais pas trop comment m'y prendre.
    j'espère que j'ai été plus explicite. merci

  4. #4
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Points : 5 306
    Points
    5 306
    Par défaut
    C'est donc du ressort de ton application de faire la validation de ton input.

    Et cela concerne donc le langage/outils que tu utilises.

    Tu parles de formulaire : formulaire Oracle Forms ? PHP ? ASP ?....

  5. #5
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 205
    Points : 78
    Points
    78
    Par défaut utilisation d'oracle form
    j'utilise oracle form 6.0

  6. #6
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Si tu mets un type de champ = Number, Forms le gère à la validation de l'item.

  7. #7
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 205
    Points : 78
    Points
    78
    Par défaut plus d'explication
    comment fonctionnent et comment utiliser les items?

  8. #8
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Citation Envoyé par aldama Voir le message
    j'utilise oracle form 6.0
    Et pourquoi ne donnez-vous pas cette information dès le début?

    Il faut utiliser un Text Item avec NUMBER dans le datatype.

  9. #9
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 205
    Points : 78
    Points
    78
    Par défaut oui mais ....
    oui, j'ai dejà pris pour type de donnée number. Ca me permet pas d'empecher d'ecrire des lettre dans mon champ; ce que le souhaite faire. l'utilisateur otre que moi ne peuvent pas forcement savoir qu'il saisir que des nombres et c'est seulement à la validation qu'il y aura une erreur. Je veux donc les obliger à saisir que des nombres dans ce champ afin de leur faciliter la tache.
    merci d'avance

  10. #10
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Vous pouvez déclarer un Timer dès l'arrivée dans l'item (When-New-Item-Instance) avec un délai assez court (1/4 seconde) et dans le trigger When-Timer-Expired analyser la chaîne et virer les caractères qui ne sont pas un chiffre. Vous detruisez ensuite ce timer en sortie de l'item (Post-Item)

  11. #11
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Le trigger When-New-Item-Instance de votre item:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Declare
        t timer ;
    begin
        t := create_timer( 'timer', 100 ) ;
    end;
    Voici ce que vous pourriez coder dans le When-Timer-Expired trigger:

    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
    If Get_Application_Property( TIMER_NAME ) ='TIMER' Then
        declare
            LC$C1 Varchar2(2000) := :BLOCK.TEXT_ITEM;
            LC$C2 Varchar2(2000);
            letter Varchar2(2);
        begin
            If LC$C1 is not Null Then
                 For i in 1..length(LC$C1) Loop
                       letter := Substr( LC$C1, i, 1 ) ;
                       if ascii(letter) >= 48 and ascii(letter) <= 57 Then
                            LC$C2 := LC$C2 || letter ;
                       end if ;
                 end loop ;
                 if nvl(length(LC$C2),0) <> length(LC$C1) Then
                    :BLOCK.TEXT_ITEM := LC$C2 ;
                 end if ;   
            End if ;
        end;    
    End if ;
    et le trigger Pots-Text-Item de votre item:


  12. #12
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 205
    Points : 78
    Points
    78
    Par défaut merci a vous
    merci pour le code, je vais le tester pour voir et je vous fais signe.
    Merci encore et bonne journée à vous

  13. #13
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 205
    Points : 78
    Points
    78
    Par défaut ca marche mais ...
    une fois encore merci,

    le code marche mais lorsqu'on saisi un caractère non numérique, il envoi une erreur que voici:

    FRM-50016: caractère accèpté: 0-9-+E

    lorsque tu cliq sur le ok, ce meme message d'erreur apparait automatiquement sans donner la main pour supprimer ce caractère.

    j'ai essayé de resoudre ce problème par l'ajout d'une alerte:

    Set_Alert_Property('alert_nivo', ALERT_MESSAGE_TEXT,
    'Saisissez un caractère numérique!!');
    n:=show_alert('alert_nivo');
    go_block('niveau');
    malheureusement, ca n'a aucun effet puisque c'est toujour l'alerte de depart ki s'affiche sans donner la main à l'utilisateur.
    comment remedier à ce problème?

    merci d'avance

  14. #14
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Il faut mettre le item type en CHAR, et pas en NUMBER.

  15. #15
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 205
    Points : 78
    Points
    78
    Par défaut ca marche, cool
    ok,je crois que ca marche pafaitement.
    merci a vous et bonne journée

  16. #16
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 17
    Points : 22
    Points
    22
    Par défaut when_timer_expired
    jai essayer ce code de when_timer_expired mais il y avais une erreur a la compilation on me disant que le block.text item doit etre declare

  17. #17
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 17
    Points : 22
    Points
    22
    Par défaut when_timer_expired
    jai essayer ce code de when_timer_expired mais il y avais une erreur a la compilation on me disant que le block.text item variable de lien erroné

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Formulaire, Champ Grisé avec valeur "par défaut"
    Par Lutine dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 12/06/2011, 18h38
  2. Réponses: 1
    Dernier message: 30/11/2010, 21h02
  3. vérifier valeur saisie champ formulaire.
    Par DyDansh dans le forum IHM
    Réponses: 12
    Dernier message: 16/04/2010, 16h26
  4. Réponses: 6
    Dernier message: 03/04/2006, 09h42
  5. Validation saisie champ
    Par JUZAN dans le forum Access
    Réponses: 10
    Dernier message: 20/01/2006, 18h07

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