Условия в WHERE на закладке Conditional Behavior

Обсуждение MAV Direct ODBC

Модератор: Andrew™

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion и MAV который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Условия в WHERE на закладке Conditional Behavior

Сообщение Admin »

Вот условия сгенеренные шаблоном

Код: Выделить всё

 IF FilterGroup1.HideEmptyAccounts=TRUE
  SELF.Select.Where(AB:QtyEnd,'0','>','(AND')
 END
 IF FilterGroup1.HideEmptyAccounts=TRUE
  SELF.Select.Where(AB:Qty,'','is null','OR)')
 END
в результате получается

Код: Выделить всё

 (D."QtyEnd">? OR D."Qty" is null

Пришлось делать

Код: Выделить всё

 IF FilterGroup1.HideEmptyAccounts=TRUE
  SELF.Select.Where(AB:QtyEnd,'0','>','(AND')
 END
 IF FilterGroup1.HideEmptyAccounts=TRUE
  SELF.Select.Where(AB:Qty,'','is null)','OR') ! ручная вставка
 END
в результате получилось как нужно

Код: Выделить всё

(D."QtyEnd">? OR D."Qty" is null)
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Admin »

Кстати. Ждем свежую версию библиотеки :D
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Smith
Старожил
Сообщения: 213
Зарегистрирован: 05 Сентябрь 2005, 19:21
Откуда: Пермь
Благодарил (а): 1 раз

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Smith »

Во - во ... Ждем-с
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Andrew™ »

все фильтрующие шаблоны к Browse имеют метод .CloseWhere(), что означает поставить закрывающую скобку если таковой нет (проверка в методе на наличие скобочки имеется)
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Admin »

Andrew™ писал(а):все фильтрующие шаблоны к Browse имеют метод .CloseWhere(), что означает поставить закрывающую скобку если таковой нет (проверка в методе на наличие скобочки имеется)
Хорошо. Попробую повторить в апликашке и прислать скриншоты.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Admin »

Смотрим код

Код: Выделить всё

BRW5:Browse.Where                        PROCEDURE
 CODE
 SELF.Select.Relation(SQLAccPos:ProductNumber,SQLProducts:ProductNumber,False)
 SELF.ResetField
 SELF.SP &= NULL
 SELF.Select.Where(SQLAccPos:AccRef,SQLAccounts:AccRef,'=','AND')
 SELF.Select.Where(SQLAccPos:Qty,'1','=','(OR')
 SELF.Select.Where(SQLAccPos:Qty,'','is null','OR)')
 SELF.ResetField(SQLAccounts:AccRef)
 IF SELF.QBE.Where()
  RETURN
 END
 PARENT.Where
И результат

Код: Выделить всё

Computer : SEA
User     : mixer
Date     : 04.02.2008
Time     : 21:01:21
Program  : C:\Clarion6\Examples\Mav\MAV_tvDemo\abcmavt.exe
Error    : [102] [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near 'null'. [42000] (42000)
           SQL Statement -
           7413256 Binding field 1 A."AccRef"           = 0
           7413256 Binding field 2 A."Qty"              = 1
           SELECT A."AccRef",A."Pos",B."Description",A."Qty",A."Price",A."Total" FROM MAVT_ACCPOS A LEFT OUTER JOIN MAVT_PRODUCTS B ON B."ProductNumber"=A."ProductNumber" WHERE A."AccRef"=? OR (A."Qty"=? OR A."Qty" is null
Вложения
первая часть условия
первая часть условия
SNAG-0000.png (6.47 КБ) 4276 просмотров
вторая часть условия
вторая часть условия
SNAG-0001.png (6.5 КБ) 4278 просмотров
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Andrew™ »

в последнем условии то надо не (OR а OR) - закрывающуюся скобочку
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Admin »

Последнее условие на картинке SNAG-0001.png так что все равно ждем ответа...
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Admin »

Последняя наша версия MAV будет работать с Clarion 9058 ?
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Andrew™ »

Admin писал(а):Последнее условие на картинке SNAG-0001.png так что все равно ждем ответа...
в данном сочетании действительно была ошибка, исправлено, линк на обновление ушёл мылом
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Re: Условия в WHERE на закладке Conditional Behavior

Сообщение Andrew™ »

Admin писал(а):Последняя наша версия MAV будет работать с Clarion 9058 ?
сборка идёт на 56 билде, проблем в 58 её использования не будет
Ответить