bdd2

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

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

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

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

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


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

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

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

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

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

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

См. также

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

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

(2),(3) Это смотря как учить. У меня большинство пользователей не могут жить без Быстрый доступ к отчетам и HotKey Менеджер для 1С
5. topasha (topasha) 22 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) 17 16.09.12 22:59 Сейчас в теме
Неплохое решение. Используем. посмотрим как на большом объеме будет работать. Способ формирования структуры каталогов для хранения на мой взгляд чудной, но вполне работоспособный.
10. rimma_n (rimma_n) 165 13.03.14 16:15 Сейчас в теме
Очень понравилась обработка, спасибо автору огромное!!! Удобно хранить всяческие сканы. Поддерживаю про кнопку на форме. Нет излишней информации о всех хранящихся файлах, доступны файлы только для данного элемента.
11. Дониэла Иванова (Доня) 263 29.10.14 12:12 Сейчас в теме
Да! Пользуюсь очень давно.
Просто супер!!!
++++++++++++


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

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