Добрый день! Помогите разобратся в одном отчёте. Писали его разработчики до меня, я пока что вникаю в суть. До поры до времени работало, а в один прекрасный день стала появлятся ошибка.
Суть в том, что в одном поле есть такая строка:

[ds_CustomerAddress."AddressTypeName"]: [IIF(Length()>0,[ds_CustomerAddress."ZIP"], >, >)][IIF(Length()>0,[ds_CustomerAddress."TerritoryName"], >, >)][IIF(Length()>0,[ds_CustomerAddress."StateName"], >, >)][IIF(Length()>0,[ds_CustomerAddress."CityName"], >, >)][ds_CustomerAddress."Address"]

Я понимаю смысл того, что строка должна выдавать, но не понимаю некоторых особенностей. Объясните, что обозначает пустое место после запятой в первом iif вот здесь:
[ds_CustomerAddress."ZIP"], >

и почему в етом же iif в разделе false написано просто " >" - ето пустая строка?

И почему в данном отчёте выдаётся ошибка

Unknown variable of datafield:
Unknown variable of datafield: [ds_CustomerAddress."CityName"]
Unknown variable of datafield: [ds_CustomerAddress."TerritoryName"]
, хотя ети поля имеются в подгружаемых данных. Более того, сам отчёт формируется правильно, все значения отображаются. Откуда тогда ошибке взятся?

Нравится

2 комментария

Добрый день, Дмитрий.

Оператор "< >" в блоке false функции IIF означает пустой DataField, т.е. в отчет подставится пустое место.
По поводу пустого места после запятой, до конца не уверен, однако могу предположить, что у Вас в одном поле выводится совокупный адрес (индекс, страна, город, и пр.) соответственно такой конструкцией они выводятся через запятую с пробелом.
По поводу ошибки, к сожалению ничего конкретного сказать не могу. Возможно где-то в коде нужно заменить конструкцию [ds_CustomerAddress."TerritoryName"] на

<ds_CustomerAddress."TerritoryName">

.

Оказалось всё просто, хотя пришлось повозится. Вместо

<[ds_CustomerAddress."TerritoryName"], >

надо было написать

<ds_CustomerAddress."TerritoryName">+", "

А вместо

< >
" "

Уж не говоря о том, что в скрипте были ссылки на несуществующие выборки.

А работало до поры до времени наверняка из-за кеширования. Возможно, что у клиентов когда-то закешировался правильный вариант отчёта, на етом всё и держалось. Хотя, ето просто предположение. Спасибо за подсказку ;)

Показать все комментарии

Здравствуйте

1. Многострочное текстовое поле ("Комментарии") отображается в карточке с помощью элемента MemoDataControl.
При этом Memo имеет полосы прокрутки и при введении длинной строки необходимо использовать горизонтальную прокрутку. Можно ли в настройках как-то запретить горизонтальную прокрутку или сделать автоперенос, чтобы при достижении конца области текст автоматически переходил вниз (без использования абзаца - Enter)?

2. Также эта информация отображается в гриде. И там где есть абзац (перенос строки) в гриде мы видим некие символы "□□". Можно ли как-то избавиться от такого отображения? Выглядит немного неаккуратно.

Спасибо

Нравится

7 комментариев

http://community.terrasoft.ua/ideas/3974 рассматривается... изучается... :smile:

А что указано в свойствах MemoDataControl WordWrap и ScrollBarsStyle?

"Раловец Ольга" написал:А что указано в свойствах MemoDataControl WordWrap и ScrollBarsStyle?

Такие свойства отсутсвуют.
Версия системы 3.0.2.239.

"Александр Кудряшов" написал:http://community.terrasoft.ua/ideas/3974 рассматривается... изучается...

Однозначно хорошая идея!
Уже второй раз встречаю информацию о "переключение в многострочное отображение вопрос решает", но так и не нашел, где же это многострочное отображение.

К сожалению, не могу сейчас на 3.0.2 посмотреть.

"Ковальчук Александр" написал:многострочное отображение

В реестре записей правой кнопкой должен быть пункт включен "Многострочные данные".

"Раловец Ольга" написал:В реестре записей правой кнопкой должен быть пункт включен "Многострочные данные".

Наверное также дело в версии, так как из похожего есть только "Многострочный заголовок". Но включение этого режима не приводит к желаемому результату.

Похоже что "Многострочные данные" только в 3.0.4 появились((

Показать все комментарии