Перенос сообщений 1с отчетности в присоединенные файлы
Эта публикация касается электронного документооброта с контролирующими органами непосредственно из программных продуктов 1С ("1С-Отчетность").
Отличная вещь скажу я вам, даже работает уже во всех типовых конфигурация на платформе "1С:Предприятие 8" и главное везде одинаковый принцип работы и объекты метаданных.
Но есть проблема, с которой я сталкиваюсь постоянно.
У меня несколько юридических лиц, которые ведут бухгалтерский учет в "1С:Бухгалтерии", а персонифицированный в "1С:Зарплате и управление персоналом". В обеих информационных базах у меня одна и таже учетная запись для электронного документооборота.
Из "1С:Зарплата и управление персоналом 8" я отправляю отчетность в ПФР и ФСС, а из "1С:Бухгалтерия 8" во все остальные контролирующие органы. И бывает такая ситуация, что отправил я отчетность из одной информационной базы, а ответ получил в другую. В результате у меня ни в одной из баз нет целой картины. Приняли у меня отчет или нет, что написано в протоколе, и так далее я уже не могу узнать.
Почему так происходит? Я могу только предполагать, что происходит это следующим образом:
2) Содержимое почтового ящика хранится на сервере оператора связи или провайдера, который предоставляет услугу электронного документооборота. Но данные там хранятся только до передачи их адресату. Письма полученные адресатом удаляются с сервера оператора и второй раз их уже не получишь.
Вот и получается, что писал письмо в одном месте, а получил ответ в другом. Несмотря на то что данные не теряются, а лишь располагаются в разных местах, объединить их штатными средствами не представляется возможным.
Объясню по-простому механизм электронного документообррота в 1С-Отчетности:
1) Создаем некое письмо для контролирующего органа, допустим декларацию по НДС.
Как работать с обработкой:
Допустим вы отправили декларацию НДС из ПП "1С:Бухгалтерия", а ответ от ИФНС получили в ПП "1С:Зарплата и управление персоналом".
1) Заходим в ПП "1С:Зарплата и управление персоналом" и запускаем обработку.
2) Указываем параметры подключения к ПП "1С:Бухгалтерия".
4) Нажимаете кнопку Перенести. Ждете. Готово.
Данная обработка работает на платформах "1С:Предприятие" 8.2 и 8.3 в толстом клиенте на обычном приложении.
Так как 1С не предлагает решения описанной проблемы, то я хотел бы развить эту обработку и предоставить возможность работы на управляемых формах, но мне нужна ваша помощь в тестировании. Также я хочу понять актуальна ли эта проблема или есть другое более простое решение. Жду ваших комментариев.
Любая конфигурация 1С позволяет пользователю хранить электронные документы. Это могут быть входящие и исходящие документы, получаемые с помощью сервиса 1С-Отчетность: уведомления, ответы на требования, сверки, письма и т.п. Чем больше файлов в базе, тем больше она «захламляется» и начинает тормозить в работе. Есть несколько способов, чтобы как можно дольше поддерживать активную работоспособность базы. Можно изначально уменьшить размер отправляемых файлов, можно перенести базу на сервер, тем самым «дав ей больше места», а можно и почистить текущую рабочую базу, выгрузив лишние данные. Вот как раз именно о последнем способе и поговорим в этой публикации.
Где находятся вложенные файлы в 1С?
Посмотреть вложения (прикрепленные файлы) пользователь может, нажав на «кнопку-скрепку» – «Присоединенные файлы».
Документы могут быть различных форматов:
• сканированные документы в формате JPG, PNG, TIF, PDF.
Пользователь может присоединять документы любого формата в справочники и журналы документов, например, текстовые документы Word, таблицы Excel, архивы и т.п.
Обратите внимание на «кнопку-скрепку», имеющуюся в большинстве журналов и документов.
Нажав ее, можно в базу 1С загрузить любой документ, прикрепив файл с диска.
О том, что имеется прикрепленное вложение, пользователю подсказывает значок в виде скрепочки.
Загрузить можно не только через журналы или документы, но и в справочники 1С, например, договор контрагента в раздел «Справочники» - «Договоры».
Данный функционал очень удобен: документы хранятся в базе и всегда под рукой, можно в любой момент посмотреть его, не перебирая папки. Но со временем это приводит к увеличению объема информационной базы и может доставлять неудобства в работе, вызывая зависание и притормаживание базы 1С.
Что сделать, чтобы таких проблем не возникало? Рассмотрим возможные пути решения задачи.
Архивация документов 1С: возможные варианты решения
1С предлагает следующие варианты решения:
1 вариант: хранение файлов на диске компьютера в томах – настройка, в результате которой все документы будут храниться в отдельной папке на диске компьютера или сервере, и будут доступны из базы 1С пользователю так же, как если бы они хранились в самой базе.
2 вариант: архивирование документов 1С – сохранение всех документов из базы 1С в архив. При этом файлы удаляются из информационной базы и будут недоступны из программы. Но пользователь может в любой момент восстановить их при необходимости.
Какой из вариантов хранения данных использовать решать пользователю.
Рассмотрим настройку обоих вариантов.
Сразу скажем: какой бы из вариантов вы не выбрали вы должны СДЕЛАТЬ КОПИЮ БАЗЫ . И не потому что, что-то может пойти не так при выгрузке данных, хотя от этого никто не застрахован…
При очищении лишних файлов из базы в большинстве случаев вы не сможете к ним больше вернуться!
Например, у вас в базе есть требование о предоставлении документов. И есть ваш ответ на это требование с вложенными файлами. Так вот при очищении данных вы больше не увидите вложенные файлы, их просто не будет в базе. Само требование вы увидите, но провалиться в него и посмотреть текст требования тоже не сможете. Поэтому, копия базы обязательно у вас должна быть загружена рядом с основной рабочей базой, так как к старым требованиям, отчетам, файлам вы можете возвращаться неоднократно в процессе текущей работы.
Предупрежден - значит вооружен!
Если боитесь сами делать эти процедуры – обратитесь к специалистам 1С.
Приступим к рассмотрению вариантов очистки 1С от лишних файлов.
Хранение файлов на диске компьютера в томах
Данная настройка применяется для всей базы 1С в целом и таким способом будут храниться все документы, прикрепленные в 1С. Пользователь при такой настройке не заметит разницы в работе, как если бы документы сохранялись в самой базе.
Шаг 1. Перейдите в раздел «Администрирование» и в подразделе «Настройки программы» откройте «Настройки работы с файлами».
При настройке хранения файлов в томах на диске возможны два варианта хранения:
• в томах на диске;
• в информационной базе и томах на диске.
В первом варианте – «в томах на диске» - все документы будут храниться на диске, в соответствии с дальнейшей настройкой.
При использовании второго варианта хранения – «в информационной базе и томах на диске», пользователь может более гибко настроить, что хранить в ИБ 1С, а что отправлять на диск. В этом варианте в базе 1С могут храниться файлы, заданные в настройке – поле «Расширения файлов, хранящихся в информационной базе». Пользователь задает их, указывая расширения через пробел. Выбрав из предопределенного списка, перечень можно откорректировать, убрав «лишнее».
Пользователем задается ограничение по объему присоединяемого файла, исходя из которого определяется, где файл будет храниться – на диске или в базе 1С – поле «Максимальный размер файла в информационной базе.
Пока пользователь не выполнит настройку хранения файлов в томах, они будут храниться в информационной базе. Переключаясь, программа напомнит об этом и предложит выполнить настройку томов хранения информации.
Определившись с вариантом хранения, перейдите к настройке томов.
При установленной галочке «Создавать подкаталоги с именами справочников-владельцев файлов», файлы в томах будут размещены в папках-подкаталогах.
Шаг 2. Щелкните мышкой по гиперссылке «Тома хранения файлов».
Шаг 3. В окне «Тома хранения файлов» нажмите «Создать» и выполните настройку.
Шаг 4. Укажите произвольно наименование тома и пусть к нему на сервере. Задайте предел тома в мегабайтах (МБ)
Путь к папке для хранения документов обязательно должен быть сетевым, иначе программа не даст сохранить настройку.
Если сеть настроена, и доступ открыт для других ПК, достаточно создать папку для хранения документов 1С и указать ее в настройке.
А как это сделать, если у вас нет сети и надо создать папку на текущем компьютере?
Шаг 5. Создайте папку на диске. В нашем примере это папка «Документы 1С» на диске «D». Щелкните на ней правой кнопкой мышки, выберите «Свойства».
Шаг 6. На закладке «Доступ» нажмите кнопку «Общий доступ…».
В открывшемся окне нажмите «Готово» - сетевой путь к папке открыт».
Сетевой путь можно скопировать на закладке «Доступ».
Если у пользователя доступ к папке уже был открыт, проверьте и скопируйте путь к папке, затем укажите его в поле настройки хранения томов.
Шаг 8. Прописав путь к папке, нажмите «Записать и закрыть». Настройка выполнена.
После настройки хранения файлов прикрепляемых документов 1С в папке на диске, они будут сохраняться на ПК. А как быть с информацией, имеющейся в базе? Ведь она занимает место…
Выполните настройку переноса, отметив, что перенос выполнить из информационной базы в указанный том. Нажмите «Перенести».
При переносе пользователь может задавать дополнительные настройки переноса. Например, отметив «Файлы указанного владельца» - загрузить только договора.
Шаг 10. Перейдите в раздел «Администрирование» - «Обслуживание».
Шаг 11. Разверните раздел «Регламентные операции» и перейдите по гиперссылке «Регламентные и фоновые задания».
В результате запуска переносится только 10 файлов, поэтому пользователю удобнее выполнить настройку расписания выполнения указанного задания, для автоматического запуска переноса по кнопке «Настроить расписание…».
После выполнения процедуры переноса файлов в тома рекомендуется выполнить сжатие таблиц базы 1С, т.к. записи информации все еще хранятся в таблицах базы.
Сжатие таблиц ИБ 1С в режиме «Конфигуратор»
Для того выполните следующие действия.
Шаг 1. Запустите базу в режиме «Конфигуратор».
Шаг 2. Перейдите в раздел «Администрирование» и выберите пункт «Тестирование и исправление …».
Шаг 3. Установите галочку и нажмите кнопку «Выполнить»:
• «Сжатие таблиц информационной базы» - для файлового варианта информационной базы;
• «Реструктуризация таблиц информационной базы» - для клиент-серверного варианта ИБ.
Эта процедура позволит сжать информационную базу, уменьшив ее физический размер.
Архивирование документов 1С
Второй вариант выгрузки документов из 1С – это архивирование, оно выполняется разово, с помощью специальной обработки «Создание архива документооборота», которую можно скачать на сайте 1С.
Напоминаем, что при архивации документов таким способом у пользователя не будет к ним доступа из программы, но при необходимости их можно восстановить этой же обработкой.
1 - Перед работой с любыми обработками рекомендуется сделать резервную копию базы!
2 - Убедитесь, что на диске достаточно места для сохранения данных и выполнения операции!
Шаг 1. Откройте обработку, нажав кнопку «Сервис и настройки», выберите пункт меню – «Файл» - «Открыть».
Шаг 2. Выберите файл внешней обработки – «Создание архива документооборота».
Шаг 3. На предупреждение безопасности системы ответьте «Да», разрешив открыть выбранный файл.
Обработка имеет две вкладки:
• Архивация – для создания архива документов ИБ;
• Восстановление – для извлечения из архива документов в ИБ.
Шаг 4. На закладке «Архивация» укажите каталог архива.
Для удаления файлов из базы 1С в настройках установлена одноименная галочка. Система анализирует объем файлов и выводит пользователю информацию об их объеме. Т.е. такой объем должен быть доступен на жестком диске или ином месте для создания архива. В нашем примере стоит «0 (ноль) Мб», т.к. в базе нет прикрепленных документов.
Обработка имеет дополнительные настройки.
• ограничение периода обработки документов;
• выбор группы объектов для выгрузки: по видам объектов или контролирующему органу.
Шаг 5. Установив настройки нажмите кнопку «Архивировать».
Шаг 6. Нажмите «Закрыть» - архивация выполнена.
По окончании архивации выполните сжатие таблиц информационной базы в режиме «Конфигуратор», в разделе «Администрирование» - «Тестирование и исправление…». Как это сделать мы рассмотрели выше.
Восстановление из архива документов 1С
Может возникнуть ситуация, когда пользователю нужно восстановить данные документов в базу, а они были удалении при архивации. Сделать это можно с помощью этой же обработки на закладке «Восстановление».
Для загрузки файлов из архива, достаточно указать путь к нему и нажать кнопку «Восстановить».
Загрузка файлов из архива возможна только в ту базу 1С, откуда они были выгружены.
При работе с сервисами 1С-Отчетность и 1С-ЭДО входящая и исходящая корреспонденция (письма, документы и пр.) при отправке и получении сохраняется в информационной базе. Также в базе хранятся документы произвольного формата, прикреплённые пользователями к различным справочникам и документам (например, к актам, договорам). Со временем происходит значительное увеличение объёма базы. Это мешает комфортной работе с ней, а также может привести к потере работоспособности вышеуказанных сервисов.
Для решения этой проблемы в программах "1С:Предприятие" реализованы следующие возможности:
1. Настройка, позволяющая сразу сохранять файлы 1С-Отчетности, 1С-ЭДО и пр. в отдельную папку на диске (или на сервере). Файлы не будут сохраняться в информационной базе изначально, но будут доступны из программы так же, как если бы они хранились в базе.
2. Выгрузка уже сохраненной в информационной базе корреспонденции 1С-Отчетностис помощью специальной обработки в архив на диске. Файлы архива будут удалены из информационной базы (с возможностью восстановления, если это потребуется) и станут недоступны из программы.
Хранение файлов в томах на диске
Для настройки первой возможности в разделе "Администрирование"перейдите по гиперссылке "Настройки работы с файлами".
В открывшейся форме установите флажок "Хранить файлы в томах на диске".
При появлении предупреждения, что нужно настроить тома (папки), нажмите"ОК". Перейдите по гиперссылке "Тома хранения файлов".
В появившейся форме настройки томов нажмите кнопку "Создать" для создания нового тома. Укажите наименование тома и путь для хранения файлов.
Для этого перейдите из раздела "Администрирование" по гиперссылке "Обслуживание". Затем перейдите по гиперссылке "Регламентные и фоновые задания".
После переноса файлов в тома необходимо выполнить реструктуризацию (сжатие) таблиц информационной базы для уменьшения ее физического размера. Для этого откройте программу в режиме "Конфигуратор", выберите пункт меню "Администрирование" - "Тестирование и исправление". При работе с файловой базой установите флажок "Сжатие таблиц информационной базы".
При работе с клиент-серверным вариантом базы – флажок "Реструктуризация таблиц информационной базы".
Ниже описан порядок действий для добавления "скрепки" (присоединение файлов) к новому документу "НашНовыйДокумент" (как пример).
1. Копируем справочник с наименованием содержащим на конце словосочетание "ПрисоединенныеФайлы". Например "АвансовыйОтчетПрисоединенныеФайлы".
2. Меняем наименование так, чтобы префикс точно соответствовал наименованию документа, а окончание содержало "ПрисоединенныеФайлы". В нашем случае: "НашНовыйДокументПрисоединенныеФайлы".
3. Меняем ТИП у реквизита "ВладелецФайла" справочника "НашНовыйДокументПрисоединенныеФайлы" на "НашНовыйДокумент".
4. Включаем в состав определяемых типов "ПрисоединенныйФайл" и "ПрисоединенныйФайлОбъект" наш новый справочник "НашНовыйДокументПрисоединенныеФайлы".
5. Расширим состав определяемого типа "ВладелецПрисоединенныхФайлов" нашим документом (ДокументСсылка) "НашНовыйДокумент".
6. Расширим состав типов свойства "Источник" у подписки "ПереопределитьПолучаемуюФормуПрисоединенногоФайла", включив в него справочник "НашНовыйДокументПрисоединенныеФайлы".
7. Расширим состав типов свойства "Источник" подписки УстановитьПометкуУдаленияПрисоединенныхФайловДокументов, включив в него наш новый документ (ДокументОбъект) "НашНовыйДокументПрисоединенныеФайлы".
8. Расширим состав общей команды "ПрисоединенныеФайлы" и "ПрисоединенныеФайлыБП", включив в него наш новый документ (ДокументСсылка).
Если необходимо добавить "Скрепку" на форму списка (в типовом варианте должна добавиться автоматически), чтобы картинка значения появлялась при наличии прикрепленных файлов у документа (строка в списке), то выполняем следующие действия:
1. В форме списка, у реквизита "Список" имеющего тип "ДинамическийСписок" выставляем галку "ПроизвольныйЗапрос", после чего открываем настройку списка (в там же в свойствах) и добавляем в блок "Выбрать":
НаличиеФайлов.ЕстьФайлы КАК ЕстьФайлы
2. После того, как поправили запрос, в реквизитах списка появится "ЕстьФайлы". Перетаскиваем реквизит в табличное поле и указываем в свойствах:
Объем присоединенных файлов достиг 75% от объема БД. Резервное копирования и разворачивание БД для разработчиков стало занимать много времени. Принято решение перенести все присоединенные файлы в тома.
Обработка написана на основе типовой обработки «Перенос файлов в тома» конфигурации УТ 11.1.10.94.
Типовая обработка переносит файлы по справочнику «Версии файлов» из регистра сведений «Хранимые файлы версий», а предлагаемая по всем справочникам присоединенных файлов из регистра сведений «Присоединенные файлы». В обработке формируется текст запроса по метаданным, содержащим «Присоединенные файлы» в наименовании и типом хранения в информационной базе. По всем присоединенным файлам двоичные данные регистра сведений «Присоединенные файлы» переносятся в том.
Версия платформы 8.3.5.1486. Сервер 1С x3 2 Linux Debian.
Для настройки хранения
С оздать общий ресурс на файловом сервере. Например \ FILESERVERSHARE
В 1С настроить работу с файлами. Меню Администрирование — Н астройки работы с файлами — Включить параметр « Хранить файлы в томах на диске».
В
Создать в 1С том для хранения файлов.
Для сервера 1С под управлением Windows указать путь к общему ресурсу для хранения файлов. Для сервера под управлением Linux можно указать только локальный путь. Для этого нужно создать каталог на сервере 1С, в который будет монтироваться общий ресурс.
mkdir / mnt/files/ .
И п римонтировать к созданному каталогу общий ресурс:
mount -t cifs -o username= DOMAIN \ USER ,password= USER_PASSWORD ,dir_mode=0777,file_mode=0777 // FILESERVER / SHARE / /mnt/ files /
Указать для тома локальный путь / mnt/files/. Теперь все файлы будут хран и т ь ся в томе на общем ресурсе
В обработке формируется текст запроса по метаданным, содержащим «ПрисоединенныеФайлы» в наименовании и типом хранения в информационной базе. По всем присоединенным файлам двоичные данные регистра сведений «Присоединенные файлы» переносятся в том.
Обработка запускалась на конфигурации УТ 11.1.10.94.
После выполнения обработки нужно выполнить shrink на MS SQL или vacuum на Postgresql. На файловой версии БД выполнить тестирование и исправление с включенным сжатием таблиц.
Читайте также: