PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV (précédentes versions) → [WinDev 5.5] Création d'un fichier HF par programmation
[WinDev 5.5] Création d'un fichier HF par programmation
Débuté par Mathieu, 30 avr. 2004 16:30 - 8 réponses
Posté le 30 avril 2004 - 16:30
Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le nommerai
TMP. Ce fichier me sert pour un traitement.Ce traitement est tres souvent
appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide le
fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors sur la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un proposition
de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas :-)

Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance c'est quoi
le mieux?
Posté le 30 avril 2004 - 18:15
Bonsoir
Je suis peut être à coté de la question
Mais pourquoi ne pas faire un fichier texte sur le dd via les commande ini?
William

--
JoindreWilliam at hotmail.com
C'est mon adresse mail et chat :-)
"Mathieu" <mathieu65@free.fr> a écrit dans le message de
news:4092517a$1@news.pcsoft.fr...

Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le

nommerai
TMP. Ce fichier me sert pour un traitement.Ce traitement est tres souvent
appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide le
fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors sur

la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un

proposition
de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas :-)

Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance c'est

quoi
le mieux?


Posté le 03 mai 2004 - 16:10
Je vous relance pour trouver une solution...
Et pour réagir au mail précedent, Ma table TMP est en fait une vue
marterialisée, donc je ne prefere pas utiliser les .INI. mais merci de ta
participation et de ta réponse..

...... allez ;-)

"Mathieu" <mathieu65@free.fr> a écrit dans le message de news:
4092517a$1@news.pcsoft.fr...

Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le

nommerai
TMP. Ce fichier me sert pour un traitement.Ce traitement est tres souvent
appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide le
fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors sur

la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un

proposition
de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas :-)

Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance c'est

quoi
le mieux?


Posté le 03 mai 2004 - 17:58
Salut, moi je ferais un hcreation... qui cree le fichier s'il n'existe pas
ou qui le remet à 0...

cf l'aide de PCSoft sur hcreation :

" Si le fichier existait déjà : Si le fichier existait déjà (même nom, même
répertoire), ce fichier est re-créé : le fichier ne contient plus aucun
enregistrement. Les fichiers d'index et mémo (s'ils existent) sont aussi
re-créés. Dans ce cas, les contraintes d'intégrité ne sont pas testées.
Attention : la re-création du fichier n'est possible que si le fichier n'est
pas utilisé par une autre application. Si un fichier en cours d'utilisation
doit être vidé, utilisez la fonction HSupprime lors d'un parcours. "



En espérant avoir mis le doigt sur ton pb,

Greg


"Mathieu" <mathieu65@free.fr> a écrit dans le message de
news:4092517a$1@news.pcsoft.fr...

Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le

nommerai
TMP. Ce fichier me sert pour un traitement.Ce traitement est tres souvent
appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide le
fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors sur

la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un

proposition
de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas :-)

Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance c'est

quoi
le mieux?


Posté le 03 mai 2004 - 19:37
Bien j'utilise le hcréation....
Quand je l'utilise seul.. il plante tres souvent...
Quand je le fais préceder d'un Fsupprime ca plante mais moins!!!

Le plantage se fais lors de la céation. Soit du .FIC soit du .NDX
(aléatoirement)

J'aime pas quand c'est aléatoire moi!! lol

PS: c'est en WinDev 5.5
"Greg" <g.vaudel@bonilait-proteines.com> a écrit dans le message de news:
409652de@news.pcsoft.fr...

Salut, moi je ferais un hcreation... qui cree le fichier s'il n'existe pas
ou qui le remet à 0...

cf l'aide de PCSoft sur hcreation :

" Si le fichier existait déjà : Si le fichier existait déjà (même nom,

même
répertoire), ce fichier est re-créé : le fichier ne contient plus aucun
enregistrement. Les fichiers d'index et mémo (s'ils existent) sont aussi
re-créés. Dans ce cas, les contraintes d'intégrité ne sont pas testées.
Attention : la re-création du fichier n'est possible que si le fichier

n'est
> pas utilisé par une autre application. Si un fichier en cours
d'utilisation
doit être vidé, utilisez la fonction HSupprime lors d'un parcours. "



En espérant avoir mis le doigt sur ton pb,

Greg


"Mathieu" <mathieu65@free.fr> a écrit dans le message de
news:4092517a$1@news.pcsoft.fr...

Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le
nommerai

TMP. Ce fichier me sert pour un traitement.Ce traitement est tres

souvent
appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide le
fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors

sur
la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un
proposition

de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas

:-)

Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance c'est
quoi

le mieux?




Posté le 04 mai 2004 - 13:29
J'utilise souvent ce principe, en utilisant "hcreation", je n'ai pas de
problème sinon quelques précautions :
- Il faut faire un hferme avant le hcreation
- En multiusager, il faut verifier que personne d'autre ne l'utilise (tenter
un hbloquefichier pour voir)

"Mathieu" <mathieu65@free.fr> a écrit dans le message de news:
4092517a$1@news.pcsoft.fr...

Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le

nommerai
TMP. Ce fichier me sert pour un traitement.Ce traitement est tres souvent
appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide le
fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors sur

la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un

proposition
de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas :-)

Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance c'est

quoi
le mieux?


Posté le 04 mai 2004 - 13:55
Ok, normalement c'est pas multi utilisateur, mais je vais tester tout de
meme le hbloque fichier. J'avais pris la precaution du hferme. Merci, je
vous tiens au courant...

Mathieu

"Gérard" <_no_spam_aurilog@wanadoo.fr> a écrit dans le message de news:
4097667f$1@news.pcsoft.fr...

J'utilise souvent ce principe, en utilisant "hcreation", je n'ai pas de
problème sinon quelques précautions :
- Il faut faire un hferme avant le hcreation
- En multiusager, il faut verifier que personne d'autre ne l'utilise

(tenter
un hbloquefichier pour voir)

"Mathieu" <mathieu65@free.fr> a écrit dans le message de news:
4092517a$1@news.pcsoft.fr...

Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le
nommerai

TMP. Ce fichier me sert pour un traitement.Ce traitement est tres

souvent
appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide le
fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors

sur
la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un
proposition

de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas

:-)

Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance c'est
quoi

le mieux?




Posté le 05 mai 2004 - 16:00
Vous parler de fichier "temporaire" donc non déclaré dans votre analyse ?


dans ce cas votre problème est probablement du a une erreur de programmation
( une rubrique incorrecte dans la description de votre fichier ? )
Voir éventuellement si pas de composant du fichier en lecture seule

"Mathieu" <mathieu65@free.fr> wrote:

Bien j'utilise le hcréation....
Quand je l'utilise seul.. il plante tres souvent...
Quand je le fais préceder d'un Fsupprime ca plante mais moins!!!

Le plantage se fais lors de la céation. Soit du .FIC soit du .NDX
(aléatoirement)

J'aime pas quand c'est aléatoire moi!! lol

PS: c'est en WinDev 5.5
"Greg" <g.vaudel@bonilait-proteines.com> a écrit dans le message de news:
409652de@news.pcsoft.fr...

Salut, moi je ferais un hcreation... qui cree le fichier s'il n'existe

pas
ou qui le remet à 0...

cf l'aide de PCSoft sur hcreation :

" Si le fichier existait déjà : Si le fichier existait déjà (même nom,
même

répertoire), ce fichier est re-créé : le fichier ne contient plus aucun
enregistrement. Les fichiers d'index et mémo (s'ils existent) sont aussi
re-créés. Dans ce cas, les contraintes d'intégrité ne sont pas testées.
Attention : la re-création du fichier n'est possible que si le fichier
n'est

pas utilisé par une autre application. Si un fichier en cours
d'utilisation

doit être vidé, utilisez la fonction HSupprime lors d'un parcours. "



En espérant avoir mis le doigt sur ton pb,

Greg


"Mathieu" <mathieu65@free.fr> a écrit dans le message de
news:4092517a$1@news.pcsoft.fr...

Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le
nommerai

TMP. Ce fichier me sert pour un traitement.Ce traitement est tres
souvent

appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide

le
fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors
sur

la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un
proposition

de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas
:-)


Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance c'est
quoi

le mieux?






Posté le 06 mai 2004 - 11:17
J'ai pas trop bien compris cette explication.
Mais mon fichier TMP (vue materialiser) figure bien dans l'analyse.

Mathieu

"Robor" <Robor@wanadoo.fr> a écrit dans le message de news:
4098d855@news.pcsoft.fr...


Vous parler de fichier "temporaire" donc non déclaré dans votre analyse ?


dans ce cas votre problème est probablement du a une erreur de

programmation
( une rubrique incorrecte dans la description de votre fichier ? )
Voir éventuellement si pas de composant du fichier en lecture seule

"Mathieu" <mathieu65@free.fr> wrote:

Bien j'utilise le hcréation....
Quand je l'utilise seul.. il plante tres souvent...
Quand je le fais préceder d'un Fsupprime ca plante mais moins!!!

Le plantage se fais lors de la céation. Soit du .FIC soit du .NDX
(aléatoirement)

J'aime pas quand c'est aléatoire moi!! lol

PS: c'est en WinDev 5.5
"Greg" <g.vaudel@bonilait-proteines.com> a écrit dans le message de news:
409652de@news.pcsoft.fr...

Salut, moi je ferais un hcreation... qui cree le fichier s'il n'existe
pas

ou qui le remet à 0...

cf l'aide de PCSoft sur hcreation :

" Si le fichier existait déjà : Si le fichier existait déjà (même nom,
même

répertoire), ce fichier est re-créé : le fichier ne contient plus aucun
enregistrement. Les fichiers d'index et mémo (s'ils existent) sont

aussi
re-créés. Dans ce cas, les contraintes d'intégrité ne sont pas testées.
Attention : la re-création du fichier n'est possible que si le fichier
n'est

pas utilisé par une autre application. Si un fichier en cours
d'utilisation

doit être vidé, utilisez la fonction HSupprime lors d'un parcours. "



En espérant avoir mis le doigt sur ton pb,

Greg


"Mathieu" <mathieu65@free.fr> a écrit dans le message de
news:4092517a$1@news.pcsoft.fr...

Mon Probleme :
Dans un de mes programmes j'utilise un fichier HF temporaire. Je le
nommerai

TMP. Ce fichier me sert pour un traitement.Ce traitement est tres
souvent

appelé et est composé de 3 grandes lignes.
Initialisation à 0 du fichier TMP
MAJ du fichier TMP
Traitement du fichier TMP


C'est lors de la phase d'initialisation que j'ai un probleme. (vide
le

fichier TMP)
Pour moi, il existe plusieurs méthodes pour mettre le fichier vide:
-soit en l'effacent physiquement et en le recréant.(1)
-soit en supprimant les enregistrements à l'interieur.(2)
-d'autre peut etre à exploiter ? (3)

Dans le cas (1) j'obtiens une erreur sur la création du .NDX ou alors
sur

la
crétion du .FIC et parfois ca passe sasn probleme.
D'ou peut venir le probleme?

Dans le cas (2) le fichier été sujet à une erreur physique

Si des personnes ont d'autres solutions pour moi(3) ? ou meme un
proposition

de code source pour les cas (1) et (2) afin de voir ce qui ne vas pas
:-)


Merci d'avance, Mathieu

ps : vu que cette procedure est appelé fréquement, en prrformance

c'est
quoi
le mieux?