PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WEBDEV 2024 → Probleme dans un tableau avec champ clone
Probleme dans un tableau avec champ clone
Débuté par Bechirmrad, 22 juin 2018 12:26 - 1 réponse
Membre enregistré
6 messages
Posté le 22 juin 2018 - 12:26
Bonjour ,
dés le début j'ai un tableau et quand je sélectionne une ligne !! un popup s'affiche avec un tableau rempli par champ clone
jusqu'a la tout est en marche !!
mais quand je ferme cet popup et je reviens au premier tableau et je sélectionne une autre ligne
il m'affiche un erreur (ce champ existe déjà) !!!
Posté le 26 juin 2018 - 09:07
Bechirmrad vient de nous annoncer :
Bonjour , dés le début j'ai un tableau et quand je sélectionne une ligne !!
un popup s'affiche avec un tableau rempli par champ clone
jusqu'a la tout est en marche !!
mais quand je ferme cet popup et je reviens au premier tableau et je
sélectionne une autre ligne il m'affiche un erreur (ce champ existe déjà) !!!

---
Cet email a fait l'objet d'une analyse antivirus par AVG.
http://www.avg.com


Bonjour,

il faut voir dans ton traitement à quel moment tu fais ton champClone
car si tu y repasses, cela va planter si le champs existe déjà.

Du coup tu dois écrire un truc du genre (ici des clones dans des
colonnes de table)

POUR nInd = nbColonnesTout A NbColonnesFixe PAS -1
ChampSupprime(TableEnumèreColonne(TAB_INSCRIT, nInd))
FIN

// On clone les nouvelles colonnespour i=1 a nb_quest
POUR i=1 A NB_QUEST
// On construit le nom de la nouvelle colonne
sNomNouvelleColonne = xchl_xml.QUESTIONS[i].COLQUEST
// On crée la nouvelle colonne par clonage
ChampClone(MODEL_COL, sNomNouvelleColonne)

// On modifie le libellé d’entête de la nouvelle colonne
{sNomNouvelleColonne, indChamp}..Libellé =
xchl_xml.QUESTIONS[i].HEADERQUEST
{sNomNouvelleColonne, indChamp}..Largeur=lgcol
FIN


ou alors pour un formulaire (ici je peux avoir 10 champs de saisie
paramétrés). Note le champsexiste

POUR i=1 A 10
wnz="RES_VAL"+NumériqueVersChaîne(i,"02d")
NumCol++;wlib=fSQL:mySQLCol(lCurReq,NumCol)
NumCol++;wuse=fSQL:mySQLCol(lCurReq,NumCol)
NumCol++;wsai=fSQL:mySQLCol(lCurReq,NumCol)
{"POD_SAI"+i,indChamp}=wsai // mémorise les type saisie pour ctrl
obligatoire
SI ChampExiste(wnz) = Vrai ALORS
ChampSupprime(wnz)
FIN
SELON wuse
CAS 1 // non utilisé
CONTINUER
CAS 2 // entier
posy+=25
ChampClone(NUM_ENTIER,wnz,posx,posy)
{wnz,indChamp}..Libellé=wlib
zoneRES_VAL+=wnz+","
CAS 3 // 2 chiffres apres la ,
posy+=25
ChampClone(NUM_DECIMAL,wnz,posx,posy)
{wnz,indChamp}..Libellé=wlib
zoneRES_VAL+=wnz+","
AUTRE CAS

FIN
SELON wsai
CAS 4 // Affich seulement
{wnz,indChamp}..Etat=AffichageSeulement
{wnz,indChamp}..CouleurFond=iGrisClair
AUTRE CAS

FIN
FIN