Эпиграф:
Всё, что есть прекрасного в этой жизни,
либо аморально, либо незаконно,
либо приводит к ожирению.
© Оскар Уайльд
Понятно, что впихнуть невпихуемое не получится. Но вполне возможно вынести присоединенные файлы из базы 1С не на файловые тома хранения, а в СУБД. Это снизит скорость доступа, но вернет надежность и безопасность.
Примерно раз в год, на Инфостарте и/или на сайтах франчайзи появляются разработки, осуществляющие перенос файлов в СУБД.
Чего в них не хватает? Они (те которые я видел) переносят либо все, либо ничего. Хотя весь мир заодинэсья давно уже знает, что такое разноуровневое хранение.
Когда "горячие" данные (к которым идет постоянное обращение) остаются на быстром СХД, а "холодные" уходят на более медленное, зато более дешевое по накладным расходам хранения.
Данная разработка как раз и реализует подобный подход.
Запись присоединенных файлов всегда происходит типовыми механизмами в базу 1С, это обеспечивает скорость и надежность.
Далее, вручную или регламентным заданием по произвольному отбору эти данные могут быть в нерабочее время перемещены в ADODB совместимую СУБД и оттуда уже читаются может быть вообще никогда.
Для того, чтобы понять, какие файлы переносить, в расширении предусмотрено ведение статистики обращения к файлам.
С нее и рекомендуется начать работу.
Что получается в результате работы разработки:
Часть присоединенных файлов хранится в базе 1С, часть во внешнем хранилище.
Все это происходит прозрачно для пользователя.
Безопасность и надежность внешнего хранения обеспечивается обезличенным хранением, вычислением хеш-функции как в момент переноса файла (в этот же момент происходит контрольное считывание файла и сверка CRC), так и средствами СУБД.
Кроме того реализованы возможности сверки CRC в любой момент по всему объему хранения и при считывании файла из СУБД по запросу 1С.
При этом полностью соблюдается лицензионное соглашение 1С о неизменности структуры хранения базы данных 1С.
Внимание!
В виде расширения под типовые конфигурации разработка в рабочих базах не проверялась, поэтому вы должны осознавать и принимать ответственность за свои данные.
В частности обязательно сделать/делать бекапы базы 1С и СУБД.
Возможности разработки можно посмотреть на видео:
Что нужно знать и уметь делать самостоятельно для корректного использования обработки:
1. Уметь пользоваться и знать что такое ADO/ODBC.
2. Уметь пользоваться и иметь настроенную базу 1С (типовой или близкой к типовой конфигурации, список проверенных ниже по тексту), уметь подключать внешние обработки
3. Знать, что такое двоичные данные
4. Знать, что такое присоединенные файлы 1С
5. Уметь делать бэкапы и восстанавливаться из них
6. Обработка проверена на редакциях:
для России:
- Документооборот 8 КОРП, редакция 2.1 (2.1.28.12)
работа на редакциях отличающихся вторым октетом (после первой точки) или выпущенных ранее 6 месяцев от указанных, не гарантируется и возврат денег по этой причине не производится
Также возможна, но не обязательно реализуема автором, адаптация под любую имеющуюся у пользователя типовую или нетиповую конфигурацию.
Требований к хранилищу СУБД нет, главное чтобы оно поддерживало ADODB.
Полностью проверены:
- Microsoft Access
- Microsoft SQL
Установка и использование обработки:
- Обработка выполнена с использованием управляемых форм, соответственно, для конфигураций с обычным интерфейсом требует для работы включения в конфигурацию либо запуска в управляемом интерфейсе.
- Может использоваться платформа 8.3.12.х и старше
7. Код открыт и может быть доработан вами самостоятельно.
8. Принтскрины и видео могут быть для конфигурации не совпадающей с вашей, и могут отличаться по внешнему виду, но пункты меню и названия разделов для их открытия будут одинаковыми для всех типовых конфигураций.
9. Очень важная информация! Техподдержка сайта и разработчик это разные люди.
- Техподдержка сайта в рабочее время ответит вам на вопросы связанные с приобретением обработки любым удобным для вас способом общения.
- Разработчик ответит только в электронном виде. Срок ответа может достигать 24 часов в рабочие дни. Поэтому желательно, чтобы возникшая проблема была описана достаточно понятно. Это в ваших интересах.
- Все дополнительные работы разработчиком производятся в нерабочее время.
- Для предложений по улучшению и изменению функционала есть комментарии к этой публикации.
- Так же разработчик никак не связан ни с 1С, ни с Microsoft , поэтому предусмотреть все возможные случаи использования обработки у него не получается. Спокойно опишите возникшую проблему и спокойно попробуем ее решить.
Внимание!
Если вы не поняли полностью или частично написанных выше строк, для внедрения обработки вам нужно обратиться к специалисту или подождать пока сама фирма 1С реализует нечто подобное в типовых конфигурациях.
Эти и другие вопросы можно задать в комментариях публикации или сообщении разработчику перед покупкой.
Обработка продолжает серию публикаций.
Ошибки и предупреждения журнала регистрации. Для любой типовой конфигурации 1С: Предприятие 8.3
Постановка задачи:
Необходима реализация в 1С разноуровневого хранения присоединенных файлов.
Решение:
Расширение конфигурации, внешняя обработка 1С, которые реализуют этот функционал.
Внимание!
Предполагается для начала аккуратное заполнение всех необходимых файлов в 1С.
Файлы нулевой длины не переносятся.
Порядок работы:
Не забываем про бэкап!
Подключаем расширение конфигурации и убираем флажок безопасного режима.
Подключаем обработку и отчет в 1С как внешние - рекомендуемый вариант действий.
После этого начнет собираться статистика использования файлов, ее можно увидеть отчетом.
По этой статистике можно построить запрос переноса файлов во внешнее хранилище.
Например все старше 1 года и не открывавшиеся в течении этого года.
Перенос файлов осуществляется внешней обработкой, ее можно для безопаасности не подключать в базу 1С.
Демо-настройки позволяют проверить основные моменты на файловых базах и 1 файле
Что в поставке публикации:
- обработки 1С
- скрипт создания БД Microsoft SQL
- текстовый файл с настройками на всякий случай
Пример хранения файлов в СУБД
Пример информации о хранении файлов - регистр сведений 1С
Небольшая статистика
Документооборот 8 КОРП, редакция 2.1 (2.1.28.12) 476 файлов размером 25 Мб
ПолучитьНавигационнуюСсылку ВоВременномХранилище Все файлы в 1С | ПолучитьНавигационнуюСсылку ВоВременномХранилище Все файлы в хранилище | Длительность переноса файлов во внешнее хранилище | Длительность возврата файлов в базу 1С | |
---|---|---|---|---|
Microsoft Access Driver={Microsoft Access Driver (*.mdb, *.accdb)} | 2 | 270 | 630 | 318 |
SQL EXPRESS Driver={ODBC Driver 17 for SQL Server} | 2 | 238 | 511 | 252 |
SQL EXPRESS Driver={SQL Server} | 2 | 235 | 531 | 253 |
MS SQL Driver={SQL Server} | 2 | 76 | 196 | 114 |
SQL EXPRESS Driver={SQL Server} ADODB.Stream |
2 | 12 | 31 | 15 |
UPD 26.04.2021 : Перешел на ADODB.Stream вместо потоков 1С при работе с двоичными данными и получил прирост скорости кратно
Расширение в поставке заменено.
Требования к запуску расширения:
Расширение предназначено для использования с актуальными типовыми конфигурациями, или нетиповыми, но включающими в себя библиотеку стандартных подсистем.
Установка и использование расширения:
- Расширение выполнено с использованием управляемых форм.
- Может использоваться платформа 8.3.16.х и старше
Поддержка отчета, лицензирование:
- Расширение не имеет ограничений по периоду действия, количеству организаций и информационных баз.
- При возникновении вопросов по работе с отчетом, их можно обсудить в комментариях к публикации, личных сообщениях либо по e-mail, указанному в письме с отчетом.
- Не верю, что кто то этого может не знать, но специально для ИТ партнеров ОЗОН
Разработка защищена авторским правом! То, что вы его скачали, не означает, что вы можете его бесплатно распространять на сайте ОЗОН и где бы то ни было.