Имя: Пароль:
1C
1С v8
Прикрепление файлов к документу
,
0 Piter11
 
28.02.12
15:52
Где есть пример как реализовать подкрепление файлов к строке табличной части документа?
1 Рэйв
 
28.02.12
15:54
(0)Тебе прям файл нужен или все таки путь к нему?
2 Piter11
 
28.02.12
15:56
еще не решил, но скорее файл. А где про пути посмотреть?
мне нужно в обычном приложении.
3 asa
 
28.02.12
15:59
Может ошибаюсь но типового механизма нет для прекрипления именно к строке. Просто нужно завести правило именования файлов привязанных к документу с учетом номера строки.
4 asa
 
28.02.12
15:59
+ Понятно надеюсь, что программно, настроек таких нет
5 y88
 
28.02.12
16:00
хранить путь файла, по кнопке ЗапуститьПриложение(Путь);
6 Heckfy
 
28.02.12
16:00
(3) Ошибаешся.
7 asa
 
28.02.12
16:01
(6)Ну так просвети
8 Рэйв
 
28.02.12
16:01
(2)Да просто сделай строковый реквизит с кнопкой выбора.При выборе оргниазуй выбор файла, после выбора записывай в строку его полное имя.

А файл хранить хлопотно и накладно.
9 Heckfy
 
28.02.12
16:05
(7) Хранилище значений в табличной части. Только,я по ходу, тебя не совсем правильно понял. В типовых тоже не встречал.
10 GenV
 
28.02.12
16:06
(0) Сделай реквизит со ссылкой на элемент справочника файлы. А там хошь в базе храни, хошь путь к файлу ...
11 Piter11
 
28.02.12
16:07
спасибо всем. буду думать
12 jump if zero
 
28.02.12
16:10
Не надо думать бери готовое
Документооборот , внутренний документ.
13 asa
 
28.02.12
16:10
(9) Ну тогда лучше уж как я предложил, так я уже делал, привязываешь все к документу, просто заводишь правило именования с учетом строк
14 neomarat
 
28.02.12
16:20
нормально работает. (10) правильно написал - у меня так реализовано
15 andrewks
 
28.02.12
16:24
в типовых даже картинки сделаны как в (10)
16 Vladal
 
28.02.12
16:25
(13) Это если файлохранилище на диске никто не будет трогать.
Например, таким образом хранятся сертификаты к продукции - их почти 2,5 гига сканированных картинок, в БД их явно лепить не следует.

А мелкие ексельки или тексты, особенно, подтверждающие что-либо и которые менять запрещено, хранить в хранилище.

Вот как это сделано у меня:
В документе прилепил кнопочку "Прикрепленный файлы" и обработчик:

// ВЛ - 2011-12-05 - Прикрепленные файлы в форме документа как в Фин 7.7
Процедура ОсновныеДействияФормыФайлы(Кнопка)
   
   Отказ = Ложь;

   Если ЭтоНовый() Тогда
       Вопрос = "Перед вводом файлов и изображений необходимо записать документ. Записать?";
       Ответ  = Вопрос(Вопрос, РежимДиалогаВопрос.ОКОтмена);
       Если Ответ = КодВозвратаДиалога.ОК Тогда
           Отказ = Не ЗаписатьВФорме();
       Иначе
           Отказ = Истина;
       КонецЕсли;
   КонецЕсли;

   Если НЕ Отказ Тогда

       СтруктураДляСпискаИзображений = Новый Структура("ОтборОбъектИспользование, ОтборОбъектЗначение, ДоступностьОтбораОбъекта, ВидимостьКолонкиОбъекта", Истина, Ссылка, Ложь, Ложь);
       СтруктураДляСпискаДополнительныхФайлов = Новый Структура("ОтборОбъектИспользование, ОтборОбъектЗначение, ДоступностьОтбораОбъекта, ВидимостьКолонкиОбъекта", Истина, Ссылка, Ложь, Ложь);
       ОбязательныеОтборы = Новый Структура("Объект", Ссылка);
   УниверсальныеМеханизмы.ОткрытьФормуСпискаФайловИИзображений(СтруктураДляСпискаИзображений, СтруктураДляСпискаДополнительныхФайлов, ОбязательныеОтборы, ЭтаФорма);
   КонецЕсли;
   
КонецПроцедуры

Это в типовой. Если нать, можно нарыть общий модуль РаботаСФайлами.

А в модуль ОбщегоНазначения впихнул такую процедуру:

// ВЛ - 2011-12-05 - Отображает картинку скрепки, если у объекта есть прикрепленные файлы
Процедура ВложенияСписокПриПолученииДанных(ОформленияСтрок) Экспорт
   
   Картинка = БиблиотекаКартинок.ТолькоСкрепка;
   Для Каждого Строка Из ОформленияСтрок Цикл
       
       Если РаботаСФайлами.ЕстьДополнительнаяИнформация(Строка.ДанныеСтроки.Ссылка) Тогда
           Строка.Ячейки.Вложения.УстановитьКартинку(Картинка);
       Иначе
           Строка.Ячейки.Вложения.Текст = "";
       КонецЕсли;
       
   КонецЦикла
   
КонецПроцедуры // РучнаяКорректировкаСписокПриПолученииДанных()

и в списке документа прилепил колонку с пиктограммой скрепки. Вот обработчик:

Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)
   
   .... // тут типовые процедуры
   
   // ВЛ - 2011-12-05 - Скрепка для вложенных файлов
   ОбщегоНазначения.ВложенияСписокПриПолученииДанных(ОформленияСтрок);

КонецПроцедуры
17 Heckfy
 
28.02.12
16:34
А можно в УТ для пример воспользоваться документовм "ПоступлениеТоваровУслуг"
18 tridog
 
28.02.12
16:57
Смотрите БСП
19 Vladal
 
28.02.12
17:09
(18) БСП на УФ. Но этот метод проканает. Я оттуда хотел давеча версионирование подсмотреть, на отчете о версиях споткнулся, он на УФ, а я в них уф..