j'utilise une fiche RAD avec parcours , et je souhaite que le nom
saisie par l'utilisateur soit inscrit sur le fichier HF à chaque
enregistrement,et qu'il soit effectué automatiquement, mais je ne
vois pas comment faire , pouvez vous m'aider ?
Merci
Ps :pour récupèrer le nom de l'utilisateur j'utilise le code suivant
Nom est une chaîne = gpwRecupInfoUtilisateur(gpwInfoNom)
ps:je suis débutant et je ne maitrise pas trop les manipulations sur
les fichiers HF ;-)
Merci
code de la fenetre fiche......
// Ouverture de la fenêtre de type Fiche
// Entrée: ModeOuverture=mode d'ouverture de la fenêtre :
// - "Parcours" Visualisation de tous les enregistrements
// grâce aux boutons de parcours
// - "Modif" Modification de l'enregistrement en cours
// - "Création" Création d'un nouvel enregistrement
// - "ParcoursLié" Parcours du fichier en liaison avec la fenêtre
mère
// (avec suppression et création)
PROCEDURE FicheRAD(ModeOuverture="Parcours")
GLOBAL
gNumEnr est un entier = 0 // enregistrement en cours dans le
fichier
gModeFenetre est une chaîne // mode de la fenêtre
gbFenetreModifiee est un booléen = Faux // Est-ce qu'un
enregistrement a été modifié ?
gsModeAppel est une chaîne = ModeOuverture // Mode d'appel de la
fenêtre
// Gestion des erreurs d'accès à la base de données
// Les messages d'erreurs renvoyés par la base sont affichés
// Vous pouvez traiter ici les compte-rendu d'erreurs de votre base
QUAND EXCEPTION
Erreur("Une erreur est survenue dans la
fenêtre",ExceptionInfo(errMessage))
// On réactive les exceptions
ExceptionActive()
// On reprend le traitement
RepriseSaisie()
FIN
// si la fiche est ouverte en mode parcours
// mais que le fichier n'a aucun enregistrement
// passe automatiquement en mode création
SI (ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié") ET
HNbEnr(Lieu_de_Stock)=0 ALORS
// ouvre une boite de dialogue pour informer l'utilisateur
Info("Le fichier ne contient aucun enregistrement.","La fiche va
passer en mode 'Création'.")
// changement de mode d'ouverture
ModeOuverture="Création"
FIN
// activation des champs selon le mode de la fenêtre
ModifModeFenetre(ModeOuverture)
// vérification des modifications de la fiche
VerifModification()
Ferme("",gbFenetreModifiee)
// Si un champ a été modifié, on active le groupe de validation des
modifications
SI ChampExiste("GP_APPLIQUER") ALORS GP_APPLIQUER..Etat = Actif
et du bouton OK......
// Selon le mode de la fenêtre
SELON Gauche(ExtraitChaîne(gModeFenetre,1,"="),8)
// Mode création
CAS "Création"
// Mise en place de l'enregistrement et validation
SI RADEnregistre() ALORS
// Ajout de l'enregistrement
HAjoute(Lieu_de_Stock)
SI ErreurDétectée ALORS
Info("Impossible d'ajouter un enregistrement"+RC+HErreurInfo())
RETOUR
FIN
// Indique que la fiche n'est plus modifiée
gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié
MaFenêtre..Modifié=Faux
FIN
// Mode modification
CAS "Modif"
// Mise en place de l'enregistrement et validation
SI RADEnregistre() ALORS
// modification de l'enregistrement
HModifie(Lieu_de_Stock)
SI ErreurDétectée ALORS
Info("Impossible de modifier l'enregistrement"+RC+HErreurInfo())
RETOUR
FIN
// Indique que la fiche n'est plus modifiée
gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié
MaFenêtre..Modifié=Faux
FIN
FIN
// si la fenêtre a été ouverte en mode parcours
SI ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié" OU
gsModeAppel~="Parcours" ALORS
// le nouvel enregistrement devient l'enregistrement en cours
gNumEnr = HNumEnr(Lieu_de_Stock)
// Est-ce que le mode d'ouverture de la fenêtre a été changé ?
SI gsModeAppel ~= "Parcours" ALORS
// On se positionne sur l'enregistrement pour réinitialiser le
parcours
SI gNumEnr<>0 ALORS
HLitPremier(Lieu_de_Stock)
SINON
HLitPremier(Lieu_de_Stock,IDLieu_de_Stock)
FIN
// On rétablit le mdoe d'ouverture prévu
ModeOuverture = gsModeAppel
FIN
// retour dans le mode d'origine
ModifModeFenetre(ModeOuverture)
// dans les autres cas
SINON
// fermeture de la fenêtre
Ferme("",gbFenetreModifiee)
FIN
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
[Bernard Vessiot]
Asterix08 a présenté l'énoncé suivant :
Bonjour à tous !
j'utilise une fiche RAD avec parcours , et je souhaite que le nom saisie par l'utilisateur soit inscrit sur le fichier HF à chaque enregistrement,et qu'il soit effectué automatiquement, mais je ne vois pas comment faire , pouvez vous m'aider ? Merci Ps :pour récupèrer le nom de l'utilisateur j'utilise le code suivant
Nom est une chaîne = gpwRecupInfoUtilisateur(gpwInfoNom)
ps:je suis débutant et je ne maitrise pas trop les manipulations sur les fichiers HF ;-) Merci
code de la fenetre fiche......
// Ouverture de la fenêtre de type Fiche // Entrée: ModeOuverture=mode d'ouverture de la fenêtre : // - "Parcours" Visualisation de tous les enregistrements // grâce aux boutons de parcours // - "Modif" Modification de l'enregistrement en cours // - "Création" Création d'un nouvel enregistrement // - "ParcoursLié" Parcours du fichier en liaison avec la fenêtre mère // (avec suppression et création)
PROCEDURE FicheRAD(ModeOuverture="Parcours")
GLOBAL gNumEnr est un entier = 0 // enregistrement en cours dans le fichier gModeFenetre est une chaîne // mode de la fenêtre gbFenetreModifiee est un booléen = Faux // Est-ce qu'un enregistrement a été modifié ? gsModeAppel est une chaîne = ModeOuverture // Mode d'appel de la fenêtre
// Gestion des erreurs d'accès à la base de données // Les messages d'erreurs renvoyés par la base sont affichés // Vous pouvez traiter ici les compte-rendu d'erreurs de votre base QUAND EXCEPTION Erreur("Une erreur est survenue dans la fenêtre",ExceptionInfo(errMessage)) // On réactive les exceptions ExceptionActive() // On reprend le traitement RepriseSaisie() FIN
// si la fiche est ouverte en mode parcours // mais que le fichier n'a aucun enregistrement // passe automatiquement en mode création SI (ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié") ET HNbEnr(Lieu_de_Stock)=0 ALORS // ouvre une boite de dialogue pour informer l'utilisateur Info("Le fichier ne contient aucun enregistrement.","La fiche va passer en mode 'Création'.") // changement de mode d'ouverture ModeOuverture="Création" FIN
// activation des champs selon le mode de la fenêtre ModifModeFenetre(ModeOuverture)
// vérification des modifications de la fiche VerifModification() Ferme("",gbFenetreModifiee)
// Si un champ a été modifié, on active le groupe de validation des modifications SI ChampExiste("GP_APPLIQUER") ALORS GP_APPLIQUER..Etat = Actif
et du bouton OK......
// Selon le mode de la fenêtre SELON Gauche(ExtraitChaîne(gModeFenetre,1,"="),8) // Mode création CAS "Création" // Mise en place de l'enregistrement et validation SI RADEnregistre() ALORS // Ajout de l'enregistrement
HAjoute(Lieu_de_Stock)
SI ErreurDétectée ALORS Info("Impossible d'ajouter un enregistrement"+RC+HErreurInfo()) RETOUR FIN
// Indique que la fiche n'est plus modifiée gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié MaFenêtre..Modifiéúux
FIN // Mode modification CAS "Modif" // Mise en place de l'enregistrement et validation SI RADEnregistre() ALORS // modification de l'enregistrement HModifie(Lieu_de_Stock) SI ErreurDétectée ALORS Info("Impossible de modifier l'enregistrement"+RC+HErreurInfo()) RETOUR FIN
// Indique que la fiche n'est plus modifiée gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié MaFenêtre..Modifiéúux
FIN FIN
// si la fenêtre a été ouverte en mode parcours SI ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié" OU gsModeAppel~="Parcours" ALORS // le nouvel enregistrement devient l'enregistrement en cours gNumEnr = HNumEnr(Lieu_de_Stock)
// Est-ce que le mode d'ouverture de la fenêtre a été changé ? SI gsModeAppel ~= "Parcours" ALORS // On se positionne sur l'enregistrement pour réinitialiser le parcours SI gNumEnr<>0 ALORS HLitPremier(Lieu_de_Stock) SINON HLitPremier(Lieu_de_Stock,IDLieu_de_Stock) FIN
// On rétablit le mdoe d'ouverture prévu ModeOuverture = gsModeAppel FIN
// retour dans le mode d'origine ModifModeFenetre(ModeOuverture) // dans les autres cas SINON // fermeture de la fenêtre Ferme("",gbFenetreModifiee) FIN
salut, voir dans l'aide l'utilisation des triggers. cela devrait repondre a ton besoin ! @+++
-- [Bernard Vessiot] 34980 Saint Gély du Fesc
Asterix08 a présenté l'énoncé suivant :
Bonjour à tous !
j'utilise une fiche RAD avec parcours , et je souhaite que le nom saisie par
l'utilisateur soit inscrit sur le fichier HF à chaque enregistrement,et qu'il
soit effectué automatiquement, mais je ne vois pas comment faire , pouvez
vous m'aider ?
Merci
Ps :pour récupèrer le nom de l'utilisateur j'utilise le code suivant
Nom est une chaîne = gpwRecupInfoUtilisateur(gpwInfoNom)
ps:je suis débutant et je ne maitrise pas trop les manipulations sur les
fichiers HF ;-)
Merci
code de la fenetre fiche......
// Ouverture de la fenêtre de type Fiche
// Entrée: ModeOuverture=mode d'ouverture de la fenêtre :
// - "Parcours" Visualisation de tous les enregistrements
// grâce aux boutons de parcours
// - "Modif" Modification de l'enregistrement en cours
// - "Création" Création d'un nouvel enregistrement
// - "ParcoursLié" Parcours du fichier en liaison avec la fenêtre mère
// (avec suppression et création)
PROCEDURE FicheRAD(ModeOuverture="Parcours")
GLOBAL
gNumEnr est un entier = 0 // enregistrement en cours dans le fichier
gModeFenetre est une chaîne // mode de la fenêtre
gbFenetreModifiee est un booléen = Faux // Est-ce qu'un enregistrement a
été modifié ?
gsModeAppel est une chaîne = ModeOuverture // Mode d'appel de la fenêtre
// Gestion des erreurs d'accès à la base de données
// Les messages d'erreurs renvoyés par la base sont affichés
// Vous pouvez traiter ici les compte-rendu d'erreurs de votre base
QUAND EXCEPTION
Erreur("Une erreur est survenue dans la fenêtre",ExceptionInfo(errMessage))
// On réactive les exceptions
ExceptionActive()
// On reprend le traitement
RepriseSaisie()
FIN
// si la fiche est ouverte en mode parcours
// mais que le fichier n'a aucun enregistrement
// passe automatiquement en mode création
SI (ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié") ET
HNbEnr(Lieu_de_Stock)=0 ALORS
// ouvre une boite de dialogue pour informer l'utilisateur
Info("Le fichier ne contient aucun enregistrement.","La fiche va passer en
mode 'Création'.")
// changement de mode d'ouverture
ModeOuverture="Création"
FIN
// activation des champs selon le mode de la fenêtre
ModifModeFenetre(ModeOuverture)
// vérification des modifications de la fiche
VerifModification()
Ferme("",gbFenetreModifiee)
// Si un champ a été modifié, on active le groupe de validation des
modifications
SI ChampExiste("GP_APPLIQUER") ALORS GP_APPLIQUER..Etat = Actif
et du bouton OK......
// Selon le mode de la fenêtre
SELON Gauche(ExtraitChaîne(gModeFenetre,1,"="),8)
// Mode création
CAS "Création"
// Mise en place de l'enregistrement et validation
SI RADEnregistre() ALORS
// Ajout de l'enregistrement
HAjoute(Lieu_de_Stock)
SI ErreurDétectée ALORS
Info("Impossible d'ajouter un enregistrement"+RC+HErreurInfo())
RETOUR
FIN
// Indique que la fiche n'est plus modifiée
gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié
MaFenêtre..Modifiéúux
FIN
// Mode modification
CAS "Modif"
// Mise en place de l'enregistrement et validation
SI RADEnregistre() ALORS
// modification de l'enregistrement
HModifie(Lieu_de_Stock)
SI ErreurDétectée ALORS
Info("Impossible de modifier l'enregistrement"+RC+HErreurInfo())
RETOUR
FIN
// Indique que la fiche n'est plus modifiée
gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié
MaFenêtre..Modifiéúux
FIN
FIN
// si la fenêtre a été ouverte en mode parcours
SI ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié" OU
gsModeAppel~="Parcours" ALORS
// le nouvel enregistrement devient l'enregistrement en cours
gNumEnr = HNumEnr(Lieu_de_Stock)
// Est-ce que le mode d'ouverture de la fenêtre a été changé ?
SI gsModeAppel ~= "Parcours" ALORS
// On se positionne sur l'enregistrement pour réinitialiser le parcours
SI gNumEnr<>0 ALORS
HLitPremier(Lieu_de_Stock)
SINON
HLitPremier(Lieu_de_Stock,IDLieu_de_Stock)
FIN
// On rétablit le mdoe d'ouverture prévu
ModeOuverture = gsModeAppel
FIN
// retour dans le mode d'origine
ModifModeFenetre(ModeOuverture)
// dans les autres cas
SINON
// fermeture de la fenêtre
Ferme("",gbFenetreModifiee)
FIN
salut,
voir dans l'aide l'utilisation des triggers.
cela devrait repondre a ton besoin !
@+++
--
[Bernard Vessiot]
34980 Saint Gély du Fesc
jci-53el@iximail.com
j'utilise une fiche RAD avec parcours , et je souhaite que le nom saisie par l'utilisateur soit inscrit sur le fichier HF à chaque enregistrement,et qu'il soit effectué automatiquement, mais je ne vois pas comment faire , pouvez vous m'aider ? Merci Ps :pour récupèrer le nom de l'utilisateur j'utilise le code suivant
Nom est une chaîne = gpwRecupInfoUtilisateur(gpwInfoNom)
ps:je suis débutant et je ne maitrise pas trop les manipulations sur les fichiers HF ;-) Merci
code de la fenetre fiche......
// Ouverture de la fenêtre de type Fiche // Entrée: ModeOuverture=mode d'ouverture de la fenêtre : // - "Parcours" Visualisation de tous les enregistrements // grâce aux boutons de parcours // - "Modif" Modification de l'enregistrement en cours // - "Création" Création d'un nouvel enregistrement // - "ParcoursLié" Parcours du fichier en liaison avec la fenêtre mère // (avec suppression et création)
PROCEDURE FicheRAD(ModeOuverture="Parcours")
GLOBAL gNumEnr est un entier = 0 // enregistrement en cours dans le fichier gModeFenetre est une chaîne // mode de la fenêtre gbFenetreModifiee est un booléen = Faux // Est-ce qu'un enregistrement a été modifié ? gsModeAppel est une chaîne = ModeOuverture // Mode d'appel de la fenêtre
// Gestion des erreurs d'accès à la base de données // Les messages d'erreurs renvoyés par la base sont affichés // Vous pouvez traiter ici les compte-rendu d'erreurs de votre base QUAND EXCEPTION Erreur("Une erreur est survenue dans la fenêtre",ExceptionInfo(errMessage)) // On réactive les exceptions ExceptionActive() // On reprend le traitement RepriseSaisie() FIN
// si la fiche est ouverte en mode parcours // mais que le fichier n'a aucun enregistrement // passe automatiquement en mode création SI (ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié") ET HNbEnr(Lieu_de_Stock)=0 ALORS // ouvre une boite de dialogue pour informer l'utilisateur Info("Le fichier ne contient aucun enregistrement.","La fiche va passer en mode 'Création'.") // changement de mode d'ouverture ModeOuverture="Création" FIN
// activation des champs selon le mode de la fenêtre ModifModeFenetre(ModeOuverture)
// vérification des modifications de la fiche VerifModification() Ferme("",gbFenetreModifiee)
// Si un champ a été modifié, on active le groupe de validation des modifications SI ChampExiste("GP_APPLIQUER") ALORS GP_APPLIQUER..Etat = Actif
et du bouton OK......
// Selon le mode de la fenêtre SELON Gauche(ExtraitChaîne(gModeFenetre,1,"="),8) // Mode création CAS "Création" // Mise en place de l'enregistrement et validation SI RADEnregistre() ALORS // Ajout de l'enregistrement
HAjoute(Lieu_de_Stock)
SI ErreurDétectée ALORS Info("Impossible d'ajouter un enregistrement"+RC+HErreurInfo()) RETOUR FIN
// Indique que la fiche n'est plus modifiée gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié MaFenêtre..Modifiéúux
FIN // Mode modification CAS "Modif" // Mise en place de l'enregistrement et validation SI RADEnregistre() ALORS // modification de l'enregistrement HModifie(Lieu_de_Stock) SI ErreurDétectée ALORS Info("Impossible de modifier l'enregistrement"+RC+HErreurInfo()) RETOUR FIN
// Indique que la fiche n'est plus modifiée gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié MaFenêtre..Modifiéúux
FIN FIN
// si la fenêtre a été ouverte en mode parcours SI ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié" OU gsModeAppel~="Parcours" ALORS // le nouvel enregistrement devient l'enregistrement en cours gNumEnr = HNumEnr(Lieu_de_Stock)
// Est-ce que le mode d'ouverture de la fenêtre a été changé ? SI gsModeAppel ~= "Parcours" ALORS // On se positionne sur l'enregistrement pour réinitialiser le parcours SI gNumEnr<>0 ALORS HLitPremier(Lieu_de_Stock) SINON HLitPremier(Lieu_de_Stock,IDLieu_de_Stock) FIN
// On rétablit le mdoe d'ouverture prévu ModeOuverture = gsModeAppel FIN
// retour dans le mode d'origine ModifModeFenetre(ModeOuverture) // dans les autres cas SINON // fermeture de la fenêtre Ferme("",gbFenetreModifiee) FIN
salut, voir dans l'aide l'utilisation des triggers. cela devrait repondre a ton besoin ! @+++
-- [Bernard Vessiot] 34980 Saint Gély du Fesc
Asterix08
Merci bernard ! c'est exactement ce que je cherchais ;-)
salutaions , @+
[Bernard Vessiot] a exposé le 09/11/2006 :
Asterix08 a présenté l'énoncé suivant :
Bonjour à tous !
j'utilise une fiche RAD avec parcours , et je souhaite que le nom saisie par l'utilisateur soit inscrit sur le fichier HF à chaque enregistrement,et qu'il soit effectué automatiquement, mais je ne vois pas comment faire , pouvez vous m'aider ? Merci Ps :pour récupèrer le nom de l'utilisateur j'utilise le code suivant
Nom est une chaîne = gpwRecupInfoUtilisateur(gpwInfoNom)
ps:je suis débutant et je ne maitrise pas trop les manipulations sur les fichiers HF ;-) Merci
code de la fenetre fiche......
// Ouverture de la fenêtre de type Fiche // Entrée: ModeOuverture=mode d'ouverture de la fenêtre : // - "Parcours" Visualisation de tous les enregistrements // grâce aux boutons de parcours // - "Modif" Modification de l'enregistrement en cours // - "Création" Création d'un nouvel enregistrement // - "ParcoursLié" Parcours du fichier en liaison avec la fenêtre mère // (avec suppression et création)
PROCEDURE FicheRAD(ModeOuverture="Parcours")
GLOBAL gNumEnr est un entier = 0 // enregistrement en cours dans le fichier gModeFenetre est une chaîne // mode de la fenêtre gbFenetreModifiee est un booléen = Faux // Est-ce qu'un enregistrement a été modifié ? gsModeAppel est une chaîne = ModeOuverture // Mode d'appel de la fenêtre
// Gestion des erreurs d'accès à la base de données // Les messages d'erreurs renvoyés par la base sont affichés // Vous pouvez traiter ici les compte-rendu d'erreurs de votre base QUAND EXCEPTION Erreur("Une erreur est survenue dans la fenêtre",ExceptionInfo(errMessage)) // On réactive les exceptions ExceptionActive() // On reprend le traitement RepriseSaisie() FIN
// si la fiche est ouverte en mode parcours // mais que le fichier n'a aucun enregistrement // passe automatiquement en mode création SI (ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié") ET HNbEnr(Lieu_de_Stock)=0 ALORS // ouvre une boite de dialogue pour informer l'utilisateur Info("Le fichier ne contient aucun enregistrement.","La fiche va passer en mode 'Création'.") // changement de mode d'ouverture ModeOuverture="Création" FIN
// activation des champs selon le mode de la fenêtre ModifModeFenetre(ModeOuverture)
// vérification des modifications de la fiche VerifModification() Ferme("",gbFenetreModifiee)
// Si un champ a été modifié, on active le groupe de validation des modifications SI ChampExiste("GP_APPLIQUER") ALORS GP_APPLIQUER..Etat = Actif
et du bouton OK......
// Selon le mode de la fenêtre SELON Gauche(ExtraitChaîne(gModeFenetre,1,"="),8) // Mode création CAS "Création" // Mise en place de l'enregistrement et validation SI RADEnregistre() ALORS // Ajout de l'enregistrement
HAjoute(Lieu_de_Stock)
SI ErreurDétectée ALORS Info("Impossible d'ajouter un enregistrement"+RC+HErreurInfo()) RETOUR FIN
// Indique que la fiche n'est plus modifiée gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié MaFenêtre..Modifiéúux
FIN // Mode modification CAS "Modif" // Mise en place de l'enregistrement et validation SI RADEnregistre() ALORS // modification de l'enregistrement HModifie(Lieu_de_Stock) SI ErreurDétectée ALORS Info("Impossible de modifier l'enregistrement"+RC+HErreurInfo()) RETOUR FIN
// Indique que la fiche n'est plus modifiée gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié MaFenêtre..Modifiéúux
FIN FIN
// si la fenêtre a été ouverte en mode parcours SI ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié" OU gsModeAppel~="Parcours" ALORS // le nouvel enregistrement devient l'enregistrement en cours gNumEnr = HNumEnr(Lieu_de_Stock)
// Est-ce que le mode d'ouverture de la fenêtre a été changé ? SI gsModeAppel ~= "Parcours" ALORS // On se positionne sur l'enregistrement pour réinitialiser le parcours SI gNumEnr<>0 ALORS HLitPremier(Lieu_de_Stock) SINON HLitPremier(Lieu_de_Stock,IDLieu_de_Stock) FIN
// On rétablit le mdoe d'ouverture prévu ModeOuverture = gsModeAppel FIN
// retour dans le mode d'origine ModifModeFenetre(ModeOuverture) // dans les autres cas SINON // fermeture de la fenêtre Ferme("",gbFenetreModifiee) FIN
salut, voir dans l'aide l'utilisation des triggers. cela devrait repondre a ton besoin ! @+++
-- Amicalement
Asterix08
Merci bernard !
c'est exactement ce que je cherchais ;-)
salutaions ,
@+
[Bernard Vessiot] a exposé le 09/11/2006 :
Asterix08 a présenté l'énoncé suivant :
Bonjour à tous !
j'utilise une fiche RAD avec parcours , et je souhaite que le nom saisie
par l'utilisateur soit inscrit sur le fichier HF à chaque enregistrement,et
qu'il soit effectué automatiquement, mais je ne vois pas comment faire ,
pouvez vous m'aider ?
Merci
Ps :pour récupèrer le nom de l'utilisateur j'utilise le code suivant
Nom est une chaîne = gpwRecupInfoUtilisateur(gpwInfoNom)
ps:je suis débutant et je ne maitrise pas trop les manipulations sur les
fichiers HF ;-)
Merci
code de la fenetre fiche......
// Ouverture de la fenêtre de type Fiche
// Entrée: ModeOuverture=mode d'ouverture de la fenêtre :
// - "Parcours" Visualisation de tous les enregistrements
// grâce aux boutons de parcours
// - "Modif" Modification de l'enregistrement en cours
// - "Création" Création d'un nouvel enregistrement
// - "ParcoursLié" Parcours du fichier en liaison avec la fenêtre mère
// (avec suppression et création)
PROCEDURE FicheRAD(ModeOuverture="Parcours")
GLOBAL
gNumEnr est un entier = 0 // enregistrement en cours dans le fichier
gModeFenetre est une chaîne // mode de la fenêtre
gbFenetreModifiee est un booléen = Faux // Est-ce qu'un enregistrement a
été modifié ?
gsModeAppel est une chaîne = ModeOuverture // Mode d'appel de la fenêtre
// Gestion des erreurs d'accès à la base de données
// Les messages d'erreurs renvoyés par la base sont affichés
// Vous pouvez traiter ici les compte-rendu d'erreurs de votre base
QUAND EXCEPTION
Erreur("Une erreur est survenue dans la
fenêtre",ExceptionInfo(errMessage))
// On réactive les exceptions
ExceptionActive()
// On reprend le traitement
RepriseSaisie()
FIN
// si la fiche est ouverte en mode parcours
// mais que le fichier n'a aucun enregistrement
// passe automatiquement en mode création
SI (ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié") ET
HNbEnr(Lieu_de_Stock)=0 ALORS
// ouvre une boite de dialogue pour informer l'utilisateur
Info("Le fichier ne contient aucun enregistrement.","La fiche va passer en
mode 'Création'.")
// changement de mode d'ouverture
ModeOuverture="Création"
FIN
// activation des champs selon le mode de la fenêtre
ModifModeFenetre(ModeOuverture)
// vérification des modifications de la fiche
VerifModification()
Ferme("",gbFenetreModifiee)
// Si un champ a été modifié, on active le groupe de validation des
modifications
SI ChampExiste("GP_APPLIQUER") ALORS GP_APPLIQUER..Etat = Actif
et du bouton OK......
// Selon le mode de la fenêtre
SELON Gauche(ExtraitChaîne(gModeFenetre,1,"="),8)
// Mode création
CAS "Création"
// Mise en place de l'enregistrement et validation
SI RADEnregistre() ALORS
// Ajout de l'enregistrement
HAjoute(Lieu_de_Stock)
SI ErreurDétectée ALORS
Info("Impossible d'ajouter un enregistrement"+RC+HErreurInfo())
RETOUR
FIN
// Indique que la fiche n'est plus modifiée
gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié
MaFenêtre..Modifiéúux
FIN
// Mode modification
CAS "Modif"
// Mise en place de l'enregistrement et validation
SI RADEnregistre() ALORS
// modification de l'enregistrement
HModifie(Lieu_de_Stock)
SI ErreurDétectée ALORS
Info("Impossible de modifier l'enregistrement"+RC+HErreurInfo())
RETOUR
FIN
// Indique que la fiche n'est plus modifiée
gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié
MaFenêtre..Modifiéúux
FIN
FIN
// si la fenêtre a été ouverte en mode parcours
SI ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié" OU
gsModeAppel~="Parcours" ALORS
// le nouvel enregistrement devient l'enregistrement en cours
gNumEnr = HNumEnr(Lieu_de_Stock)
// Est-ce que le mode d'ouverture de la fenêtre a été changé ?
SI gsModeAppel ~= "Parcours" ALORS
// On se positionne sur l'enregistrement pour réinitialiser le parcours
SI gNumEnr<>0 ALORS
HLitPremier(Lieu_de_Stock)
SINON
HLitPremier(Lieu_de_Stock,IDLieu_de_Stock)
FIN
// On rétablit le mdoe d'ouverture prévu
ModeOuverture = gsModeAppel
FIN
// retour dans le mode d'origine
ModifModeFenetre(ModeOuverture)
// dans les autres cas
SINON
// fermeture de la fenêtre
Ferme("",gbFenetreModifiee)
FIN
salut,
voir dans l'aide l'utilisation des triggers.
cela devrait repondre a ton besoin !
@+++
Merci bernard ! c'est exactement ce que je cherchais ;-)
salutaions , @+
[Bernard Vessiot] a exposé le 09/11/2006 :
Asterix08 a présenté l'énoncé suivant :
Bonjour à tous !
j'utilise une fiche RAD avec parcours , et je souhaite que le nom saisie par l'utilisateur soit inscrit sur le fichier HF à chaque enregistrement,et qu'il soit effectué automatiquement, mais je ne vois pas comment faire , pouvez vous m'aider ? Merci Ps :pour récupèrer le nom de l'utilisateur j'utilise le code suivant
Nom est une chaîne = gpwRecupInfoUtilisateur(gpwInfoNom)
ps:je suis débutant et je ne maitrise pas trop les manipulations sur les fichiers HF ;-) Merci
code de la fenetre fiche......
// Ouverture de la fenêtre de type Fiche // Entrée: ModeOuverture=mode d'ouverture de la fenêtre : // - "Parcours" Visualisation de tous les enregistrements // grâce aux boutons de parcours // - "Modif" Modification de l'enregistrement en cours // - "Création" Création d'un nouvel enregistrement // - "ParcoursLié" Parcours du fichier en liaison avec la fenêtre mère // (avec suppression et création)
PROCEDURE FicheRAD(ModeOuverture="Parcours")
GLOBAL gNumEnr est un entier = 0 // enregistrement en cours dans le fichier gModeFenetre est une chaîne // mode de la fenêtre gbFenetreModifiee est un booléen = Faux // Est-ce qu'un enregistrement a été modifié ? gsModeAppel est une chaîne = ModeOuverture // Mode d'appel de la fenêtre
// Gestion des erreurs d'accès à la base de données // Les messages d'erreurs renvoyés par la base sont affichés // Vous pouvez traiter ici les compte-rendu d'erreurs de votre base QUAND EXCEPTION Erreur("Une erreur est survenue dans la fenêtre",ExceptionInfo(errMessage)) // On réactive les exceptions ExceptionActive() // On reprend le traitement RepriseSaisie() FIN
// si la fiche est ouverte en mode parcours // mais que le fichier n'a aucun enregistrement // passe automatiquement en mode création SI (ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié") ET HNbEnr(Lieu_de_Stock)=0 ALORS // ouvre une boite de dialogue pour informer l'utilisateur Info("Le fichier ne contient aucun enregistrement.","La fiche va passer en mode 'Création'.") // changement de mode d'ouverture ModeOuverture="Création" FIN
// activation des champs selon le mode de la fenêtre ModifModeFenetre(ModeOuverture)
// vérification des modifications de la fiche VerifModification() Ferme("",gbFenetreModifiee)
// Si un champ a été modifié, on active le groupe de validation des modifications SI ChampExiste("GP_APPLIQUER") ALORS GP_APPLIQUER..Etat = Actif
et du bouton OK......
// Selon le mode de la fenêtre SELON Gauche(ExtraitChaîne(gModeFenetre,1,"="),8) // Mode création CAS "Création" // Mise en place de l'enregistrement et validation SI RADEnregistre() ALORS // Ajout de l'enregistrement
HAjoute(Lieu_de_Stock)
SI ErreurDétectée ALORS Info("Impossible d'ajouter un enregistrement"+RC+HErreurInfo()) RETOUR FIN
// Indique que la fiche n'est plus modifiée gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié MaFenêtre..Modifiéúux
FIN // Mode modification CAS "Modif" // Mise en place de l'enregistrement et validation SI RADEnregistre() ALORS // modification de l'enregistrement HModifie(Lieu_de_Stock) SI ErreurDétectée ALORS Info("Impossible de modifier l'enregistrement"+RC+HErreurInfo()) RETOUR FIN
// Indique que la fiche n'est plus modifiée gbFenetreModifiee = gbFenetreModifiee OU MaFenêtre..Modifié MaFenêtre..Modifiéúux
FIN FIN
// si la fenêtre a été ouverte en mode parcours SI ModeOuverture="Parcours" OU ModeOuverture~="ParcoursLié" OU gsModeAppel~="Parcours" ALORS // le nouvel enregistrement devient l'enregistrement en cours gNumEnr = HNumEnr(Lieu_de_Stock)
// Est-ce que le mode d'ouverture de la fenêtre a été changé ? SI gsModeAppel ~= "Parcours" ALORS // On se positionne sur l'enregistrement pour réinitialiser le parcours SI gNumEnr<>0 ALORS HLitPremier(Lieu_de_Stock) SINON HLitPremier(Lieu_de_Stock,IDLieu_de_Stock) FIN
// On rétablit le mdoe d'ouverture prévu ModeOuverture = gsModeAppel FIN
// retour dans le mode d'origine ModifModeFenetre(ModeOuverture) // dans les autres cas SINON // fermeture de la fenêtre Ferme("",gbFenetreModifiee) FIN
salut, voir dans l'aide l'utilisation des triggers. cela devrait repondre a ton besoin ! @+++