Описание
Вычисление, используемое инструментом Вычислить поле, Вычислить поля (несколько) или Вычислить значение, некорректно.
Эта ошибка может возникать из-за синтаксических ошибок Python в выражении или блоке кода. Например, при вызове такой функции, как round, если закрывающая скобка опущена, возникает синтаксическая ошибка, результатом которой будет следующая ошибка:
ERROR 000539: File "<expression>", line 1
round(3, 2
SyntaxError: '(' was never closed
Эта ошибка также может возникнуть, если при запуске кода Python возникает исключение. Например, при добавлении числового значения и строки Python вызывает исключение TypeError, в результате чего возникает следующая ошибка:
ERROR 000539: Traceback (most recent call last):
File "<expression>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'
Инструмент использует восклицательные знаки (!) в качестве разделителей полей для выражения. Если разделители опущены (Classification против !Classification!), имя поля будет интерпретировано Python как неопределенное имя, что приведет к следующей ошибке:
ERROR 000539: Traceback (most recent call last):
File "<expression>", line 1, in <module>
NameError: name 'Classification' is not defined
Аналогично, если имя поля в выражении содержит разделители, но имя поля написано неправильно, не существует или был использован псевдоним поля (когда псевдоним не совпадает с именем поля), инструмент завершит работу со следующей ошибкой:
ERROR 000539: Invalid field Classification Value
Решение
Для получения сведений о характерных проблемах Python см. Справку Python для используемой версии Python или справку для инструментов Вычислить поле, Вычислить поля (несколько) или Вычислить значение, где содержится дополнительная информация об этих инструментах.