Заполнение PDF формы c полями ввода Сбербанка из 1С для ЗУП

26.07.23

Учетные задачи - Печатные формы

Сбербанк, осваивая новые технологии, теперь требует заполнять PDF формы c полями. Формы очень замысловатые и трудно поддаются воспроизведению штатными средствами 1С. Делюсь опытом интеграции 1С и Adobe Acrobat.

Скачать файл

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

Наименование По подписке [?] Купить один файл
ЗаявлениеНаКартуСбербанкаPDF
.epf 242,73Kb ver:0.1
38
38 Скачать (2 SM) Купить за 2 150 руб.
НОВАЯ версия 2017 ЗаявлениеНаКартуСбербанкаPDF
.epf 756,49Kb
54
54 Скачать (2 SM) Купить за 2 150 руб.

Заполнение сделано в виде простейшей обработки, которая для списка физ.лиц заполняет форму заявления Сбербанка на банковское обслуживание в рамках зарплатного проекта.

Работает в ЗУП, переделав запрос, можно заставить работать и в УПП и другой конфигурации.

При желании, на базе обработки можно легко сделать внешнюю печатную форму.

Добавлена новая версия бланка заявления 2017 года

PDF Печатная форма

См. также

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

Универсальная обработка для загрузки документов из Excel в 1С. Забудьте о ручном вводе: загружайте документы из Excel в 1С за секунды! Не требует указания параметров (номера колонок, номер первой строки таблицы и т.д.) и предварительной настройки. Просто выбираете файл Excel, документ 1С и нажимаете кнопку "Загрузить". Обработка сама находит таблицу в файле Excel, необходимые для загрузки данные в ней (номенклатура, количество, НДС, цена, сумма) и загружает ее в 1С.

6000 руб.

09.11.2016    241381    1111    906    

1036

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

19.08.2020    26301    25    1    

28

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

Устали вручную дозаполнять и корректировать документы по банку после загрузки банковской выписки? С помощью правил обработки банковской выписки вы сможете автоматически определять правильный вид хозяйственной операции, заполнять расшифровку, аналитику платежа и многое другое.

19200 руб.

21.03.2023    13049    89    16    

76

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

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    18649    49    19    

83

Внешние источники данных Зарплата Бюджетный учет Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 7.хх учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

84000 руб.

24.04.2017    52560    104    165    

91

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

Расширение позволяет максимально полно ограничить доступ пользователей к данным по заработной плате, а именно закрывает доступ к документам начисления и выплаты заработной платы, не позволяет просматривать бухгалтерские отчеты по счету учета зарплаты а также убирает зарплатные проводки из журнала проводок. Расширение запрещает просматривать платежные документы на выплату зарплаты, так же не доступны регламентные отчеты в ПФР и ИФНС. Расширение предлагает готовые настроенные профили "Бухгалтер без зарплаты", "Только просмотр без зарплаты".

5940 руб.

27.05.2021    40188    293    106    

223

Корректировка данных Зарплата Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

60000 руб.

06.10.2023    5027    38    20    

46
Отзывы
16. sly2k 10.08.17 19:32 Сейчас в теме
Да в принципе я довел (код выше рабочий) - на выходе заполненная и сохраненная форма по указанному пути (пдф при этом закрывается корректно - пользователь даже не замечает что он открывается), а делее заполненную форму я отсылаю автоматом на почту - это уже отдельная история, также как что за форма у меня и чем я ее заполняю.
Остальные комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. BigB 193 09.12.15 14:37 Сейчас в теме
(0) я правильно понимаю, что Вы напрямую разбираете структуру PDF файла из 1С, заполняете поля и потом обратно формируете PDF файл?
2. lopatin 689 09.12.15 14:38 Сейчас в теме
(1) BigB, По идеи разбирать там ни чего не надо.. используются средства соответствующего COM-объекта для прямого доступа к полям PDF
3. BigB 193 09.12.15 14:59 Сейчас в теме
(2) lopatin, если не секрет, какой COM объект используется?
4. vals 19 09.12.15 19:16 Сейчас в теме
Два объекта, один сам документ, другой слой с полями:
doc = Новый COMОбъект("AcroExch.PDDoc");
form = Новый COMОбъект("AFormAut.App");
5. deadman66 18.12.15 01:20 Сейчас в теме
(4) эти объекты доступны только с полной версией Acrobat? C ридером нет возможности создать такие объекты, как я понял.
6. vals 19 18.12.15 08:07 Сейчас в теме
(5) deadman66, верно, нужен Adobe Acrobat либо стандарт либо про.
7. grrus 19.01.17 13:51 Сейчас в теме
Можно ли получить полный код?
пришлите пожалуйста на grrus@mai.ru
8. vals 19 19.01.17 17:27 Сейчас в теме
(7) Так там и лежит полный код, ничего не запаролено. Я что-то не так понимаю?
9. user652881_verbatim1976 17.07.17 00:26 Сейчас в теме
Добрый вечер! Скачал Вашу обработку. А где в ней собственно взаимодействие с pdf документом?
Поля = ОткрытьНовыйШаблон("Шаблон"); // Шаблон в двоичных данных
Это как бы самое интересное....
10. vals 19 17.07.17 07:55 Сейчас в теме
(9) Код открыт. Доступ осуществляется непосредственно к полям документа PDF, в котором эти поля предварительно созданы, и который отрывается как com объект.
Что именно Вам непонятно? С удовольствием поясню.
11. user652881_verbatim1976 18.07.17 23:48 Сейчас в теме
Код слишком мудреный, а пояснений так и не дождался. СомОбъект form = Новый COMОбъект("AFormAut.App") не подключался, выдавал ошибку, требуя его "прикручивания к системе". Перерыв английский сегмент сети, нашел изящное решение по работе только с СомОбъектом doc = Новый COMОбъект("AcroExch.PDDoc").
12. vals 19 19.07.17 09:16 Сейчас в теме
(11) Мудреного там мало.
Готовим PDF документ с полями, храним его в макете в двоичных данных, создаем запрос для получения данных, которыми нужно заполнить поля (имена полей в запросе и в документе совпадают, это желательно для упрощения кода - простой цикл на несколько строк.)

Идея такова: достаем файл из макета, открываем как СОМ, из него получаем через AFormAut.App из слоя полей документа коллекцию полей, значения которых заполняем данными запроса, убирая пробелы из имени поля, так чтобы они совпадали с именами в запросе, попутно различаем типы полей - если булево, то проставляем соотв. значение:

Для Каждого поле ИЗ Поля Цикл
		Если поле.IsTerminal Тогда
			ИмяПоля = СтрЗаменить(поле.Name, " ", "");
			Если Заполнить.Свойство(ИмяПоля, ЗнПоля) Тогда
				Если ТипЗнч(ЗнПоля) = Тип("Булево") Тогда
					Если ЗнПоля Тогда
						ЗнПоля = "On";
					Иначе
						ЗнПоля = "Off";
					КонецЕсли;	
				КонецЕсли;	
				поле.Value = ЗнПоля;
			КонецЕсли;
		КонецЕсли;	
	КонецЦикла; 
Показать


А вся "мудреность" относится к форматированию номера телефона и трансформации некоторых значений из запроса в значок "Х" по требованиям заполнения перед циклом заполнения.
AsKorysti; +1 Ответить
13. sly2k 09.08.17 14:18 Сейчас в теме
Пытаюсь адаптировать вашу обработку под заполнение форм из из 1с 77. Для наглядности форма лежит по фиксированному пути.
Получилась вот такая выжимка, сделанная из вашего кода с преобразованием под 77, которая заполняет одно из полей формы:
	Док=СоздатьОбъект("AcroExch.PDDoc");
	Док.Open("C:\1C\PDF\formp1.pdf");
	Сообщить("Страниц: "+Док.GetNumPages());
	ВремДок = Док.OpenAVDoc("C:\1C\PDF\tm.pdf");
	Формы=СоздатьОбъект("AFormAut.App");
	Сообщить("Полей: "+Формы.Fields.Count);
	Формы.Fields.Item("Аппарат").Value="Проверка заполнения поля Аппарат";

Отрабатывает без ошибок, но форма C:\1C\PDF\formp1.pdf остается незаполненной, а "C:\1C\PDF\tm.pdf" нет, что вроде бы не удивительно - явно не хватает сохранения сделанных изменений, в вашем коде сохранения я тоже не заметил - оно точно работает в выложенном вами виде? (имею в виду посл версию 2017г)
AsKorysti; +1 Ответить
14. sly2k 09.08.17 15:37 Сейчас в теме
(13)
По факту вот такой код оказался рабочим, т.е. из OpenAVDoc имя файла я вообще убрал - по описанию метода на адоб сайте там титул, а не путь к файлу.

Док=СоздатьОбъект("AcroExch.PDDoc");
	Док.Open("C:\1C\PDF\formp1.pdf");
	Сообщить("Страниц: "+Док.GetNumPages());
	ВремДок = Док.OpenAVDoc("");
	Формы=СоздатьОбъект("AFormAut.App");
	Сообщить("Полей: "+Формы.Fields.Count);
	Сообщить(Формы.Fields.Item("Аппарат").Value);
	Формы.Fields.Item("Аппарат").Value="Проверка заполнения поля Аппарат";
	Док.Save(0,"C:\1C\PDF\formp1.pdf");
Показать
AsKorysti; +1 Ответить
15. vals 19 10.08.17 12:26 Сейчас в теме
(14) Отличный результат! Я под 7.7 не заморачивался.

Также не было задачи сохранять заполненный ПДФ, кадровик просто его печатает и закрывает.

Кстати, при закрытии вылетает какая-то ошибка, я с ней тоже не разбирался, т.к. на конечный результат не влияет, сказал кадровикам просто закрывайте сообщение.

Я эту форму делал всего день, скачал API reference, да и сделал по-быстрому, чтобы кадровиков освободить от вала ручной работы.

Если доведете до законченной разработки, я буду только рад. Времени, если честно, нет для причесывания.
16. sly2k 10.08.17 19:32 Сейчас в теме
Да в принципе я довел (код выше рабочий) - на выходе заполненная и сохраненная форма по указанному пути (пдф при этом закрывается корректно - пользователь даже не замечает что он открывается), а делее заполненную форму я отсылаю автоматом на почту - это уже отдельная история, также как что за форма у меня и чем я ее заполняю.
17. echonok 11 05.02.19 17:16 Сейчас в теме
doc = Новый COMОбъект("AcroExch.PDDoc");

Проблема в этой строке, на новых версиях Adobe Reader DC этот метод уже не работает. Не решали эту проблему?
Вы на какой версии Adobe Reader проверяли?
18. vals 19 05.02.19 21:08 Сейчас в теме
Не проверял. На новых версиях чего?
Насколько помню, Adobe X
19. vals 19 05.02.19 21:09 Сейчас в теме
Reader не катит, нужна про либо стандарт.
20. visusby 5 16.10.20 09:21 Сейчас в теме
Можно добавить свою таблицу в PDF файл?
21. vals 19 16.10.20 13:18 Сейчас в теме
(20) В смысле средствами 1с? Теоретически можно, но практически это означает, что надо работать с внутренним форматом PDF. Боюсь, это невозможно из практических соображений.

Данная обработка лишь показывает способ как обеспечить доступ к слою полей документа PDF и ничего другого.

Добавьте таблицу в документ PDF редактором, разместите в ячейках поля и заполняйте их.
22. visusby 5 16.10.20 15:00 Сейчас в теме
(21)
Да, именно средствами 1с. "Добавить таблицу в документ PDF и затем ее заполнять" - не подходит, т.к. таблица будет иметь не постоянное количество строк. Предполагается выводить в PDF документ табличную часть документа.
23. vals 19 16.10.20 19:05 Сейчас в теме
(22) Я уже ответил, что в таком случае не подойдет.

Как вариант: выводите в ворд, а затем конвертором в командной строке получаете искомый пдф. Это 1с умеет делать хорошо.
Оставьте свое сообщение