- Stampa
Comprendere gli array e gli oggetti negli output delle funzioni del connettore
Scopo
Le funzioni SQL e HTTP Connector inviano "output" alle applicazioni come oggetti o array. Imparate a manipolare gli oggetti nelle app.
In questo articolo imparerete... * Come usare gli "output" di una funzione Connector in un'applicazione
Come utilizzare gli output delle funzioni del connettore nelle app
Gliarray e gli oggetti sono due strutture di dati molto diffuse e utilizzate in molti linguaggi di programmazione. Tulip utilizza entrambe queste strutture di dati nelle funzioni connettore:
- Quando una funzione connettore SQL produce più righe, l'output viene inviato a un'applicazione come un array pieno di oggetti.
- Quando una funzione connettore HTTP restituisce un output con un array al suo interno, l'array viene visualizzato in un'applicazione come un array pieno di oggetti.
- Quando una funzione connettore SQL restituisce una singola riga o una funzione connettore HTTP ha un qualsiasi output, i valori sono memorizzati come coppie chiave/valore in un oggetto.
Gli oggetti possono essere creati automaticamente solo dopo il completamento di una funzione Connector.
Questa guida mostra come vengono organizzati automaticamente gli output della funzione Connector. Quindi si vedrà come utilizzare questi output nelle applicazioni.
Raccolta di output dai connettori
Immaginiamo di voler estrarre tutti i dati di un operatore specifico da un database SQL in base al suo ID badge Tulip.
Per farlo, si scrive una funzione SQL Connector che prende badge_id come input e salva tutte le informazioni dell'operatore in un output. In questo caso, l'output si chiama nome_gruppo. Ecco come si presenterebbe:
Questa funzione ha un output, nome_gruppo, che viene memorizzato come stringa. Si basa sull'etichetta "Testo" della sezione Uscite.
Infatti, quando si crea una funzione Connector, non c'è alcuna opzione per memorizzare l'output come array o oggetto. Ecco i tipi di dati consentiti dalla sezione "Output".
Pertanto, è necessario memorizzarlo come "Testo" e poi manipolarlo nell'Editor di trigger.
Eseguire questa funzione nell'Editor trigger per memorizzare l'output in un oggetto.
- Connettore "Esegui funzione connettore": "SBD - Test" "Navigazione operatore"
- ID badge: "Valore statico" "testo" "2222" e salvare il risultato come: "Variabile" "test_var"
In questo caso, si utilizza il valore 2222 come input e si salva il risultato in una variabile chiamata "test_var".
Usare gli oggetti in un'applicazione
Nell'esempio precedente, abbiamo preso un output chiamato nome_gruppo e lo abbiamo salvato in una variabile chiamata test_var. La vista App Variables mostra che questa variabile è in realtà un oggetto con una proprietà chiamata "nome_gruppo".
In realtà, se la funzione Connector avesse più uscite, ognuna di esse verrebbe memorizzata come una nuova proprietà dell'oggetto chiamato "test_var", creato nel Trigger. Ciò consente di organizzare tutte le uscite di una chiamata di funzione in un unico posto.
È possibile testare gli output della funzione aggiungendo un testo variabile all'applicazione e selezionando la variabile dalla scheda Widget del riquadro contestuale.
In questo caso, abbiamo una variabile chiamata "Dettagli ordine" che memorizza un oggetto con 5 campi:
- ordinePosto
- quantità
- indirizzo1
- indirizzo2
- indirizzo3
Non appena si seleziona l'oggetto dalla casella di ricerca Variabili, si vedranno tutti e 5 i campi popolarsi nell'applicazione con etichette basate sui nomi delle proprietà. Potrebbe essere necessario espandere il campo di testo delle variabili per vederle tutte insieme.
Visualizzazione degli oggetti
Se l'oggetto ha più proprietà, si può desiderare di mostrarle tutte insieme in un'unica fase dell'applicazione. In questo modo è più facile che creare un nuovo testo variabile per ogni singola proprietà.
Per riordinare/rimuovere le singole proprietà dall'oggetto, fare clic sulla x o sul simbolo della griglia sulla proprietà nel riquadro contestuale.
Per modificare il numero di colonne, utilizzare l'opzione Colonne nel riquadro contestuale.
Per modificare la visualizzazione delle etichette e dei valori, regolare il colore e la dimensione dei caratteri nel riquadro contestuale.
Per vedere come questi dati verranno mostrati all'operatore, eseguire l'applicazione nel Player e sarà possibile vedere l'intero oggetto. I valori saranno inclusi se prima si esegue la Funzione connettore che raccoglie i valori.
Manipolazione degli oggetti
L'uso di una matrice di oggetti nell'applicazione può limitare le opzioni per estrarre i punti di dati che si sta cercando di ottenere. È possibile manipolare una matrice di oggetti prodotta da una funzione connettore per facilitare l'accesso ai dati che si desidera utilizzare nella logica, ecc. A tale scopo, è possibile specificare le chiavi di un oggetto che si desidera estrarre. Questo aiuterà a semplificare l'output dei dati, consentendo di sfruttare meglio i dati a cui si è interessati.
Di seguito è riportato un esempio di funzione Connector:
L'output qui sopra è un array di oggetti. Quando le funzioni connettore restituiscono un array di oggetti, nell'editor di espressioni sono disponibili azioni che consentono di manipolarli. Queste funzioni di mappatura consentono di mappare i valori corrispondenti in base a una determinata chiave. I valori restituiti possono essere mappati su un array del tipo selezionato. Si potrebbe usare MAP_TO_TEXT_LIST() per ottenere un array di testo di tutti i titoli.
- Connettore "Esegui funzione connettore": "Test" "Test Function" e salvare il risultato in: "test_output"
- "Manipolazione dei dati" "Memorizza" i dati: "Expression" "MAP_TO_TEXT_LIST(Variable.test_out.Test Parent, 'Test Child')
Il primo parametro passato nella funzione map è l'array di oggetti. Il secondo parametro, 'Test Child', è il nome dell'estrattore indicato nell'output della funzione connettore. Il nome dell'estrattore viene utilizzato come chiave per estrarre i valori. In questo modo si otterranno tutti i titoli in un array di stringhe.
Esaminare tutte le variabili oggetto di un'applicazione
Per manipolare una struttura di dati in un'applicazione, questa deve essere già memorizzata come variabile. È possibile vedere le variabili esistenti entrando nel riquadro contestuale dell'editor di app e selezionando il simbolo Sigma accanto a "Variabili" nella scheda App.
Gli oggetti verranno visualizzati con il simbolo universale dell'oggetto "{}".
Visualizzazione di più righe di SQL o array da connettori HTTP
Se si desidera trasformare più righe di output SQL o array di connettori HTTP in elenchi interattivi in un'applicazione, consultare questa guida separata.
Ulteriori letture
- Come usare gli array nelle applicazioni
- Come chiamare una funzione del connettore usando i trigger
- Guida all'editor di espressioni nell'editor di app
Avete trovato quello che cercavate?
Potete anche andare su community.tulip.co per porre la vostra domanda o vedere se altri hanno affrontato una domanda simile!