Come aggiungere etichette di valore a una colonna tramite JSLNella mia tabella principale (Tabella 1), ho una colonna chiamata "Contenitore" che contiene qualsiasi numero (corrispondente alle voci della colonna "Numero contenitore" su un'altra tabella che è la Tabella 2). Ora voglio assegnare etichette valore a questa colonna "Bin" tramite script. Le etichette dei valori proverrebbero dalla Tabella 2 con due colonne: "Numero contenitore" e "Descrizione".
Hard-coding qualcosa del genere
Column( dt, 1 ) << Add Column Properties( Value Labels( {"1" = "Cool", "2" = "Awesome", "3" = "Bad"} ), Use Value Labels( 1 ) );è abbastanza semplice. Tuttavia ho difficoltà a capire come creare l'espressione con le etichette dei valori dinamiche e formulate da ciò che c'è sull'altro tavolo. Nel codice precedente, "1, 2, 3,..." sono voci per "Numero contenitore" mentre "Cool, Awesome, Bad,..." sono voci per "Descrizione" dalla Tabella 2.
Apprezzo se puoi indicarmi alcuni trucchi interessanti. Grazie!
Ri: Come aggiungere etichette di valore a una colonna tramite JSLGrazie mille, ha funzionato. La tua risposta lo ha fatto sembrare così facile.
Ri: Come aggiungere etichette di valore a una colonna tramite JSLEcco un modo per gestire il problema. Fondamentalmente crea una stringa che contiene la struttura specifica necessaria. Quindi aggiungilo come elemento nell'elenco da utilizzare per aggiungere le etichette valore alla colonna.
Names Default To Here( 1 );
dt = New Table( "Untitled 36", Add Rows( 3 ),
New Column( "Column 1", Character, "Nominal",
Set Values( {"1", "2", "3"} ) ) );
NamesList = {"Cool", "Awsome", "Bad"};
ValuesList = Column( dt, 1 ) << get values;
NamesValuesList = {};
// Build the Value Labels List
For( i = 1, i <= N Items( NamesList ), i++,
Insert Into( namesvalueslist,
Parse( "\!"" || ValuesList[i] || "\!" = \!"" || NamesList[i] || "\!"" ) )
);
// Create the Value Labels
Column( dt, 1 ) << set property( "Value Labels", Eval( NamesValuesList ) );