GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEV
,
WEBDEV
e
WINDEV Mobile
Inicio
|
Mensagens recentes
|
Conecte-se...
|
Disconnect
|
Português
Inicio
→
WINDEV Mobile (versões anteriores)
→
Requêtes bloque sans erreur
Requêtes bloque sans erreur
Iniciado por Damien Cebrian, abr., 13 2018 3:40 PM - Sem resposta
Conecte-se…
Damien Cebrian
#1
Publicado em abril, 13 2018 - 3:40 PM
Bonjour,
Je développe une application qui s'utilise en mode Online ou Offline selon le besoin.
Pour cela tous mes fichiers de l'analyse sont en mode fichier classic et au besoin je change la connexion de certains pour que l'appli aille chercher les données sur mon serveur hfsql avec la commande hchangeconnexion.
Avant chaque requête je lance une procédure qui vérifie si l'appli est en mode "Online" et connecte les fichiers à la base client/serveur.
Voici son code :
Procedure
test_bdd
(
)
SI
gb
Arriere_plan
=
Faux
ALORS
//Si l'appli n'est pas en arrière plan
gb
Reconnexion_encours
=
Vrai
ecrit_log
(
"FUNC test_bdd START"
)
SI
gb
Mode_hors_ligne
=
Faux
ALORS
//Si l'appli est en mode "Online"
n
Try
est un entier
=
0
Multitâche
(
-
1
)
BOUCLE
(
10
)
SI
SocketExiste
(
"test"
)
ALORS
SocketFerme
(
"test"
)
SI
SocketConnecte
(
"test"
,
gn
PORT
,
gs
IPServeur
) =
Vrai
ALORS
//On test l'accès au port de la base
//SI InternetConnecté() = vrai alors
// Si on a récupéré internet on sors de la boucle
SORTIR
FIN
n
Try
+
+
ecrit_log
(
"Tentative de connexion "
+
n
Try
+
"/10"
)
Multitâche
(
-
1
)
SI
n
Try
=
10
ALORS
// Au bout de 10 essai on arrête de tester
ToastAffiche
(
"Connexion au serveur impossible"
)
ecrit_log
(
"FUNC test_bdd STOP ERR SOCKET"
)
gb
Reconnexion_encours
=
Faux
RENVOYER
Faux
FIN
Multitâche
(
-
400
)
FIN
connexion
est une chaîne
connexion
=
HListeConnexion
(
hLstOuvert
)
Multitâche
(
-
1
)
SI
ChaîneOccurrence
(
connexion
,
"Serveur"
) =
0
ALORS
//Si on a pas de connexion d'ouverte pour le serveur
Multitâche
(
-
1
)
HFermeConnexion
(
Serveur
)
//On ferme une connexion au cas ou
SI
HOuvreConnexion
(
Serveur
) =
Vrai
ALORS
Multitâche
(
-
1
)
HChangeConnexion
(
garage
,
Serveur
)
//Serveur est le nom de la connexion client/serveur dans l'analyse
...
HChangeConnexion
(
mp
,
Serveur
)
ecrit_log
(
"Après : "
+
HListeConnexion
(
hLstOuvert
)
)
ecrit_log
(
"FUNC test_bdd STOP OK"
)
gb
Reconnexion_encours
=
Faux
RENVOYER
Vrai
SINON
ToastAffiche
(
"Connexion au serveur impossible"
)
ecrit_log
(
"FUNC test_bdd STOP ERR - "
+
ErreurInfo
(
)
)
gb
Reconnexion_encours
=
Faux
RENVOYER
Faux
FIN
SINON
//Si on était co alors on lance un hreconnecte
SI
HReconnecte
(
) =
Faux
ALORS
ecrit_log
(
"RECO "
+
ErreurInfo
(
)
)
ecrit_log
(
"FUNC test_bdd STOP RECO"
)
gb
Reconnexion_encours
=
Faux
RENVOYER
Vrai
FIN
SINON
ecrit_log
(
"FUNC test_bdd STOP MODE HORSLIGNE"
)
gb
Reconnexion_encours
=
Faux
RENVOYER
Faux
FIN
FIN
CAS EXCEPTION
:
ecrit_log
(
"EXCEPTION test_bdd : "
+
ErreurInfo
(
errComplet
)
)
gb
Reconnexion_encours
=
Faux
Tout celà fonctionne bien sauf que, quand l'application reste longtemps inactive, la fonction test_bdd fonctionne bien et le hreconnect se lance sans erreur mais a la première requête lancée l'application fige et n'affiche même pas de message d'erreur comme quoi la requête n'a pas pu être initialisée.
Voici comment je lance mes requêtes
SI
HExécuteRequête
(
REQ_
SEL_BAN_ID
,
hRequêteDéfaut
) <
>
Faux
ALORS
//Mon traitement
SINON
Info
(
HErreurInfo
(
)
)
FIN
Est-ce que quelqu'un aurait une idée de pourquoi celà bloque ?
Denunciar
0
0
→ Voltar para WINDEV Mobile (versões anteriores)
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (versões anteriores)
WEBDEV (versões anteriores)
WINDEV Mobile (versões anteriores)
Reports & Queries
Off-topic
Ferramentas
Français
English
Español
Portuguesa
Fermer cette fenêtre
Tipo de Pesquisa
Apenas tópicos
Todas as mensagens
Período de pesquisa
Qualquer momento
Última hora
Últimas 24 horas
Semana passada
Mês passado
Ano passado
Cancelar
Pré-visualização da sua mensagem
Adicionar imagem
Importar uma imagem de uma URL
Enviar uma imagem a partir do seu disco
Deixe um ficheiro ou clique em "Procurar ..."
ou
Cancelar
0%
WLanguage
SQL
XML, HTML
JAVA, Javascript
Texto