31.03.2005, 11:13 | #1 |
Участник
|
Все сделано как описано в статье "Отправка почтовых сообщений новым пользователям". Все работает, но в 2-х уровневой конфигурации. При работе в 3-х уровневой не заменяются переменные в шаблоне. На сколько разобрался проблема в классе SysEmailMessage, метод stringExpand.
public static str stringExpand(str s, map /* string -> string */ idmap) { TextBuffer tb = new TextBuffer(); str expandIds() { mapIterator it = new mapIterator(idmap); while (it && it.more()) { tb.replace('%' + it.key() + '%', it.value()); it.next(); } return tb.getText(); } if (!idmap) return s; tb.setText(s); return expandIds(); } Не происходит присвоение значения it в строке mapIterator it = new mapIterator(idmap); может, кто-нибудь подскажет что нужно делать? |
|
31.03.2005, 13:19 | #2 |
Участник
|
Цитата:
Сообщение от ens
Не происходит присвоение значения it в строке
mapIterator it = new mapIterator(idmap); Кстати, код Аксапты можно оформлять при помощи тега [xpp]. См. Теги [Xpp] и [CAL] позволяют публиковать код Axapta и Navision |
|
31.03.2005, 14:14 | #3 |
Участник
|
При 2-х уровневой конфигурации значение it
(begin)[("q1" -> "AAA")] при 3-х уровневой null |
|
31.03.2005, 14:24 | #4 |
Участник
|
как отлаживаете в трехуровневой?
вы уверены, что смотрите значение it на сервере, а не на клиенте? |
|
31.03.2005, 14:42 | #5 |
Administrator
|
См. онлайновую справку:
Цитата:
MapIterators and the maps over which they iterate must be on the same Client/Server side.
Решить проблему можно двумя способами: 1. Смотрите, где создается объект idmap и делайте так, чтобы он создавался там, где нужно. 2. Перенестите idmap в начале метода stringExpand() на ту сторону, на которой выполняется метод. Для этого достаточно сделать следующее: <div class='XPPtop'>X++</div><div class='XPP'>Map idmapSafe = Map::create(idmap.pack()); MapIterator it = [color=:blue]new[/color] MapIterator(idmapSafe);</div>
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
31.03.2005, 15:41 | #6 |
Участник
|
Спасибо все заработало!
|
|