<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Sto usando JSL per impilare alcuni dati. Le colonne hanno proprietà Spec Limit, quindi sto usando JSL per impilare manualmente quei valori in una matrice da aggiungere anche ai dati. Il problema è che non riesco ad assegnare valori a una matrice senza definirla. E non posso definire dinamicamente una matrice. Forse mi manca qualcosa o ci sono altri trucchi con le matrici che qualcuno può suggerire.
dt0 è la tabella da cui sto operando
i_ncols è determinato dal numero di righe in un'altra tabella.
ls_colnames è l'elenco dei nomi di colonna che voglio impilare e viene generato utilizzando un'altra tabella
ld_targets è la matrice finale che desidero generare con questo ciclo
//ottenere obiettivi dalle proprietà della colonna
ld_targets = [](3, i_ncols);
For( i = 1, i <= i_ncols, i++,
For( j = 0, j <= 2, j++,
ld_specs = Column( dt0, ls_colnames[i_ncols * j + i] ) << Get Property( "Spec Limits" );
ld_targets[j + 1, i] = ld_specs["Target"];
)
);
questo si traduce in un errore di compilazione "numero intero previsto per numero di colonne" e non verrà nemmeno eseguito.
se non definisco la matrice (commenta la prima riga) ottengo l'errore di runtime "Niente da impostare in accesso o valutazione di 'Assign' , ld_targets[j + 1, i] = ld_specs["Target"]"
Eventuali suggerimenti?
grazie in anticipo
Erica
Wow, è stato davvero facile. Perché questo non è più chiaro nella Guida allo scripting?
Ora devo capire come inserire questa matrice in una tabella. Cerca un nuovo post su questa domanda.
H
Utilizzare Matrix() invece di [ ] quando si definisce una matrice con una variabile.
ld_target = matrice ( 3 , i_ncols ) ;