Je scinde une chaine '531.2/514.2' en fonction d'un separateur et j'affiche le resultat dans un élement liste
p_sep
voici le code
il m'affiche la derniere valeur c'est à dire '514.2' deux fois
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 For Cur In c_split('531.2/514.2',p_sep) Loop :global.compte := Cur.token; ch := 'select alj_cp_code||'' - ''|| alj_cp_lib,alj_cp_code from alj_compte where alj_cp_code=:global.compte'; if ( i = 0 ) then alj_compte where alj_cp_code=:global.compte'; v_result := ch; else alj_compte where alj_cp_code=:global.compte1'; v_result := v_result||' union all '||ch; end if; i := i+1; End Loop ; POPULATE_LIST_WITH_QUERY(ch_compte,v_result) ;
alors que quand je separe les variables
là ça marche correctement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 For Cur In c_split('476.12.04/531.2/514.2',p_sep) Loop if ( i = 0 ) then :global.compte := Cur.token; ch := 'select alj_cp_code||'' - ''|| alj_cp_lib,alj_cp_code from alj_compte where alj_cp_code=:global.compte'; v_result := ch; else :global.compte1 := Cur.token; ch := 'select alj_cp_code||'' - ''|| alj_cp_lib,alj_cp_code from alj_compte where alj_cp_code=:global.compte1'; v_result := v_result||' union all '||ch; end if; i := i+1; End Loop ; POPULATE_LIST_WITH_QUERY(ch_compte,v_result) ;
mon souci c'est que je ne voudrais pas declarer autant de variable que de compte dans ma chaine c'est à dire
Cur In c_split('A/B/C/D/E/F',p_sep) EQUIVAUT a declarer 6 variable.
Partager