Обработка заполнения для открытой формы

16.02.18

Разработка - Инструментарий разработчика

Обработка заполнения для открытой управляемой формы. Нажали кнопочку, и реквизиты формы изменились.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
(только для физ. лиц)
Обработка заполнения для открытой формы:
.epf 10,46Kb
3 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Попросил меня бухгалтер сделать так, чтобы после загрузки из банка выписки, она проходила бы в журнале Выписки по документам поступлениям Денежных средств, заходила в нужный и не правила каждый раз одни и те же поля на форме, а нажимала кнопку и нужные поля автоматом заполнялись - избавить ее от рутинной работы. Пришлось повозиться с обработкой заполнения:

1. Был вариант менять на открытой форме реквизиты,  в принципе он сработал
             

&НаКлиенте
Процедура Выбрать(Команда)
//****************************************************************************
	Форма=ВладелецФормы;
	Элементы1 = Форма.Элементы;

	Форма.Объект.ВидОперации=СерверДайПеречисленияВидыОперацийПоступлениеДенежныхСредствПрочееПоступление();
	Форма.Объект.СчетУчетаРасчетовСКонтрагентом= ДайСчетовПоКодуСервер("90.01.1");
	Форма.Объект.СубконтоКт1= СерверДайСправочникиНоменклатурныеГруппыНайтиПоНаименованию("Проценты по займам полученные");
	Форма.Объект.СубконтоКт2= СерверДайПеречисленияСтавкиНДСБезНДС();
	Форма.Объект.СубконтоКт3= СерверДайСправочникиНоменклатураНайтиПоНаименованию("Проценты по займам полученные");
	Форма.Объект.Графа5_УСН=Форма.Объект.СуммаДокумента;
	Форма.Объект.СтатьяДвиженияДенежныхСредств=СерверДайСправочникиСтатьиДвиженияДенежныхСредств("Прочие поступления");
	
	ПоступлениеНаРасчетныйСчетФормыКлиент.СчетУчетаПрочиеПриИзмененииКлиент(Форма, Форма.Объект.Графа6_УСН);
	
	Если НЕ ЗначениеЗаполнено(Форма.Объект.ВидОперации) Тогда
		Возврат;
	КонецЕсли;
	
	Элементы1.СчетБанк.Видимость=истина;
	Элементы1.ГруппаСтатьяДДС.Видимость = Истина;
	Элементы1.ГруппаОтражениеВУСН.Видимость = истина;
	Элементы1.ГруппаПлатежПрочие.Видимость = истина;
	Элементы1.ГруппаОтражениеВБУ.Видимость = истина;
	Элементы1.ГруппаПлатежПрочие.Видимость = истина;
	Элементы1.ГруппаАналитика.Видимость = ложь;
	Элементы1.ГруппаЛево.Видимость = ложь;
	Элементы1.ГруппаПраво.Видимость = ложь;
	Форма.Объект.ВидОперации="";
	
	Закрыть(0);
КонецПроцедуры

  
Этот метод хорош, когда ты сам или с помощью общих модулей для клиента можешь вызвать ПриИзменении (куда можно передать ФормаВладелец) и поменять поведение реквизитов на форме в зависимости от их значения. В моем случае не подошло!

2. Я воспользовался другим вариантом, когда, имея ссылку на объект, вносишь изменения в документ, записываешь его и перечитываешь форму, через Оповестить. 

&НаСервере
процедура ЗаполнитьЧтоНадоНаСервере()
	об=Объект.СсылкаНаОбъект.ПолучитьОбъект();
	об.ВидОперации=Перечисления.ВидыОперацийПоступлениеДенежныхСредств.ПрочееПоступление;
	об.СчетУчетаРасчетовСКонтрагентом=ПланыСчетов.Хозрасчетный.НайтиПоКоду("90.01.1");
	об.СубконтоКт1=Справочники.НоменклатурныеГруппы.НайтиПоНаименованию("Проценты по займам полученные");
	об.СубконтоКт2= Перечисления.СтавкиНДС.БезНДС;
	об.СубконтоКт3= Справочники.Номенклатура.НайтиПоНаименованию("Проценты по займам полученные");
	об.Графа5_УСН=об.СуммаДокумента;
	об.Содержание_УСН="Проценты по займам полученные";
	об.СтатьяДвиженияДенежныхСредств=Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоНаименованию("Прочие поступления"); 
	об.Записать(РежимЗаписиДокумента.Проведение);
КонецПроцедуры	

&НаКлиенте
Процедура Выбрать(Команда)
	ЗаполнитьЧтоНадоНаСервере();
	Оповестить("ВыполненаЗаписьДокумента", Новый Структура("ДокументСсылка", Объект.СсылкаНаОбъект));
	Закрыть(0);
КонецПроцедуры

Проверялось на Бухгалтерия предприятия, редакция 3.0 (3.0.57.17).

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    203955    1124    410    

1025

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    36091    208    104    

197

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

16000 руб.

10.11.2023    16601    72    39    

89

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    24166    63    28    

92

Инструментарий разработчика Программист 1С v8.3 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    34932    125    53    

167

SALE! 30%

Инструментарий разработчика WEB-интеграция 1С v8.3 1C v8.2 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Инструмент для генерации OpenApi (Swagger) спецификаций на основании файлов конфигураций 1С. Это консольное и десктопное приложение на языке Rust с полноценным редактором кода, содержащим автозамену и подсвечивание ошибок для быстрого и безошибочного написания документирующего комментария.

18000 12600 руб.

22.11.2024    1881    1    0    

8

Инструментарий разработчика Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

6000 руб.

07.02.2018    107417    249    100    

313
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. wan 16.02.18 10:12 Сейчас в теме
Думаю, что окончательное решение по записи изменений должен принимать пользователь. Пользователь ошибся и заполнил не тот документ, вовремя осознав это он решил отказаться от записи. Тогда что?
2. AlexHelmer 2017 16.02.18 12:06 Сейчас в теме
В моем случае этот вопрос однозначно решен самим пользователем. он поставил такие условия и получил. Если надо то в форме обрабоки можно спрашивать типа "Вы уверены" и если нажал "Да" то делать
3. acsent 1206 16.02.18 18:15 Сейчас в теме
для упр форм в бсп есть отдельный тип команд для заполнения форм
4. AlexHelmer 2017 17.02.18 05:19 Сейчас в теме
Анатолий, подскажи по БСП, где порыть?
Оставьте свое сообщение