Hai bisogno di aiuto con Suppress Eval ed Eval FormulaCi sono diverse domande qui che non capisco:
- Perché a volte Suppress Eval sembra attivarsi automaticamente quando si creano formule?
- Una volta attivata (inavvertitamente o in altro modo), come posso ottenere una nuova valutazione delle formule senza disattivare manualmente la soppressione colonna per colonna (o standardizzare gli attributi)?
- Ho trovato la formula di soppressione Eval e Rerun Formulas nell'hotspot della tabella dati, ma una volta attivata la soppressione manualmente, queste non sembrano funzionare.
- In JSL, come posso farlo funzionare? (Successo limitato con dt << Sopprimi Eval (0) e dt << Riesegui formule o specificando colonne specifiche).
Allego una tabella di dati molto semplice con 2 colonne soppresse. Che cosa sto facendo di sbagliato??
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaTabelle-> Ordina ha anche l'opzione Supress Eval.
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaGrazie Jeff! Questo in realtà potrebbe essere la radice dei problemi di "soppressione accidentale" del client. Lo passo avanti.
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaA parte gli errori durante la creazione di formule che possono comportare una richiesta di soppressione della valutazione, probabilmente il modo più comune per le colonne di essere impostato per sopprimere la valutazione è attraverso il menu Tabelle.
Tabelle-> Sottoinsieme ha un'opzione attivata per impostazione predefinita per sopprimere l'eval.

Stack e Join hanno opzioni simili.
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaGrazie Jerry!
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaGrazie Brady! Come al solito, il diavolo è nei dettagli. Differenze sottili che non avevo colto.
Quindi, se ho capito bene, la soppressione delle singole colonne deve essere cancellata individualmente. La soppressione della tabella dei dati è diversa e viene cancellata dal livello della tabella dei dati.
Cordiali saluti, questo è venuto da una richiesta del cliente. Aveva singole colonne che sarebbero state impostate su Suppress Eval (in qualche modo), quindi non si sarebbero aggiornate. Stava cercando un semplice pulsante "Recalc All". Pensi che sarebbe utile aggiungere un giorno?
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaAvrei dovuto essere più esplicito sulla tabella dei dati dt = current ().
Se copi
dt = tabella dati corrente;
invece di
dt = tabella dati correnti ();
dt NON sarà associato a un handle di tabella dati ... sarà associato a qualunque sia il valore della variabile con il nome di "tabella dati corrente". Quasi certamente, questa variabile non sarà definita.
Quindi, i messaggi della tabella di dati inviati a dt non verranno ascoltati in questo caso. Questo da solo è sufficiente per far fallire lo script originale.
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaL'unica cosa che aggiungerei è che sembra che una colonna accetti: Sopprimi Eval (0 | 1) o Sopprimi Formula Eval (0 | 1) mentre la tabella risponde solo a Sopprimi Formula Eval (0 | 1). Questo potrebbe spiegare il "successo limitato" o le incongruenze che stavi riscontrando. Inoltre, l'impostazione della colonna supera l'impostazione della tabella.
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaNon ho parlato di 1) e 2).
1) Quando viene generato un errore da una formula di colonna, viene richiesto all'utente. Un'opzione è sopprimere la valutazione.
2) Non so come disattivare la soppressione se non con i metodi che menzioni nella domanda ... questi sono i metodi che ho usato. Non incontro molta soppressione. Fondamentalmente solo quando ho un errore in una formula e voglio risolvere.
Ri: Hai bisogno di aiuto con Suppress Eval e Eval FormulaCiao Jerry,
Le parentesi sono necessarie dopo la Current Data Table (), in quanto è una funzione, prendendo 0 argomenti e restituendo un handle alla tabella corrente.
Non li uso molto, ma da quello che posso dire sembra che ci siano 2 livelli di soppressione, livello di tabella e livello di colonna. Per cancellare la soppressione a livello di colonna, utilizzare quanto segue.
Nota che i messaggi sono diversi ... le colonne usano << suppress eval (0 | 1) e le tabelle usano << suppress formula eval (0 | 1)
Names Default To Here( 1 );
dt = Current Data Table();
For( i = 1, i <= N Col( dt ), i++,
Column( dt, i ) << suppress eval( 0 )
);
Per cancellare la soppressione a livello di tabella, utilizzare:
dt << Suppress Formula Eval(0);
dt << Rerun Formulas;
Questi stanno funzionando per me sul tavolo che hai fornito, ma non li ho testati altrimenti, quindi se qualcuno ha qualcosa da aggiungere / correggere, per favore chime.
Saluti,
Brady