Peek - scriptfunctie
Peek() retourneert de waarde van een veld in een tabel voor een rij die al is geladen of die in het interne geheugen beschikbaar is. Het rijnummer kan worden opgegeven, net als de tabel.
Syntax:
Peek(
field_name
[, row_no[, table_name ] ])
Return data type: dual
Arguments:
Argument | Beschrijving |
---|---|
field_name | Naam van het veld waarvoor de retourwaarde is vereist.De invoerwaarde moet worden aangegeven als een tekenreeks (bijvoorbeeld literal tussen aanhalingstekens). |
row_no |
De rij in de tabel die het vereiste veld aangeeft. Kan een uitdrukking zijn, maar moet worden herleid tot een geheel getal. Als geen |
table_name | Een label voor een tabel zonder dubbele punt aan het eind. Als geen |
Limitations:
In de eerste record van een interne tabel retourneert de functie
Example:
Voeg het voorbeeldscript toe aan uw app en voer het uit. Voeg vervolgens ten minste de velden die in de resultatenkolom staan aan een werkblad in uw app toe om het resultaat te bekijken.
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;
Als de waarde van het argument row_no wordt vervangen, worden de waarden van de andere rijen in de tabel als volgt geretourneerd:
retourneert de derde waarde in de tabel: . Peek('EmployeeCode',2)
Houd er echter rekening mee dat als de tabel niet wordt opgegeven als het derde argument table_no, de functie verwijst naar de huidige (in dit geval interne) tabel. Het resultaat van Peek('EmployeeCode',-2) is meerdere waarden:
Employee code | 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:
De functie Peek() kan worden gebruikt om te verwijzen naar gegevens die nog niet zijn geladen.
Voeg het voorbeeldscript toe aan uw app en voer het uit. Voeg vervolgens ten minste de velden die in de resultatenkolom staan aan een werkblad in uw app toe om het resultaat te bekijken.
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 | Lijst | Value |
---|---|---|
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 |
De opdracht IF() is samengesteld op basis van de tijdelijke tabel
Peek('ID') verwijst naar het veld
Peek('List') verwijst naar het veld
De opdracht wordt als volgt geëvalueerd:
Als de huidige waarde van
Als
Example:
Maakt een accumulatie van B in