PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WEBDEV 2024 → Clonage de champs... URGENT
Clonage de champs... URGENT
Started by Sylvie, Apr., 28 2017 8:30 AM - 1 reply
Posted on April, 28 2017 - 8:30 AM
Bonjour,

Je dois cloner une colonne de table. Le clonage créer correctement l'entête mais les colonnes des lignes suivantes sont décalées par rapport à l'entête...

// Table toute bête, avec une colonne conteneur à dupliquer x fois.
POUR i= 1 _A_ nColonne
ChampClone(TABLE_Previsionnelle.COL_VALENTIN,"col_int_"+i)
{"TABLE_Previsionnelle.col_int_"+i}..Visible = Vrai // (masquée par défaut)
{"TABLE_Previsionnelle.col_int_"+i}..Titre = taInfo[i]
FIN

Merci pour votre aide
Posted on April, 28 2017 - 11:07 AM
Sylvie avait énoncé :
Bonjour,

Je dois cloner une colonne de table. Le clonage créer correctement l'entête
mais les colonnes des lignes suivantes sont décalées par rapport à
l'entête...

// Table toute bête, avec une colonne conteneur à dupliquer x fois.
POUR i= 1 _A_ nColonne
ChampClone(TABLE_Previsionnelle.COL_VALENTIN,"col_int_"+i)
{"TABLE_Previsionnelle.col_int_"+i}..Visible = Vrai // (masquée par défaut)
{"TABLE_Previsionnelle.col_int_"+i}..Titre = taInfo[i]
FIN

Merci pour votre aide


Bonjour,

Bon ça c'est un truc qu'on fait beaucoup mais faut savoir certaines
choses. On a notamment un générateur d'état et de tableaux qui est basé
là dessus

- Il faut avoir des champs à cloner dans ta table
Par exemple on a un champNum et un champAlpha et on clone selon le
besoin

wnomcol="TABLEXLS.COLONNE"+i
SI ChampExiste(wnomcol) = Vrai ALORS
ChampSupprime(wnomcol)
FIN
ChampClone(TABLEXLS.CHAMPNUM,wnomcol)
{wnomcol,indChamp}..Libellé={"LIBCOL"+i,indChamp}


- ces champs doivent être visibles avant d'être clonés. C'est après que
l'on masque les champs modèles (très important)

- et enfin faire AVEC un bug qui n'est pas corrigé par Pcsoft depuis la
21. Du coup je croyais que nous étions les seuls à utiliser ces
champsclone de table.

Je te conseille de bien intégrer ce qui suit ...

Vous risquez d'avoir un message de plantage sur le fait que votre
champs modèle du clone n'est pas un champ dynamique (ce qui n'est pas
vrai).
Il suffit de compiler et hop cette fausse erreur disparait.
Donc pas grave (pourquoi il rale encore celui là)

Ben si, si vous êtes plusieurs sur la projet (avec le gds je suppose),
si vous refaites une prod alors que vous n'avez pas touché cette page
(mais sans doute qu'elle a évolué de la part d'un autre dev, ou sur un
autre poste même si vous l'avez bien recupéré du GDS), vous mettez une
version du site qui plantera sur ce problème.

Donc il faut systématiquement revenir sur la page en question, faire
une fausse modif et forcer la compil pour ne pas avoir de problèmes.
(chiant ! car des fois on oublie)