Выгрузка зарплатной ведомости для Альфабанк: АЗОН или создаем файл xls с несколькими листами без использования Excel

26.04.19

Учетные задачи - Банковские операции

Альфабанк является одним из крупнейших банков в нашей стране. В корпоративном секторе этот банк предлагает своим клиентам множество услуг, в число которых входит зарплатный проект - "Альфа-Зарплата Онлайн" или знакомый многим как "АЗОН". В АЗОН есть возможность загрузки зарплатных ведомостей из файлов XLS. Но в формате файла есть небольшая особенность: в файле должно быть несколько листов с различными данными. В этой публикации разберемся, как сформировать такой файл без использования COM-объекта Microsoft Excel.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Выгрузка зарплатной ведомости для Альфабанк: АЗОН:
.epf 25,40Kb
16
16 Скачать (1 SM) Купить за 1 850 руб.

К сожалению, 1С пока не умеет работать штатными средствами с листами XLS-файлов. На ИС уже есть решения, использующие COM-объект Excel. Но это решение будет работать только под Windows, а у меня несколько пользователей работают под Linux, поэтому приходится изобретать кроссплатформенные решения. Для решения этой задачи я использовал Python. С его огромным количество модулей и относительно простой их установкой он уже не первый раз выручает в задачах, которые нельзя решить типовыми средствами 1С. Мое решение одинаково хорошо работает как в ОС Windows, так и на Linux. А для его работы вообще не требуется Excel (Openoffice или другие текстовые редакторы).

 

1. Установка Python.

Особых сложностей при установке Pyhton 3.x не должно возникнуть. В Windows  скачиваем установщик с сайта python.org и устанавливаем в режиме «Далее» - «Готово».

В linux выполняем команды  в терминале:

 

sudo apt-get install python3

 

Если вы используете Linux отличный от Debian/Ubuntu, то наверняка сами знаете как установить Python.

 

2. Установка дополнительных модулей для работы с Excel.

Для работы с файлами Excel нам понадобятся пара дополнительных модулей:  xlutils и xlwt.

Проще всего их установить используя менеджер пакетов pip (устанавливается вместе с Python).

Для установки открываем командную строку в Windows или терминал в Linux и вводим команды:

pip install xlutils
pip install xlwt

или, если на компьютере установлено несколько версий Python

pip3 install xlutils
pip3 install xlwt

 

3. Печатная форма

Для экспорта файла начислений была сделана внешняя печатная форма, которая подключается к документу «Зарплата к выплате организаций».  При использовании проверьте правильность заполнения реквизитов "Номер" и "Дата" для выбранного договора с банком. Эти данные заполняются в печатной форме. 

Значение поля "Служебная информация" можно посмотреть в файле выгрузки (образец), полученном из АЗОН. 

Реквизиты банка и основание платежа ("согласно платежному поручению № ....") определяется из документа "Платежное поручение исходящее", введенного на основании Зарплаты к выплате. 

 

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

 

Полученный документ загружаем в АЗОН в разделе Ведомости - Загрузка.

 

Пример файла, сформированный в демонстрационной базе УПП: 

 

4. Создание книги Excel

Эта обработка может быть интересна и тем, кому необходимо объединить несколько отдельных табличных документов в один файл Excel. Для этого можно воспользоваться функцией "ОбъединитьЛистыВЕдиныйФайл" в которую передаются массив табличных документов и каталог для сохранения итогового документа.

 

Для табличного документа можно заранее определить имя листа, передав его в свойстве "ИспользуемоеИмяФайла":

ЛистИнформации = Новый ТабличныйДокумент;
ЛистИнформации.ИспользуемоеИмяФайла = "Info"; //Задаем имя листа в книге XLS

Листы будут добавляться в книгу Excel в том порядке, в котором добавлены в массив:

МассивЛистов = Новый Массив;
МассивЛистов.Добавить(ЛистРеестрНачислений);
МассивЛистов.Добавить(ЛистИнформации);
МассивЛистов.Добавить(ЛистПлатежей);	
		
ИмяФайлаExcel = ОбъединитьЛистыВЕдиныйФайл(МассивЛистов, ДанныеДляПечати.Каталог, ДанныеДляПечати.ИмяФайла);

Функция возвращает путь к полученному файлу XLS. 

 

5. Как работает скрипт?

С помощью команды wb = xlwt.Workbook() мы создаем новый документ, в который будем записывать данные.

Далее обходим найденные в текущем каталоге XLS-файлы и добавляем их как отдельный лист к новому документу (wb).

//Создаем новый лист с именем входящего файла
(fileBaseName, fileExtension)=os.path.splitext(fileName)
ws = wb.add_sheet(fileBaseName)

