|
![]() |
#1 |
Участник
|
|
|
![]() |
#2 |
Участник
|
Блин! То работало-работало "без галочки", а то вдруг - ХЛОП! И перестало.
Короче, там оказалось всё ЕЩЁ немного хитрее ![]() Поскольку оба поля являются CalcField'ами, а результат второго зависит от вычисленного значения первого, то Nav путается. И тут главный вопрос: какое поле при выводе этих полей на форму Nav для себя считат "первым", а какое "вторым"? Поля во всём этом Nav-зоопарке могут вычисляться в 3-х местах. 1) В свойствах формы CalcFields, когда перечисляем там поля через запятую. (кстати, не факт, что вычисляется именно в том порядке, что вы написали, а не по ID этого поля в объекте) 2) При выводе колонки в таблице на экран. Тоже там Nav сам себе запускает calcfields. 3) В триггерах формы типа OnAfterGetRecord (или прочих) втупую вызовом Товар.calcfields(xxx) в нужном НАМ(!), а не Nav порядке. И вот если предположить, что программист написал одновременно несколько вычисляемых полей в свойствах формы, потом в колонки таблицы их вывел (а юзер у себя на компе эти колонки ещё и местами поменял) То ХРЕН ЗНАЕТ, как там вызывается CalcField и в каком порядке. Короче, не надо делать зависящие друг от друга вычисляемые поля - вот я всё это к чему. Извращение это. Это так... совет. Мало ли... пригодится. ![]() Всем удачи. ЗЫ: Сам же решил вопрос "втупую" по способу 3. Вроде работает ![]() |
|