13.09.2007, 09:40 | #1 |
Участник
|
открытия шаблона Word
привет всем, как использоват шаблон, думаю есть возможность закинуть шаблон на сервер и все клиенты обращается на сервер
куда и как это сделать ??? я пока на локале так делаю : X++: word = new ComWordDocument_RU(); word.newFile("C:\\Template.dot",false); Последний раз редактировалось Daido; 13.09.2007 в 10:03. |
|
13.09.2007, 11:20 | #2 |
Участник
|
X++: static str fullTemplateName() { return #ReportTemplatePath_ru + ; } |
|
13.09.2007, 11:30 | #3 |
Участник
|
Цитата:
#ReportTemplatePath_ru - это макрос, и его содержимое можно посмотреть в АОТ. Он возвращает путь к папке шаблонов в локальном формате, то есть C:\Program Files\.. Сетевой путь он никак вернуть не может. По вопросу: Вижу здесь 3 варианта: 1. Дать доступ пользователям на какую-то папку на сервере определенную, и туда складывать шаблоны. Соответственно, в отчетак использовать путь к этой папке (сетевой путь). 2. При формировании отчета, в случае необходимости, копировать шаблон отчета на клиента, и потом обычный запуск отчета с использованием шаблона с клиента. При этом у пользователя должны иметься права на запись с соответствующую директорию. 3. 2ой вариант, только используется временная папка, на которую у пользователей всегда есть доступ. Но при этом шаблоны придется туда копировать при каждом формировании отчета. В каждом из 3ех вариантов есть свои минусы. Если кто-то додумался до варианта без минусов, поделитесь идеей |
|
13.09.2007, 12:22 | #4 |
Участник
|
server static str fullTemplateName(){ return #ReportTemplatePath_ru + ИмяФайла;}Если вызвать метод на сервере, то он вернет путь к папке с шаблонами на сервере.
|
|
13.09.2007, 12:36 | #5 |
Участник
|
Только толк от этого метода на клиенте будет лишь в том случае, если в настройках AOS путь к приложению указан через шару, доступную клиенту, а не через локальный каталог на сервере.
|
|
14.09.2007, 07:38 | #6 |
Участник
|
привет всем, а че за макрос #ReportTemplatePath_ru, можно на код взглянуть, че то у ся не вижу
|
|
14.09.2007, 10:35 | #7 |
Участник
|
Мы используем именно такой вариант. Минусов пока не наблюдали. Пока было несколько таких отчетов, в коде прописывали полный путь. Потом создали макрос и в нем путь до шаблонов.
|
|
14.09.2007, 11:55 | #8 |
Участник
|
Макрос - это вариант прописывания константы напрямую в коде. Для локальных путей доступа такое еще годится, но для сетевых путей этого лучше не делать. Проблема в том, что сетевые адреса имеют свойтство меняться (комп накрылся, новый купили, перестроили сеть и т.п.). Причем, это не такое уж редкое событие, как может показаться.
Поэтому, все сетевые пути лучше выносить в поля настроечной таблицы соответствующего модуля. Как константы, использовать только имена файлов. PS: макросы находятся в AOT\Macros\ReportTemplatePath_RU |
|
14.09.2007, 12:16 | #9 |
Участник
|
А почему никто не предлагает хранить шаблоны в самой аксапте, как храняться документы в документообороте. С точки зрения администрирования, по-моему, идеальный вариант. Или есть какие-то подводные камни?
|
|
14.09.2007, 12:22 | #10 |
Участник
|
Цитата:
Но это почти то же самое, что п.2 или п.3 в приведенных мной выше постах. Потому как нам этот файл все равно перед использованием нужно сохранить на клиенте, а значит перетащить с сервера, сохранить куда-то. и только после этого запускать. |
|
14.09.2007, 12:48 | #11 |
Участник
|
а нельзя ли просто в таблице (на сервере) создать блоб поле создать и туда запихать файл шаблон ?
|
|
14.09.2007, 13:48 | #12 |
Пенсионер
|
Цитата:
Но сиравно перед употреблением придется сохранять сначала во временную папку и только потом использовать как уже подсказал kashperuk
__________________
Законы природы еще никто не отменял! А еще у меня растет 2 внучки!!! Кому интересно подробности тут: http://www.baby-shine.com/ |
|
14.09.2007, 14:17 | #13 |
Участник
|
Цитата:
Потому как нам этот файл все равно перед использованием нужно сохранить на клиенте, а значит перетащить с сервера, сохранить куда-то. и только после этого запускать.
|
|
14.09.2007, 14:24 | #14 |
Участник
|
Цитата:
Чтоб отредактировать, нужно открывать форму, выгружать файл, менять, загружать назад. А сейчас схема у меня проще Захожу на сервер, меняю. Все. (При след. использовании шаблон обновится на клиенте. (всем клиентам дали доступ на редактирование папки шаблонов у себя на компьютере)) Недостаток - доп. администативная мера по настйроке политики. |
|
14.09.2007, 14:25 | #15 |
Участник
|
Цитата:
1) Как Вы представляете себе процесс внесения изменения в шаблон? Его ведь надо выгрузить из поля, внести изменеия и снова загрузить. И все это должен делать администратор. Или будете писать специальный модуль по обслуживанию таблиц с шаблонами? 2) Неоправданное раздувание собственно базы данных. Например, у нас все файлы шаблонов с разными пробными образцами и копиями уже сейчас занимают почти 1 ГБ. И все это добро пихать в базу данных? Файлы должны, по-возможности, хранится именно как файлы. На диске. Затягивание файлов в базу данных - это, скорее, исключение. Следует очень серьезно подумать над необходимостью подобной операции. |
|
14.09.2007, 14:46 | #16 |
Участник
|
Во-первых, спасибо за ваши аргументы, далее:
Цитата:
Его ведь надо выгрузить из поля, внести изменеия и снова загрузить. И все это должен делать администратор. Или будете писать специальный модуль по обслуживанию таблиц с шаблонами?
Цитата:
Неоправданное раздувание собственно базы данных.
Я считаю, что тут надо еще рассматривать такой аспект. Для программистов, работающих на клиете, проще сделать вариант с хранением шаблонов на сервере. Для тех, кто внедряем вариант хранения шаблонов в Аксапте, по-моему, предпочтительней. Один раз пишется решения и устанавливается для каждого клиента. Работатет всегда, даже если у клиента параноя и он не хочет давать своим пользователям права на доступ на любую папку на сервере или при еще каких-либо проблеммах. Хотя я может и не вижу некоторых подводных камней, которые всегда существуют. |
|
14.09.2007, 14:52 | #17 |
Участник
|
Цитата:
Такая схема требует постоянного копирования туда этого шаблона из таблицы. Шаблоны - это конечно, файлы небольше обычно, но трафик это все равно создает неплохой. Именно из-за этого трафика в свое время и перешли на вышеописанную схему (используемую мной сейчас). Каналы у клиента были ужасные, и ожидать даже самых простых отчетов приходилось довольно долго. |
|
14.09.2007, 14:57 | #18 |
Участник
|
Цитата:
Такая схема требует постоянного копирования туда этого шаблона из таблицы.
Шаблоны - это конечно, файлы небольше обычно, но трафик это все равно создает неплохой. Именно из-за этого трафика в свое время и перешли на вышеописанную схему (используемую мной сейчас). Каналы у клиента были ужасные, и ожидать даже самых простых отчетов приходилось довольно долго. |
|
14.09.2007, 15:00 | #19 |
Участник
|
Цитата:
Но для того, чтобы он точно остался на месте и был нужной версии (а не устаревший, к примеру), нужно постоянно ложить в одно и то же место, и еще так, чтобы место это не чистилось всякими утилитками, которые тетя Маша наставила себе для "ускорения работы компьютера". А временные папки как раз очень даже чистятся - всем, кому не лень. А на невременную папку нужен доступ, и снова приходим к варианту 2, описанному мной изначально. |
|
14.09.2007, 15:07 | #20 |
Участник
|
Petr
А Вы можете сказать какие преимущества дает хранение файлов внутри базы данных, по сравнению с их хранением в виде файлов в некоторой общедоступной сетевой директории? Последний раз редактировалось Владимир Максимов; 14.09.2007 в 15:09. |
|