FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV 2024
→
Erreur lors de la mise à jour d'une date
Erreur lors de la mise à jour d'une date
Débuté par NouveauDev, 12 déc. 2017 15:44 - 3 réponses
Connectez-vous…
NouveauDev
#1
Posté le 12 décembre 2017 - 15:44
Bonjour,
Au démarrage de mon application, j'ai plusieurs threads qui s'exécutent.
Une fois le traitement terminé d'un thread, il modifie la date de mise à jour à la date du jour.
Par exemple, le thread 1 : On vérifie dans la table BASE que DATE_THREAD1 est différente de la date du jour.
Si DATE_THREAD1 est identique à la date du jour alors on ne fait rien et on passe au thread suivant. Sinon on exécute le thread1 et on modifie la date thread1 à la date du jour.
Je met à jour comme cela : BASE.THREAD1=DateDuJour
Hmodifie(BASE)
Hferme(BASE)
Le souci est que mon traitement plante à chaque fois au moment de mettre à jour la date.
Je précise qu'aucun autre utilisateur ne navigue dans la base et n'utilise l'application.
Voici l'erreur :
Le mécanisme de sécurité assisté de l'application a été déclenché.
Modifications à valider dans le fichier <BASE>.
Vous ne savez pas quelle option choisir ? Cliquez sur OK.
Valeur des rubriques : DATE_THREAD1
lues à l'origine : 11/12/2017 07:37:56
Défini par un autre
utilisateur : 12/12/2017 15:11:49
Vous voulez écrire dans le fichier : 11/12/2017 07:37:56
Merci pour votre aide.
Signaler
0
0
Charly CANDO
#2
Membre enregistré
948 messages
Popularité : +30 (92 votes)
Posté le 12 décembre 2017 - 18:55
Coucou,
Je demande le 50/50 et du coup plus de detail sur ton thread, le code et la maniere ou les thread passe au suivant (comment tu lances tes thread aussi ? tu fait des copies de context ou du prend juste les info de connection ?
Si tu fait
SI PAS
HModifie
(
BASE
)
ALORS
Erreur
(
HErreurInfo
(
hErrComplet
)
)
FIN
Te renvoie quoi le message ?
--
In üs we trust - Joyeux noël
Message modifié, 12 décembre 2017 - 18:56
Signaler
0
0
NouveauDev
#3
Posté le 13 décembre 2017 - 08:01
Bonjour et merci pour votre réponse.
J'ai lancé l'exécution des threads dans La fin d'initialisation de ma fenêtre.
ThreadExécute("Thread1", threadNormal, ProcedureMAJ)
ThreadExécute("Thread2", threadNormal, MAJDONNES)
ThreadExécute("Thread3", threadNormal, MAJBDD)
Quand un utilisateur se connecte, je regarde dans BASE si la date de maj est égale à la date du jour. Si c'est le cas, le thread ne s'exécute pas sinon on l'exécute.
J'ai modifié la date de MAJ pour une des rubrique et j'ai mis le code
SI PAS HModifie(BASE) ALORS
Erreur(HErreurInfo(hErrComplet))
FIN
Tout s'est bien passé et tout se passe bien visiblement quand mes thread son exécutés un par un.
Je pense que le souci est que je modifie plusieurs rubrique à la fois dans le même fichier.
Signaler
0
0
NouveauDev
#4
Posté le 13 décembre 2017 - 09:15
Merci beaucoup pour votre aide.
J'ai mis mes 3 procédures dans un seul thread et je n'ai plus de souci.
Signaler
0
0
→ Revenir à WINDEV 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte