[Logo] Форум ПАРУС
Обучение по созданию отчетов  XML
Индекс форума » Разработка на платформе Парус-Торнадо
Автор Сообщение
IRINA
Новичок

Зарегистрирован: 08.11.2012 17:13:49
Сообщений: 36
От:
Оффлайн

KORYAVCHENKO_A_V wrote:

В новой версии платформы лучше для этого использовать сервис ILogger


А как его использовать? В "Прикладное программирование в системе торнадо.docx" об этом сервисе ни слова.

Это сообщение было изменено 1 раз. Последнее изменение было в 06.03.2014 07:34:44

[Email]
PSYDIAMOND
Пользователь
[Avatar]

Зарегистрирован: 30.10.2013 12:04:55
Сообщений: 616
От: Михаил Малыхин
Оффлайн

Доброе время суток
интересует такой вопрос. есть отчет Журнал Операций, в нем есть 6 колонка "Содержание операции" так вот, скажем из ПКО, РКО, ЗКР и бух справок выводиться все корректно (будь это на самом деле: приложение. назначение платежа или содержимое операции). все хорошо. но вот есть скажем ПП вот тут беда. ибо в члене класса Contents в данном случае забито "Поступления на л/с в казначейство". а опять же, в случае ПП нужно использовать PaymentPurpose. как это корректно сделать. в transactions нет такого поля, ругается
[Email]
M_USHAKOV
Пользователь
[Avatar]

Зарегистрирован: 14.01.2013 15:49:52
Сообщений: 680
От: Парус
Оффлайн

IRINA wrote:
А как его использовать? В "Прикладное программирование в системе торнадо.docx" об этом сервисе ни слова.

Так же как и все остальные.

Это сообщение было изменено 2 раз. Последнее изменение было в 30.04.2014 12:53:46

SARGEANT
Опытный пользователь

Зарегистрирован: 01.02.2013 14:12:25
Сообщений: 1981
Оффлайн

Добивая уж идею про отладочные MessageBox’ы в отчетах, обсуждавшуюся ранее в этой теме:
http://support.parus.ru/forum/posts/list/30/79806.page#501314

Add Assembly Reference действительно пофиксили, и теперь можно, указав там System.Windows.Forms, применять в отчете разметку кода сообщениями для пользователя (не прерывающими выполнения программы, в отличие от различных вариантов exception, и не требующими глядеть в лог, в отличие от Logger), следующим нехитрым образом:
System.Windows.Forms.MessageBox.Show("текст сообщения");

Поскольку код отчета выполняется на сервере, то чтобы это сообщение показало пользователю, надо либо гонять сервер в консоли, либо можно и в виде службы, но тогда надо в службе поставить галочку «Разрешить взаимодействие с рабочим столом»

Пока Assembly Reference пребывала в непофиксенном состоянии, нашелся и другой способ вывода MessageBox’ов, через COM. Применяем родной виндовый COM WScript.Shell следующим не сказать что нехитрым образом:


Таким образом, оперируя args[0] и InvokeMember, можно тоже разметить код MessageBox’ами

С появлением доступа в отчетах к System.Windows.Forms.MessageBox химия с WScript.Shell конечно утрачивает практическое значение. Но представляет интерес сам способ вызова COM-серверов из отчетов. Ведь COM-примочками можно много чего делать, чего сейчас в отчетах нет

Конечно разметка кода MessageBox’ами ― это дедовский метод, и в сложных случаях никуда не деться без отладчика. Для целей отладки Отладчик ― это лучше всех MessageBox'ов, Exception и Logger вместе взятых, поэтому он так и называется
http://support.parus.ru/forum/posts/list/79806.page#460966

Это сообщение было изменено 1 раз. Последнее изменение было в 10.11.2014 19:53:40

M_USHAKOV
Пользователь
[Avatar]

Зарегистрирован: 14.01.2013 15:49:52
Сообщений: 680
От: Парус
Оффлайн

Резюмируя
Я очень рад что Вы подробно ведете лог своих изысканий, но все таки сначала бы неплохо было бы библиотеку .NET подучить.
Особенно обратите внимание на интерфейсы IDisposable и управление памятью в среде .NET
Крайне не рекомендую использовать ком объекты без железного понимания как они устроены и как взаимодействуют со исполняемой средой .NET
SARGEANT
Опытный пользователь

Зарегистрирован: 01.02.2013 14:12:25
Сообщений: 1981
Оффлайн

-

Это сообщение было изменено 1 раз. Последнее изменение было в 13.11.2014 11:11:50

M_USHAKOV
Пользователь
[Avatar]

Зарегистрирован: 14.01.2013 15:49:52
Сообщений: 680
От: Парус
Оффлайн

SARGEANT wrote:
И вот нечем больше заняться парусному программисту ― изучать как устроены объекты COM и как они взаимодействуют с .NET. Да уж как-нибудь пусть взаимодействуют, лишь бы работало хоть как-то ― вот на каком уровне рассматриваются эти вопросы в реальной жизни!

Позиция воинствующего невежества до добра не доводит DIXI.

Это сообщение было изменено 1 раз. Последнее изменение было в 11.11.2014 12:13:53

SARGEANT
Опытный пользователь

Зарегистрирован: 01.02.2013 14:12:25
Сообщений: 1981
Оффлайн

разумеется, хорошего мало. Я ведь не спорю, что изучать - придется. Я спорю, что это нормально. Потому что это - не нормально, слишком трудоемко.
SARGEANT
Опытный пользователь

Зарегистрирован: 01.02.2013 14:12:25
Сообщений: 1981
Оффлайн

-

Это сообщение было изменено 3 раз. Последнее изменение было в 13.11.2014 11:12:15

SARGEANT
Опытный пользователь

Зарегистрирован: 01.02.2013 14:12:25
Сообщений: 1981
Оффлайн

-

Это сообщение было изменено 1 раз. Последнее изменение было в 13.11.2014 11:12:29

ANDERS
Пользователь

Зарегистрирован: 01.02.2013 14:11:24
Сообщений: 829
Оффлайн

HRAMOGIN wrote:Попробуйте скачать отсюда
https://www.dropbox.com/s/70isd9w40iprjy4/reports.rar

При распаковке пишет "Файл испорчен"

[Email]
PSYDIAMOND
Пользователь
[Avatar]

Зарегистрирован: 30.10.2013 12:04:55
Сообщений: 616
От: Михаил Малыхин
Оффлайн

ANDERS wrote:
HRAMOGIN wrote:Попробуйте скачать отсюда
https://www.dropbox.com/s/70isd9w40iprjy4/reports.rar

При распаковке пишет "Файл испорчен"


интереса ради я скачал по ссылке, разархивировал 7zip.
ошибку не потверждаю
[Email]
ANDERS
Пользователь

Зарегистрирован: 01.02.2013 14:11:24
Сообщений: 829
Оффлайн

PSYDIAMOND wrote:
ошибку не потверждаю

Сегодня распаковал, нормально
[Email]
 
Индекс форума » Разработка на платформе Парус-Торнадо
Перейти: