en formule, tu peux affecter la chaine de texte "mon texte" dans le champ "MonChamp" de 2 façons différentes :
[syntax="Formula"]FIELD MonChamp := "mon texte";[/syntax]
ou
[syntax="Formula"]@SetField( "MonChamp"; "mon texte" );[/syntax]
si la la valeur que tu veux affecter à ton champ dépend d'une condition, tu utilisera la première façon :
[syntax="Formula"]FIELD MonChamp := @If( MaCondition; "mon texte si vrai"; "mon texte si faux" );[/syntax]
Si au contraire, le champ que tu veux modifier dépend d'une condition, dans ce cas, tu utilisera la 2ème :
[syntax="Formula"]@if( MaCondition; @SetField( "MonChampVrai"; "mon texte" ); @SetField( "MonChampFaux"; "mon texte" ) );[/syntax]
Mais si j'ai bien compris ton contexte, ce que tu cherches à faire dans ton bouton, c'est changer la valeur de plusieurs champs. Pourquoi testes tu la valeur avant de la changer ? Dans ton bouton, tu décrémentes un champ qui te sert à stocker le nombre de lignes (et qui j'imagine te sert dans les formules de masquage)
[syntax="Formula"]FIELD nbLignes_2 := nbLignes_2 - 1;
FIELD secms1_1 := "";
FIELD chiffrecms1_1 := "";
FIELD matcms1_1 := "";
FIELD DI1_1 := "";
FIELD := ct2;[/syntax]
au passage, pour te simplifier la tache, décide d'une facon de nommer tes champs et respecte la jusqu'au bout
ligne 1 : il y a les champs secms1, chiffrecms1, matcms1, DI1 et ct1
ligne 2 : il y a les champs secms1_1, chiffrecms1_1, matcms1_1, DI1_1 et ct2
sur ta 1ère ligne tes champs n'ont pas d'indice
sur ta 2ème, il en ont sauf ct qui ne respecte pa la même façon
je serais plutôt parrti sur :
- Code : Tout sélectionner
ligne 1 : secms_1, chiffrecms_1, matcms_1, DI_1 et ct_1
ligne 2 : secms_2, chiffrecms_2, matcms_2, DI_2 et ct_2
Ainsi, si tu as plusieurs bouton, tu pourra mutualiser le code en changeant juste la première ligne avec la variable locale :
[syntax="Formula"]n := 2
FIELD nbLignes := nbLignes - 1;
@SetField("secms_" + n ; "" );
@SetField("chiffrecms_" + n ; "" );
@SetField("matcms_" + n ; "" );
@SetField("DI_" + n ; "" );
@SetField("CT_" + n ; "" );
[/syntax]