Question d'exécution et de localisation de fichier
Utilisateur WDF
Inscrit:
23/12/2002 13:25
De 34 (Hérault)
Post(s): 65
Bonjour,

Je fournis des tables avec le logiciel que je développe (par exemple la liste des codes postaux). Ces tables sont prises au format hyper file (*.FIC et *.NDX) du répertoire EXE, c'est-à-dire qu'ils ne sont inclus dans l'exécutable (car je ne les donne que la première fois).
Quand j'utilise en consultation les fichiers, pas de problème, ils sont accessibles. Mais quand je tente de faire un ajout de ligne, plantage, car l'application ne trouve pas le fichier.
Ma question est donc : comment est géré la localisation du fichier ?
Cela est-il renseigné dans le .FIC ou .NDX ? Où dois-je changer l'information du lieu du fichier ?

Merci d'avance pour vos réponses

Contribution le : 04/06/2003 12:09
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Anonyme
Bonjour,

Pour repondre a ta question, il y a 2 endroits ou on specifie la localisation des fichiers.

La premiere dans le projet lui meme :

1) Projet.
2) Description du projet
3) Fichier
4) 2 choix : repertoire courant ou un autre repertoire

choisis autre repertoire et selectionne le repertoire ou sont les fichiers.

La deuxieme c'est pendant la creation de l'executable tu choisis repertoire courant.

Donc logiquement ton executable et tes fichiers seront ensembles.

Voila avec ca tu devrais y arriver, bon courage.

a+++


Contribution le : 04/06/2003 17:09
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Utilisateur WDF
Inscrit:
23/12/2002 13:25
De 34 (Hérault)
Post(s): 65
Merci pour ta réponse. Je suis entiérement d'accord sur ces deux points mais je pense qu'il y a un autre endroit lié physiquement au fichier.

En effet, ces fichiers que je fournis sont placés au même endroit que les autres mais à priori ils n'ont pas le même comportement en création d'enregistrement ! Information complémentaire, l'exécutable est dans un autre répertoire.

En paralléle,j'ai ouvert un incident (en attente de réponse) auprès de PCSoft, donc je vous informerais du résultat.

@micalement,

Contribution le : 05/06/2003 12:46
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Anonyme
Bonjour,

Si ton exécutable se situe à un autre endroit je te conseille d'utiliser HCHANGEREP qui permet de changer de répertoire pour pouvoir accéder aux fichiers.

Essaye et tu me diras si ca fonctionne.

a+++

Contribution le : 05/06/2003 14:20
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Utilisateur WDF
Inscrit:
23/12/2002 13:25
De 34 (Hérault)
Post(s): 65
Tu as la même réponse que PCSoft ... voir l'utlisation de HCHANGEREP ou HCHANGENOM !

Actuellement, je n'utilise ni l'un ni l'autre. Comme je laisse l'utilisateur choisir l'emplacement de la base (donc des fichiers) et de l'exécutable, je prends "bêtement" ce que WinDev me donne.

Je vais tenter de reformuler la problème : tous les fichiers qui sont initialisés au premier lancement de l'application sont corrects tandis que ce qui sont issus d'un autre poste (celui de développement) tombent en erreur lors des tentatives de modification. Si l'accès se fait en lecture alors là pas de problème !

J'ai demandé à mon collégue qui a vu l'erreur de me fournir l'intitullé exact afin de l'étudier.

Je vous tiens au courant ... Merci d'avoir lu ce message

@+ pour d'autres nouvelles,
Bon développement,

Contribution le : 06/06/2003 22:29
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Anonyme
Bonjour,

Quel est justement l'intitulé de l'erreur pour que je regarde de mon cote.

Si l'utilisateur choisis les repertoires, memorises tu les repertoires quelque part ? de facon a toujours pointer dessus.

a+++

Contribution le : 09/06/2003 20:29
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Bonjour,
Désolé de prendre le fil en retard...

la gestion des relations entre les fichiers logiques (noms dans l'analyse) et les fichiers physiques (nom réels sur disques) est assurée par windev dans le fichier .REP.

Ce fichier est géré si la gestion du fichier rep est active (par défaut dans les projets).
Ce fichiers est situé (pour wd7x) à coté de l'exe, donc pour l'environnement fichiers de l'exe du poste.
Ce fichier permet de connaitre toutes les descriptions physiques des fichiers logiques.
Ainsi WDMODFic, lors d'une mise à jour de l'analyse utilise ce fichier pour répercuter les modifications dans tous les fichiers.
NB : WinDev est livré avec des outils annexes et entre autre WDoutil qui contient ce qu'il faut pour modifier/actualiser un .rep

Pour les localisations, effectivement : hChangeRep pour un fichier seul, sinon hSubstRep.


Pour info : pensez bien à toujours partir de votre exe et à travailler de préférence dans des sous répertoires (les droits sont hérités dans la plupart des systèmes).

merci de lire un peu notre guide sur les sources de données, il donne quelques éclairage sur la gestion des fichiers.

Bon courage.

Contribution le : 10/06/2003 15:36
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Utilisateur WDF
Inscrit:
23/12/2002 13:25
De 34 (Hérault)
Post(s): 65
Bonjour,

Je viens de lire ta réponse (j'étais absent quelques jours).
Je te remercie pour tes indications, je vais donc regarder du côté du .REP ...
En te remerciant encore pour ce conseil,

@micalement

Vianney

Contribution le : 16/06/2003 22:11
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Utilisateur WDF
Inscrit:
23/12/2002 13:25
De 34 (Hérault)
Post(s): 65
Je compléte le problème ...
Cela ne vient pas du fichier .REP ! Je m'explique.

PREMIREMENT :
Nous avons affiné le problème.
1) Nous installons la version serveur sur une machine, et nous indiquons le chemin des fichiers, par exemple, "C:\PROG_FICH" (ce répertoire est bien sûr partagé). Des fichiers de type paramètre sont installés lors de cette installation.
2) Nous installons une version client sur une première machine, en ayant fait un mappage réseau, par exemple V correspondant au "C:\PROG_FICH" du serveur.
3) Nous copions nos fichiers fournis au client (par exemple types de rue, codes postaux, pays) par biais d'un copier/coller.
3) Sur la première machine client, nous lançons l'application pour la première fois, tout fonctionne correctement, on accède en mise à jour aux fichiers fournis.
4) Nous installons une version client sur une deuxième machine, en ayant fait un mappage réseau, par exemple W correspondant au "C:\PROG_FICH" du serveur.
5) Sur la deuxième machine client, nous lançons l'application. Nous souhaitons mettre à jour par exemple le fichier des codes postaux. Et là, le système nous indique qu'il ne peut pas accéder au fichier sur le répertoire "V". Le problème se pose aussi sur les fichiers qui sont créés lors du premier lancement par un HCréationSiInexistant().

Donc y a-t-il une information sur le poste serveur (base de registre, fichier, .FIC, .NDX, journal de réplication, ...) indiquant que l'accès se fait avec un chemin donné ?

DEUXIEMEMENT:
COMPLEMENT ....

J'ai récupéré l'ensemble du répertoire où se trouve les fichiers (JNL compris) chez mon client. Je les ai mis dans mon répertoire EXE de mon projet (donc version de développement).

1) J'ai lancé tel quel ==> plantage
2) J'ai supprimé les JNL ==> plantage
3) J'ai supprimé le .REP ==> plantage

Le plantage se fait lors du premier accès en miseà jour. Les accès en lecture se passent bien ! Sur ma machine, le répertoire est "E:\Projets\Polygone\exe". Sur la machine de mon client, le répertoire mappé est "\\Client-serv\fich_polyfinal".

Donc dans le cas présent, je n'ai aucun élément qui aurait pu se mettre dans la base de registre (ou autres), je n'ai que les fichiers ... ce qui ne fait penser que des informations sur les accès sont inclus dans les fichiers .FIC ou .NDX

DESCRIPTIF DU PLANTAGE :
"Erreur à la ligne 12 du traitement Procédure globale Z_Enregistre_Connecter. Vous avez appelé la fonction HAjoute. Impossible de créer le répertoire <\\Client-serv\fich_polyfinal>.
Détail de l'erreur système :
Le chemin réseau n'a pas été trouvé.
(53)
**********************************************
Informations techniques
Projet : POLYGONE5
Dump de l'erreur du module <7.50Apo>.
- Appel WL :
Traitement de , ligne <12>, thread <0> Fonction , n° de syntaxe <1>
- Niveau : erreur fatale (EL_FATAL)
- Code erreur : 70003
- Code erreur WD55 : 3
- Code d'erreur système : 53
- Message d'erreur système :
Le chemin réseau n'a pas été trouvé.
- Que s'est-il passé ?
Impossible de créer le répertoire <\\Client-serv\fich_polyfinal>.
- Infos de debug :
iehf=65004
- Infos attachées :
EIT_SRCFILE : <\\Gefradis-serv\fich_polyfinal> EIT_LOGICALTABLENAME :
- Pas d'identifiant dans le .err"

TROISIEMEMENT :
NOUVEAU COMPLEMENT ....

En visionnant les fichiers par WDMap, pas de problème, je peux même extraire au format excel. Mais quand je veux mettre à jour une données, j'ai l'erreur :
" Le champ 'TableFichiers' n'a pas pu s'initialiser, car il a rencontré l'erreur hyper file suivante :
===================
Impossible de créer le répertoire <\\Gefradis-serv\fich_polyfinal>
===================
Détail de l'erreur système : le chemin réseau n'a pas été trouvé."

Et WDMap se ferme !

ET POUR FINIR :
Voilà ce que j'ai envoyé chez PCSoft ....
Si vous avez des idées je suis preneur car cela commence à me taper sur le système ! car bien sûr c'est urgent car le client entre en production dans une semaine ....

@micalement
Vianney

Contribution le : 21/06/2003 15:08
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
BOnjour,
A défaut de solution, voici comment je m'y prendrais :
le serveur mat à diposition de toutes les stations/utilisateurs le répertoire c:\prog_fich

Première install : sur première machine cliente.
ras : exe en local
premier lancement : AVANT initialisation de la base (hcreationsiinexistant), définir/évaluer le chemin des données et le stocker non seulement dans une globale mais aussi dans un fichier INI local (pour réutilisation ultérieure, lors des autres lancements).
On peut alors utiliser un fselrepertoire pour récupérer le chemin des données sur le serveur. on peut aussi utiliser les chemin UNC : //serveur/disque/repertoire/fichier.extension

Seconde install : idem avec localisation du chemin des données.

NB : il n'est pas formcement nécessaire de réaliser une connexion réseau mais une chose est sûre : il faut trouver le moyen de garder le fichier REP en local si vous utilisez autre chose que des chemin UNC et surtout des lettre différentes selons les stations.


Contribution le : 23/06/2003 12:03
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Utilisateur WDF
Inscrit:
23/12/2002 13:25
De 34 (Hérault)
Post(s): 65
Je te rejoins sur ta solution mais ce qui ne géne sont les points suivants :
* si dans l'installation réalisée par l'installateur PCSoft on a le choix de choisir le répertoire des fichiers où peut-on le récupérer et éventuellement le modifier ?
* si je prends les fichiers et que je les mets sur une machines n'ayant aucun lien avec la plateforme initiale. Pourquoi quand j'utilise le WDMap pour y faire une modification l'outil refuse en me spécifiant que je n'ai pas le bon chemin réseau ! Cela veut bien dire qu'une indication est enregistrée dans les fichiers !!!

Qu'en penses tu ?
J'attends une réponse de la part de PCSoft ....

@micalement
Vianney

Contribution le : 23/06/2003 12:21
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
*Pour le premier point, vu que le soft s'auto-suffit (auto config du chemin) on ne spécifie rien en instal. Il se croiera en local et son execution modifiera le chemin toute seule.
Merci cependant de voir où le .rep se place dans le cas contraire (si on spécifie un chemin initial). normalement il reste gentiment à coté de l'exe, c'est à dire en local.

* là (fichiers déplacés) je sèche à priori.
Tu copie les fichiers ailleurs et tentes de les modifier par wdmap et il refuse pour une raison réseau.
En accédant directement via ouvrir de wdmap ou pas double-clic ficher dans l'explorer ?
En effet, dans le premier cas, il monte l'analyse et valide ensuite sûrement le rep pour localiser les fichiers dispos. Je ne vois pas en quoi cela pose un pb réseau ?
Le 'pas le bon chemin réseau ' peux signifier une non concordance entre les données du .rep et le chemin courant pour le fichier ouvert, c'est tout ce que je vois.

Scannes ta BDR pour voir quelles sont les clés envoyées lors de l'install, si un chemin s'y trouve...

Désolé mais pas le tps de monter un projet pour tests complémentaires.

Contribution le : 23/06/2003 13:47
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Utilisateur WDF
Inscrit:
23/12/2002 13:25
De 34 (Hérault)
Post(s): 65
Enfin, j'ai la réponse à l'une de mes question .... Cela venait du fait que mes fichiers sont répliqués. Donc comme l'application voulait modifier une information, HF voulait mettre à jour la réplication. Donc en conclusion sur ce point, soit dans le FIC ou le NDX, il y a le chemin du fichier de réplication !

Pour information (dixit PCSoft), le .REP ne sert qu'uniquement lors des modifications de MPD, pour retrouver les fichiers à modifier. Donc en aucun cas lors de l'accès aux fichiers par l'applicatif.

