PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Initialisation des fichiers
Initialisation des fichiers
Débuté par marcelf, 23 sep. 2004 07:48 - 9 réponses
Posté le 23 septembre 2004 - 07:48
Je me trouve devant un petit problème. je suppose qu'il doit exister une fonciton pour cela.
Lorsque je suis en mode création. Je trouve bizarre que des fois dans des champs que je n'emploie pas lors d ela craétion d'un nouvel enregistrement il me prend le contenu d'un enrgistrement précédent qu'en mode création j'ai beau mettre HRAZ(FICHIER) je ne parvien pas à initialiser les variables
Attention je n'affiche pas toute les variables (champs dans la fenetre) j'a un champ
nb_rappe et date_dernier_rappel .... donc lors de la création d'une nouvelle facture elle devrait être à 0 et "" pour la date , mais je me trouve avec les valeurs d'un enregistrement précédent.

Quelqu'unpeut m'aider
Merci
Posté le 23 septembre 2004 - 11:15
bonjour,

hraz() devrait marcher mais attention à ce qu'aucune opération de lecture ne
soit placée entre hraz()
et EranVersFichier()
Vous pouvez également initialiser explicitement les rubriques fichier non
exploitée dans la fenêtre

exemple:

EcranVersFichier()

Fic.Rub1=0
Fic.Rub2=""

Hajoute(Fic)

bon courage
JM



"Marcel Feiereisen" <marcelf@pt.lu> a écrit dans le message de
news:415246e0@news.pcsoft.fr...

Je me trouve devant un petit problème. je suppose qu'il doit exister une

fonciton pour cela.
> Lorsque je suis en mode création. Je trouve bizarre que des fois dans des
champs que je n'emploie pas lors d ela craétion d'un nouvel enregistrement
il me prend le contenu d'un enrgistrement précédent qu'en mode création j'ai
beau mettre HRAZ(FICHIER) je ne parvien pas à initialiser les variables
Attention je n'affiche pas toute les variables (champs dans la fenetre)

j'a un champ
> nb_rappe et date_dernier_rappel .... donc lors de la création d'une
nouvelle facture elle devrait être à 0 et "" pour la date , mais je me
trouve avec les valeurs d'un enregistrement précédent.

Quelqu'unpeut m'aider
Merci

Posté le 23 septembre 2004 - 11:40
Avec un HRaz() cela ne devrait pas arriver.
A moins que vous n'ayez une lecture d'enregistrement qui soit faite
apres le HRaz()

Marcel Feiereisen wrote:
Je me trouve devant un petit problème. je suppose qu'il doit exister une fonciton pour cela.
Lorsque je suis en mode création. Je trouve bizarre que des fois dans des champs que je n'emploie pas lors d ela craétion d'un nouvel enregistrement il me prend le contenu d'un enrgistrement précédent qu'en mode création j'ai beau mettre HRAZ(FICHIER) je ne parvien pas à initialiser les variables
Attention je n'affiche pas toute les variables (champs dans la fenetre) j'a un champ
nb_rappe et date_dernier_rappel .... donc lors de la création d'une nouvelle facture elle devrait être à 0 et "" pour la date , mais je me trouve avec les valeurs d'un enregistrement précédent.

Quelqu'unpeut m'aider
Merci

Posté le 23 septembre 2004 - 12:07
Bonjour

Attention, HRAZ(FICHIER) initialise une ou toutes les variables des
rubriques d'un fichier avec leurs valeurs par défaut (les valeurs par défaut
étant définies lors de la description du fichier sous l'éditeur d'analyses).
Alors que RAZ(Vrai) ré-initialise tous les champs de la fenêtre en cours.

Donc, au moment où tu ouvres une fenêtre pour créer ta nouvelle facture, il
faudrait que tu fasses RAZ(Vrai) pour que ton champ nb_rappe soit égal à 0
et ton champ date_dernier_rappel soit égal )à ""

A+

Val
Posté le 23 septembre 2004 - 12:16
deux possibilités :

tu fais un fichierversecran() entre le hajoute et le hraz.
tu relis dans ton fichier entre le hraz et le hajoute.

A+
Adrien
Posté le 23 septembre 2004 - 14:10
Non, j'ai n'ai absolument rien entre l'initialisation cela vient bien dans la prcedure
RADEFFACE je mets en début Hraz(lefichier)
et le pire c'est que je viens d evoir qu'il prend aussi un montant d'un champ ... que je n'ai plus employé depuis 2002, je m'explique j'ai repris une base de donnée de Windev 5.5 et convertit en Windev 7.5 ( pour le 8 ) il n'y a plus aucun lien avec mon ancienne base mais je suis obligé de tenir c'est champs pour les ancienne facture et il parvien à me mettre Facture.mnt = 2800 un ancien montant dnas un nouveau enregsitrement
Facture.mnteuro le bon montant...
pourtant je mets bien hraz(factures) et j'ai beau regarder dans la enêtre je n'ai aucune manipulation ou référence à facture.mnt si je dois initialiser tuot mes champs... j'en ai plus de 200 dont des tableaux... merci windev alors
Posté le 23 septembre 2004 - 17:08
Avez vous controlé que vous n'avez pas une valeur par défaut dans votre
fichier factures ?

Le comportement que vous avez me parait tres douteux. Je persiste a
croire qu'une lecture de votre fichier à lieux entre le moment ou vous
faites le hraz() et l'enregistrement de la fiche ( ou un ecranversfichier )

Essayez de tracer le projet par curiosité, et controlez également qu'un
trigger ne soit pas placé par hasard quelque part.


Marcel Feiereisen wrote:
Non, j'ai n'ai absolument rien entre l'initialisation cela vient bien dans la prcedure
RADEFFACE je mets en début Hraz(lefichier)
et le pire c'est que je viens d evoir qu'il prend aussi un montant d'un champ ... que je n'ai plus employé depuis 2002, je m'explique j'ai repris une base de donnée de Windev 5.5 et convertit en Windev 7.5 ( pour le 8 ) il n'y a plus aucun lien avec mon ancienne base mais je suis obligé de tenir c'est champs pour les ancienne facture et il parvien à me mettre Facture.mnt = 2800 un ancien montant dnas un nouveau enregsitrement
Facture.mnteuro le bon montant...
pourtant je mets bien hraz(factures) et j'ai beau regarder dans la enêtre je n'ai aucune manipulation ou référence à facture.mnt si je dois initialiser tuot mes champs... j'en ai plus de 200 dont des tableaux... merci windev alors

Posté le 25 septembre 2004 - 21:20
nom ma variable factures.mnt = 0 dans la table je n'ai pas de trigger et je n'ai pas d'emploi ecranversfichier ou autre.
J'ai eu le même probleme avec une variable MEMO il prenait la valeur d'un autre enregsitrement. Je suis vraiment emmerdé avec ce truc.
Posté le 27 septembre 2004 - 12:23
Il ne te reste plus qu'a 'tracer' ton code depuis le hRaz() ....
Tu verra bien à quel moment tes rubriques prennent des valeurs indésirables.
Pour commancer fait des trace() de tes rubriques, juste apres le hraz.

"Marcel Feiereisen" <marcelf@pt.lu> a écrit dans le message de news:
415246e0@news.pcsoft.fr...

Je me trouve devant un petit problème. je suppose qu'il doit exister une

fonciton pour cela.
> Lorsque je suis en mode création. Je trouve bizarre que des fois dans des
champs que je n'emploie pas lors d ela craétion d'un nouvel enregistrement
il me prend le contenu d'un enrgistrement précédent qu'en mode création j'ai
beau mettre HRAZ(FICHIER) je ne parvien pas à initialiser les variables
Attention je n'affiche pas toute les variables (champs dans la fenetre)

j'a un champ
> nb_rappe et date_dernier_rappel .... donc lors de la création d'une
nouvelle facture elle devrait être à 0 et "" pour la date , mais je me
trouve avec les valeurs d'un enregistrement précédent.

Quelqu'unpeut m'aider
Merci

Posté le 23 janvier 2006 - 16:24
Bonjour,

J'ai eu aussi ce pb (version 8.0 315j)
Voici une autre solution de contournement, rapide si on utilise un RAD fiche.
Choisir toutes les rubriques du fichier pour l'écran désiré.
Donc pour les champs que l'on a pas besoin dans une fenêtre, les déplacer
hors écran (en haut à gauche), attention pas d'ancrage pour ces champs.
Hraz(nomfichier)
Fichierversécran()
L'instruction fichierversécran tient compte de tous les champs de la fenêtre même si hors écran.

Bonne chance