Одной из проблем которая возникла при записи файлов это некорректное форматирование документа. Это удалось исправить с помощью копирования стилей из исходного файла:

//Вначале получаем описание стилей исходного документа
w = XLWTWriter()
process(XLRDReader(in_file,'unknown.xls'), w)
styles =  w.style_list

//записываем данные в ячейку с сохранением стилей оформления
xf_index = rs.cell_xf_index(Ряд, Строка)
ws.write(Ряд,Строка,Значение_ячейки, styles[xf_index])

 

Выполняем копирование всех ячеек для каждого листа и сохраняем выходной файл:

 

wb.save(outfile)

В приложенной печатной форме код модулей открыт. Полный текст скрипта находится в текстовом макете script.

Версия платформы: 8.3.10.Х и старше.

 

Экспорт начислений Альфабанк АЗОН ЗП выгрузка зарплатной ведомости Объединение листов Excel добавление

См. также

Зарплата Регламентированный учет и отчетность Кадровый учет Обновление 1С Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Зарплата и Управление Персоналом 2.5 Бухгалтерский учет Налоговый учет Управленческий учет Акцизы ЕНВД ЕСН Земельный налог ИП, ПБОЮЛ, КФХ Налог на имущество Налог на прибыль НДС НДФЛ ФОМС, ЕФС Транспортный налог УСН ПСН (патентная система налогообложения) Платные (руб)

Пакет обновлений для старых конфигураций 1С:КА 1.1, ЗУП 2.5 и БУХ 2.0 - УСН, НДС 5%, 7%, НДФЛ новая шкала 2025, ЕФС-1, Расчет страховых взносов, Статистика, СЗВ-ТД, 2-НДФЛ, Регламентированная отчетность, Кадровый учет, Прослеживаемость импортных товаров. С 14.04.25 ожидается увеличение стоимости на 10%

30690 руб.

01.04.2020    156221    580    392    

267

SALE! 15%

Загрузка и выгрузка в 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С.

8000 6800 руб.

09.11.2016    244361    1133    912    

1054

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

Реальный помощник, с помощью которого Вы преобразуете необходимые документы для Wildberries, OZON, ЯндексМаркет, Мегамаркет, Aliexpress, Детский мир, МагнитЭкспресс (быв.Казань-Экспресс), Леруа Мерлен, ЭНФАНТА (Акушерство), ЛаМода, Летуаль, Твой дом, Золотое Яблоко в документы "Отчет комиссионера (агента) о продажах" и другие. Работает в 1С:БП 3.0, 1С:БП 3.0 КОРП, 1С:УТ 11, 1С:УНФ, 1С:КА 2, 1С:ERP Управление предприятием. Возможность подключить любые маркетплейсы. Анализ продаж ОZON. 30 дней БЕСПЛАТНОГО пользования!

5400 руб.

12.08.2021    38656    426    68    

178

Загрузка и выгрузка в Excel Логистика, склад и ТМЦ Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Бухгалтер Пользователь Платформа 1С v8.3 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Эволюция не стоит на месте - новая удобная версия функциональной обработки для Вашего бизнеса! Что же Вы получаете? Удобный и интуитивно понятный интерфейс с 3-мя этапами работы. 2 режима - автоматический и ручной. Чтение XLSX, XLSM, CSV, XML/YML форматов без офиса, на любом сервере! Визуальное связывание колонок файла и реквизитов простым перетаскиванием колонок. Создание или обновление номенклатуры с иерархией, характеристик, доп. реквизитов, упаковок, загрузка практически неограниченного количества картинок на одну номенклатуру (с возможностью загрузки в несколько потоков одновременно), с хранением в томах или в базе. Загрузка номенклатуры поставщиков или поиск по их данным номенклатуры. Загрузка доп. реквизитов в характеристики. Загрузка штрихкодов с генерацией новых. Создание элементов справочников и ПВХ "на лету" для выбранных реквизитов. (Обновление от 26.03.2025, версия 9.10 - 9.16)

18000 руб.

20.11.2015    160456    395    384    

522

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

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

19200 руб.

21.03.2023    13856    94    21    

80

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

Загрузка данных отчета о реализации и продаже товаров из сервиса Яндекс.Маркета «Беру» из отчетов Excel для конфигурации: Бухгалтерия предприятия, редакция 3.0; Управление торговлей, редакция 11; Управление торговлей, редакция 10.3; Управление нашей фирмой, редакция 3.0 и Розница, редакция 3.0 в документ «Отчет комиссионера о продажах».

6000 руб.

09.12.2020    27057    277    1    

133

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

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

5940 руб.

27.05.2021    41224    306    106    

235
Оставьте свое сообщение