Funzione a cui fare riferimentoSto inserendo due caselle in una casella di riepilogo H. Il primo è un rapporto da una tabella. Quella tabella può avere un numero variabile di righe a seconda di ciò che accade in precedenza nello script, ma ha sempre lo stesso numero di colonne. La seconda casella che sto inserendo è una V List Box. Per ogni riga della tabella, desidero aggiungere una casella di pulsanti all'elenco V e che sia in grado di fare riferimento ai dati delle rispettive righe. cioè. Button Box 1 fa riferimento al valore nella riga 1, colonna 3, nella tabella nella casella di riepilogo H. Il mio problema è che non riesco a fare riferimento a quel valore, quando utilizzo un "ciclo for" per creare il numero di caselle di pulsanti pari al numero di righe nella tabella.So che sta cercando di fare riferimento alla cella con la riga = i alla fine del ciclo for, semplicemente non so come farlo per "salvare il valore di i" per ogni casella del pulsante. Il mio codice attuale è mostrato di seguito:
OutputTable = Current Data Table();
HList = H List Box( OutputTable << Get as Report() );
//Show(Column(OutputTable, 3)[1]);
SavingVlb = V List Box( Text Box( "Save to External Table" ) );
For( i = 1, i < N Rows( OutputTable ) + 1, i++,
BB = Button Box( "Save",
<<SETFUNCTION></SETFUNCTION>

Qualsiasi aiuto sarebbe molto apprezzato.
Automazione e scriptingRe: Funzione a cui fare riferimentoSi noti che quando viene eseguito lo script/funzione collegato al ButtonBox, non ha alcuna visualizzazione dell'ambito per il quale è stato creato.Ciò differisce da altri linguaggi di programmazione (come Python) che mantengono l'ambito per quando sono state create le funzioni.
In JSL, usa il file Eval( Eval Expr( ... Espr( var ) ... ) ) costrutto per pre-valutare alcune parti del codice.Ecco un esempio.
Inoltre, userei la funzione ColBox() per aggiungere i pulsanti poiché allineerà automaticamente tutte le celle:
OutputTable = Current Data Table();
HList = H List Box( OutputTable << Get as Report() );
//Show(Column(OutputTable, 3)[1]);
SavingVlb = V List Box( Text Box( "Save to External Table" ) );
col box = Col Box( "" );
hlist[Table Box( 1 )] << Append( col box );
For( i = 1, i < N Rows( OutputTable ) + 1, i++,
Eval( Eval Expr(
BB = Button Box( "Save",
<<SETFUNCTION></SETFUNCTION>