|
обновление формы | ☑ | ||
---|---|---|---|---|
0
Domanoff26
07.11.11
✎
15:34
|
ФормаВлад = ЭтаФорма.ВладелецФормы;
ФормаВлад.Обновить(); ЭтаФорма.Закрыть(); Владелец формы так и остается неизменнолй, хотя при ПЕРЕЧИТАТЬ данные меняются, какой метод обновляет(перечитывает форму) |
|||
1
Domanoff26
07.11.11
✎
15:40
|
Что забыл?
|
|||
2
rrunover
07.11.11
✎
15:48
|
а зачем форму владельца перечитывать?
|
|||
3
Domanoff26
07.11.11
✎
15:50
|
(2 ) потому что из этой формы меняются реквизиты формы владельца
|
|||
4
rrunover
07.11.11
✎
15:51
|
ЭтаФорма модально открывается?
|
|||
5
rrunover
07.11.11
✎
15:52
|
+(4) // быстрофикс
А полный код можно посмотреть? |
|||
6
Domanoff26
07.11.11
✎
15:57
|
(4) не модально
(5) что такое быстрофикс? там перед СК_ПривилегированныеПроцедуры.ИзменениеДопустимыхРеквизитов(Документ,ТаблицаРеквизитов); которая Процедура ИзменениеДопустимыхРеквизитов(Документ,Таблица) Экспорт ДокОбъект = Документ.ПолучитьОбъект(); Для каждого СтрокаРекв Из Таблица Цикл РеквизитСтр = СтрЗаменить(СтрокаРекв.Реквизит," ",""); ДокОбъект[РеквизитСтр] = СтрокаРекв.Значение; КонецЦикла; Попытка ДокОбъект.Записать(РежимЗаписиДокумента.Запись); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; КонецПроцедуры |
|||
7
Domanoff26
07.11.11
✎
16:03
|
Если ПравоДоступа("Редактирование",Док.ПолучитьОбъект().Метаданные(), ПользователиИнформационнойБазы.ТекущийПользователь()) Тогда
ФормаИзм = ПолучитьОбщуюФорму("ФормаИзмененияЗначенийРеквизитов"); ФормаИзм.ВладелецФормы = Форма; ФормаИзм.Документ = Док; ФормаИзм.ОткрытьМодально(); //ЭтаФорма.Закрыть(); Иначе Сообщить ("Недостаточно прав для изменения этого документа"); КонецЕсли; |
|||
8
Domanoff26
07.11.11
✎
16:03
|
это фот так форма открывается
|
|||
9
rrunover
07.11.11
✎
16:06
|
быстрофикс - это значит кто-то аццки быстро решил дописать предыдущий свой пост и изменить его, но по каким-то причинам не смог сообщение отредактировать и написал новый. Чтобы было понятно, что это не два разных сообщения, а одно, разделенное молнией мысли и употребляется "быстрофИкс".
Где в коде три строки из (0)? |
|||
10
Domanoff26
07.11.11
✎
16:13
|
(9 ) это там где хочу обновить -
СК_ПривилегированныеПроцедуры.ИзменениеДопустимыхРеквизитов(Документ,ТаблицаРеквизитов); ФормаВлад = ЭтаФорма.ВладелецФормы; ФормаВлад.Обновить(); Оповестить("Перечитать",,ЭтаФорма); ЭтаФорма.Закрыть(); А открывается ЭтаФорма через (7) может я не так открываю ее |
|||
11
Domanoff26
07.11.11
✎
16:14
|
оповестить() не хочу, почему так не обновляется
|
|||
12
rrunover
07.11.11
✎
16:25
|
Ещё раз давай. Суть вопроса:
Ты открываешь форму владельца и из формы-потомка хочешь обновить форму-владельца? Потому что в форме-потомке есть реквизиты, которые принадлежат и форме-владельцу??? Если нет, тогда открывай форму модально, при закрытии форма будет возвращать владельцу параметр. Его и обрабатывай. По типу: СтандартнаяОбработка = Ложь; Форма = ПолучитьФорму("Документ.МойДокумент.ФормаСписка", , ЭтаФорма); Форма.РежимВыбора = Истина; Форма.ОткрытьМодально(); Если ЗначениеЗаполнено(Форма.ТекущийЭлемент.ТекущаяСтрока) Тогда Элемент.Значение = Форма.ТекущийЭлемент.ТекущаяСтрока; КонецЕсли; |
|||
13
rrunover
07.11.11
✎
16:26
|
а чем Оповестить() насолила? :)
|
|||
14
Reset
07.11.11
✎
16:30
|
ФормаВладелец.ЭтотОбъект.Прочитать()
(13) Присоединяюсь к вопросу |
|||
15
Domanoff26
07.11.11
✎
16:55
|
(14) спс Через прочитать вышло
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |