PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → table mémoire
table mémoire
Débuté par riccinina, 23 sep. 2005 11:51 - 1 réponse
Posté le 23 septembre 2005 - 11:51
j'ai un problème
dans une fenêtre (list_depot)y'a une table qui va afficher les enregistrements d'une table dans la basa hyper file(ici depemp)
qu'on j'ajoute un nouveau enregistrement il est dupliqué dans la base je ne sais pas pourquoi

dans l'initialisation de la fenêtre je procède :


j est un entier
l est un entier
//pour remplir la table mémoire
l=1
code[1]="Code"
depot[1]="Depôt"
emplacement[1]="Emplacement"

HLit(DepEmp,1)
POUR j=1 A HNbEnr()

HLit(DepEmp,j)
SI(DepEmp.code="")=Faux ALORS
l++
code[l]=DepEmp.code
depot[l]=DepEmp.dep
emplacement[l]=DepEmp.emp


FIN

FIN





dans le bouton ajouter qui va me diriger vers une autre fenêtre de saisie:



j,m sont des entiers
existe est un booléen

existe=Faux
HLit(DepEmp,1)
m=HNbEnr()

POUR j=1 A m
HLit(DepEmp,j)
SI (DepEmp.code=code) ALORS
existe=Vrai
message="Ce depôt et emplacement existe deja, veuillez choisir un nouvel nom"
SORTIR
FIN
FIN

SI existe=Faux ALORS
DepEmp.code=code
DepEmp.dep=depot
DepEmp.emp=emplacement
HEcrit(DepEmp,HNbEnr()+1)
OuvreFille(list_depot)


FIN
Posté le 30 septembre 2005 - 16:25
Bonjour,

Je te conseille vivement d'utiliser une table fichier qui semble t'il correspondrait mieux à tes attentes.

Cependant si tu souhaites rester sur une table mémoire, utilises les ordres HRaz() HAjoute() etc...

Du style :

Hraz(DepEmp)
DepEmp.code=code
DepEmp.dep=depot
DepEmp.emp=emplacement
HAjoute(DepEmp)
SI HDoublon() ALORS
// ERREUR
FIN

...