PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV Mobile 2025 → RPC, Analyse et fichier externe (.FIC)
RPC, Analyse et fichier externe (.FIC)
Iniciado por info, 16,nov. 2005 23:12 - 8 respuestas
Publicado el 16,noviembre 2005 - 23:12
Bonjour,
Nous avons créé une application pour une connexion à une base de données Access depuis un terminal mobile. Toute la partie RPC fonctionne, accès aux données etc...

Problème:

Nous avons un fichier de configuration en local sur le terminal (ParametresApplicationMobile.fic).
A l'initialisation du projet, nous lisons ce fichier qui contient les paramètre de la connexion, etc... Ce fichier est déclaré en externe avec HDéclareExterne(...). A ce stade cela fonctionne! (source de donnée déclarée en Global dans l'initialisation du projet).
Après lecture des infos de connexion nous effectuons un HouvreAnalyse(...) pour accéder à l'analyse distante sur notre serveur. La encore, la connexion se fait et nous pouvons accéder à nos données Access.

Si pour une raison ou une autre nous souhaitons effectuer une recherche, une lecture ou une écriture sur le fichier de configuration local (ParametresApplicationMobile.fic) nous obtenons une erreur, "Fichier <PAM> inconnu dans l'analyse <...monAnalyse...>, ou requête ou vue non initialisée."
Avant lecture sur ce fichier, nous avons à nouveau la fonction HDéclareExterne(ComplèteRep(fRepExe()) + "ParametresApplicationMobile.fic","PAM") pour nous assurer de lire le fichier local. Nous avons essayé toutes sortes de choses sans succès !!! :-(

La fonction HOuvreAnalyse empêche t elle tout accès à un fichier externe ???


Merci pour vos réponses et pour le temps passé...
Publicado el 16,noviembre 2005 - 10:56
En théorie, je crois que le problème vient de l'accès distant. Il semble que l'appli cherche le fichier sur le poste distant. Essayez la commande hgereaccesdistant(faux) avant de lire dans le fichier local. C'est peut etre çà ??
Publicado el 16,noviembre 2005 - 13:07
Salut

Ce fichier de paramétrage est-il si gros pour nécessiter une table ?
un simple fichier ini ne suffirait-il pas (utlisation des fonctions INIxxx),
en plus de facilité l'installation, la modification en dehors de l'appli

JP
Publicado el 17,noviembre 2005 - 01:03
Bonjour,

Effectivement, la fonction HChangeRep() ne génère pas d'erreur, c'est uniquement lors de l'accès (recherche/lecture/écriture/...) que nous avions (ou avons) ce problème.

A l'heure ou je lis ton message, nous avons déjà modifié le code pour utiliser des fichiers INI. Ce qui bien entendu fonctionne parfaitement...

Cependant, comme je l'ai précisé dans la réponse à J-P-B, nous allons revenir sur cette "mixité" du stockage des fichiers (local/distant) lors de l'utilisation de RPC.

Merci pour ta réponse, elle nous donne une nouvelle voie de recherche !!!
Publicado el 17,noviembre 2005 - 11:19
Je me permet d'intervenir dans ta reflexion, et te donner les conclusion de
nos démarches qui analysaient les mêmes besoins.
-Nous sommes apperçu que RPC était relativement legers, difficile à gerer
lors des pertes de communication.
-Nous nous ommes apperçu que les clients vouslaient trés vite sur leur PPC,
la même chose que sur leur PC, et là, les capacité du PPC, (vitesse,
memoire, ...) ne suivait pas, l'usage des SD apportait plus de pb que de
solutions, ...

Nous avons donc imaginé le PPC comme un outil d'affichage et de saisie
uniquement, et que les traitements lours, les acces disque, les impressions,
... se feraient sur un PC classique.
Les services WEB (serveur SOAP) répondaient parfaitement à ce besoin. on
communique entre le serveur et le PPC en mode "chaine" en WD9, et on passera
en XML en WD10.
Le multi base ne pose plus de problème, actuellement, chez un client, j'ai
des fichiers HF dans le PPC, des fichiers HF distants, et des fichiers en
C/S sur un AS400 sur la même appli.




"François Diss" <info@adsi.ch> a écrit dans le message de news:
437bc10c$1@news.pcsoft.fr...
Bonjour,
Non et c'est effectivement la solution adoptée et fonctionnelle que nous
avons mis en oeuvre dès hier soir après avoir posté ce message!!! Les
fonctions IniEcrit / IniLit que nous utilisions déjà en Windev sont
effectivement adaptées à ce type d'usage. Merci pour ta réponse qui nous
conforte dans notre choix.

Nous testons actuellement les différents moyens de communication offerts
pour les terminaux mobiles afin de pouvoir réopndre à nos clients lors
d'entretiens. Cette base HF en local sur le mobile était un bon test. De
plus nous souhaiterions néanmoins pouvoir utiliser une base locale HF si
des besoins de traitements / stockages plus importants sont nécessaires.
Je précise à nouveau que cela est tout à fait possible dans le cas d'une
connexion standard (non RPC) à diverses bases HF locales ou distantes
depuis les terminaux et que la fonction HChangeRep() est alors 100%
fonctionnelle.

Si nous trouvons une solution pour la mixité du stockage distant+local
avec RPC, nous ne maquerons pas de la communiquer.

Merci pour vos réponses. Bons Dev.


Publicado el 17,noviembre 2005 - 23:27
Merci Gérard pour tes informations,

Nous avons efectivement vu passer différents messages RPC vs SOAP avec des conclusions plus favorables pour SOAP. Notre démarche actuelle est une recherche de solutions diverses pour répondre à de multiples demandes ! Bien entendu nous mettrons en avant la meilleure... Nous n'avons pas encore testé SOAP mais nous attaquons ces jours à la communication Socket client mobile/serveur ! Voilà le programme pour ces prochains jours.

Merci encore pour vos témoignages qui nous sont forts utiles puisque nous "débutons" avec Windev (< 11 mois de devs et tests).

Cordialement.
Publicado el 17,noviembre 2005 - 23:56
Bonjour,
Non et c'est effectivement la solution adoptée et fonctionnelle que nous avons mis en oeuvre dès hier soir après avoir posté ce message!!! Les fonctions IniEcrit / IniLit que nous utilisions déjà en Windev sont effectivement adaptées à ce type d'usage. Merci pour ta réponse qui nous conforte dans notre choix.

Nous testons actuellement les différents moyens de communication offerts pour les terminaux mobiles afin de pouvoir réopndre à nos clients lors d'entretiens. Cette base HF en local sur le mobile était un bon test. De plus nous souhaiterions néanmoins pouvoir utiliser une base locale HF si des besoins de traitements / stockages plus importants sont nécessaires. Je précise à nouveau que cela est tout à fait possible dans le cas d'une connexion standard (non RPC) à diverses bases HF locales ou distantes depuis les terminaux et que la fonction HChangeRep() est alors 100% fonctionnelle.

Si nous trouvons une solution pour la mixité du stockage distant+local avec RPC, nous ne maquerons pas de la communiquer.

Merci pour vos réponses. Bons Dev.
Publicado el 18,noviembre 2005 - 13:54
J'ai eu le même problème mais j'ai persisté sur le RPC. Dans ma config, j'ai une appli cliente qui utilise des bases SQL sur un serveur. J'ai développé une autre appli toute simple qui tourne sur un poste client. Cette appli se contente de lire dans deux fichiers HF (pda.fic) et sql.fic. Toutes les trente secondes, l'appli rapatrie des bases sql les enregistrements non "flagués" et met à jour le fichier sql.fic
Elle récupère aussi dans les fichiers HF tous les enregistrements non flagués.

Le but est que chaque fois qu'un pda se connecte sur ce poste, il récupère dans le fichier sql.fic les enregistrements qu'il n'a pas et ensuite déverse dans le fichier sql les enregistrements du pda qui n'existent pas dans les bases sql.

Un thread s'occupe de synchroniser les tables sql et les fichiers HF.

pour l'instant, ca fonctionne bien

A+
Publicado el 21,noviembre 2005 - 23:33
Merci Xeon pour tes informations...

Le problème que nous rencontrons pour bon nombre d'entre nous, c'est l'intégration des PDA dans le système d'information existant ! Tout est possible encore faut il trouver la meilleure solution !

Cordialement.

A+++