PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Copier puis supprimer un enregistrement d'un fichier vers un autre
Copier puis supprimer un enregistrement d'un fichier vers un autre
Débuté par spamst, 09 sep. 2004 15:45 - 3 réponses
Posté le 09 septembre 2004 - 15:45
Bonjour à tous,

Voici la situation :

Je saisis des données (texte et image) dans une fiche de saisie avec parcours.
Lorsque je coche une option dans un sélecteur, toutes mes données sont copiées sur fichier B vers le fichier A (texte et image).

La copie se fait correctement du Fichier B vers le Fichier A.

Une fois copié, l'enregistrement est censé se supprimer tout seul dans le Fichier B.
Le problème est qu'il ne supprime que l'image et laisse les autres champs remplis.

Comment faire pour que l'enregistrement dans son ensemble soit supprimé du Fichier B ?

Merci d'avance.
Posté le 09 septembre 2004 - 16:39
Bonjour,

Si tu détruis la fiche à partir de son identifiant unique, en mentionnant bien
les paramètres (nom du fichier, non de la clé) cela devrait bien fonctionner.

Pour être bien sûr, tu peux utiliser un HSauvePosition suivi d'un HRetourPosition

Dès lors il n'existe plus d'ambiguité entre les fiches de ton fichier B, et il n'y a pas
de décalage entre l'écran et le fichier ce qui est fréquent lorsque l'option Contexte Hyperfile Indépendant n'est pas coché.

Bien cordialement,

Jacques De Schryver
Posté le 09 septembre 2004 - 16:40
Bonjour,

Si tu détruis la fiche à partir de son identifiant unique, en mentionnant bien
les paramètres (nom du fichier, non de la clé) cela devrait bien fonctionner.

Pour être bien sûr, tu peux utiliser un HSauvePosition suivi d'un HRetourPosition

Dès lors il n'existe plus d'ambiguité entre les fiches de ton fichier B, et il n'y a pas
de décalage entre l'écran et le fichier ce qui est fréquent lorsque l'option Contexte
Hyperfile Indépendant n'est pas cochée dans le descriptif de la fenêtre.

Bien cordialement,

Jacques De Schryver
Posté le 09 septembre 2004 - 22:53
Bonsoir,

Merci beaucoup de votre réponse qui m'a été d'un grand secours.
Cependant, j'ai réussi à réinitialiser les champs, mais pas à supprimer réellement la fiche.

Voici le code que j'ai utilisé (Merci à Aurélien MACHABERT pour ce code) :

//Déclaration de variables
RecupID est un entier

//Récupération de l'IDAutomatique du fichier Mancoliste
RecupID=Mancoliste.IDMancoliste

//Copie du contenu des champs du fichier Mancoliste vers les mêmes champs du fichier Collection
Collection.NumCat=Mancoliste.NumCat
Collection.Année=Mancoliste.Annee
Collection.Dentelure=Mancoliste.Dentelure
Collection.Faciale=Mancoliste.Faciale
Collection.Designation=Mancoliste.Designation
Collection.Couleurs=Mancoliste.Couleurs
Collection.Pays=Mancoliste.Pays
Collection.Impression=Mancoliste.Impression
Collection.Varietes=Mancoliste.Varietes
Collection.Etat=Mancoliste.Etat
Collection.CoteNeuf=Mancoliste.CoteNeuf
Collection.CoteOblitere=Mancoliste.CoteOblitere
Collection.NbExemplaire=Mancoliste.NbExemplaire
Collection.Notes=Mancoliste.Notes
Collection.Serie=Mancoliste.Serie
Collection.NomSerie=Mancoliste.NomSerie
Collection.Image=Mancoliste.Image

//Vérification si la copie du fichier Mancoliste vers le fichier Collection est correct.
SI HAjoute(Collection) ALORS
HLitRecherchePremier(Mancoliste,IDMancoliste,RecupID)
SI PAS HTrouve(Mancoliste) ALORS
Erreur("La suppression de l'enregistrement est impossible. Veuillez le faire manuellement.")
SINON
HSupprime(Mancoliste,hNumEnrEnCours)
RAZ(Mancoliste)
SI PAS HSupprime(Mancoliste,hNumEnrEnCours) ALORS
Erreur("Le timbre n'a pas été supprimé. Veuillez le faire manuellement.")
SINON
Info("Le timbre a bien été copié de la Mancoliste vers la Collection, puis supprimé de la Mancoliste")
FIN
FIN
FIN


Merci d'avance pour votre aide.