PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV Mobile 2024 → Automatisme d'une procédure : comment l'arrêter ?
Automatisme d'une procédure : comment l'arrêter ?
Iniciado por Pascal BOULESTEIX, 05,oct. 2020 15:12 - 5 respuestas
Miembro registrado
964 mensajes
Popularité : +16 (20 votes)
Publicado el 05,octubre 2020 - 15:12
Bonjour
J'ai une fonction d'enregistrement dictaphone dans mon application.
Avec des boutons radios, l'utilisateur peut choisir une durée au delà de laquelle, l'enregistrement sera arrêté.
Pour cela, j'ai plusieurs procédures automatisées type "Timer/Procédure différée"+"Ignorer le timer et exécuter immédiatement la procédure"+différé de "00:00:xx:00"
Procedure MAGNETO_STOP_10()
BTN_MAGNETO..CouleurFond=gPROC_COLORIS("ROUGE")
BTN_MAGNETO..Couleur=gPROC_COLORIS_POLICE("ROUGE")
MagnetoAction(magnetoStop)
MAGNETO_SAVE()


Le déclenchement est lancé lors que l'utilisateur clique sur bouton "Enregistrer".
MAGNETO_STOP_10()
MagnetoAction(magnetoEnregistre,gsRepPhoto+[fSep()]+SAI_GUID_AUDIO)


Un utilisateur ayant choisi 2mn comme délai d'arrêt automatique peut souhaiter l'arrêt intentionnel de l'enregistrement avant la fin automatique programmée.

Pour cela, s'il clique sur bouton "enregistrer" qui est "passé" au rouge, je sais arrêter l'enregistrement,
MagnetoAction(magnetoStop)
BTN_MAGNETO..CouleurFond=gPROC_COLORIS("VERT")
BTN_MAGNETO..Couleur=gPROC_COLORIS_POLICE("VERT")


mais comment indiquer à la procédure automatiser de s'arrêter ?

Pascal
Miembro registrado
122 mensajes
Popularité : +5 (5 votes)
Publicado el 05,octubre 2020 - 16:11
Bonjour Pascal,

Je ne connais pas assez les procédures automatisée pour te répondre comment l'arrêter, mais une idée, au lieu de l'arrêter, est ce que tu ne pourrais pas créer une variable globale (booleen), qui contient "true/false" si l'enregistrement a déjà été effectué ou non et qui serai utilisé dans ta procédure automatique ?

Si la variable bEnrDejaEffectue = true alors ne pas executer le code à l'intérieur de la procédure automatique ?
Cette variable devant être remise à false à chaque lancement d'un nouvel enregistrement

Nicolas

--
Nicolas Gonot - 2exVia
Agence de communication multimédia depuis 1996
http://www.2exvia.com
Publicado el 05,octubre 2020 - 16:46
les procédures automatique sont prévues pour les cas simples.

Dés que ca devient un peu plus compliqué, on les oublie et on repart sur leur ancetre, l'utilisation des fonctions timerxxxx (on peut damrrer arreter changer, etc)
Publicado el 07,octubre 2020 - 12:28
Bonjour,

Voir FinAutomatismeProcedure(Fonnction)

Cordialement,

E. Rossi
Miembro registrado
964 mensajes
Popularité : +16 (20 votes)
Publicado el 08,octubre 2020 - 09:29
La piste semblait bonne.
Mais en lisant la doc la phase :
La procédure en cours d’exécution ira jusqu’à son terme. Seule la répétition sera stoppée.

a ruiné mes espoirs.
Je pars sur les bons vieux systimer
Publicado el 08,octubre 2020 - 11:21
Une variable glogale.
Exemple:
gbStopProcédure est un Booleen

Dans ta procédure, tu testes la valeur de cette variable.
Si elle est à vrai, tu forces la sortie puis tu forces la fin de ta
procédure.

Eric