|
![]() |
#1 |
Роман Долгополов (RDOL)
|
при просмотре через в обозреватель таблиц то же 10 строк?
каким образом заполняются RecId в переопределенном представлении? |
|
![]() |
#2 |
Участник
|
"при просмотре через в обозреватель таблиц то же 10 строк"
Вообще не удается дождаться выполнения запроса. Так как в форме при открытии еще фильтр накладывается, а тут нет. RecId заполняется значениями RecId основной таблицы вьюхи |
|
![]() |
#3 |
Участник
|
В памяти есть похожий случай, который встречался при связи LEFT JOIN: если значение поля в привязанной таблице равно NULL, тогда следует заменить его значение на 0 или символ пустой строки (не помню его код, но отображается как квадрат в кавычках) в зависимости от типа данных. Вот пример кода:
X++: "CASE WHEN ИМЯ_ТАБЛИЦЫ.ИМЯ_ПОЛЯ IS NULL THEN 0 ELSE ИМЯ_ТАБЛИЦЫ.ИМЯ_ПОЛЯ END AS АЛИАС, \n"+ P.S. СУБД Oracle.
__________________
С уважением, Александр. Последний раз редактировалось samolalex; 02.04.2012 в 15:29. |
|
|
За это сообщение автора поблагодарили: db (2). |
![]() |
#4 |
Участник
|
Еще вариант:
Проверьте соответствие полей, по которым вы осуществляете связь. В случае, если в ваших расширенных типах данных стоит свойство Alignment, например, равное "Right", то не исключено, что в Аксапте отступ будет заполнен пробелами, что в свою очередь может привести к нарушению связи, поэтому в sql-запросе лучше всего использовать функцию SUBSTR, пример кода: X++: "(SUBSTR(NLS_LOWER(ТАБЛИЦА1.ПОЛЕ_СВЯЗИ),1,20) = SUBSTR(NLS_LOWER(ТАБЛИЦА2.ПОЛЕ_СВЯЗИ),1,20)) \n"+ Еще нужно отметить, что в Аксапте важна длина расширенных типов связываемых полей - если она будет разной, связь не сработает.
__________________
С уважением, Александр. Последний раз редактировалось samolalex; 02.04.2012 в 15:53. |
|
![]() |
#5 |
Участник
|
К сожалению ли, к радости ли, заработало опять само...
Но я на всякий случай учла ваши рекомендации во вьюхе, надеюсь, ошибка повторяться не будет. Спасибо за советы. |
|
|
|