|
Не обновляется динамический список | ☑ | ||
---|---|---|---|---|
0
rene_den
10.03.15
✎
16:33
|
День добрый коллеги,
Создана форма на ней динамический список (демонический :-)), с произвольным запросом и основной таблицей к регистру остатков. При открытии формы динамический список заполняется остатками предметов, по двойному клику создается док продажи этого предмета. Задача: после проведения этого дока данный предмет должен уйти из списка. Код в Доке: &НаКлиенте Процедура ПослеЗаписи(ПараметрыЗаписи) ОповеститьОбИзменении(Объект.Ссылка); Если ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение ИЛИ ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.ОтменаПроведения Тогда Оповестить("ОбновитьИзделияНаРеализации"); КонецЕсли; КонецПроцедуры Код в модуле формы на которой расположена таблица: &НаКлиенте Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Если ИмяСобытия = "ОбновитьИзделияНаРеализации" Тогда Элементы.ИзделияВРеализацииДС.Обновить(); КонецЕсли; КонецПроцедуры Проблема: НЕ обновляется динамический список (( |
|||
1
rene_den
10.03.15
✎
16:37
|
т.е. предмет в таблице остается.
|
|||
2
xXeNoNx
10.03.15
✎
16:39
|
(0) А запрос динамического списка?
|
|||
3
rene_den
10.03.15
✎
16:45
|
ВЫБРАТЬ
ГС_ЦенноеСторонниеОстатки.Организация, ГС_ЦенноеСторонниеОстатки.Подразделение, ГС_ЦенноеСторонниеОстатки.ВидыПредметовЗалогаДоговоров, ГС_ЦенноеСторонниеОстатки.ПредметЗалога, ГС_ЦенноеСторонниеОстатки.Документ, ГС_ЦенноеСторонниеОстатки.Документ.Номер КАК Номер ИЗ РегистрНакопления.ГС_ЦенноеСторонние.Остатки(&Период, Подразделение = &Подразделение) КАК ГС_ЦенноеСторонниеОстатки |
|||
4
rene_den
10.03.15
✎
16:46
|
&НаКлиенте
Процедура ПриОткрытии(Отказ) ИзделияВРеализацииДС.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[0].Значение = ТекущаяДата(); ИзделияВРеализацииДС.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[0].Использование = Истина; ИзделияВРеализацииДС.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[1].Значение = ТекПодразделение; ИзделияВРеализацииДС.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[1].Использование = Истина; |
|||
5
zak555
10.03.15
✎
16:46
|
(0) > с произвольным запросом
по-моему дело в этом |
|||
6
ам794123
10.03.15
✎
16:49
|
(0) Сначала отрабатываются события формы, а затем выполняется ОбработкаПроведения.
|
|||
7
rene_den
10.03.15
✎
16:52
|
(6) Делаю два подряд дока, все равно не меняется.
|
|||
8
Fedor-1971
10.03.15
✎
16:54
|
(0) Это сработает на одной машине. Попробуй обновлять не Элемент, а сам ДС.
(6) Событие ПослеЗаписи вроде как выполняется после завершения транзакции записи документа в БД, т.е. проведение, то же закончилось успешно. |
|||
9
Fedor-1971
10.03.15
✎
16:55
|
(7) Оповещение работает только в одном сеансе, т.е. сам провёл, себе и обновил ДС. В соседнем сеансе ничего не обновится
|
|||
10
Fedor-1971
10.03.15
✎
16:58
|
8+ Обманул, у самого ДС нет Обновить(), есть у элемента формы
|
|||
11
xXeNoNx
10.03.15
✎
16:59
|
А где в дальнейшем настройки компоновщика меняются?
|
|||
12
xXeNoNx
10.03.15
✎
17:00
|
Попробуй в запросе списка поставить в дате:
"КонецПериода(&Период, "День")" |
|||
13
rene_den
10.03.15
✎
17:02
|
&НаКлиенте
Процедура ПриЗакрытии() ОповеститьОбИзменении(Объект.Ссылка); Оповестить("ОбновитьИзделияНаРеализации"); КонецПроцедуры Не помогло. |
|||
14
rene_den
10.03.15
✎
17:03
|
(5) в проф разработке написано что должно и так.
|
|||
15
rene_den
10.03.15
✎
17:04
|
(11) нигде
|
|||
16
Fedor-1971
10.03.15
✎
17:08
|
(15) ИзделияВРеализацииДС.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[0].Значение = КонецДня(ТекущаяДата());
ты как получил данные на момент открытия, так с ними и остался и сколько бы не обновлял, данные будут считываться на момент открытия списка твоих предметов |
|||
17
rene_den
10.03.15
✎
17:08
|
(12) Согласен, пробую.
|
|||
18
rene_den
10.03.15
✎
17:08
|
(16)=(12) Пробую
|
|||
19
xXeNoNx
10.03.15
✎
17:09
|
(18) Лучший вариант - менять настройки компоновщика
|
|||
20
xXeNoNx
10.03.15
✎
17:10
|
+(19) Мало ли какие доки поставили в конец дня...
|
|||
21
rene_den
10.03.15
✎
17:27
|
(12)не помогло
|
|||
22
rene_den
10.03.15
✎
17:27
|
(16) помогло
|
|||
23
rene_den
10.03.15
✎
17:28
|
сейчас выложу рабочий код
|
|||
24
rene_den
10.03.15
✎
17:40
|
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи) Если ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение ИЛИ ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.ОтменаПроведения Тогда //ОповеститьОбИзменении(Объект.Ссылка); Оповестить("ОбновитьИзделияНаРеализации"); КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Если ИмяСобытия = "ОбновитьИзделияНаРеализации" Тогда ИзделияВРеализацииДС.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[0].Значение = ТекущаяДата()+1; Элементы.ИзделияВРеализацииДС.Обновить(); КонецЕсли; КонецПроцедуры |
|||
25
rene_den
10.03.15
✎
17:41
|
Всем спасибо коллеги !!!
Чаще всего проблема где-то в очевидном... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |