Peek - funzione di script
Peek() individua il valore di un campo in una tabella per una riga che è già stata caricata o che esiste nella memoria interna. È possibile specificare il numero di riga così come la tabella.
Syntax:
Peek(
field_name
[, row_no[, table_name ] ])
Return data type: duale
Arguments:
Argomento | Descrizione |
---|---|
field_name | Nome del campo per cui è richiesto il valore restituito.Il valore di input deve essere specificato come stringa (ad esempio, un valore letterale tra virgolette). |
row_no |
La riga nella tabella che specifica il campo richiesto. Può essere un'espressione, tuttavia deve restituire un numero intero. Se non viene dichiarato alcun valore |
table_name | Un'etichetta di tabella senza due punti finali. Se non è dichiarato |
Limitations:
Nel primo record di una tabella interna, la funzione restituisce
Example:
Aggiungere lo script di esempio all'app ed eseguirlo. Aggiungere quindi a un foglio nell'app almeno i campi elencati nella colonna dei risultati per visualizzare il risultato.
EmployeeDates:
Load * Inline [
EmployeeCode|StartDate|EndDate
101|02/11/2010|23/06/2012
102|01/11/2011|30/11/2013
103|02/01/2012|
104|02/01/2012|31/03/2012
105|01/04/2012|31/01/2013
106|02/11/2013|
] (delimiter is '|');
FirstEmployee:
Load EmployeeCode, Peek('EmployeeCode',0) As EmpCode
Resident EmployeeDates;
La sostituzione del valore dell'argomento row_no restituisce i valori delle altre righe nella tabella, nel modo seguente:
Peek('EmployeeCode',2) restituisce il terzo valore nella tabella:
Tuttavia, tenere presente che se non si specifica la tabella come il terzo argomento table_no, la funzione farà riferimento alla tabella attuale (in questo caso, interna). Peek('EmployeeCode',-2) restituisce valori multipli:
Codice dipendente | EmpCode |
---|---|
101 |
- |
102 | - |
103 | 101 |
104 | 102 |
105 | 103 |
106 | 104 |
Example:
FirstEmployee:
Load EmployeeCode, Peek('EmployeeCode',-2,'EmployeeDates') As EmpCode
Resident EmployeeDates;
By specifying the argument table_no as 'EmployeeDates', the function returns the second-to-last value of
Example:
La funzione Peek() può essere utilizzata per fare riferimento ai dati che non sono stati ancora caricati.
Aggiungere lo script di esempio all'app ed eseguirlo. Aggiungere quindi a un foglio nell'app almeno i campi elencati nella colonna dei risultati per visualizzare il risultato.
T1:
LOAD * inline [
ID|Value
1|3
1|4
1|6
3|7
3|8
2|1
2|11
5|2
5|78
5|13
] (delimiter is '|');
T2:
LOAD
*,
IF(ID=Peek('ID'), Peek('List')&','&Value,Value) AS List
RESIDENT T1
ORDER BY ID ASC;
DROP TABLE T1;
Create a table in a sheet in your app with ID, List, and Value as the dimensions.
ID | Elenco | Valore |
---|---|---|
1 | 6 | 6 |
1 | 6,3 | 3 |
1 | 6,3,4 | 4 |
2 | 11 | 11 |
2 | 11,10 | 10 |
2 | 11,10,1 | 1 |
3 | 8 | 8 |
3 | 8,7 | 7 |
5 | 13 | 13 |
5 | 13,2 | 2 |
5 | 13,2,78 | 78 |
L'istruzione IF() viene creata a partire dalla tabella temporanea
Peek('ID') fa riferimento al campo
Peek('List') fa riferimento al campo
L'istruzione viene valutata nel seguente modo:
Se il valore attuale di
Se
Example:
Crea un accumulo di B in