Bonjour,
Je souhaite copier/dupliquer un en registre de mon fichier.L'affichage de ma table est alimenté par une requête.
je me suis appui sur cette discussion dans le forum.
[URL="https://www.developpez.net/forums/d1768921/environnements-developpement/windev/copier-coller-ligne-champs-table/[/URL]
Donc :
variable globale, gsXLigne est une chaine
Sélection de la ligne à copier :
Copie et enregistrement de la ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 // Sélection de l'enregistrement à dupliquer SI TABLE_REQ_SelectionProduit <> -1 ALORS gsXLigne = TABLE_REQ_SelectionProduit[TABLE_REQ_SelectionProduit] FIN //1 : &Dupliquer //2 : &Ne pas dupliquer SELON Dialogue("Voulez-vous dupliquer cet enregistrement ?") // &Dupliquer CAS 1 // Dupliquer l'enregistrement sélectionné DupliquerEnregistrement() // &Ne pas dupliquer CAS 2 RETOUR FIN
Tout fonctionne jusqu'à l'enregistrement : C'est le dernier enregistrement de mon fichier qui s'effectue avec la bonne référence modifiée mais pas la ligne sélectionnée au départ.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 PROCÉDURE DupliquerEnregistrement() // On regarde la ligne sélectionné SI gsXLigne <> "" ALORS HLitDernier(FProduits, Référence) // On récupère la partie numérique les 6 derniers caractères nReference est un entier = Droite(FProduits.Référence,6) // Puis tu concatène selon le format désiré en complétant par des 0 devant ton n° incrémenté FProduits.Référence = "ATR-" + NumériqueVersChaîne(nReference + 1,"06d") // Extraire la valeur suivante de la chaîne COL_Référence = FProduits.Référence Trace(COL_Référence) // pour coller avec insertion d'une nouvelle ligne HAjoute(FProduits) Trace(gsXLigne) SINON Info("Sélectionnez d'abord la ligne à dupliquer") FIN // Réafficher la table TableAffiche(FI_ListeProduits.TABLE_REQ_SelectionProduit,taCourantEnreg) // Se positionner sur le dernier enregistrement TableSelectPlus(TABLE_REQ_SelectionProduit, TableOccurrence(TABLE_REQ_SelectionProduit))
Merci de votre aide .
Partager