![]() |
![]() |
![]() |
|
Обновить форму Спраочинка номенкалатуры во внешней обработке УТ 11 | ☑ | ||
---|---|---|---|---|
0
breezee
02.03.15
✎
10:50
|
Помогите, пожалуйста.
Имеется внешняя обработка по заполнению справочника номенклатура для УТ 11, пытаюсь обновить форму после записи не получается Код: &НаКлиенте Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт Для каждого Элемент из ОбъектыНазначенияМассив цикл ВыполнитьКомандуНаСервере(Элемент); КонецЦикла; КонецПроцедуры &НаСервере Процедура ВыполнитьКомандуНаСервере(Элемент) ЭлементОбъект=Элемент.получитьОбъект(); ЗаполнитьНаименованиеПоШаблонуКлиент("Оба", Истина,ЭлементОбъект); ЭлементОбъект.Записать(); ЭлементОбъект.Прочитать(); ЭлементОбъект.ПолучитьФорму("ФормаЭлемента").Обновить(); //форма1=ЭлементОбъект.ПолучитьФорму("ФормаЭлемента") ; ////форма1.обновитьОтображениеДанных(); КонецПроцедуры |
|||
1
butterbean
02.03.15
✎
10:56
|
какую форму ты собираешься обновлять?? неоткрытую форму элемента справочника??
|
|||
2
breezee
02.03.15
✎
10:58
|
(1) Она неоткрытая если я выполняю заполнение из формы списка(тогда все нормально), если я из самого элемента заполняю-то обновляется только после "Перечитать данные"
|
|||
3
breezee
02.03.15
✎
11:09
|
Для документов был метод Оповестить(ОбновитьДокументИбПриЗаписи), в модулях номенклатуры посмотрел и ничего подобного не увидел, может я не там смотрю?
|
|||
4
breezee
02.03.15
✎
11:21
|
Попытался возвращать форму на киенте для каждого элемента и обновлять её на клиенте. Ничего не вышло.
|
|||
5
breezee
02.03.15
✎
11:25
|
Разве ни кто не делал внешнюю обработку для заполнения справочников? Хэлп ми плиз!
|
|||
6
breezee
02.03.15
✎
11:37
|
Еще АП!
|
|||
7
breezee
02.03.15
✎
12:00
|
В модуле формы после записи было
Оповестить("Запись_Номенклатура", ПараметрыЗаписи, Объект.Ссылка); Вставил в обработку-не работает. где посмотреть Обработчик оповещений? |
|||
8
breezee
02.03.15
✎
12:09
|
Может я совсем идиот и делаю все неправильно? Может у кого есть пример или хоть какие-нибудь соображения, а то за всю тему только 1 человек отписался, неужели ни у кого вообще нет идей?
|
|||
9
hhhh
02.03.15
✎
12:20
|
(7) ну в той форме должно сработать событие ОбработкаОповещения. Оно есть там?
|
|||
10
breezee
02.03.15
✎
12:29
|
(9) Я вставил после заполнения, но не сработало. Так же пробовал открывать и закрывать форму программно, но тоже изменений не видно. Вот последние изменения
&НаКлиенте Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт Для каждого Элемент из ОбъектыНазначенияМассив цикл ПараметрыЗаписи=новый Структура; ВыполнитьКомандуНаСервере(Элемент); Форма1=Элемент.ПолучитьФорму("ФормаЭлемента"); Если форма1.открыта()Тогда форма1.закрыть(); форма1.обновитьотображениеданных(); форма1.открыть(); КонецЕсли; КонецЦикла; ОбновитьОтображениеДанных(); КонецПроцедуры |
|||
11
breezee
02.03.15
✎
12:38
|
Все, разобрался. Если у кого-нибудь будет похожее задание:
1)Нужно получить форму элемента 2)Проверить открыта ли форма(если обработка запущена в форме списка то смысла перечитывать её нет) 3)Перечитать форму Вот так это выглядит: Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт Для каждого Элемент из ОбъектыНазначенияМассив цикл ВыполнитьКомандуНаСервере(Элемент); ФормаТекущегоЭлемента=Элемент.ПолучитьФорму("ФормаЭлемента"); Если ФормаТекущегоЭлемента.открыта()Тогда ФормаТекущегоЭлемента.Прочитать(); КонецЕсли; КонецЦикла; КонецПроцедуры Всем спасибо, тема закрыта. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |