|
| Copier un fichier d'un site vers l'application en cours |
| Iniciado por Daniel19, 27,sep. 2019 10:43 - 6 respuestas |
| |
| | | |
|
| |
Miembro registrado 74 mensajes |
|
| Publicado el 27,septiembre 2019 - 10:43 |
Bonjour, Voilà mon petit problème : J'ai une appli qui doit aller chercher dans un répertoire précis d'un site web, un fichier et le recharger dans le répertoire de l'appli. Après mise à jour, le fichier doit être renvoyé dans le répertoire du site web.
J'ai essayé mais sans succès.
Pouvez-vous m'aider, voici le code que j'utilise pour récupérer le fichier :: SI HTTPRequête(gsUrlFic) ALORS gsTxtReq = HTTPDonneRésultat(httpRésultat) gnIdFic = fOuvre(gsnomfic,foCréation+foEcriture) SI gnIdFic <> -1 ALORS fEcritLigne(gnIdFic,gsTxtReq) fFerme(gnIdFic) FIN HRéindexe(FMembres) sinon Erreur("etc") fin
Merci ! |
| |
| |
| | | |
|
| | |
| |
| Publicado el 27,septiembre 2019 - 11:12 |
Bonjour,
Pour ma part, je serais passé par un FTPRécupère pour reprendre le fichier depuis le web. Et pour le renvoyer une fois modifié avec l'instruction FTPEnvoi... |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 953 mensajes |
|
| Publicado el 27,septiembre 2019 - 11:50 |
bonjour ,
votre code me laisse à penser que tentez de récupérer un fichier HyperFile ( un fichier .FIC ) et d'écrire à l'intérieur avec un fEcritLigne() ??
( c'est lorsque j'ai vu votre HReindexe() )
si c'est bien le cas, çà ne fonctionnera jamais.... on ne peu pas écrire dans un fichier .FIC avec des fecritligne() , le fichier possède une structure bien précise, il faut passer par des HAjoute() / HModifie() , HRAZ() etc...
Est-ce que vous êtes en HFSQL C/S ? ( j'ai l'impression que non )
En HFSQL Classic :
Soit vous supprimez votre fichier FIC et NDX avant, avec un fsupprime() pour le fic et NDX ( quid du MMO ? )
En HFSQL C/S :
Vous pouvez utiliser la fonction HSupprimeFichier()
Pour le résultat de votre HTTPDonneResultat() utilisez un buffer
_mon_buffer_HFSQL est un buffer= HTTPDonneRésultat(httpRésultat)
puis utilisez fSauveBuffer() pour sauvegarder tout cela vers le nom de votre fichier .FIC et ensuite, utilisez HReindexe()
bon dèv |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 74 mensajes |
|
| Publicado el 27,septiembre 2019 - 13:36 |
Bonjour et merci de vos réponses.
Gael je ne connais pas du tout ces fonctions ; je vais regarder...
Oui Christophe votre analyse est la bonne, bien vu ! Je suis en HFSQL Classic et je n'utilise pas de MMO. Malheureusement cela ne fonction pas : lors du HReindexe j'ai un message me précisant que le fichier n'est pas au format .FIC
Merci |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 74 mensajes |
|
| Publicado el 30,septiembre 2019 - 09:35 |
Bonjour !
Un petit up...
Merci et bonne journée. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 324 mensajes |
|
| Publicado el 30,septiembre 2019 - 12:53 |
HFerme(MonFichier.Fic)
SI httpRequête(gsUrlFic) ALORS sNomFic = c:\Monfichier.Fic fSauveTexte(sNomFic,HTTPDonneRésultat(httpRésultat)) FIN
HOuvre(MonFichier.Fic)
PS : Je vois que la réponse était donné au dessus. C'est vachement violent comme façon de faire, pourquoi ne pas utiliser un WebService REST pour mettre à jour la base !
Maintenant le seul moyen de garantir un bon dl du fichier, perso je partirais sur un wevservice rest qui envoie en binaire au client le fichier, mais si service rest il y a, alors autant lui demander d'écrire direct dans le fic, pas besoin de dl, je n'imagine pas le bordel pour dl le fic, le mmo et le ndx quand ca atteindre de forte taille :\.Mensaje modificado, 30,septiembre 2019 - 12:55 |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 74 mensajes |
|
| Publicado el 01,octubre 2019 - 08:48 |
Bonjour et merci ! Oui la réponse était au-dessus mais cela ne fonctionne pas. J'ai modifié ma façon de faire et j'utilise un fichier texte que j'importe dans mon .FIC et inversement ; là c'est ok. (la taille du fichier est extrêmement réduite) . Bonne journée. |
| |
| |
| | | |
|
| | | | |
| | |
|