Проблема!!! Обход элементов формы журнала документов.
Уперся на пустом месте.
При обходе формы журнала документов табличная часть ВСЕГДА последняя...
Текстовое поле таб. части рассчитывает значения переменных, которые должны выводиться в текстовых полях формы.
Но! сначала идет обращение к переменным, а только потом вызов функции из таб. части.
Т.о. текстовое поле с вызовом функции всегда возвращает значение на основании предыдущей строки.
:o
Помогите победить!!!
При обходе формы журнала документов табличная часть ВСЕГДА последняя...
Текстовое поле таб. части рассчитывает значения переменных, которые должны выводиться в текстовых полях формы.
Но! сначала идет обращение к переменным, а только потом вызов функции из таб. части.
Т.о. текстовое поле с вызовом функции всегда возвращает значение на основании предыдущей строки.
:o
Помогите победить!!!
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
ЗЫ:
на форму журнала кинь текст, ему в формулу ТекущийДокумент , сохрани конфу, открой в предприятии этот журнал
теперь бегай по строкам журнала и о чудо! Показывает именно текущий документ, а не из предыдущей строки.
И читай предыдущий пост - я хз, что тебе надо и где и что ты там обходишь и смотришь и рассчитываешь.
на форму журнала кинь текст, ему в формулу ТекущийДокумент , сохрани конфу, открой в предприятии этот журнал
теперь бегай по строкам журнала и о чудо! Показывает именно текущий документ, а не из предыдущей строки.
И читай предыдущий пост - я хз, что тебе надо и где и что ты там обходишь и смотришь и рассчитываешь.
пререм ТекТекстСостояния;
Функция СостПроекта()
возврат ТекТекстСостояния;
КонецФункции
Функция ВидПроекта()
ТекТекстСостояния = сокрлп(текущийдокумент);
КонецФункции
ПоказатьВидПроекта() вызывается после СостПроекта(), соответственно СостПроекта() возвращает значение для предыдущего состояния формы. Сам первый раз столкнулся, пробовал играть с видимостью элемента, слоев.... и...
Уперся!!!! Не побеждается!!!!
Прикрепленные файлы:
это все простой вариант. у меня ссылка не тек. док - реквизит справочника, где хранятся нужные сведения.
При позиционировании на документе, разыскивается нужный элемент, читаются из него данные, и дожны выводиться на форму. А выводятся - по найденому по пред. клику.
При позиционировании на документе, разыскивается нужный элемент, читаются из него данные, и дожны выводиться на форму. А выводятся - по найденому по пред. клику.
Расчеты достаточно громоздкие, чтоб не выполнять в момент записи(проведения), просто ставится флаг необходимости пересчета реквизитов в том же справочнике. Здесь некоторая оффлайновость некритична. А вот передвигаться по журналу хотелось бы быстро. с получением максимума информации....
могу еще раз перепостить:
на форму журнала кинь текст, ему в формулу ТекущийДокумент , сохрани конфу, открой в предприятии этот журнал
теперь бегай по строкам журнала - и о чудо! Показывает именно текущий документ, а не из предыдущей строки.
на форму журнала кинь текст, ему в формулу ТекущийДокумент , сохрани конфу, открой в предприятии этот журнал
теперь бегай по строкам журнала - и о чудо! Показывает именно текущий документ, а не из предыдущей строки.
(19) ёпт..
Либо пиши в ФОРМУЛУ текстового реквизита сразу нужное значение, либо, если используешь переменную модуля для отображения - обновляй форму каждый раз методом ОбновитьФорму() и грузи проц на 100%
И что мешает писать так ??????????????????
Либо пиши в ФОРМУЛУ текстового реквизита сразу нужное значение, либо, если используешь переменную модуля для отображения - обновляй форму каждый раз методом ОбновитьФорму() и грузи проц на 100%
И что мешает писать так ??????????????????
Функция ПоказатьНомерДокумента(Док)
спр = создатьобъект("Справочник.Пар");
спр.найтипореквизиту("Рекв",Док,0);
Возврат спр.пар1+спр.пар2;
КонецФункции
нужно чтоб на форме отображались результаты, полученные функцией.
перем Пар1,Пар2,Пар3;
Функция ПоказатьНомерДокумента(Док)
спр = создатьобъект("Справочник.Пар");
спр.найтипореквизиту("Рекв",Док,0);
пар1 = спр.пар1;
пар2 = спр.пар2;
пар3 = спр.пар1+спр.пар2;
Возврат Док.НомерДок;
КонецФункции
а в текстовых полях на форме отображались эти ПАРы...
причем в колонках таб. части - эти значения отображаются отлично... а вот на свободном месте формы...
перем Пар1,Пар2,Пар3;
Функция ПоказатьНомерДокумента(Док)
спр = создатьобъект("Справочник.Пар");
спр.найтипореквизиту("Рекв",Док,0);
пар1 = спр.пар1;
пар2 = спр.пар2;
пар3 = спр.пар1+спр.пар2;
Возврат Док.НомерДок;
КонецФункции
а в текстовых полях на форме отображались эти ПАРы...
причем в колонках таб. части - эти значения отображаются отлично... а вот на свободном месте формы...
А так, Форму у тебя НЕ обновляется в момент присваивания переменной чего-то, а обновляется только при нажатии клавиши (вниз/вверх) - вот и видишь всегда якобы "предудущее" значение строки..
в общем, мне лень объяснять, как работают формулы в текстовых колонках и в тексте на форме.
Можешь и дальше заниматься извратом с глобальными переменными формы.
в общем, мне лень объяснять, как работают формулы в текстовых колонках и в тексте на форме.
Можешь и дальше заниматься извратом с глобальными переменными формы.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот