Przeskocz do zawartości głównej

FieldIndex — funkcja skryptu i funkcja wykresu

Funkcja FieldIndex() zwraca pozycję wartości pola value w polu field_name (według kolejności ładowania).

Składnia:  

FieldIndex(field_name , value)

Typ zwracanych danych: integer

Argumenty:  

Argumenty
Argument Opis
field_name Nazwa pola, dla którego wymagany jest indeks. Na przykład kolumna w tabeli. Argument musi być podany jako wartość ciągu znaków. Oznacza to, że nazwa pola musi być ujęta w pojedyncze cudzysłowy.
value Wartość w polu field_name.

Ograniczenia:  

Jeśli nie można znaleźć wartości value wśród wartości pola field_name, zwracana jest wartość 0.

Przykłady i wyniki:  

W poniższych przykładach stosowane jest pole: First name z tabeli Names.

Przykłady i wyniki
Przykłady Wyniki

Dodaj przykładowe dane do aplikacji i uruchom ją.

Załadowano tabelę Names, tak jak w danych z próby.

Funkcja wykresu: w tabeli zawierającej wymiar First name dodaj jako miarę:

 

FieldIndex ('First name','John')

1, ponieważ wartość John pojawia się jako pierwsza w kolejności ładowania pola First name. Warto zauważyć, że w panelu filtrowania imię John pojawiłoby się jako drugie od góry, ponieważ podlega sortowaniu alfabetycznemu, nie tak, jak w kolejności ładowania.

FieldIndex ('First name','Peter')

4, ponieważ funkcja FieldIndex() zwraca tylko jedną wartość (pierwsze wystąpienie w kolejności ładowania).

Funkcja skryptu: przy założeniu, że tabela Names jest załadowana, jak w danych przykładowych:

 

John1:

Load FieldIndex('First name','John') as MyJohnPos

Resident Names;

MyJohnPos=1, ponieważ wartość John pojawia się jako pierwsza w kolejności ładowania pola First name. Warto zauważyć, że w panelu filtrowania imię John pojawiłoby się jako drugie od góry, ponieważ podlega sortowaniu alfabetycznemu, nie tak, jak w kolejności ładowania.

Peter1:

Load FieldIndex('First name','Peter') as MyPeterPos

Resident Names;

MyPeterPos=4, ponieważ funkcja FieldIndex() zwraca tylko jedną wartość (pierwsze wystąpienie w kolejności ładowania).

Dane zastosowane w przykładzie:

Names: LOAD * inline [ First name|Last name|Initials|Has cellphone John|Anderson|JA|Yes Sue|Brown|SB|Yes Mark|Carr|MC|No Peter|Devonshire|PD|No Jane|Elliot|JE|Yes Peter|Franc|PF|Yes ] (delimiter is '|'); 			 John1: Load FieldIndex('First name','John') as MyJohnPos Resident Names;   Peter1: Load FieldIndex('First name','Peter') as MyPeterPos Resident Names;