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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.10.2008, 14:06   #1  
andrevk is offline
andrevk
Участник
 
145 / 10 (1) +
Регистрация: 23.11.2006
Никак не могу сделать, чтобы в письме отправляемом Notification, ссылка имела форматированный вид:
Ссылка на документ в Nav

А приходит вот так:
Ссылка на документ в Nav: url:navision://client/run?servername=SERVER%26database=XXX%26company=XXX%26servertype=MSSQL%26target=Form%xxx%26view=SORTING(Field1)%26position=Field1=0(xxxxx)

Возможно ли это сделать?
Старый 08.10.2008, 08:12   #2  
by_HT is offline
by_HT
Участник
 
195 / 10 (1) +
Регистрация: 12.10.2007
по соображениям HTML, это должно выглядеть как:

<a href='navision://client/run?servername=SERVER%26database=XXX%26company=XXX%26servertype=MSSQL%26target=Form%xxx%26view=SORTING(Field1)%26position=Field1=0(xxxxx)'>
Ссылка на документ в Nav</a>
Старый 08.10.2008, 10:35   #3  
andrevk is offline
andrevk
Участник
 
145 / 10 (1) +
Регистрация: 23.11.2006
Делал так, но в этом случае приходит все в виде текста
Старый 08.10.2008, 13:46   #4  
lsv is offline
lsv
Участник
 
15 / 10 (1) +
Регистрация: 02.08.2006
Для того, чтобы у вас заработало желаемое, Вам необходимо сначала создать страницу HTML, а потом использовать ей в теле письма, формат которого HTML, тогда вы получите HTML письмо сВашей ссылкой и конечно же кодом, котрые указан выше. Я использую вот так вот код.

CreateNotice(FileName : Text[250];BodyText : Text[500];URL : Text[1024])
{
Letter.CREATE(FileName);
Letter.TEXTMODE(TRUE);
Letter.WRITE('<html >');
Letter.WRITE('<head>');
Letter.WRITE('</head>');
Letter.WRITE('<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />');
Letter.WRITE('<body>');

IF BodyText <> '' THEN
Letter.WRITE('<span style="color: #000; font-size: 15px;">' + BodyText + '</span>');

Letter.WRITE('Link');
Letter.WRITE('</body>');
Letter.WRITE('</html >');
Letter.CLOSE;
}

Дале, исполльзуя "Microsoft MAPI Messages Control, version 6.0"

использую данный код

IF AttachFileName = '' THEN
MAPIMessages.MsgNoteText := Body
ELSE BEGIN
MAPIMessages.MsgNoteText := Body + ' ';
MAPIMessages.AttachmentIndex := MAPIMessages.AttachmentCount;
MAPIMessages.AttachmentType := 0;
MAPIMessages.AttachmentPathName := AttachFileName;
MAPIMessages.AttachmentPosition(STRLEN(Body));
END;

Получается письмо с телом вашего сохранённого файлика.
Старый 08.10.2008, 14:26   #5  
andrevk is offline
andrevk
Участник
 
145 / 10 (1) +
Регистрация: 23.11.2006
Письма рассылает Notification Server
Клиент Nav отправляет ему xml файл, обработав который сервер отправляет сообщение.
Письмо приходит в формате HTML
Как я понимаю outlook сам распознает и форматирует ссылки (в которых есть url, www, ya.ru)
Хотелось бы скрыть ссылку заголовком "Ссылка в Nav" и все это средствами Notification
Старый 08.10.2008, 15:10   #6  
lsv is offline
lsv
Участник
 
15 / 10 (1) +
Регистрация: 02.08.2006
"navision://client" для Outlook не ссылка(как www и т. д.) Собственно как и для большинства windows приложений. Если я не ошибаюсь, то ярлыки на документ обрабатываются через Finlink.exe Вы можете найти соответствующие записи в реестре как обрабатывать "navision://client". Например Miranda понимает конструкцию nav- гиперссылки. Но это средствами самой миранды. Конечно, можно попробывать поразбирать вариант Emule.exe (понимание windows "ослиных" ссылок). У меня к сожалению не вышло сделать так, чтобы не маскированная навиженская ссылка воспринималась как гиперссылка. Поэтому, для реализации ссылки на документ в письме пришлось придумывать варианты собственной рассылки. Если Вы добьётесь, буду признателен, если Вы поделитесь reg-файлом. Или инструкцией как этого добиться.
Старый 09.10.2008, 12:53   #7  
.Quattro. is offline
.Quattro.
Участник
Лучший по профессии 2009
 
194 / 22 (1) +++
Регистрация: 22.05.2006
Цитата:
Сообщение от Andreblack Посмотреть сообщение
Письма рассылает Notification Server
Клиент Nav отправляет ему xml файл, обработав который сервер отправляет сообщение.
Письмо приходит в формате HTML
Как я понимаю outlook сам распознает и форматирует ссылки (в которых есть url, www, ya.ru)
Хотелось бы скрыть ссылку заголовком "Ссылка в Nav" и все это средствами Notification
Мне кажется, что письмо прихоит все же текстом.
Посомтрите параметры письма, которое получает пользователь, что указано в Content-Type?
Старый 09.10.2008, 13:07   #8  
andrevk is offline
andrevk
Участник
 
145 / 10 (1) +
Регистрация: 23.11.2006
Да приходит как текст.
Как бы заставить Notification отправлять в HTML
 


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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 10:41.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.