Eliminazione della casella di testo "Where" con JSLCiao,
Durante l'esecuzione dello script con la funzione "where", viene aggiunta una casella di testo al report.
Qual è il modo per eliminarlo?
C'è un modo per "non crearlo" invece di eliminarlo? Perché se eseguo modifiche al filtro dati, la casella di testo potrebbe tornare.
Grazie,
Tom.
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
dt << Distribuzione (distribuzione continua (colonna (: altezza)), dove (: sesso == "F"));
Ri: Eliminazione della casella di testo "Where" con JSLSì, se si salva un riferimento alla piattaforma:
dist = dt << Distribution( Continuous Distribution( Column( :height ) ), Where( :sex == "F" ) );
dist rep = dist << Report;
dist rep[Text Box( 1 )] << Delete;
Non sono sicuro dell'indice corretto, ma hai capito.
Sono curioso: poiché questo script è tuo, perché includere l'argomento Where () all'avvio se non lo vuoi? Il filtro dati e il filtro dati locale non aggiungono questa casella di testo all'albero di visualizzazione del report.
Ri: Eliminazione della casella di testo "Where" con JSLLa sceneggiatura di @txnelson funziona per me in JMP 14 e JMP 15 e il testo non torna su una modifica del filtro dati. Vorrei suggerire un cambiamento, tuttavia. Quando possibile, evitare di eliminare elementi da un report creato da JMP e optare invece per nasconderli:
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dist = dt << Distribution( Continuous Distribution( Column( :height ) ), Where( :sex == "F" ) );
dist rep = dist << Report;
(dist rep<<TOPPARENT></TOPPARENT>
Le piattaforme JMP potrebbero fare ipotesi sulla struttura del report quando le opzioni vengono modificate e il contenuto deve essere aggiunto o rimosso dal report. JMP 15 è più tollerante nei confronti della rimozione del contenuto, ma in JMP 14 e precedenti la cancellazione del contenuto potrebbe causare instabilità.
Ri: Eliminazione della casella di testo "Where" con JSLLa direzione che @markbailey ti ha indicato che hai ragione. Tuttavia c'è un problema delicato che deve essere esposto per ottenere ciò che si desidera gestire correttamente.
La casella di testo Where (: Sex == "F") non si trova sotto la struttura del rapporto Dist. Perciò,
dist rep = dist << Report;
dist rep(TextBox(1) << delete;
non indicherà Dove (: Sesso == "F")
Uno ha bisogno di passare al DisplayBox [HeadBox] che si trova sopra la struttura del report nella struttura ad albero del display per poter accedere a TextBox (1).
Di seguito è riportata la sintassi di JSL per realizzare ciò che è necessario
dist = dt << Distribution( Continuous Distribution( Column( :height ) ), Where( :sex == "F" ) );
dist rep = dist << Report;
(dist rep<<TOPPARENT></TOPPARENT>
Un altro modo per accedere a Where (: sex == "F") è accedervi dal riferimento effettivo della finestra
window("Big Class Where(sex == -F-) - Distribution")[textbox(1)]<<DELETE></DELETE>Ri: Eliminazione della casella di testo "Where" con JSLGrazie Marco,
Voglio "dove" nella distribuzione, ma non voglio che appaia la casella di testo.