| |
Membre enregistré 5 messages |
|
Posté le 30 décembre 2019 - 16:21 |
Bonjour à vous tous,
Je débute sur WINDEV mobile avec la version 25. J’ai suivi le cours d’autoformation Android et regardé quelques exemples mais je ne trouve pas la solution et je m’arrache les cheveux depuis de nombreuses heures…
J’ai un problème d’initialisation d’une table basé sur une requête avec passage d’un paramètre, cette table est contenue dans une fenêtre. J’affecte une variable au paramètre. L’initialisation s’effectue correctement dans le simulateur GO, mais quand je génère l’application et la déploie sur mon téléphone Android. L’initialisation ne se fait pas. J’ai le même type de problème avec des zones répétées dans des fenêtres.
Pour comprendre et contourner la problématique, j’ai créé un bouton dans ma fenêtre, au click sur le bouton j’exécute un TableAffiche (…, taInit) et là ça fonctionne. La table affiche les bons enregistrements en lien la variable passé en paramètre. Si j’affecte une valeur directement au paramètre dans l’initialisation de ma table, ça marche. Mais pas si je lui affecte une variable, ça ne fonctionne pas sur le mobile.
Détail du code: Dans les déclarations globales de ma fenêtre : gnIDRéclamation=REQ_Reclamation_avec_société.IDRéclamation //récupére l’ID d’une réclamation
Dans la fin d’initialisation de ma fenêtre
FichierVersEcran() // me permet d’afficher les informations concernant la réclamation et j’arrive afficher ma variable gnIDRéclamation avec son contenu
Dans le code d’initialisation de ma table (Table_Proposition), j’ai mentionné MaSource.ParamIDRéclamation=gnIDRéclamation
J’espère que c’est suffisamment compréhensible.
D’avance merci pour votre aide. Yves |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 5 messages |
|
Posté le 03 janvier 2020 - 23:38 |
Information complémentaire importante: mon problème est lié aux champs table ( et non à une table). Désolé pour cette imprécision importante. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 347 messages Popularité : +93 (137 votes) |
|
Posté le 04 janvier 2020 - 09:02 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 5 messages |
|
Posté le 04 janvier 2020 - 11:13 |
Salut Popoy,
Un grand merci pour ta réponse. Je ne sais pas si tu as avais vu mon message complémentaire. En effet, j'ai omis une précision importante dans ma description c'est que j'ai un problème d'initialisation d'un champ table (et non d'une table) et de zone répétée. Désolé (PS: j'ai essayé de modifier mon sujet mais j'y arrive pas... raison pour laquelle j'ai rajouté un message). Je ne sais pas si tu as une autre idée pour m'aider. Je n'arrive pas ou je ne sais pas comment faire pour initialiser un champ table avec une variable globale... c'est comme s'il manque
J'ai beaucoup déclarer: Dans le code d’initialisation et/ou de fin d'initialisation de me mon champ table (Table_Proposition):
MaSource.ParamIDRéclamation=gnIDRéclamation Elle n'est pas prise en compte...Est-ce qu'il y a une autre commande à exécuter? dans le simulateur ça fonctionne bien mais pas sur l'appareil mobile.
D'avance merci pour ton aide. Yves |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 347 messages Popularité : +93 (137 votes) |
|
Posté le 05 janvier 2020 - 06:27 |
Excuse moi Yves, Mais ton champ table est normalement rempli avec les données de ta base de données. Si ton champ table est rempli en mode test et pas sur le mobile et tablette c'est que je pense que ta base n'est pas présente. Il faut donc commencer par vérifier cela avant tout le reste. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 5 messages |
|
Posté le 05 janvier 2020 - 21:22 |
Merci Popoy, j'ai pu avancer un bon bout. Je ne comprends pas pourquoi, mais le fait d'avoir changer le nom du package lors de la génération de l'application et contrôler tous les paramètres, ça à résolu beaucoup de problème. Maintenant mes champs tables sont initialisés avec les bonnes valeurs lors du premier appel de ma fenêtre, mais quand je rappelle ma fenêtre et que le contexte à changer, il me réaffiche les valeurs précédentes! L'initialisation du champ table ne se refait pas automatiquement...alors que si j'utilise le rafraichissement par tirer/relâcher avec ce code MaSource.ParamIDRéclamation=gnIDRéclamation TableAffiche(TABLE_Proposition, taCourantBandeau)
Cela fonctionne, il me réaffiche bien les bonnes valeurs. J'ai tenté de mettre ce même code dans l'initialisation de ma table, mais cela ne fonctionne pas.
Je ne comprends pas, mais je vais continuer à chercher. Merci pour ton aide. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 347 messages Popularité : +93 (137 votes) |
|
Posté le 06 janvier 2020 - 07:58 |
Le fait d'avoir changé le nom du package fait que tu as 2 versions de ton application sur le mobile. A l'initialisation de l'application ta base est initialisé Quand tu rappel ta fenêtre mais que celle-ci n'as pas été fermée Alors il ne fait que réafficher ta fenêtre Peut-être que la fonction utilise pourrait résoudre ton problème De plus , je ne vois pas de code d'exécution de requête La gestion des sources de données fonctionne bien en windev mais bug un peu sur windev mobile. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 5 messages |
|
Posté le 06 janvier 2020 - 21:08 |
Je suis heureux j'ai trouvé mon erreur, j'avais oublié dans le code de ma fenêtre contenant le champ table de rajouter TableAffiche(Table_, tainit) dans la zone de fin d'initialisation.
Maintenant tout est en ordre. Merci infiniment Popoy pour ton aide et ton support! |
| |
| |
| | | |
|
| | |