Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Внешняя обработка заполнения табличных частей

Внешняя обработка заполнения табличных частей
Я
   nulback
 
09.11.17 - 13:03
Добрый день уважаемые. Подскажите пож-та, сделал внешнюю обработку заполнения табличных частей, все отлично отрабатывает и заполняет, но после заполнения необходимо произвести пересчет данных на форме. Т.е. надо как то добратся до ЭлементовФормы и прописать им новые значения. Можно это как то осуществить? Что необходимо сделать?
   DrShad
 
1 - 09.11.17 - 13:09
вызвать экспортную процедуру формы
   Zmich
 
2 - 09.11.17 - 13:14
(0). Форма = СсылкаНаОбъект.ПолучитьФорму();
   DrShad
 
3 - 09.11.17 - 13:19
(2) у него уже есть форма, если он делает заполнение ТЧ
   Рэйв
 
4 - 09.11.17 - 13:26
(0)Какие новые значения для элементов? Тебе просто форму обновить что ли надо?
   Мыш
 
5 - 09.11.17 - 13:28
УправляемаяФорма (ManagedForm)
ОбновитьОтображениеДанных
   Zmich
 
6 - 09.11.17 - 13:29
(3). Ну да, из самой внешней обработки к открытой форме документа можно получить так:
Форма = СсылкаНаОбъект.ПолучитьФорму();
А дальше через Форма.ЭлементыФормы менять не реквизиты объекта, а именно реквизиты формы. Например:
Форма = СсылкаНаОбъект.ПолучитьФорму();
Форма.ЭлементыФормы.НадписьДоговор.Заголовок = "ляляля";
Проверил, работает. Речь, конечно, об обычных формах.
   DrShad
 
7 - 09.11.17 - 13:52
(6) не нужно ничего получать
   nulback
 
8 - 09.11.17 - 14:01
(3) и как заполнить эти данные
    ОстатокНаКонец = ОстатокНаНачало + ПоДаннымОрганизации.Итог("Дебет") -  ПоДаннымОрганизации.Итог("Кредит");
    ЭлементыФормы.ОстатокНаНачалоКонтрагент.Значение = - ОстатокНаНачало;
    ЭлементыФормы.ОстатокНаКонец.Значение = ОстатокНаКонец;
    
    ОстатокНаКонецКонтрагент = - ОстатокНаНачало + ПоДаннымКонтрагента.Итог("Дебет") -  ПоДаннымКонтрагента.Итог("Кредит");
    ЭлементыФормы.ОстатокНаКонецКонтрагент.Значение = ОстатокНаКонецКонтрагент;
    
    Если Расхождение <> ОстатокНаКонец + ОстатокНаКонецКонтрагент Тогда
        Расхождение = ОстатокНаКонец + ОстатокНаКонецКонтрагент;
    КонецЕсли; 
    ЭлементыФормы.Расхождение.Значение = Расхождение;
    
    ЭлементыФормы.РасхождениеКонтрагент.Значение = Расхождение*(-1);
   DrShad
 
9 - 09.11.17 - 14:03
вызвать процедуру откуда этот текст или любую другую, которая в себе дергает эту
   nulback
 
10 - 09.11.17 - 14:12
(9) так пишет Процедура или функция с указанным именем не определена
   DrShad
 
11 - 09.11.17 - 14:14
(10) а она экспортная?
   nulback
 
12 - 09.11.17 - 14:20
нет она процедура формы.
   Рэйв
 
13 - 09.11.17 - 14:22
диалог из разряда 
-Она красное?
-Нет, она круглая.
:-)
   Рэйв
 
14 - 09.11.17 - 14:25
У меня стойкое ощущение, что ТС обработкой заполняет таб части и теперь пытается заполнить рюшки на формах, думая, что при при последующем открытии все это добро будет отображаться.
:-)
   nulback
 
15 - 09.11.17 - 14:30
(14) да рюшички для пользователя надо заполнить, и да при открытии вызывается та же самая процедура, так что все будет отображаться. это стандартная процедура формы документа Акт сверки взаиморасчетов "Пересчитать остатки".
   DrShad
 
16 - 09.11.17 - 14:31
(15) ну так либо повтори в своей обработке то же самое, либо сделай ее экспортной и дергай
   Рэйв
 
17 - 09.11.17 - 14:31
(15)А эти формы,которые ты пытаешься украсить,  в данный момент открыты?
   nulback
 
18 - 09.11.17 - 14:42
(17) да форма открыта, в ней же нажимают заполнить табличную часть.
   Рэйв
 
19 - 09.11.17 - 14:46
(18) ну тогда медитируй на (16) и на этом вопрос можно закрывать
   nulback
 
20 - 09.11.17 - 14:51
(19) это же форма документа, если я ее сделаю экспортной мне надо все равно получить форму документа, чтобы добратся до нее.

Список тем форума
 
Прочитай, хотя бы, Митичкина "Разработка в системе 1С:Предприятие 8". Волшебник
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.