Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Bloquer un enregistrement

3 réponses
Avatar
Yves T
Bonjour,
Lorsque qu'un fenêtre Fiche est ouverte par un 1er utilisateur, je veux que
les utilisateurs suivants ne puisse pas y accéder (ou en affichage seul)
avec un message "Enregistrement en cours de modification..."

Comment faire ?

Merci. yves

3 réponses

Avatar
Adrien
"Yves T" a écrit dans le message de news:
42556bcf$
Bonjour,
Lorsque qu'un fenêtre Fiche est ouverte par un 1er utilisateur, je veux
que
les utilisateurs suivants ne puisse pas y accéder (ou en affichage seul)
avec un message "Enregistrement en cours de modification..."

Comment faire ?

Merci. yves





c'est trés simple. utilise un paramétre de blocage a ta fonction de lecture.
si un autre poste tente de bloquer, l'enregsitrement sear lu mais la
commande herreurblocage() va te renvoyer vrai.

le nec plus ultra, tu le trouveras dans la lst 55 : composant QuiABloque !

tu pourras avec ce composant afficher : "Enregistrement en cours de
modification par XX"

A+
Adrien
Avatar
titou44
Adrien a émis l'idée suivante :
"Yves T" a écrit dans le message de news:
42556bcf$
Bonjour,
Lorsque qu'un fenêtre Fiche est ouverte par un 1er utilisateur, je veux
que
les utilisateurs suivants ne puisse pas y accéder (ou en affichage seul)
avec un message "Enregistrement en cours de modification..."

Comment faire ?

Merci. yves





c'est trés simple. utilise un paramétre de blocage a ta fonction de lecture.
si un autre poste tente de bloquer, l'enregsitrement sear lu mais la
commande herreurblocage() va te renvoyer vrai.

le nec plus ultra, tu le trouveras dans la lst 55 : composant QuiABloque !

tu pourras avec ce composant afficher : "Enregistrement en cours de
modification par XX"

A+
Adrien



bonsoir

voici les 2 fonctions que j'utilise.
je pense qu'elles sont "auto-compréhensibles".
pour d'autres infos, tu peux me contacter en direct

titou44 (marreduspam) @freesurf.fr

/// à mettre avant tout hajoute ou hmodifie
/// on donne : nom du ficher, numero du record, nom du user
/// peut être appelé quand on clique sur le bouton.
/// attention à ne pas oublier le g_debloque en cas d'abandon

PROCEDURE g_bloque(p_fic,p_numenr,p_user)
LOCAL
l_ret est un booléen
l_tnumenr est une chaîne
l_nomfic est une chaîne
nIdFic est un entier
sMaChaîne est une chaîne

l_ret = Vrai
l_tnumenr = NumériqueVersChaine(p_numenr, "07d")
l_nomfic = fRepEnCours() + "" + p_fic + l_tnumenr + ".blo"

SI fRep(l_nomfic,frFichier)~="" ALORS
nIdFic = fOuvre(l_nomfic, foCréation+foLectureEcriture)
SI nIdFic=-1 ALORS
Info("erreur création fichier : " + l_nomfic)
l_ret = Faux
SINON
sMaChaîne = p_user
fEcritLigne(nIdFic, sMaChaîne)
fFerme(nIdFic)
FIN
SINON
nIdFic = fOuvre(l_nomfic, foLecture)
SI nIdFic=-1 ALORS
Info("erreur lecture fichier : " + l_nomfic)
l_ret = Faux
SINON
sMaChaîne = fLitLigne(nIdFic)
fFerme(nIdFic)
Info("Opération impossible: fiche en cours de modification par : " +
sMaChaîne)
l_ret = Faux
FIN
FIN

RENVOYER l_ret



// à appeler après le hajoute ou hmodifie

PROCEDURE g_debloque(p_fic,p_numenr)
LOCAL
l_ret est un booléen
l_tnumenr est une chaîne
l_nomfic est une chaîne
ResSuppression est une chaîne

l_ret = Vrai
l_tnumenr = NumériqueVersChaine(p_numenr, "07d")
l_nomfic = fRepEnCours() + "" + p_fic + l_tnumenr + ".blo"

ResSuppression = fSupprime(l_nomfic)
SI ResSuppression = Faux ALORS
Info("erreur suppression blocage : " + l_nomfic)
l_ret = Faux
FIN

