Użycie Kalkulatora Pola

Kalkulator Pola może być użyty w celu ustalenia zawartości jednego, wielu lub wszystkich pól w tabeli.
Jest przydatnym narzędziem do kopiowania, łączenia lub tworzenia nowych pól informacyjnych.

Składniki Kalkulatora Pola

Aby otworzyć Kalkulator Pola należy otworzyć tabelę atrybutów lub dowolną inną tabelę w Krystynie. Następnie należy kliknąć w nazwę pola które ma być edytowane i wybrać polecenie Wylicz. Inny sposób to wybranie polecenia Wylicz z menu Pole i wybranie odpowiedniego pola z dialogu który się pokaże. Należy pamiętać o tym aby tabela nie była otwarta w trybie tylko do odczytu. Aby dokonywać obliczeń na wszystkich polach w tabeli nie należy wybierać żadnego lub wybrać wszystkie. Aby dokonywać obliczeń na jednym lub kilku polach, należy je wybrać przed wykonywaniem obliczeń.

Jednym z powszechnych zastosowań Kalkulatora Pola jest kopiowanie zawartości jednego pola do drugiego. Aby to zrobić należy w otwartym Kalkulatorze Pola (z wybranym polem docelowym) podwójnie kliknąć nazwę pola na liście pól. Pole powinno się pojawić w nawiasach w obszarze roboczym Kalkulatora Pola. Następnie należy wpisać średnik i wcisnąć klawisz Wylicz. To spowoduje wypełnienie pola docelowego kopiami wartości z pola źródłowego. Oczywiście typy danych obu pól muszą być takie same. W przeciwnym wypadku należy dokonać ich konwersji.

W obszarze roboczym Kalkulatora Pola można wprowadzać znacznie bardziej skomplikowane formuły używając języka skryptowego Krystyny. Więcej Informacji na ten temat zawartych jest w rozdziale Calculating a field’s values w pliku pomocy, lub w przykładzie zatytułowanym Zmiana ścieżek absolutnych w katalogu danych przestrzennych na względne. W dowolnej chwili można kontekstowo użyć klawisza Pomoc, aby uzyskać informacje na temat funkcji którą chcemy użyć. Wystarczy zaznaczyć funkcję i wcisnąć klawisz Pomoc.

Dodatkowe informacje na temat funkcji które można użyć w Kalkulatorze Pola zawarte są poniżej.


Operacje matematyczne

Operacja Składnia
Dodawanie dwóch (lub więcej) pól [NUMFLD] = [NUMFLD1] + [NUMFLD2];
Odejmowanie dwóch (lub więcej) pól [NUMFLD] = [NUMFLD1] - [NUMFLD2];
Mnożenie dwóch (lub więcej) pól [NUMFLD] = [NUMFLD1] * [NUMFLD2];
Dzielenie dwóch (lub więcej) pól [NUMFLD] = [NUMFLD1] / [NUMFLD2];
Konwersja jednostek z metrów na stopy (feet) [NUMFLD] = [METERS_FLD] * 3.2808;
Konwersja stopni, minut, sekund, na stopnie dziesiętne [NUMFLD] = [DEG] + ([MIN]/60) + ([SEC]/3600);
Wyliczanie gęstości zaludnienia [NUMFLD] = [TOTAL_POP] / [AREA];
Wartość średnia [NUMFLD] = ([NUMFLD1] + [NUMFLD2]) / 2;
Liczba znaków w tekście zawartym w polu [TEXTFLD].GetLength([NUMFLD]);


Operacje tekstowe

Operacja Składnia
Wypełnienie pola nowym tekstem [TEXTFLD] = "Text";
Połączenie zawartości dwóch pól bez spacji [TEXTFLD] = [TEXTFLD1] + [TEXTFLD2];
Połączenie zawartości dwóch pól ze spacją [TEXTFLD] = [TEXTFLD1] + " " + [TEXTFLD2];
Połączenie nowego tekstu ze spacją i polem [TEXTFLD] = "Text" + " " + [TEXTFLD1];
Zapis zawartości pola numerycznego do pola tekstowego [NUMERICFLD].AsString([TEXTFLD]);
Zapis n znaków z lewej strony łańcucha znaków (n to liczba znaków) [TEXTFLD].Left(n, [TEXTFLD]);
Zapis n znaków z prawej strony łańcucha znaków (n to liczba znaków) [TEXTFLD].Right(n, [TEXTFLD]);
Konwersja tekstu na małe litery [TEXTFLD].LCase();
Konwersja tekstu na duże litery [TEXTFLD].UCase();
Usunięcie spacji z początku i z końca łańcucha znaków [TEXTFLD].TrimWhiteSpace(TRUE, TRUE);
Zastąpienie znaku przez inny znak (np. zamiana “C” na “D”) Number nLen i;
String sStr;
[TEXTFLD].GetLength(nLen);
while(i < nLen);
[TEXTFLD].Get(i, sStr);
if (sStr == "C");
[TEXTFLD].Set(i, "D");
endif;
i = i + 1;
endwhile;