Aggiungi la riga di riferimento nel rapporto tramite lo script del generatore di applicazioniCiao a tutti,
Stavo cercando di aggiungere la seguente riga nello script del mio generatore di applicazioni per aggiungere righe di riferimento ai rapporti:
Report1[Axis Box(1)] << Add Ref Line( 100, "Solid", "Medium Dark Red", "LL", 10 );
Tuttavia, non fa nulla.Non ricevo avvisi o errori nel registro. Ho controllato l'albero di visualizzazione e sto accedendo alla casella Axis corretta. Se cambio l'indice della casella dell'asse, viene generato un errore. Non riesco a capire perché questo non dovrebbe funzionare. è un insetto?
Stranamente, mentre armeggiavo con esso, ho cambiato qualcosa che ha prodotto un errore su quella linea, ma ho aggiunto con successo la linea di riferimento. Una volta. La ripetizione della stessa cosa non ha aggiunto la linea in futuro.
Da allora l'ho cambiato in un pulsante che si preme nel rapporto per aggiungere la linea di riferimento, che ha funzionato al primo tentativo utilizzando la stessa esatta riga di script, quindi non ho urgente bisogno di una soluzione. Mi chiedo solo se questo è un bug.
Re: Aggiunta di una riga di riferimento nel report tramite lo script del generatore di applicazioniCiao a tutti - sono felice di segnalare che il problema originale riportato qui è stato risolto nell'ultima versione di JMP (15). Non dovresti più aver bisogno di wait(0) per farlo funzionare. Per coloro che utilizzano versioni precedenti di JMP, questa è un'ottima soluzione alternativa.
Re: Aggiunta di una riga di riferimento nel report tramite lo script del generatore di applicazioniIn questo caso Wait(0) consente la visualizzazione della finestra sullo schermo, che imposta anche lo "stato iniziale" che determina se le personalizzazioni vengono salvate nello script.Per motivi di prestazioni, alcuni eventi vengono elaborati in modo asincrono per consentire agli script di continuare a essere eseguiti.
Re: Aggiunta di una riga di riferimento nel report tramite lo script del generatore di applicazioniGrazie come al solito a tutti!!
Dan, puoi spiegare cosa esattamente aggiungendo Wait(0); linea fa? (cioè aggiornare i display?)
Re: Aggiunta di una riga di riferimento nel report tramite lo script del generatore di applicazioniHo anche provato questo usando Big Class come esempio e potrei aver capito cosa sta succedendo.La mia app è collegata e inizialmente funziona.Tuttavia, se si attiva il filtro dati locali, la linea scompare.L'LDF funziona rieseguendo la piattaforma e in questo caso le personalizzazioni della linea di riferimento non vengono mantenute.Ciò accade sia all'interno che all'esterno di App Builder.
Il problema è che gli script della piattaforma (come salvati da LIRT > Save script > To Script Window) salvano solo le personalizzazioni che sono state applicate dalla visualizzazione iniziale della piattaforma.Questo è uno dei casi in cui sommando la riga:
Wait(0);
PRIMA il codice che accede al report consentirà alla piattaforma di visualizzare una volta prima di aggiungere la riga di riferimento.Nell'allegato .jmpappsource ho commentato questa riga, quindi puoi aggiungerla di nuovo per testare la soluzione.
Re: Aggiunta di una riga di riferimento nel report tramite lo script del generatore di applicazionil'obiettivo è aggiungere solo una linea di riferimento o l'obiettivo è aggiungere dinamicamente le linee di riferimento?

A volte ho bisogno di aggiungere linee di riferimento in base ai dati in una tabella. In questo caso, l'aggiunta di questo script per personalizzare il grafico rappresenta il trucco.
//example<BR />For Each Row(
If( :ref > 0,
V Line( Row(), Col Minimum( :weight ) - 10, Col Maximum( :weight ) + 10 )
)
)
In un po' più di contesto, ecco come appare.
dt=open("$Sample_Data\Big Class.jmp");
dt<< New Column( "ref",
Set Values(
[0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]
)
);
dt<<NEW column=""> 0,
V Line(
Row(),
Col Minimum( :weight ) - 10,
Col Maximum( :weight ) + 10
)
)
)
), Grid Line Order( 1 ), Reference Line Order( 3 )}
)
)
);
</NEW>Re: Aggiunta di una riga di riferimento nel report tramite lo script del generatore di applicazioniGrazie per il chiarimento.In tal caso, il tuo codice dovrebbe funzionare davvero.Ho eseguito un test case con un rapporto unidirezionale in un'app per la creazione di app e quella riga di codice ha funzionato perfettamente.Forse vale la pena chiamare il supporto tecnico?
Re: Aggiunta di una riga di riferimento nel report tramite lo script del generatore di applicazioniScusa se non ho fornito più contesto. Report1 è un report unidirezionale allocato nel generatore di applicazioni. La variabile esiste.
Sono stato in grado di accedere al framebox dello stesso report per aggiungere una legenda utilizzando:
Report1[FrameBox(1)] << Row Legend(
Tissue,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 ));
Quindi penso che il riferimento funzioni.
Ho provato la linea che mi hai suggerito e non ha prodotto nulla. Nessun errore o avviso, nessuna linea di riferimento.
Re: Aggiunta di una riga di riferimento nel report tramite lo script del generatore di applicazioniCome viene definito Report1?È questo il nome del modulo?
In genere, per accedere a finestre di visualizzazione senza nome in una finestra del modulo di Application Builder, è necessario ottenere un riferimento alla finestra utilizzando qualcosa come:
Report1 = this module instance << Get box
Prova a sostituire la linea che hai con questo per vedere se questo è il problema:
(this module instance << get box)[Axis Box(1)] << Add Ref Line( 100, "Solid", "Medium Dark Red", "LL", 10 );