Не могу осуществить преобразование типов

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

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

Ответить
Lumox
Сообщения: 3
Зарегистрирован: 19 ноя 2010, 11:15

Не могу осуществить преобразование типов

Сообщение Lumox »

Народ подскажите начинающему.
Имеется запрос созданый в Support-е

Select oborot.sodpr, oborot.sumob, oborot.datob,
plpor.namepl1
WHERE
oborot.datob >= date (01,01,2010) and
oborot.datob <= date (01,02,2010) and
oborot.nrec IN
(select plpor.chozoper
where
plpor.datob >= date (01,01,2010) and
plpor.datob <= date (01,02,2010));

Т.е. нужно из таблицы oborot - выбрать все проводки, которые относятся к платёжным поручениям,
при этом подтянуть номер платёжного поручения.
Если без второго селекта делать - то запрос выполняется 2 дня.... Хотя каждый по отдельности отрабатывает за 20 и 40 секунд.
НО при выполнении данного запроса выводится ошибка:
"Не могу осуществить преобразование типов oborot.nrec IN"...
Уж что я только не пробовал - ну не в какую...
Народ подскажите - т.к. даже спросить то не у кого, а некоторые стандартные команды скл тут по ходу дела не работает или
же имеют синтаксис другой..
Vik
Местный житель
Сообщения: 370
Зарегистрирован: 28 сен 2006, 15:43
Откуда: Санкт-Петербург
Контактная информация:

Re: Не могу осуществить преобразование типов

Сообщение Vik »

Если правильно понял:

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

Select
oborot.sodpr, oborot.sumob, oborot.datob,
plpor.namepl1
from
 PlPor
,Oborot
WHERE
((
         date (01,01,2010) <<= plpor.datob
     and date (01,02,2010) >>= plpor.datob
     and plpor.chozoper /== Oborot.nrec
))
;  
Нельзя в лоте таким образом использовать вложенные запросы, и никакого IN нет :)
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Не могу осуществить преобразование типов

Сообщение edward_K »

стандартные не работают
синтаксис свой - читать vipprogr.chm (с примерами) и форум.
Если же влом, то хотя бы там же DSQL но на первасиве могет не работать.
Lumox
Сообщения: 3
Зарегистрирован: 19 ноя 2010, 11:15

Re: Не могу осуществить преобразование типов

Сообщение Lumox »

Всё сделал как подсказали:
SELECT
oborot.sodpr,oborot.sumob,oborot.datob,
plpor.namepl1
from
PlPor, Oborot
WHERE
((
oborot.datob >= date(01,01,2010) and
oborot.datob <= date(10,01,2010) and
plpor.chozoper /== Oborot.nrec
));

Ошибка - Не могуосуществить преобразование типов
plpor.chozoper /== Oborot.nrec
^
plpor.chozoper - тип comp
Oborot.nrec - тип comp
Последний раз редактировалось Lumox 22 ноя 2010, 17:44, всего редактировалось 1 раз.
Gameus_
Местный житель
Сообщения: 209
Зарегистрирован: 18 окт 2006, 17:03
Откуда: Ростов на Дону Новочеркасск Новороссийск
Контактная информация:

Re: Не могу осуществить преобразование типов

Сообщение Gameus_ »

SELECT
oborot.sodpr,oborot.sumob,oborot.datob,
plpor.namepl1
from
PlPor, Oborot
WHERE
((
oborot.datob >>= date(01,01,2010) and
oborot.datob <<= date(10,01,2010) and
plpor.chozoper /== Oborot.nrec
));
Vik
Местный житель
Сообщения: 370
Зарегистрирован: 28 сен 2006, 15:43
Откуда: Санкт-Петербург
Контактная информация:

Re: Не могу осуществить преобразование типов

Сообщение Vik »

Lumox писал(а):Всё сделал как подсказали:
Вы уверены? Посмотрите что было написано, и что вы написали. Не надо ничего менять.
Gameus_
Местный житель
Сообщения: 209
Зарегистрирован: 18 окт 2006, 17:03
Откуда: Ростов на Дону Новочеркасск Новороссийск
Контактная информация:

Re: Не могу осуществить преобразование типов

Сообщение Gameus_ »

В двойных скобках пишется <<= >>= == /==
Lumox
Сообщения: 3
Зарегистрирован: 19 ноя 2010, 11:15

Re: Не могу осуществить преобразование типов

Сообщение Lumox »

Спасибо - всё получилось :)
Срочное сделано - пшёл читать хелп и разбираться с двойными ковычками и тире...
Ответить