Может быть, кто-нибудь расскажет, почему?

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Sail
Новичок
Сообщения: 29
Зарегистрирован: 29 мар 2005, 17:49

Может быть, кто-нибудь расскажет, почему?

Сообщение Sail »

При таком написании интерфейса:
interface leave_1 'NameOfInterface';
table struct lnach(clsch: comp, vidopl: longint, summa: double);
create view as select lnach.*, klvidopl.* from klvidopl, lnach
where ((lnach.vidopl == klvidopl.vidopl))
;// and ('+' = klvidopl.vhvo[15] or '+' = klvidopl.vhvo[16]);
var
curm: word;
cury: integer;
screen rlscr;
buttons
cmIClose;
<<
<.Закрыть.>
>>
end;
handleevent
cmInit:{
if(getfirst xarpred = tsOk){
curm := month(xarpred.datotch);
cury := year(xarpred.datotch);
} else {
message('Can''t determine date of account');
closeinterface(cmCancel);
}
}
cmIClose:{
closeInterface(cmDefault);
}
end;
end.
результат работы такой, который и ожидался, но стоит только снять комметарии с дополнительного условия в описании логической таблицы, попытка найти первую запись таблицы xarpred терпит крах... ???
DEONIS
Посетитель
Сообщения: 32
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Татарстан ооо "СПАРК"

Re: Может быть, кто-нибудь расскажет, почему?

Сообщение DEONIS »

Сказать почему не скажу, но когда писал несколько условий в WHERE такая же неприятность была, ни в какую не хочет три условия обработать. Пришлось две таблица вытаскивать, и из них уже по частям все собирать.
sss61
Новичок
Сообщения: 21
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Амурская область, г.Благовещенск Центральные электросети

Re: Может быть, кто-нибудь расскажет, почему?

Сообщение sss61 »

Попробуй написать это
условие:
and ('+' = klvidopl.vhvo[15] or '+' = klvidopl.vhvo[16]);
по другому
and (klvidopl.vhvo[15] = '+' or
klvidopl.vhvo[16] = '+');
Sail
Новичок
Сообщения: 29
Зарегистрирован: 29 мар 2005, 17:49

Не помогло :-(

Сообщение Sail »

???
Ответить