AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.05.2008, 17:44   #1  
cherv is offline
cherv
MCTS
MCBMSS
1C
 
88 / 25 (1) +++
Регистрация: 24.05.2006
Web-портал: открыть файл
Добрый день!
Пробую прикрутить к Web-порталу (DAX 4.0) некоторую функциональность, схожую с документооборотом. В, частности, необходимо дать возможность пользователю загружать файлы документов в систему, а также по кнопке на форме открывать данный файл. С последним-то и возникла проблема.
Я пытался сделать так, как в стандартном документообороте на клиентской версии: использовать класс DocuAction, и, конкретно, следующую общеизвестную команду:
Код:
WinApi::shellExecute('здесь указан путь к файлу', '', '', 'Open');
Однако не удается, команда shellExecute отрабатывает, но файл не открывается.
Думал, что возможно, как обычно бывает при работе с файлами, не хватает прав на чтение/редактирование, однако добавление данного кода
Код:
    FileIOPermission     fP;
    ;
    fP = new FileIOPermission('здесь указан путь к файлу', 'RW');
    fP.assert();
    WinApi::shellExecute('здесь указан путь к файлу', '', '', 'Open');
никак на результат не повлияло.
Из клиентской части тот же код, конечно же, отрабатывает.
Пробовал делать это и с сервера, на котором установлен и портал, и сам файл находится.
Подскажите, что еще попробовать. Заранее благодарю за ответы!
Старый 16.05.2008, 18:48   #2  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Вам не кажется, что файл открывается (или пытается открыться) на АОСе? Ну или на Web-сервере, если ваш код на стороне клиента выполняется.

Вы хотите, чтобы файл открылся на рабочей станции, на которой запущен браузер? Код Аксапты там вообще не выполняется. Придется возиться с HTML/Java Script (что-то в этом роде).

Ну и традиционный вопрос. Оно того стоит?
__________________
С уважением,
glibs®
Старый 16.05.2008, 22:55   #3  
RumataEstor is offline
RumataEstor
очами вижу
 
84 / 19 (1) ++
Регистрация: 29.04.2008
Адрес: Москва
Чтобы открылся файл у клиента, ему надо его передать. Не знаю, как это делается в Аксапте, а в .NET необходимо просто передать файл используя Response.Write... определив при этом ContentType.
Старый 17.05.2008, 04:45   #4  
artzor is offline
artzor
Участник
 
1 / 11 (1) +
Регистрация: 18.09.2006
Если я правильно понял, Вам нужно отдавать пользователю через браузер определенный файл.
В портале таким образом в пдф выводятся некоторые отчеты (SalesInvoice например).

Пример того как отдавать пользователю файл можно посмотреть в классе EPDocuGetWebLet, а именно метод createReport

update: сорри, не createReport, а runReport. Там, где используются классы IISResponse и BinData

Последний раз редактировалось artzor; 19.05.2008 в 12:07.
За это сообщение автора поблагодарили: cherv (1).
Старый 19.05.2008, 16:42   #5  
cherv is offline
cherv
MCTS
MCBMSS
1C
 
88 / 25 (1) +++
Регистрация: 24.05.2006
Спасибо всем за участие!
artzor, отдельная благодарность, как раз то, что нужно!
Теги
ax4.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Web портал и завершение сессии egorych DAX: Программирование 5 01.02.2008 18:27
Inside Dynamics AX 4.0: The Web Framework Blog bot DAX Blogs 0 25.10.2007 03:04
Pokluda: Outbound web service (AIF) Blog bot DAX Blogs 0 28.10.2006 17:43
Web - открыть новое окно с данными для распечатки? Dronas DAX: Программирование 3 13.10.2005 19:39
Как создать свой Web-портал? Zman DAX: Программирование 4 21.01.2005 11:23

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 11:00.