RENVOYER l_ret

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com
Avatar
titou44
titou44 avait prétendu :
Adrien a émis l'idée suivante :
"Yves T" a écrit dans le message de news:
42556bcf$
Bonjour,
Lorsque qu'un fenêtre Fiche est ouverte par un 1er utilisateur, je veux
que
les utilisateurs suivants ne puisse pas y accéder (ou en affichage seul)
avec un message "Enregistrement en cours de modification..."

Comment faire ?

Merci. yves





c'est trés simple. utilise un paramétre de blocage a ta fonction de
lecture. si un autre poste tente de bloquer, l'enregsitrement sear lu mais
la commande herreurblocage() va te renvoyer vrai.

le nec plus ultra, tu le trouveras dans la lst 55 : composant QuiABloque !

tu pourras avec ce composant afficher : "Enregistrement en cours de
modification par XX"

A+
Adrien



bonsoir

voici les 2 fonctions que j'utilise.
je pense qu'elles sont "auto-compréhensibles".
pour d'autres infos, tu peux me contacter en direct

titou44 (marreduspam) @freesurf.fr

/// à mettre avant tout hajoute ou hmodifie
/// on donne : nom du ficher, numero du record, nom du user
/// peut être appelé quand on clique sur le bouton.
/// attention à ne pas oublier le g_debloque en cas d'abandon

PROCEDURE g_bloque(p_fic,p_numenr,p_user)
LOCAL
l_ret est un booléen
l_tnumenr est une chaîne
l_nomfic est une chaîne
nIdFic est un entier
sMaChaîne est une chaîne

l_ret = Vrai
l_tnumenr = NumériqueVersChaine(p_numenr, "07d")
l_nomfic = fRepEnCours() + "" + p_fic + l_tnumenr + ".blo"

SI fRep(l_nomfic,frFichier)~="" ALORS
nIdFic = fOuvre(l_nomfic, foCréation+foLectureEcriture)
SI nIdFic=-1 ALORS
Info("erreur création fichier : " + l_nomfic)
l_ret = Faux
SINON
sMaChaîne = p_user
fEcritLigne(nIdFic, sMaChaîne)
fFerme(nIdFic)
FIN
SINON
nIdFic = fOuvre(l_nomfic, foLecture)
SI nIdFic=-1 ALORS
Info("erreur lecture fichier : " + l_nomfic)
l_ret = Faux
SINON
sMaChaîne = fLitLigne(nIdFic)
fFerme(nIdFic)
Info("Opération impossible: fiche en cours de modification par : " +
sMaChaîne)
l_ret = Faux
FIN
FIN

RENVOYER l_ret



// à appeler après le hajoute ou hmodifie

PROCEDURE g_debloque(p_fic,p_numenr)
LOCAL
l_ret est un booléen
l_tnumenr est une chaîne
l_nomfic est une chaîne
ResSuppression est une chaîne

l_ret = Vrai
l_tnumenr = NumériqueVersChaine(p_numenr, "07d")
l_nomfic = fRepEnCours() + "" + p_fic + l_tnumenr + ".blo"

ResSuppression = fSupprime(l_nomfic)
SI ResSuppression = Faux ALORS
Info("erreur suppression blocage : " + l_nomfic)
l_ret = Faux
FIN

RENVOYER l_ret



ai oublié la 3ème fonction :


PROCEDURE g_pasbloque(p_fic,p_numenr,p_texte="")
LOCAL
l_ret est un booléen
l_tnumenr est une chaîne
l_nomfic est une chaîne
nIdFic est un entier
sMaChaîne est une chaîne

l_tnumenr = NumériqueVersChaine(p_numenr, "07d")
l_nomfic = fRepEnCours() + "" + p_fic + l_tnumenr + ".blo"

SI fRep(l_nomfic,frFichier)~="" ALORS
l_ret = Vrai
SINON
nIdFic = fOuvre(l_nomfic, foLecture)
SI nIdFic=-1 ALORS
Info("erreur lecture fichier : " + lnomfic)
l_ret = Faux
SINON
sMaChaîne = fLitLigne(nIdFic)
fFerme(nIdFic)
Info("Opération impossible: fiche "+ p_texte + " en cours de
modification par : " + sMaChaîne)
l_ret = Faux
FIN
FIN

RENVOYER l_ret

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com