Page 1 sur 3

Concaténer les champs 2 à 2 dans une colonne catégoriser

MessagePublié: 18 Jan 2011 à 11:13
par cyril08
Est ce que je peux concatener egalement comme ceci :
jai X et Y deux champs disctinct mais qui existent toujours ensemble
jai U et V deux champs disctinct mais qui existent toujours ensemble

tmpList := X + Y : U + V;
@trim(tmpList)

J'ai fait le test cela ne fonctionne pas. Y-a t-il une autre notation?

MessagePublié: 18 Jan 2011 à 11:16
par Michael DELIQUE

MessagePublié: 18 Jan 2011 à 13:59
par cyril08
merci pour les tuto ils sont très interessant

j'ai fait :
Code : Tout sélectionner
tmpList1 := ARRET : ARRET_1: ARRET_1_1;
tmpList2 := NUM : NUM_1 : NUM_1_1;
tmpList3 := tmpList1*+tmpList2;
@Trim(tmpList1:tmpList2)[/img]


mais j'ai une erreur "données numériques requises pour l'operateur"

MessagePublié: 18 Jan 2011 à 14:28
par Steph_
s'il te demande du text, donne lui du text

tmpList1 := @Text(ARRET) : @text(ARRET_1) : @Text(ARRET_1_1);
tmpList2 := @Text(NUM) : @text(NUM_1) : @Text(NUM_1_1);

MessagePublié: 18 Jan 2011 à 15:23
par cyril08
Steph_ a écrit:s'il te demande du text, donne lui du text

tmpList1 := @Text(ARRET) : @text(ARRET_1) : @Text(ARRET_1_1);
tmpList2 := @Text(NUM) : @text(NUM_1) : @Text(NUM_1_1);


j'avais essayer mais il me concaténe mes champs séparemment au lieu de 2 à 2 pour la catégorisation

si ARRET existe NUM existe
si ARRET_1 existe NUM_1 existe
si ARRET_1_1 existe NUM_1_1 existe



Code : Tout sélectionner
tmpList1 := @Text(ARRET) : @Text(ARRET_1) : @Text(ARRET_1_1);
tmpList2 := @Text(NUM) : @Text(NUM_1) : @Text(NUM_1_1);
tmpList3 := tmpList *+ tmpList2;
@Trim(tmpList3)


j'ai suivi ce lien :
http://forum.dominoarea.org/mixer-2-listes-t16556.html

MessagePublié: 18 Jan 2011 à 15:26
par cyril08
cyril08 a écrit:
Steph_ a écrit:s'il te demande du text, donne lui du text

tmpList1 := @Text(ARRET) : @text(ARRET_1) : @Text(ARRET_1_1);
tmpList2 := @Text(NUM) : @text(NUM_1) : @Text(NUM_1_1);


j'avais essayer mais il me concaténe mes champs séparemment au lieu de 2 à 2 pour la catégorisation

si ARRET existe NUM existe
si ARRET_1 existe NUM_1 existe
si ARRET_1_1 existe NUM_1_1 existe



Code : Tout sélectionner
tmpList1 := @Text(ARRET) : @Text(ARRET_1) : @Text(ARRET_1_1);
tmpList2 := @Text(NUM) : @Text(NUM_1) : @Text(NUM_1_1);
tmpList3 := tmpList *+ tmpList2;
@Trim(tmpList3)


j'ai suivi ce lien :
http://forum.dominoarea.org/mixer-2-listes-t16556.html



il me concaténe toutes les combinaisons possibles :
ARRET avec NUM
ARRET avec NUM_1
ARRET avec NUM_1_1
......

MessagePublié: 18 Jan 2011 à 15:30
par cyril08
c'est bon j'ai résolu dsl

ce n'est *+ mais + uniquement

MessagePublié: 27 Jan 2011 à 18:43
par cyril08
j'ai une premiere colonne concaténer catégorisable :
Code : Tout sélectionner
tmpList := SE_10 : SE_10_1;
@trim(tmpList)


A la suite de ma 1ére colonne, j'ai une seconde colonne concaténer catégorisable :
Code : Tout sélectionner
tmpList1:=@Text(SE_10) : @Text(SE_10_1);
tmpList2:=@Text(SE3_1) : @Text(SE3_1_1);
tmpList3:=@Text(SE4_1) : @Text(SE4_1_1);
tmpList4:=tmpList1 + tmpList2+ tmpList3;
@Trim(tmpList4)


Le probléme est il m'effectue toutes les solutions possibles :

colonne 1:
SE_10
colonne2:
SE_10+SE3_1+SE4_1 &
SE_10_1+SE3_1_1+SE4_1_1
......

et non juste
colonne 1:
SE_10
colonne2:
SE_10+SE3_1+SE4_1


Je comprend pas, c'est le meme cas que précedemment a part que ici c'est dans ma 2éme colonne.

??

MessagePublié: 27 Jan 2011 à 23:17
par roubech
si tu veux juste une valeur, pourquoi tu concatène 2 valeurs pour constituer une liste ?

si dans une colonne catégorisée, tu mets une liste de 2 valeurs, ton doc apparaitra 2 fois dans la vue, une pour chaque valeur. Et dans les autres colonnes, tu ne pourra pas différencier le contenu en fonction des différentes valeurs de la colonne catégorisée

MessagePublié: 27 Jan 2011 à 23:35
par cyril08
Il ne faut pas que je concatene des ma première colonne alors?
Je mets juste des |.

MessagePublié: 28 Jan 2011 à 09:23
par cyril08
Sachant que j'ai 10 lignes de 3 champs. Pour faciliter ma question je la pause que pour 2 lignes.
Dans ma premiére colonne je catégorise
Code : Tout sélectionner
@If(!SE_10="";@Text(SE_10);"");
@If(!SE_10_1="";@Text(SE_10_1);"")


Ma seconde colonne doit m'afficher par exemple si SE_10 vaut qqchose automatiquement SE_10+SE3_1+SE4_1
Code : Tout sélectionner
@If(!SE_10="";@Text(SE_10+SE3_1+SE4_1);"");
@If(!SE_10_1="";@Text(SE_10_1+SE3_1_1+SE4_1_1);"")


le soucis est que il m'affiche uniquement la derniere ligne possédant une valeur ; dans mon exemple :
1ere colonne : SE_10_1
2émé colonne : SE_10_1+SE3_1_1+SE4_1_1

je cherche a savoir si je passe par une programmation du tableau :
j'appelle mon tableau tbx
mes lignes L1,L2.....

Comment puis je faire pour programmer
ex : L1 : SE_10+SE3_1+SE4_1
L2 : SE_10_1+SE3_1_1+SE4_1_1


lorsque l'on programme le tableau situé dans un masque ; les formules entrées dans une vue peuvent etre reconnu directement ?

MessagePublié: 28 Jan 2011 à 10:10
par Michel Nico
le soucis est que il m'affiche uniquement la derniere ligne possédant une valeur ; dans mon exemple

C'est parce que c'est ce que tu lui demande de faire :
pour ta première formule tu lui demande de faire :
valeur colonne = @If(!SE_10="";@Text(SE_10);"");
valeur colonne = @If(!SE_10_1="";@Text(SE_10_1);"")
ta première ligne ne sert à rien puisque c'est écrasé par la deuxième ligne (pareil pour la deuxième formule).

essaye ça :
@If(!SE_10="";@Text(SE_10);@text(SE_10_1))
cette formule te mets dans ta colonne SE_10 si SE_10 existe, SE_10_1 sinon (si SE_10 et SE_10_1 sont vide il te mettra vide)

MessagePublié: 28 Jan 2011 à 12:12
par cyril08
Ninoubdf a écrit:le soucis est que il m'affiche uniquement la derniere ligne possédant une valeur ; dans mon exemple

C'est parce que c'est ce que tu lui demande de faire :
pour ta première formule tu lui demande de faire :
valeur colonne = @If(!SE_10="";@Text(SE_10);"");
valeur colonne = @If(!SE_10_1="";@Text(SE_10_1);"")
ta première ligne ne sert à rien puisque c'est écrasé par la deuxième ligne (pareil pour la deuxième formule).

essaye ça :
@If(!SE_10="";@Text(SE_10);@text(SE_10_1))
cette formule te mets dans ta colonne SE_10 si SE_10 existe, SE_10_1 sinon (si SE_10 et SE_10_1 sont vide il te mettra vide)


je suis d'accord avec toi mais lorsque mon champ pour ton explication mais cela ne fonctionne pas non plus le sinon ne vas pas car si SE_10 et SE10_1_1 existe :
Code : Tout sélectionner
@If(!(SE_10="") ; @Text(SE_10);@Text(SE_10_1));
@If(!SE_10_1="";@Text(SE_10_1);@text(SE_10_2);
@If(!SE_10_2="";@Text(SE_10_2);@text(SE_10_3);
.....
jusque SE_10_9


il m'affiche toujours uniquement la derniere valeur.

Pour ma deuxiéme colonne (celle qui constitue ma sous catégories) ,
Si SE_10 existe alors SE_10+SE_3+SE_4
Si SE_10_1 existe alors SE_10_1+SE_3_1+SE_4_1
......
jusque SE_10_9

MessagePublié: 28 Jan 2011 à 12:19
par oguruma
à mons sens le plus simple il faut revoir la conception de ton masque et y ajouter cette combinaison de champs dans un champ caché

puis ensuite tu fais une mise à jour de tes documents "one shot" afin de valoriser ce nouveau champ et tu es tiré d'affaires

tu as même une formule qui te permets de réactualiser tous les champs d'un masque, je l'ai donné dans un des postes

quelques recherches....


ou le plus simple tu fais un LS qui se charge de la maj du document...


c'est juste un problème de conception de manque d"analyse du besoin qui te conduit à cela...

MessagePublié: 28 Jan 2011 à 12:21
par Michel Nico
" je suis d'accord avec toi mais lorsque mon champ pour ton explication mais cela ne fonctionne pas non plus le sinon ne vas pas car si SE_10 et SE10_1_1 existe : " : j'ai rien compris


"il m'affiche toujours uniquement la derniere valeur. " : c'est parce que c'est la même chose que précédement :
tu lui demande colonne = @If(!(SE_10="") ; colonne = @Text(SE_10);@Text(SE_10_1));
colonne = @If(!SE_10_1="";@Text(SE_10_1);@text(SE_10_2);
colonne = @If(!SE_10_2="";@Text(SE_10_2);@text(SE_10_3);
.....
colonne = jusque SE_10_9
FORCEMENT a la fin il te fait uniquement ta dernière opération parce que c'est ce que tu demande!