|
Как хранить путь к файлу в табличном поле на форме обработки ? |
☑ |
0
raykom
11.06.14
✎
07:17
|
Неуправляемое приложение. платформа 8.2
На форме обработки имею табличное поле, в котором есть колонка "Файл",
в эту колонку надо записывать путь и имя файла так, что бы из ячейки табличного поля можно было бы открыть файл на просмотр.
Файл .XLS
Вопросы
1. Какого типа нужен реквизит в колонке файл
2.Надо ли писать процедуру для открытия.
3.Если надо писать процедуру, то какой метод используется для открытия ??
Что то кроме предварительного просмотра в СП ничего не увидел похожего.
Спасибо.
|
|
1
raykom
11.06.14
✎
07:35
|
Ну, или хотя бы открыть каталог содержащий файлы так, что бы нужный файл оказался подсвеченым ??
|
|
2
raykom
11.06.14
✎
07:36
|
Кода писать не прошу, просто намекните. Ну там тип реквизита, метод для использования в процедуре )
|
|
3
Molinor
11.06.14
✎
07:42
|
1. Строковый.
2. Надо.
3. Эксель = Новый COMОбъект("Excel.Application"); И так далее.
|
|
4
raykom
11.06.14
✎
07:44
|
(3)
1. Да, уже строковый есть туду пишу
2. Предполагал.
3. Вот, а то я пример только для ОпенОфиса нашел
Спасибо.
ЕЩе рекомендации приветствуются
|
|
5
Molinor
11.06.14
✎
07:46
|
ЗапуститьПриложение("c:\Temp\84х108_32ИзготОдЛиста.xlsx");
|
|
6
MSII
11.06.14
✎
07:58
|
(3) Зачем ему COMОбъект, для "просто посмотреть" хватит и (5)
(4) ЗапуститьПриложение(ЭлементыФормы.ТвоеТабличноеПоле.ТекущиеДанные.КолонкаСодержащаяПутьКФайлу);
|
|
7
Molinor
11.06.14
✎
08:02
|
(6) Да, конечно, перестарался сначала. :)
|
|
8
raykom
11.06.14
✎
08:09
|
(6) Да. А я уже для (3) зворовал вот это )) Подпилил малость но не до конца.
Процедура ДействияФормыОткрытьВExcel(Кнопка)
Попытка
Excel = Новый COMОбъект("Excel.Application");
Исключение
Сообщить("ОШИБКА! Приложение MS Excel отсутствует или недостаточно прав доступа!
| - " + ОписаниеОшибки(), СтатусСообщения.ОченьВажное);
Возврат;
КонецПопытки;
Excel.Workbooks.Open(Файл);
tmpBook = Excel.Workbooks.Item(Excel.Workbooks.Count);
КнигаExcel = Excel.Workbooks.Add();
КнигаExcel.Colors = tmpBook.Colors;
ЛистExcel = КнигаExcel.WorkSheets.Item(1);
tmpBook.Sheets(1).Cells.Copy(ЛистExcel.Cells);
tmpBook.Close();
КнигаExcel.Activate();
ЛистExcel.Activate();
Excel.Visible = 1;
КонецПроцедуры
Толькол не пойму, как путь из реквизита получить из текущей строки ...
но (5)и(6) проще и достаточно. Но опять не соображу, как путь вернуть ...
|
|
9
raykom
11.06.14
✎
08:11
|
Но в (6) вроде готовое решение
|
|
10
raykom
11.06.14
✎
08:20
|
:DDD
Все взлетело в лучшем виде. Спасибо )))
в (6) готовое решение
ЗапуститьПриложение(ЭлементыФормы.ТвоеТабличноеПоле.ТекущиеДанные.КолонкаСодержащаяПутьКФайлу);
Всем спасибо, камрады
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший