![]() |
![]() |
|
Внешняя обработка для ЗУП 1С 8.3 Заполнение табличной части | ☑ | ||
---|---|---|---|---|
0
klimbna
14.12.17
✎
07:02
|
Здравствуйте
Делаю обработку для заполнения табличной части документа в конфигурации ЗУП 3.1 платформа 8.3.10.2561 в тонком клиенте. В модуле объекта объявляю внешнюю обработку: Функция СведенияОВнешнейОбработке() Экспорт ДокументНазначение = Новый Массив ; ДокументНазначение.Добавить("Документ.ИндивидуальныйГрафик") ; ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке(); ПараметрыРегистрации.Вид = "ЗаполнениеОбъекта"; // Допустимые Виды: // ДополнительнаяОбработка, // ДополнительныйОтчет, // ЗаполнениеОбъекта, // Отчет, // ПечатнаяФорма, // СозданиеСвязанныхОбъектов ПараметрыРегистрации.Наименование = "Очистить график по всем сотрудникам"; ПараметрыРегистрации.Версия = "ver.:17.1214"; ПараметрыРегистрации.Назначение = ДокументНазначение; ПараметрыРегистрации.Информация = "Очищает часы работы в |индивидуальном графике |по всем сотрудникам"; ПараметрыРегистрации.БезопасныйРежим = Истина; ПараметрыРегистрации.ВерсияБСП = "2.2.2.1"; //КомандыОбработки = ПолучитьКомандыОбработки () ; // Добавляем команды обработки ТаблицаКоманд = ПараметрыРегистрации.Команды; НоваяКоманда = ТаблицаКоманд.Добавить(); НоваяКоманда.Представление = ПараметрыРегистрации.Наименование; НоваяКоманда.Идентификатор = ПараметрыРегистрации.Наименование; НоваяКоманда.Использование = "ЗаполнениеФормы"; НоваяКоманда.ПоказыватьОповещение = Ложь; Возврат ПараметрыРегистрации; КонецФункции И на Форме Обработки работаем &НаКлиенте Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт ВидВремениПусто = ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент("Справочник.ВидыИспользованияРабочегоВремени.ПУСТАЯССЫЛКА"); Для каждого СтрокаТЗ из ВладелецФормы.Объект.ДанныеОВремени Цикл Для НомерДня = 1 По 30 Цикл СтрокаТЗ["Часов"+НомерДня]=0; СтрокаТЗ["ВидВремени"+НомерДня]=ВидВремениПусто; КонецЦикла; КонецЦикла; Сообщить("Выполнили обработку"); // МЕТОДЫ КОТОРЫЕ НЕ РАБОТАЮТ //1/ п = Новый Структура("Ключ", ВладелецФормы); //1/ Форма = ПолучитьФорму("Документ.ИндивидуальныйГрафик.ФормаОбъекта", п); //1/ Форма.Прочитать() //2/ ВладелецФормы.ОбновитьОтображениеДанных(); //3/ВладелецФормы.Активизировать(); //4/ВладелецФормы.Открыть(); ВладелецФормы.Записать(); //-/работает но сразу записывает изменения в БД КонецПроцедуры |
|||
1
klimbna
14.12.17
✎
07:12
|
В итоге данные изменяются - но пользователь видит все по старому и если вызвать ВладелецФормы.Записать(); или нажать кнопку записать то данные обновляются и на форме у пользователя но тогда они уже записаны в базу и отменить возможности нет.
Как сделать так что бы обновлять отображение у пользователя без записи, что б пользователь смог оценить и сам принять решение изменять документ или нет? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |