Страница 1 из 1

field calculator - логические функции

Добавлено: 22 апр 2013, 17:19
alexey92
Здравствуйте! В атрибутивной таблице имеются: поле 1, поле 2, поле 3; все представлены натуральными числами.
Необходимо присвоить полю 4 текстовое значение, исходя данных в полях 1,2 и 3.
Хотелось бы узнать, как прописать в коде эти положения, т.е. если "поле 1" = x, "поле 2" = y, "поле 3" = z, то "поле 4" = "ТЕКСТ".

Re: field calculator - логические функции

Добавлено: 22 апр 2013, 23:40
novia
Используйте расширенный калькулятор (код на vb/python/javascript). Для этого поставьте галку в окне обычного калькулятора

[ Сообщение с мобильного устройства ]

Re: field calculator - логические функции

Добавлено: 23 апр 2013, 01:10
doujin
Если выбрать python, то в коде пишем, вместо x, y, z подставляя нужные значения:

Код: Выделить всё

def foo(field1, field2, field3):
if feild1 == x and feild2 == y and feild3 == z:
return u'ТЕКСТ'

Ниже пишем:

Код: Выделить всё

foo(!field1!, !field2!, !field3!)

Но на мой взгляд вы вопрос сформулировали не полностью. Наверняка вам нужно перебрать несколько возможных сочетаний трех полей и для каждого случая в четвертое поле записывать свой текст. В таком случае код стоит модифицировать, что бы не пришлось запускать калькулятор несколько раз.

Re: field calculator - логические функции

Добавлено: 23 апр 2013, 17:24
alexey92
спасибо за советы, получилось на VB-скрипте (с if...and...else)