Обновить поле надписи на форме в документе "Заявка на расход ДС" при таможенном платеже

1. Lllypuk 19.09.22 08:50 Сейчас в теме
Всем привет! Подскажите как можно обновить поле надписи "НадписьРеквизитыПлатежаВБюджет" в документе "Заявка на расходование ДС" при оформлении таможенного платежа.
Делаю так:
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("ТолькоПросмотр",         Ложь);

Форма =	ПолучитьФорму(
		"ОбщаяФорма.РеквизитыПлатежаВБюджет",
		ПараметрыФормы,
		ЭтотОбъект);

Форма.ВладелецФормы.Объект.КодБК = "15311009000011000110";
Показать

Если нажать на гиперссылку поля надписи, то внутри код КБК успешно проставился, а на форме основной не обновился что он там есть.
Делал так, что только не попробовал:
//Форма.ВладелецФормы.Объект.ОбновитьОтображениеДанных();
//ЭтаФорма.ОбновитьОтображениеДанных(); 
//ЭтаФорма.Прочитать(); 
//ОбновитьОтображениеДанных(ЭтаФорма.Элементы);
//ОповеститьОбИзменении(Форма.ВладелецФормы.Объект.НадписьРеквизитыПлатежаВБюджет);
//ОповеститьОбИзменении(ЭтаФорма.НадписьРеквизитыПлатежаВБюджет);
 //ОповеститьОбИзменении(Тип("ДокументСсылка.ЗаявкаНаРасходованиеДенежныхСредств"));
//ОтобразитьИзменениеДанных(ЭтаФорма.Элементы, ВидИзмененияДанных.Изменение);
Показать

Но это не помогает) За ранее спасибо за ответы!
Прикрепленные файлы:
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5. custer 19.09.22 14:50 Сейчас в теме
(1) Есть возможность полный листинг кода основной формы выложить?
2. ZOMI 143 19.09.22 10:34 Сейчас в теме
3. Lllypuk 19.09.22 10:48 Сейчас в теме
(2)На клиенте пишет "метод объекта не обнаружен "Прочитать"".
Перенес на сервер пишет "Ошибка отображения типов:
Отсутствует отображение для типа 'ФормаКлиентскогоПриложения'"
4. ZOMI 143 19.09.22 11:05 Сейчас в теме
Не очень понятно в каком месте вы это делаете, но можете по другому сделать


Окна = ПолучитьОкна();
Для каждого ОкноПриложения Из Окна Цикл
Если ОкноПриложения.Основное Или ОкноПриложения.НачальнаяСтраница Тогда
Продолжить
КонецЕсли;

