gifts2017

Прикрепление и хранение файлов в документах и элементах справочников

Опубликовал topasha (topasha) в раздел Программирование - Практика программирования

Простой способ прикрепления и хранения файлов в документах и элементах справочников

Может кому пригодится.

Потребовалось найти простой способ прикрепления файлов произвольного формата к документам и элементам справочников в базах 1C-Предприятия 7.7 исключительно штатными средствами и без использования внешних компонент.
УРБД заказчиком не используется. Удалённые подразделения работают через терминал. Хранение бинарных данных в таблицах базы я счел не целесообразным. К тому же это привело бы к "разбуханию" базы данных, что, в моём случае не допустимо. Да и сами таблицы базы данных для этого плохо приспособлены. Поэтому файлы я решил просто копировать в специальный каталог в неизменном виде.


Сохраняются и открываются прикреплённые файлы с помощью специальной обработки. Обработка вызывается кнопкой (с изображением дискеты) на форме справочника или документа. Как это работает понятно из кода обработки. Он простой и относительно небольшой.

Данное решение очень легко прикручивается к любой конфигурации. Для этого достаточно перенести обработку "ПрикреплённыеФайлы" и скопировать кнопку с вызовом обработки (та, которая с дискетой) на форму документа или элемента справочника. После этого все должно работать.

По просьбе сисадмина добавил отчетик - реестр прикреплённых файлов. В отчет выводится список файлов и объектов программы (документы, элементы справочников), к которым эти файлы прикреплены с возможностью открытия формы.

+ Еще: Если у пользователя название прав "Администратор" и у него отключен контроль прав, то на обработке прикрепления файлов, справа вверху будет видна кнопка [files]. При нажатии на неё откроется окно с прикреплёнными файлами.

Скачать файлы

Наименование Файл Версия Размер
Attach_Files.zip 159
.zip 37,85Kb
28.09.10
159
.zip 37,85Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Аркадий Кучер (Abadonna) 28.09.10 05:10
(0)
исключительно штатными средствами и без использования внешних компонент

Прикрутить formex к конфе - одна строчка в ГМ.
http://infostart.ru/public/74232/
После этого используй себе в ДопГМ
ПослеОткрытия(Контекст) и, например, Процедура ПриНажатииКнопкиКлавиатуры(Контекст,КодКлавиши,Alt,Shift,Ctrl,Символ,ФСО)
Волшебное слово Контекст как раз будет содержать объект со всеми потрохами.
Все "на лету", вызывай что хочешь. В предложенном решении на каждую нужную форму надо положить кнопку, а это уже приличные изменения конфигурации
2. topasha (topasha) 28.09.10 07:10
Пользователям именно кнопка на форме нужна :( . Так они выдрессированы. Нет кнопки - считай, что нет обработки. До этого я иконку в пользовательский интерфейс вставлял - не видят. А на форме - так пожалуйста, всё в порядке. Пользуются и не жужжат.
antares2010; +1 Ответить 1
3. Алексей (ACE$) 28.09.10 09:01
кстати да, сколько раз замечал, что пользователи в принципе не замечают кнопок на панелях инструментов. Им обязательно подавай кнопки на формах! Даже в нашей базе учета оргтехники, я сделал удобные панели со всем самым необходимым. Нет! Не пре... Даже клавиатурные сокращения не используются.
4. Алексей Плутенко (Noy) 28.09.10 10:55
Однозначно лучше было бы:
Формекс + ПослеОткрытия + Дополнительная Вкладка (или программно создаваемая кнопка, например как тут: Расширенные настройки для отчетов )
Вроде бы видел такое решение на инфостарте - не могу найти :(

(2),(3) Это смотря как учить. У меня большинство пользователей не могут жить без Быстрый доступ к отчетам и HotKey Менеджер для 1С
5. topasha (topasha) 28.09.10 12:55
Подправил и обновил конфигурацию.
Добавил отчетик - реестр прикреплённых файлов. В отчет выводится список файлов и объектов программы (документы, элементы справочников), к которым эти файлы прикреплены с возможностью открытия формы.

И еще. Если у пользователя название прав "Администратор" и у него отключен контроль прав, то на обработке прикрепления файлов, справа вверху будет видна кнопка [files]. При нажатии на неё откроется окно с прикреплёнными файлами.
6. Alexander Nick (nickkey) 29.09.11 05:28
способ неплохо подходит скажем для написания документооборота в любом виде спасибо автору :)
8. Людмила Реммеле (vasya_l) 29.10.11 09:10
Используем, с большим успехом после небольшой доработки. Очень нужная вещь в условиях удаленной работы главного бухгалтера.
9. Эдуард Аскадуллин (AERoport) 16.09.12 22:59
Неплохое решение. Используем. посмотрим как на большом объеме будет работать. Способ формирования структуры каталогов для хранения на мой взгляд чудной, но вполне работоспособный.
10. rimma_n (rimma_n) 13.03.14 16:15
Очень понравилась обработка, спасибо автору огромное!!! Удобно хранить всяческие сканы. Поддерживаю про кнопку на форме. Нет излишней информации о всех хранящихся файлах, доступны файлы только для данного элемента.
11. Дониэла Иванова (Доня) 29.10.14 12:12
Да! Пользуюсь очень давно.
Просто супер!!!
++++++++++++


12. Сергей Фамилия (antares2010) 09.12.14 13:32
Спасибо. Но нужно будет доработать под собственные нужды.
13. Сергей Фамилия (antares2010) 12.12.14 12:55
Возможно ли сделать, чтобы обработка переименовывала прикрепляемый файл? В моём случае с номенклатурой, например так: код_наименование.jpg
14. topasha (topasha) 12.12.14 18:57
Можно и с переименованием файла сделать. Лишь бы не получилось файлов с одинаковыми именами в одной папке.
15. Сергей Фамилия (antares2010) 15.12.14 06:54
(14) topasha, Как? Можно ещё дату добавить в имя файла, чтобы избежать совпадения имён, хотя в моём случае с номенклатурой это не нужно, поскольку коды уникальны.
16. Сергей (Che) Коцюра (CheBurator) 02.09.16 01:04
Много лет лежала в закладках, наконец внедрил ;-)
Полезная вещь, такую лдавным-давно хотел сделать, и что хорошо - структура хранения точно как я и хотел.
Обработка не без "шероховатостей" (за счет простоты), но вполне себе!

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