Peek - Skriptfunktion
Peek() liefert den Wert eines Feldes in einer Tabelle für eine Zeile, die bereits geladen wurde oder im internen Speicher vorhanden ist. Die Zeilennummer kann wie die Tabelle festgelegt werden.
Syntax:
Peek(
field_name
[, row_no[, table_name ] ])
Return data type: dual
Arguments:
Argument | Beschreibung |
---|---|
field_name | Name für das Feld, für das der Rückgabewert erforderlich ist.Eingabewert muss als String angegeben werden (zum Beispiel in einfachen Anführungszeichen). |
row_no |
Die Zeile in der Tabelle, die das erforderliche Feld enthält. Kann eine Formel sein, die aber eine ganze Zahl ergeben muss. Fehlt |
table_name | Ein Tabellenname ohne abschließenden Doppelpunkt. Fehlt |
Limitations:
Im ersten Datensatz einer internen Tabelle liefert diese Funktion
Example:
Fügen Sie Ihrer App ein Beispielskript hinzu und führen Sie dieses aus. Fügen Sie einem Arbeitsblatt in Ihrer App dann mindestens diejenigen Felder hinzu, die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.
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;
Durch den Ersatz des Werts des Arguments row_no werden die Werte von anderen Zeilen in der Tabelle wie nachfolgend beschrieben ausgegeben:
Peek('EmployeeCode',2) liefert den dritten Wert in der Tabelle:
Beachten Sie jedoch, dass ohne Festlegen der Tabelle als drittes Argument table_no die Funktion sich auf die aktuelle (in diesem Fall die interne) Tabelle bezieht. Peek('EmployeeCode',-2) ergibt mehrere Werte:
Mitarbeitercode | 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:
Die Funktion Peek() kann zum Verweisen auf noch nicht geladene Daten verwendet werden.
Fügen Sie Ihrer App ein Beispielskript hinzu und führen Sie dieses aus. Fügen Sie einem Arbeitsblatt in Ihrer App dann mindestens diejenigen Felder hinzu, die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.
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 | Liste | Wert |
---|---|---|
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 |
Der Befehl IF() wird über die temporäre Tabelle
Peek('ID') bezieht sich auf das Feld
Peek('List') bezieht sich auf das Feld
Der Befehl liefert folgendes Ergebnis:
Wenn der aktuelle Wert von
Enthält
Example:
Erstellt eine Kumulierung von B in