Если Найти(ОкноПриложения.Заголовок,СокрЛП("Заявка на расход")> 0
Тогда

Для N = 0 По ОкноПриложения.Содержимое.ВГраница() Цикл
ФормаНужная = ОкноПриложения.Содержимое[N];
ФормаНужная.Прочитать();
КонецЦикла;
КонецЕсли;
КонецЦикла;
//возможно заголовок нужной формы у вас другой и это нужно поправить
6. Lllypuk 19.09.22 14:54 Сейчас в теме
(5)
&НаСервере
Процедура ХозяйственнаяОперацияПриИзмененииПослеНаСервере()
	Если Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПеречислениеТаможне Тогда 
		Объект.Контрагент 				 = Справочники.Контрагенты.НайтиПоНаименованию("Тут контрагент");
		Объект.БанковскийСчетКонтрагента = Справочники.БанковскиеСчетаКонтрагентов.НайтиПоНаименованию("тут счет контрагента");			  
	КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура ХозяйственнаяОперацияПриИзмененииПосле(Элемент)
	ХозяйственнаяОперацияПриИзмененииПослеНаСервере(); 
	
	ПараметрыФормы = Новый Структура;
	ПараметрыФормы.Вставить("ТолькоПросмотр",         Ложь);
		
	Форма =	ПолучитьФорму(
		"ОбщаяФорма.РеквизитыПлатежаВБюджет",
		ПараметрыФормы,
		ЭтотОбъект);
    
		Форма.ВладелецФормы.Объект.КодБК = "11111111111"; 
		
	//Форма.ВладелецФормы.Объект.ОбновитьОтображениеДанных();
	//ЭтаФорма.ОбновитьОтображениеДанных();   
	//ЭтаФорма.Прочитать();  	
	//ОбновитьОтображениеДанных(ЭтаФорма.Элементы);
	//ОповеститьОбИзменении(Форма.ВладелецФормы.Объект.НадписьРеквизитыПлатежаВБюджет);
	//ОповеститьОбИзменении(ЭтаФорма.НадписьРеквизитыПлатежаВБюджет);
        //ОповеститьОбИзменении(Тип("ДокументСсылка.ЗаявкаНаРасходованиеДенежныхСредств"));
	//ОтобразитьИзменениеДанных(ЭтаФорма.Элементы, ВидИзмененияДанных.Изменение);
КонецПроцедуры

Показать
7. custer 19.09.22 14:56 Сейчас в теме
(6) На форме "Реквизиты платежа в бюджет" по кнопке ОК оповещает владельца? Необходима процедура ОбработкаОповещения на форме владельца
8. Lllypuk 19.09.22 14:59 Сейчас в теме
(7) Вот код по кнопке "Ок"
&НаКлиенте
Процедура ОК(Команда)
	
	ОчиститьСообщения();
	
	Если Не Модифицированность Или ТолькоПросмотр Тогда
		
		Закрыть();
		
	Иначе
		Если ТипЗнч(ПоказательДаты) = Тип("Дата") Тогда
			ПоказательДаты = Формат(ПоказательДаты, "ДЛФ=D");
		КонецЕсли;
		
		СтруктураОбъекта = Новый Структура;
		СтруктураОбъекта.Вставить("ВидПеречисленияВБюджет", ВидПеречисленияВБюджет);
		СтруктураОбъекта.Вставить("КодБК",                  КодБК);
		СтруктураОбъекта.Вставить("КодОКАТО",               КодОКАТО);
		СтруктураОбъекта.Вставить("ПоказательДаты",         ПоказательДаты);
		СтруктураОбъекта.Вставить("ПоказательНомера",       ПоказательНомера);
		СтруктураОбъекта.Вставить("ПоказательОснования",    ПоказательОснования);
		СтруктураОбъекта.Вставить("ПоказательПериода",      ПоказательПериода);
		СтруктураОбъекта.Вставить("ПоказательТипа",         ПоказательТипа);
		СтруктураОбъекта.Вставить("СтатусСоставителя",      СтатусСоставителя);
		
		Готово = Истина;
		
		Закрыть(СтруктураОбъекта);
	КонецЕсли;
	
КонецПроцедуры

Показать
9. custer 19.09.22 15:01 Сейчас в теме
(8) Вам нужно описать процедуру ОбработкаОповещения на форме владельце, а в дочерней оповестить

Это пример:
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
	
	// ЭлектронноеВзаимодействие.РаботаСНоменклатурой
	Если ИмяСобытия = РаботаСНоменклатуройКлиент.ОписаниеОповещенийПодсистемы().ЗагрузкаКатегорий Тогда
		Если Не Модифицированность Тогда
			ПерезаполнитьИдентификаторыКатегорий();
		КонецЕсли;
	КонецЕсли;
	// Конец ЭлектронноеВзаимодействие.РаботаСНоменклатурой
	
КонецПроцедуры
Показать


Или при открытии формы указать в ОписаниеОповещения наименивание процедуры оповещения после закрытия открываемой формы и уже в этой процедуре обработать данные из дочерней формы
Прикрепленные файлы:
10. custer 19.09.22 15:16 Сейчас в теме
(8) вообщем как то так должно получится)
&НаСервере
Процедура ХозяйственнаяОперацияПриИзмененииПослеНаСервере()
    Если Объект.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПеречислениеТаможне Тогда 
        Объект.Контрагент                  = Справочники.Контрагенты.НайтиПоНаименованию("Тут контрагент");
        Объект.БанковскийСчетКонтрагента = Справочники.БанковскиеСчетаКонтрагентов.НайтиПоНаименованию("тут счет контрагента");              
    КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура РеквизитыПлатежаВБюджетПриИзмененииКлиент(Результат, ДополнительныеПараметры) Экспорт
	
	Если Результат = Неопределено Тогда
		Возврат;
	КонецЕсли;
	
	Модифицированность = Истина;
	
	ЗаполнитьЗначенияСвойств(Объект, Результат);
	
	// Здесь изменим надпись гиперсылки на форме
	// ХозяйственнаяОперация.Заголовок = "Текст";
	
КонецПроцедуры

&НаКлиенте
Процедура ХозяйственнаяОперацияПриИзмененииПосле(Элемент)
	
	ХозяйственнаяОперацияПриИзмененииПослеНаСервере();
	
	ПараметрыФормы = Новый Структура;
    ПараметрыФормы.Вставить("ТолькоПросмотр", Ложь);
	
	ОписанияОповещения = Новый ОписаниеОповещения("РеквизитыПлатежаВБюджетПриИзмененииКлиент", ЭтотОбъект);
	
	ОткрытьФорму("ОбщаяФорма.РеквизитыПлатежаВБюджет", ПараметрыФормы, ЭтотОбъект,,,, ОписанияОповещения, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);

КонецПроцедуры
Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот