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

Опубликовал Igor030370 в раздел Администрирование - Системное

Бывает так, что необходимо прикреплять сканы документов, фотографии, схемы и прочее к любым документам и справочникам. Предложенная универсальная система позволяет сохранять прикрепления в ИБ, на общем или локальном диске и FTP. Работает на конфигурациях 1С, которые поддерживают механизм подключаемых внешних печатных форм и не только (например, КАМИН:Зарплата 3.0).

Как это подключить?
1. Объедините вашу конфигурацию с предложенной. При объединении не забудбте снять галочку Конфигурация-Свойства!
2. В регистре сведений "ХранилищеФайлов" для измерения "Объект" проставьте галочки для справочников, которые нужны для прикреплений.
3. В доп. внешние печатные формы добавьте обработку "ФайлыВложения.epf". Зарегистрируйте её для нужных документов.
Как с этим работать?
1. Настройте систему хранения файлов в регистре сведений "НастройкаХраненияФайлов".
2. Можно работать... Для прикрепления файлов к элементу справочника нажмите кнопку "Перейти" в форме списка. Для прикрепления файлов к документам нажмите кнопку Печать -

Файлы

Наименование Файл Версия Размер Кол. Скачив.
Конфигурация
.cf 44,00Kb
13.08.13
214
.cf 44,00Kb 214 Скачать
Обработка
.epf 6,74Kb
13.08.13
258
.epf 6,74Kb 258 Скачать

См. также

PowerTools от 1 000 руб.
XDTO - часть 3 от 500 руб.

Комментарии

1. fishca 08.09.2011 21:49
1. не понял фразу
При объединении не забудбте снять галочку Конфигурация-Свойства!

2. оформи со скриншотами, будет наглядно и красиво, плюсики и потянутся косяками
# Ответить
2. Angeros 09.09.2011 04:52
Вроди как есть подобная подсистема в 11 торговле и упр небольшой фирмой. Скажу больше там даже есть непосредственная работа со сканером.
# Ответить
3. Igor030370 09.09.2011 08:26
RE> 1. не понял фразу
Цитата
При объединении не забудбте снять галочку Конфигурация-Свойства!

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

RE> 2. оформи со скриншотами, будет наглядно и красиво, плюсики и потянутся косяками

Не считаю это необходимым. Кому понравица идея, тот поюзает и оценит полезность или бесполезность использования.

RE>
Цитата.

Вроди как есть подобная подсистема в 11 торговле и упр небольшой фирмой. Скажу больше там даже есть непосредственная работа со сканером.

Предложенным решением можно пользоваться в любых конфигурациях, где нет такой функциональности в поставке. Например, в самописных или других разработчиков кроме 1С. Я, честно говоря, не видел этого решения от 1С, и возможно, изобрел велосипед. Но думаю, что оно сильно интегрировано в конфигурацию УТ 11 и наверно трудно будет выковырять её от туда, чтобы добавить в другую.
# Ответить
4. oleg974 09.09.2011 10:26
Для нормальных разработчиков самописных конфигураций существует 1С:Библиотека стандартных подсистем.
http://v8.1c.ru/ssl/intsub/
# Ответить
5. Igor030370 09.09.2011 11:40
oleg974 пишет:

Для нормальных разработчиков самописных конфигураций существует 1С:Библиотека стандартных подсистем.

http://v8.1c.ru/ssl/intsub/

выходит я ненормальный разработчик. Ну да ладно.http://frankfurt2011.cars.ru/photos/20361234/то поупражнялся на досуге.
# Ответить
6. Igor030370 09.09.2011 11:41
извеняюсь в предыдущем посте случайно ссылку кинул
# Ответить
7. fishca 09.09.2011 11:49
Не считаю это необходимым. Кому понравица идея, тот поюзает и оценит полезность или бесполезность использования.

а зря...не хочешь оформлять красиво, не надо, тебя никто не заставляет.
# Ответить
8. tnikolas (файл скачал) 09.02.2012 10:42
Вот скажи, а почему когда делаешь кнопку под все это дело, форма списка открывается все норм, по когда прикрепляешь файл ругается
{РегистрСведений.ХранилищеФайлов.Форма.ФормаСписка.Форма(83)}: Значение не является значением объектного типа (УникальныйИдентификатор)
л_ПапкаОбъекта=л_ОбщаяПапка+"\"+п_Объект.УникальныйИдентификатор();
Он не может почему то ссылку на объект увидеть??? Как? Почему?
Ответили: (10)
# Ответить
9. haous 09.02.2012 13:22
Полезная штука. Нужно попробовать. Спасибо!
# Ответить
10. Igor030370 22.03.2012 16:56
(8) tnikolas,

Проставь в конфигураторе для измерения "Объект" галочки для справочников и документов. Должно всё работать.
# Ответить
11. umorochka (файл скачал) 04.10.2012 13:04
Допустим каталог сохранения файла настроен не правильно если такой каталог не найден, он ничего не говорит. И когда уже прикрепляем файл он говорить что файл успешно записан! но при попытке открыть его говорит что каталог не найден. Как сделать так чтобы при неправильной настройке каталога выдавалось предупреждение
# Ответить
12. Igor030370 06.10.2012 21:12
ответ очевиден... надо проверять существование каталога ещё до записи файла. можете это сделать самостоятельно....
)))
# Ответить
13. umorochka (файл скачал) 08.10.2012 13:17
А можете написать что куда добавить .....я не программист а обработка понравилась. Заранее спасибо
# Ответить
14. Igor030370 23.10.2012 10:22
Дело в том, что когда у вас в настройке сохранен каталог, которого в реальности нет на диске, то система попытается создать новый каталог как настроено в регистре. И всё равно сохранит туда прикрепленный файл.

Вы скорее всего переименовали или переместили папку в которую сохранялись файлы прикреплений!
Если вы являетесь системным администратором или хотя бы с ним дружите, то советую обратиться к нему с просьбой создать скрытый каталог на общем сетевом ресурсе. В регистре настроек сохранения файлов пропришите путь этой скрытой папке.
Ответили: (15)
# Ответить
15. umorochka (файл скачал) 23.10.2012 14:41
(14) Igor030370, Спасибо за ответ , а еще как бы сделать так чтобы в документах в форме списка напротив документа к которому прикреплен файл высвечивалась напримет скрепочка.
# Ответить
16. Igor030370 23.10.2012 16:35
это сделать очень просто, только придёца изменить форму списка документа.
Надо добавить небольшой код в процедуру ПриВыводеСтрок() для табличногоПоля.
Ответили: (17)
# Ответить
17. Igor030370 25.10.2012 16:32
(16) Igor030370,
могу сделать на возмездной основе)
# Ответить
18. Гость 12.02.2013 14:52
Не работает на задачах пользователя в УТ 10.3... Кто подскажет? Пишет ошибку: Ошибка в процедуре "ДобавитьЗаписьВРегистр(...)" {РегистрСведений.ХранилищеФайлов.Форма.ФормаСписка.Форма(280)}: Ошибка при вызове метода контекста (Записать): Запись не верна! Значение поля "Объект" не может быть пустым!: ХранилищеФайлов: 12.02.2013 14:48:26, , , 1, .doc (Регистр сведений: Хранилище файлов)
# Ответить
19. Igor030370 12.02.2013 20:22
Выполните пункт 2 из текста публикации (см. картинка Справочники_типы.jpg)
Ответили: (20)
# Ответить
20. nedvid1983 13.02.2013 09:13
(19) Igor030370, в этом и проблема... ЗадачиПользователя добавил, как объект (
Ответили: (21)

Прикрепленные файлы:

123.JPG
# Ответить
21. Igor030370 13.02.2013 09:48
(20) nedvid1983,

Откройте форму списка регистра "ХранилищеФайлов" и добавьте в составной тип реквизита формы "ОбъектВладелец" значение "ЗадачаСсылка"
Ответили: (22)
# Ответить
22. nedvid1983 13.02.2013 10:26
(21) Igor030370, Спасибо огромное, заработало!!! А может ещё подскажите, как мне при открытии формы списка регистра Хранилище файлов убрать отбор, ну чтоб все загруженный файлы отображал? Ещё раз огромное спасибо...
# Ответить
23. Igor030370 13.02.2013 11:08
Отбор устанавливает
Процедура ПриОткрытии()
Если НЕ Отбор.Объект.Использование Тогда
л_Отбор=РегистрСведенийСписок.Отбор;
л_Отбор["Объект"].Значение=ОбъектВладелец;
л_Отбор["Объект"].Использование=Истина;
л_Отбор["Объект"].ВидСравнения=ВидСравнения.Равно;
л_Отбор["Объект"].Установить();
Иначе
ОбъектВладелец=Отбор.Объект.Значение;
КонецЕсли;

КонецПроцедуры

Можно на форме реализовать флажок (или кнопку, дело вкуса), которая будет отключать отборы.
Лучше давать видимость такой кнопке пользователю с определёнными правами (например, "ПолныеПрава"), а то такой режим работы формы не является основным для всех пользователей.
Ответили: (24)
# Ответить
24. nedvid1983 13.02.2013 16:43
(23) Igor030370, все верно, так, как просмотр всех файлов Хранилища файлов нужен избранным, добавил форму, в которой сбросил отбор... ещё раз спасибо
# Ответить
25. nedvid1983 27.02.2013 09:59
Добрый день, у меня ещё вопросы есть... А как добавить кнопку на связанные регистры сведений (Хранилище файлов) например в форму элемента? У меня данная кнопка только на командной панели. Или как добавить файл в хранилище, а потом на этом файл указать ссылку для его открытия?
# Ответить
26. Igor030370 27.02.2013 10:47
Если нужно определить из всего списка прикрепленных файлов к объекту один основной и выводить его на форму диалога объекта, то можно завести в регистре сведений "ХранилищеФайлов" реквизит, например, "ОсновнойДляОтображенияНаФорме" типа "Булево".
Изменить форму списка регистра, чтобы дать возможность устанавливать этот флажок...
Ну а затем переписать модули форм диалогов объектов, чтобы вызывать основное прикрепление по ссылке или кнопке....
Эту доработку сделайте самостоятельно, или я могу за деньги...при этом придётся брать у вас базу
Ответили: (28)
# Ответить
27. alekseies 27.02.2013 13:36
Весьма полезная штука. Можно попробовать............
# Ответить
28. nedvid1983 27.02.2013 15:45
(26) Igor030370, спасибо, понял, что не просто это сделать... А может подскажешь, как сделать... Например я хочу открыть хранилище значений из формы Задача пользователя, но так чтоб отбор был по бизнес-процессу. Можно в форме задачи перейти по ссылке на форму бизнес-процесса, и там открыть хранилище. Но если я пишу
Процедура ДанныеБизнесПроцессаНажатие(Элемент)
ФормаБизнесПроцесса=БизнесПроцесс.ПолучитьФорму("ФормаБизнесПроцесса",ЭтаФорма);
ФормаБизнесПроцесса.Открыть();
ФормаСпискаХранилищаФайлов = РегистрСведений.ХранилищеФайлов.ПолучитьФорму("ФормаСписка");
ФормаСпискаХранилищаФайлов.Открыть();
КонецПроцедуры
тогда ошибка, не найден объект!!! Как указать перед открытием, что объектом будет бизнес-процесс???
# Ответить
29. Igor030370 27.02.2013 16:58
Если вы используете в регистре сведений "ХранилищеФайлов", в измерении "Объект" тип "БизнесПроцессСсылка", то можно так:

ФормаСпискаХранилищаФайлов.ОбъектВладелец=л_БизнесПроцесс;
ФормаСпискаХранилищаФайлов.Открыть();

Но я так понял, что вы делали список файлов для объектов "Задача"?
# Ответить
30. d360256 (файл скачал) 21.06.2013 20:42
Не могу открыть файл epf на конфигурации 1С 8.2

А точнее не могу найти как добавить "внешние печатные формы". ПС в разделе сервис у меня этого пункта нет.
Пытаюсь открыть просто в клиенте через Файл->Открыть.
Получаю пустую форму

Что делаю не так ??
# Ответить
31. Igor030370 22.06.2013 19:51
какая у вас конфа?
Обработка не работает в режиме управляемого приложения!
# Ответить
32. d360256 (файл скачал) 23.06.2013 19:44
У меня пустая конфигурация (я ее пишу с нуля, такая специфика).

Подскажите, что надо сделать чтобы Ваш модуль заработал на пустой конфигурации ?
Или какую мин конфигурацию выбрать, чтобы работал Ваш модуль? (мне много лишнего(проводки счета документы) не нужны)

Спасибо
==
ПС: не очень понимаю что такое управляемое приложение.
Вчера пробовал на 1С бухгалтери. Модуль заработал
# Ответить
33. d360256 (файл скачал) 01.07.2013 10:51
Прошу ответить на мой вопрос:

Как запустить Вашу epf на пустой конфигурации ?
# Ответить
34. Igor030370 01.07.2013 11:28
необходимо забрать из Бухгалтерии 2.0 (или Торговли, или других конфигураций от 1С) механизм подключаемых внешних печатных форм. Далее по стандартной процедуре.....регистрируеш внешнюю печатную форму для нужного документа и на форме (в режиме "предприятие") по нажатию кнопки [Печать] появляется пункт меню, как вы его назвали при регистрации обработки.
# Ответить
35. d360256 (файл скачал) 01.07.2013 11:43
В вашей epf я нашел код функции (Функция Печать(п_Форма="") Экспорт итд)

Может можно просто его вставить (отредактировав) в нужную форму на нажатие какой-нибудь кнопки ?
# Ответить
36. Igor030370 01.07.2013 11:53
можно, конечно, самодельный вызов обработки сделать, но расчитано было на использование стандартных механизмов. Я бы забрал все необходимое из конфигурации от 1С, тем более, что этот функционал существенно расширит возможности вашей самописной конфы.
# Ответить
37. d360256 (файл скачал) 01.07.2013 12:27
спасибо
# Ответить
38. sumixam 14.11.2013 14:37
в управляемом интерфейсе работает???
Ответили: (39)
# Ответить
39. Igor030370 14.11.2013 16:53
(38) sumixam, нет пока
# Ответить
40. sumixam 22.11.2013 15:09
можешь что-нибудь посоветовать для управляемого приложения (пример)
Ответили: (41)
# Ответить
41. Igor030370 22.11.2013 15:13
(40) sumixam,
готового решения нет.
В комментах звучало, что я тут велосипед изобрёл, думаю что правильно говорят.
В УТ 11 есть такой функционал. Думаю в библиотеке стандартных решений ужэ есть такая подсистема, которая для УФ реализована.... копать надо в этом направлении
# Ответить
42. FREEZZEE 23.10.2014 14:09
Сделал мини-отчет по вложенным документам . Может быть кого то заинтересует;-)
# Ответить
43. to_swim (файл скачал) 29.10.2014 20:23
спасибо, все работает отлично.
Такой маленький вопросик...
А можно это обработку прикрепить не через внешние печатные формы... а на прямую к конфе... и кнопку вывести на форму... Или так структура не будет работать?

Заранее спасибо
# Ответить
44. to_swim (файл скачал) 29.10.2014 20:37
спасибо разобрался)
работает на 5 балов
# Ответить
Внимание! За постинг в данном форуме $m не начисляются.
Внимание! Для написания сообщения необходимо авторизоваться
Текст сообщения*
Прикрепить файл