Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Вопрос по внешней обработке таб. части документа (модифицированность объекта)

Вопрос по внешней обработке таб. части документа (модифицированность объекта)
Я
   Saari
 
13.09.16 - 15:30
Сделал внешнюю обработку по заполнению табличной части документа по условию. В модуле обработки прописал процедуру Инициализировать(), в теле которой вызвал функцию по анализу данных и заполнению табличной части.
Обнаружил, что даже если тело процедуры Иницализировать() оставить пустым (никаких значений в реквизитах в документе не изменяется), то после вызова внешней обработки из документа документ становится измененным (появляется * в заголовке окна документа и при закрытии появляется вопрос о сохранении изменений).
Как сделать так, что если данные в документе не меняются (из обработки по заполнению таб. части), то и признака измененности не было бы?
 
 
   Лефмихалыч
 
1 - 13.09.16 - 15:31
значит данные меняется где-то еще
   Saari
 
2 - 13.09.16 - 15:37
Вот модуль внешней обработки:
Процедура Инициализировать(Объект, ИмяТабличнойЧасти, ТабличноеПоле) Экспорт
    
КонецПроцедуры

Все. Нет формы обработки, в модуле обработки тоже ничего больше нет.
Но при вызове ее из документа по кнопке "Заполнить" получаю, что документ становится измененным.
   Nuobu
 
3 - 13.09.16 - 15:43
Когда создаётся форма, то эти кнопки создаются программно. В процедуре создания (в УТП это УниверсальныеМеханизмы.СформироватьПодменю (строка 339)) есть создание кнопки:

Кнопка = Кнопки.Добавить(бла, бла, бла);
// еще какой-то код


Кнопка.ИзменяетДанные = СтрокаКнопок.ИзменяетДанные;

Последняя строка заполняется тут:
УниверсальныеМеханизмы.ПолучитьДеревоКнопокЗаполненияТабличныхЧастей():

ДобавитьСтрокуВДеревоКнопок(СтрокаПодменю, "ЗаполнениеТЧ"+НомерКнопки, ТипКнопкиКоманднойПанели.Действие, ВыборкаДействий.Наименование, Действие , ВыборкаДействий.Ссылка, , , , , Истина)

Последний параметр (истина) это и есть "ИзменяетДанные".
   Saari
 
4 - 14.09.16 - 08:38
УТ 10.3, документ "Поступление товаров и услуг".
В форме документа на закладке "Товары" есть кнопка "Заполнить", у которой есть меню из нескольких пунктов. В свойстве каждого пункта этого меню есть отметка "Изменяет данные".
Я не нахожу где находится прописание пункта меню с вызовом внешней обработки по заполнению таб. части документа.
Видимо там нужно указать этот параметр? Подскажите, пожалуйста.
   PaulBC
 
5 - 14.09.16 - 08:51
Процедура Инициализировать(Объект,ИмяТабличнойЧасти,ТабличноеПолеОбъекта) Экспорт
    
.....
    Объект.ПолучитьФорму().Модифицированность = Ложь;
    
КонецПроцедуры
   Saari
 
6 - 14.09.16 - 09:07
(5) Спасибо! Получилось.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует