25.04.2008, 08:29 | #1 |
Участник
|
Встраиваем в Аксапту браузер
Работаю в DAX 4.0
Добавил на форму компонент ActiveX "Microsoft Web Browser". В инит формы определяю url Код: public void init() { RunBase runbaseRS; Map mapParameters = new Map(Types::String, Types::String); // mapParameters содержит (название параметра, значение в строке) MapIterator mi; ; super(); url = (select firstonly SRSServers).ServerUrl; runbaseRS = element.args().caller().runbase(); mapParameters = runbaseRS.parmMapParm(); mi = new MapIterator(mapParameters); if (runbaseRS.parmReportName()) { url += '?'+runbaseRS.parmReportName(); while (mi.more()) { url += '&'+ mi.key() + '=' + mi.value(); // Передаем параметры необходимые для отчета mi.next(); } if (runbaseRS.parmCaption()) { this.design().caption(runbaseRS.parmCaption()); } } else info ('Не указано название отчета'); } Код: public void run() { super(); webBrowser.Navigate(url); }
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ. Последний раз редактировалось KingPeas; 25.04.2008 в 08:34. |
|
25.04.2008, 09:32 | #3 |
Участник
|
До меня с трудом доходит чем мне это должно помочь? Я работаю с ReportingServices через вэб службу http://<server>/ReportServer. Мне нужно запустить на исполнение отчет, для чего и передаю имя отчета, а также параметры необходимые для его запуска.
На данный момент нашел класик SysUrlEncode который в Аксапте осуществляет кодировку и декодировку. Вот только после обработки им значений параметров браузер ошибочку выбрасывает, что у меня сильно большая строка получается больше 260 символов если я все параметры так загоняю, и это при том, что еще при передаче не все фильтры имеют значение. А если список складов будет в 20 или 30 кодов по одному фильтру, и коды товаров скажем 50 по другому, как тогда быть. ???
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ. |
|
25.04.2008, 10:05 | #4 |
Участник
|
Цитата:
вот попробовал для примера -"а" (русская а) encode возвращает - %430 decode с него возвращает - С0
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ. |
|
25.04.2008, 10:25 | #5 |
Участник
|
Вот так вроде работает... (надо только реферненс добавить на System.Web)
X++: static void Test_x(Args _args) { Dialog d = new Dialog("test"); DialogField f = d.addField(typeId(Name)); str s; ; if (d.run()) { s = f.value(); s = System.Web.HttpUtility::UrlEncode(s); info(s); info(System.Web.HttpUtility::UrlDecode(s)); } } |
|
25.04.2008, 10:35 | #6 |
Участник
|
Цитата:
Сообщение от KingPeas
До меня с трудом доходит чем мне это должно помочь? Я работаю с ReportingServices через вэб службу http://<server>/ReportServer.. Вот только после обработки им значений параметров браузер ошибочку выбрасывает, что у меня сильно большая строка получается больше 260 символов если я все параметры так загоняю, и это при том, что еще при передаче не все фильтры имеют значение. А если список складов будет в 20 или 30 кодов по одному фильтру, и коды товаров скажем 50 по другому, как тогда быть. ???
|
|
25.04.2008, 11:01 | #7 |
Участник
|
Цитата:
Простите уважаемый за мою глупость)
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ. |
|
25.04.2008, 11:29 | #8 |
Участник
|
|
|
25.04.2008, 11:30 | #9 |
Участник
|
Кстати, в блогахз промелкивало использование клиента SSRS в качестве ActiveX
|
|
|
За это сообщение автора поблагодарили: KingPeas (1). |
25.04.2008, 12:07 | #10 |
Участник
|
Спасибо ваши советы действительно спасли меня)
А ссылочки нет случаем?
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ. |
|
Теги |
документация, ax4.0 |
|
Похожие темы | ||||
Тема | Ответов | |||
Изучаю аксапту. Приход товара от клиента. | 2 | |||
Как убедить заказчика купить Аксапту? | 84 | |||
Вставка записей в аксапту из внешней БД | 2 | |||
Введение в Аксапту | 0 |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|