Maintemant, il faut que je comprenne comment fonctionne l'installateur de WinDev ... et où je retrouve les différents chemins (exe et fichiers) afin de réaliser les HChangeRep et HChangeRepJNL adéquat !

Merci à tous pour les différents suggestions et réflexions qui sont arrivées par ce problème ...

@+
Vianney

Contribution le : 01/07/2003 15:20
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Une bonne nouvelle !
je suis curieu un jour de tomber sur le contenu réel des .FIC et particulièrement dur la partie descriptive du contenu, histoire de bien voir ce qu'il y a comme info d'analyse.

J'ai un petit doute sur l'affirmation relative à l'utilité 'limitée' du REP. Comment fait alors wdmodfic pour aller chercher tous les fichiers de l'analyse ouverte ?
C'est facile à tester lors d'une prochaine mise à jour...

Bon courage en tous cas.

Contribution le : 01/07/2003 15:36
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Question d'exécution et de localisation de fichier
Utilisateur WDF
Inscrit:
23/12/2002 13:25
De 34 (Hérault)
Post(s): 65
Bonsoir à tous,

Vous avez devant vous un homme heureuxxxxx. En effet, j'ai compris comment nous pouvions gérer les fichiers avec ce produit. OUF, enfin ... je viens de lire et surtout de mettre à jour les fichiers de mon client.
Je ne vais pas reprendre tout l'historique, il suffit de consulter au dessus, toutefois je voulais apporter la solution afin de faire avancer cette communauté windevienne !

Petit rappel tout de même je n'arrivais à mettre à jour les fichiers issus du serveur de mon client. Sur certains postes clients, en interne de mon client, la même punition était visible !
Après bien des discusions avec PCSoft, il m'a été dit que le problème venait que les fichiers étaient "réplicables" et qu'il fallait utiliser HChangeRep.

A partir de là, j'ai fait le HChangeRep sur l'ensemble des fichiers avec le répertoire de mon poste. Et là, patatraque, les mises à jour étaient toujours impossible. Donc retour dans la documentation, et je vois un HChangeRepJNL. Je m'empresse de rajouter l'instruction en renseignant le premier paramètre (qui s'occupe des fichiers JNL). Et là re-patatraque ! Encore un retour dans la documentation et je vois un deuxième paramètre qui concerne lui les fichiers Journaux. Donc je modifie mon instruction et là, le miracle, la magie (je ne sais pas), les modifications peuvent être opérées dans tous les fichiers.

Mais je n'étais toujours pas content de ma solution. En effet, comment savoir quel est l'emplacement des fichiers que le client choisit lors de l'installation ! Là encore, un petit génie m'est apparut ... Dans l'installateur, il est possible de créer un .INI et d'y inclure (l'ensemble des fichiers que l'utilisateur choisit au moment de l'installation).
Donc, retour dans mon code ... où la première fois, je récupére le .INI et mets l'information dans un fichier que je lis avant toute chose puis je fais les HChangeRep et JNL ...
Ce qui donne :
SI PAS HOuvre(Adm_Fichier,Password_Adm) ALORS
	HCréation(Adm_Fichier,Password_Adm)
	HOuvre(Adm_Fichier,Password_Adm)
	Adm_Fichier.Cle_Adm_Fichier="#####"
	Adm_Fichier.Nom_Repertoire_Fich=SansEspace(INILit("Fichier",...
	 "Emplacement", "0", fRepExe()+"\########.ini"))
	Adm_Fichier.Nom_Repertoire_JNL=SansEspace(INILit("Fichier",...
	 "Emplacement", "0", fRepExe()+"\########.ini"))
	Adm_Fichier.Nom_Repertoire_Journaux=SansEspace(INILit("Fichier",...
	 "Emplacement", "0", fRepExe()+"\########.ini"))
	Rep_Fich_Poly=SansEspace(Adm_Fichier.Nom_Repertoire_Fich)
	HAjoute(Adm_Fichier)
	fDelete(fRepExe()+"\########.ini")
SINON
	HLitRecherche(Adm_Fichier,Cle_Adm_Fichier,"#####")
	Rep_Fich_Poly=SansEspace(Adm_Fichier.Nom_Repertoire_Fich)
FIN
HChangeRep("*",Rep_Fich_Poly)
HChangeRepJnl("*",Rep_Fich_Poly,Rep_Fich_Poly)
HFerme(Adm_Fichier)


Et voilà le tour est joué !

@+ et bon développement,
Vianney

Contribution le : 04/07/2003 20:00
_________________
Cordialement
_______________________________________________

M. Vianney CAUDRON
Tél 06 10 69 33 91
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2