|
Удаление символа в BI Publisher
|
|||
---|---|---|---|
#18+
Всем привет. Просьба подсказать как можно удалить последний символ из полученного результата в BI Publisher? Для получения результата у меня используется следующее выражение: <?for-each@inlines: Phone[PhActFlg='Y']?><?PhoneNum?>, <?end for-each?><?for-each@inlines: Email[EmFlg='Y']?><?Email?>, <?end for-each?><?for-each@inlines: Address[AddrType='5']?><?Address?>, <?end for-each?> Причем в результате может быть как 10 записей, так и ни одной. Мне требуется удалить последнюю запятую, которая будет даже при выводе одной записи. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2019, 16:33 |
|
Удаление символа в BI Publisher
|
|||
---|---|---|---|
#18+
3ePuK, trim не подойдет? Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2019, 16:54 |
|
Удаление символа в BI Publisher
|
|||
---|---|---|---|
#18+
K790, у меня не получилось, так как все мое выражение не считывается командой rtrim, либо я неправильно написал синтаксис: <?xdoxslt:rtrim(<?for-each@inlines: Phone [PhoneActiveFlg=’Y’]?><?PhoneNum?>, <?end for-each?><?for-each@inlines: Email?><?EmailAddr?>, <?end for-each?><?for-each@inlines: Addresses[AddressType=’6’]?><? Address?>, <?end for-each?>,',')?> ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2019, 10:45 |
|
Удаление символа в BI Publisher
|
|||
---|---|---|---|
#18+
3ePuK, функция применяется к атрибуту, а не ко всей строке. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2019, 11:46 |
|
Удаление символа в BI Publisher
|
|||
---|---|---|---|
#18+
K790, В том и проблема, что я не могу найти функцию, которая бы изменила результирующую строку... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2019, 11:56 |
|
Удаление символа в BI Publisher
|
|||
---|---|---|---|
#18+
3ePuK, "пораскиньте" уже мозгами, как варианты: итерацию цикла писать в переменную(variable) и trim. каждое поле проверить на null и trim + последнее поле trim ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2019, 12:56 |
|
Удаление символа в BI Publisher
|
|||
---|---|---|---|
#18+
Сложную конкатенацию и логику (if'ы) лучше все же переносить в модель данных. Функциями XSL можно многое изобразить, но больно грамоздко и сложно отлаживать/саппортить. IMHO & AFAIK ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2019, 14:06 |
|
Удаление символа в BI Publisher
|
|||
---|---|---|---|
#18+
В итоге у меня получилось вот такое: <?for-each@inlines: Phone [PhActFlg=’Y’]?><?xdoxslt:set_variable($_XDOCTX, 'inf_var',concat(PhoneNum,’, ’))?><?xdoxslt:set_variable($_XDOCTX, ‘inf_res’, concat(xdoxslt:get_variable($_XDOCTX,'inf_res'),xdoxslt:get_variable($_XDOCTX,'inf_var')))?><?end for-each?> <?for-each@inlines: Email[EmFlg='Y']?><?xdoxslt:set_variable($_XDOCTX, 'inf_var',concat(Email,’, ’))?><?xdoxslt:set_variable($_XDOCTX, ‘inf_res’, concat(xdoxslt:get_variable($_XDOCTX,'inf_res'),xdoxslt:get_variable($_XDOCTX,'inf_var')))?><?end for-each?> <?for-each@inlines: Address[AddrType=’5’]?><?xdoxslt:set_variable($_XDOCTX, 'inf_var',concat(Address,’, ’))?><?xdoxslt:set_variable($_XDOCTX, ‘inf_res’, concat(xdoxslt:get_variable($_XDOCTX,'inf_res'),xdoxslt:get_variable($_XDOCTX,'inf_var')))?><?end for-each?> <?substring(xdoxslt:get_variable($_XDOCTX, 'inf_res'),1,string-length(xdoxslt:get_variable($_XDOCTX, 'inf_res'))-2)?> Выглядит некрасиво, тяжело поддерживаемое, но на данном этапе главное что работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.05.2019, 12:24 |
|
|
start [/forum/topic.php?fid=52&fpage=76&tid=1882480]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 144ms |
0 / 0 |