|
УТ 10.3 Программно обновить табличное поле | ☑ | ||
---|---|---|---|---|
0
kIR
03.07.13
✎
16:08
|
Доброго дня!
В Форме элемента справочника Контрагента есть табличное поле - реквизит формы "Контактная Информация", имеющей тип РегистрСведенийНаборЗаписей.КонтактнаяИнформация. При Заполнении Юридического адреса и нажатию кнопки я хочу копировать юридический адрес в адрес грузополучателя. Копирование то происходит,но вот как обновить табличное поле? Через Элементы формы.ИмяТАбПоля.Обновить - не работает, "ОбновитьКолонки" выдает ужас,а "ОбновитьСтроки" тоже не дает результата Что еще можно сделать?спасибо |
|||
1
mikecool
03.07.13
✎
16:12
|
наверное криво заполнены данные, иначе бы по отбору все бы обновлялось
|
|||
2
kIR
03.07.13
✎
16:29
|
(1)не,если мы вручную жмакнем F5,то все отображается.но это неудобно
|
|||
3
kIR
03.07.13
✎
16:31
|
(1)код то простейший:
Запрос = Новый Запрос; запрос.УстановитьПараметр("Объект",Ссылка); запрос.УстановитьПараметр("Тип",Перечисления.ТипыКонтактнойИнформации.Адрес); запрос.УстановитьПараметр("Вид",Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента); ЗАпрос.Текст = "ВЫБРАТЬ | КонтактнаяИнформация.Представление, | КонтактнаяИнформация.Объект, | КонтактнаяИнформация.Тип, | КонтактнаяИнформация.Вид, | КонтактнаяИнформация.Поле1, | КонтактнаяИнформация.Поле2, | КонтактнаяИнформация.Поле3, | КонтактнаяИнформация.Поле4, | КонтактнаяИнформация.Поле5, | КонтактнаяИнформация.Поле6, | КонтактнаяИнформация.Поле7, | КонтактнаяИнформация.Поле8, | КонтактнаяИнформация.Поле9, | КонтактнаяИнформация.Поле10, | КонтактнаяИнформация.Комментарий, | КонтактнаяИнформация.ЗначениеПоУмолчанию, | КонтактнаяИнформация.ТипДома, | КонтактнаяИнформация.ТипКорпуса, | КонтактнаяИнформация.ТипКвартиры |ИЗ | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация |ГДЕ | КонтактнаяИнформация.Объект = &Объект | И КонтактнаяИнформация.Тип = &Тип | И КонтактнаяИнформация.Вид = &Вид"; Итог = Запрос.Выполнить().Выбрать(); Пока Итог.Следующий() Цикл НоваяЗапись = РегистрыСведений.КонтактнаяИнформация.СоздатьМенеджерЗаписи(); НоваяЗапись.Объект = Итог.Объект; НоваяЗапись.Тип = Итог.Тип; НоваяЗапись.Вид = Справочники.ВидыКонтактнойИнформации.АдресГрузополучателя; НоваяЗапись.Представление = Итог.Представление; НоваяЗапись.Поле1 = Итог.Поле1; НоваяЗапись.Поле2 = Итог.Поле2; НоваяЗапись.Поле3 = Итог.Поле3; НоваяЗапись.Поле4 = Итог.Поле4; НоваяЗапись.Поле5 = Итог.Поле5; НоваяЗапись.Поле6 = Итог.Поле6; НоваяЗапись.Поле7 = Итог.Поле7; НоваяЗапись.Поле8 = Итог.Поле8; НоваяЗапись.Поле9 = Итог.Поле9; НоваяЗапись.Поле10 = Итог.Поле10; НоваяЗапись.Комментарий = Итог.Комментарий; НоваяЗапись.ЗначениеПоУмолчанию = Итог.ЗначениеПоУмолчанию; НоваяЗапись.ТипДома = Итог.ТипДома; НоваяЗапись.ТипКорпуса = Итог.ТипКорпуса; НоваяЗапись.ТипКвартиры = Итог.ТипКвартиры; НоваяЗапись.Записать(); КонецЦикла; |
|||
4
Janna26
03.07.13
✎
16:50
|
(2) ЭтаФорма().Обновить();
|
|||
5
kIR
03.07.13
✎
16:53
|
(4) Ну тогда уж ЭтаФорма.Обновить(),А во вторых я ж пишу - не работает
Может как то можно имитировать нажатие F5? |
|||
6
Славен
03.07.13
✎
16:53
|
ЭлементыФормы.ТвоеПоле.СоздатьКолонки()
|
|||
7
kIR
03.07.13
✎
16:55
|
(6) пробовал опять же. При обновлении создает колонки = измерениям регистра.И кошмар получается
|
|||
8
Janna26
03.07.13
✎
16:56
|
(5) ЭтаФорма.Обновить() вот это кажется иметирует нажатие клавищи F5.
И так можно попробовать Wsh = Новый СОМОбъект("Wscript.shell"); Wsh.SendKeys("^+z"); //имитируем нажатие Ctrl+Z Wsh.SendKeys("^+я"); Только не помню как пишется F5 |
|||
9
Славен
03.07.13
✎
16:57
|
(8)в 1с f5 нажимала? сильно помогает?
|
|||
10
Janna26
03.07.13
✎
16:58
|
(9) Ну если смотреть на пост (2) то да, помогает.
|
|||
11
Славен
03.07.13
✎
17:03
|
(0)А у тебя вэб-клиент?
|
|||
12
kIR
03.07.13
✎
17:05
|
(9) да,помогает.
(11) нет,файловый (10) именно.Скрины выслать? |
|||
13
Janna26
03.07.13
✎
17:08
|
(12) я в ответ на (9) пост писала.
|
|||
14
Славен
03.07.13
✎
17:08
|
фишка в том что после записи в регистр, это ты делаешь в (3) тебе надо все этоже записать в реквизит формы "Контактная Информация", имеющей тип РегистрСведенийНаборЗаписей.КонтактнаяИнформация
|
|||
15
Славен
03.07.13
✎
17:10
|
посмотри в УТ в общем модуле УправлениеКонтактнойИнформацией.ПрочитатьКонтактнуюИнформацию(.....) Задай в неё свои параметры и отображение обновится
|
|||
16
kIR
03.07.13
✎
17:11
|
(8) и все же спасибо за наводку,сделал так
Wsh = Новый ComОбъект("Wscript.shell"); Wsh.SendKeys("{f5}"); Wsh.SendKeys("{ENTER}"); |
|||
17
Славен
03.07.13
✎
17:12
|
(16)см (15) это из типовой надо всего лишь в код из 3 добавить строчку (15)
|
|||
18
Janna26
03.07.13
✎
17:18
|
(16) не за что ;)
|
|||
19
VitShvets
03.07.13
✎
17:22
|
Процедура Прочитать() не поможет?
|
|||
20
kIR
04.07.13
✎
10:45
|
(17) Да,Ваш способ даже попроще будет)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |