Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.09;
Скачать: CL | DM;

Вниз

Возник. ошибки в дес.-тайме при попытке создать экземпляры полей   Найти похожие ветки 

 
Виталий Панасенко   (2005-08-26 12:12) [0]

Суть .. Даже не знаю, как сказать..Два запроса.. в первом диапазон дат указан в тексте запроса... Во-втором случае - параметры... В первом случае запрос выполняется (и, соответсвенно, IDE создает экземпляры полей)... Во втором случае - Could not find object (BDE Error 8712)... Ни как не могу победить. А строить запрос динамически - влом..:-)).. В инеет нашел только вопрос по поводу ошибки и по поводу MS SQL 7.0...

/*Расход месяц*/
select "r", "m",doc_id, m.client_code, p.client_name, p.client_dpicode, m.doc_date, m.dpidoc_num,
sum(produkt_cenarfull * produkt_kolvo) as sumpdv from docr d, client p, maindocr m
where doc_id in (
select doc_id from maindocr
where doc_date between "01.05.05" and "31.05.05"
and DPIDoc_Num is not null) and p.client_code=m.client_code and
m.doc_id=d.doc_id
group by doc_id, m.client_code, p.client_name, p.client_dpicode, m.doc_date, m.dpidoc_num

union all
/* Приход месяц*/
select "p", "m",doc_id, d.postavshik_code, p.postavshik_name, p.postavshik_dpicode,m.doc_date, m.dpidoc_num,
sum(produkt_cenap * produkt_kolvo) as sumpdv from docp d, postavsh p, maindocp m
where doc_id in (
select doc_id from maindocp
where doc_date between "01.05.05" and "31.05.05"
and DPIDoc_Num is not null) and p.postavshik_code=m.postavshik_code and
m.doc_id=d.doc_id
group by doc_id, d.postavshik_code, p.postavshik_name, p.postavshik_dpicode, m.doc_date, m.dpidoc_num

union all

/*Расход квартал*/
select "r", "q",doc_id, m.client_code, p.client_name, p.client_dpicode, m.doc_date, m.dpidoc_num,
sum(produkt_cenarfull * produkt_kolvo) as sumpdv from docr d, client p, maindocr m
where doc_id in (
select doc_id from maindocr
where doc_date between "01.04.05" and "30.06.05"
and DPIDoc_Num is not null) and p.client_code=m.client_code and
m.doc_id=d.doc_id
group by doc_id, m.client_code, p.client_name, p.client_dpicode, m.doc_date, m.dpidoc_num

union all
/* Приход квартал*/
select "p", "q",doc_id, d.postavshik_code, p.postavshik_name, p.postavshik_dpicode,m.doc_date, m.dpidoc_num,
sum(produkt_cenap * produkt_kolvo) as sumpdv from docp d, postavsh p, maindocp m
where doc_id in (
select doc_id from maindocp
where doc_date between "01.04.05" and "30.06.05"
and DPIDoc_Num is not null) and p.postavshik_code=m.postavshik_code and
m.doc_id=d.doc_id
group by doc_id, d.postavshik_code, p.postavshik_name, p.postavshik_dpicode, m.doc_date, m.dpidoc_num

order by 1, 2, m.doc_date, m.dpidoc_num

и
/*Расход месяц*/
select "r", "m",doc_id, m.client_code as code, p.client_name as name, p.client_dpicode as dpi_code, m.doc_date, m.dpidoc_num,
sum(produkt_cenarfull * produkt_kolvo) as sumpdv from docr d, client p, maindocr m
where doc_id in (
select doc_id from maindocr
where doc_date between :dat1 and :dat2
and DPIDoc_Num is not null) and p.client_code=m.client_code and
m.doc_id=d.doc_id
group by doc_id, m.client_code, p.client_name, p.client_dpicode, m.doc_date, m.dpidoc_num

union all
/* Приход месяц*/
select "p", "m",doc_id, m.postavshik_code, p.postavshik_name, p.postavshik_dpicode,m.doc_date, m.dpidoc_num,
sum(produkt_cenap * produkt_kolvo) as sumpdv from docp d, postavsh p, maindocp m
where doc_id in (
select doc_id from maindocp
where doc_date between :dat11 and :dat22
and DPIDoc_Num is not null) and p.postavshik_code=m.postavshik_code and
m.doc_id=d.doc_id
group by doc_id, m.postavshik_code, p.postavshik_name, p.postavshik_dpicode, m.doc_date, m.dpidoc_num

union all

/*Расход квартал*/
select "r", "q",doc_id, m.client_code, p.client_name, p.client_dpicode, m.doc_date, m.dpidoc_num,
sum(produkt_cenarfull * produkt_kolvo) as sumpdv from docr d, client p, maindocr m
where doc_id in (
select doc_id from maindocr
where doc_date between :qdat1 and :qdat2
and DPIDoc_Num is not null) and p.client_code=m.client_code and
m.doc_id=d.doc_id
group by doc_id, m.client_code, p.client_name, p.client_dpicode, m.doc_date, m.dpidoc_num

union all
/* Приход квартал*/
select "p", "q",doc_id, m.postavshik_code, p.postavshik_name, p.postavshik_dpicode,m.doc_date, m.dpidoc_num,
sum(produkt_cenap * produkt_kolvo) as sumpdv from docp d, postavsh p, maindocp m
where doc_id in (
select doc_id from maindocp
where doc_date between :qdat11 and :qdat22
and DPIDoc_Num is not null) and p.postavshik_code=m.postavshik_code and
m.doc_id=d.doc_id
group by doc_id, m.postavshik_code, p.postavshik_name, p.postavshik_dpicode, m.doc_date, m.dpidoc_num

order by 1, 2, m.doc_date, m.dpidoc_num


 
Sergey13 ©   (2005-08-26 12:42) [1]

Ну и запросы у вас, - сказала база данных и повисла.
(с)
8-)

А doc_date какого типа? А параметр? И как параметр присваиваешь? И почему параметры везде разные (:qdat1  и :qdat11)?


 
Виталий Панасенко   (2005-08-26 14:21) [2]


> А doc_date какого типа

DATE

> И как параметр присваиваешь? И почему параметры везде разные
> (:qdat1  и :qdat11)?

Пробовал и одинаковые имена параметров (изначально).. Подумал, может БДЕ путается..Вот и поменял имена... Параметры типа ftDate(ftDateTime  -пробовал оба варианта)... Я их (параметры) еще нигде не определяю.. Я в редакторе полей пытаюсь выполнить "Add all fields"... Когда даты прописаны - поля добавляются.. Если параметры - Could not find object... Каждый подзапрос в отдельности - пожалуйста, все тип-топ... Все вместе - фиг..


 
Виталий Панасенко   (2005-08-26 14:22) [3]

Да, и чем запрос не нравится ? Вроди, запрос, как запрос...


 
Sergey13 ©   (2005-08-26 14:28) [4]

> DATE
Это в таблице? А в датасете какой тип у поля указан? При юнионах вроде бывает, что слетает (где то недавно видел).

А параметрам значение по умолчанию если попробовать присвоить?
И проверь у всех ли тип правильный. Может пропустил какой.
А без добавления полей - запрос открывается?


 
Sergey13 ©   (2005-08-26 14:31) [5]

2[3] Виталий Панасенко   (26.08.05 14:22)
>Да, и чем запрос не нравится ? Вроди, запрос, как запрос...
Длинный. 8-)
Две таблицы вместо одной (приход/расход).
Запросы за квартал и месяц в этом квартале объединяются. Зачем? Впрочем в логику я не вникал особо.


 
Виталий Панасенко   (2005-08-26 14:42) [6]


> Две таблицы вместо одной (приход/расход).

Давно было.. И мне пока нравится.. Так есть таблица остатков..:-))

> Запросы за квартал и месяц в этом квартале объединяются.
> Зачем? Впрочем в логику я не вникал особо

А это такой реестр.. За текущий месяц и за квартал приходных и расходных документов...Не я придумал.. Налоговая...
>  А в датасете какой тип у поля указан?

Нету у меня CDS... я просто выбираю(пытаюсь) данные для отчета... Это не трехзвенка... Обыкновенное файл-серверное приложение...Кстати, надо переспросить, а нужно ли в чать "За квартал" включать текущий месяц...


 
Sergey13 ©   (2005-08-26 14:48) [7]

2 [6] Виталий Панасенко   (26.08.05 14:42)
> Нету у меня CDS...
А при чем тут CDS? Я про него ни гу-гу. 8-)

[4] Sergey13 ©   (26.08.05 14:28)
>> DATE
>Это в таблице? А в датасете какой тип у поля указан?
Хотя это я ступил. Ты поля не можешь добавить а я их тип спрашиваю. 8-)


 
Виталий Панасенко   (2005-08-26 14:52) [8]


> А при чем тут CDS? Я про него ни гу-гу. 8-)

А это ?
> Это в таблице? А в датасете какой тип у поля указан?

Ничего не понимаю...Думал, БДЕ может слетело.. На другую машину пертянул - та же картина


 
Sergey13 ©   (2005-08-26 15:02) [9]

2[8] Виталий Панасенко   (26.08.05 14:52)
А что, датасет - это непременно клиентский? А TQuery им не является?


 
Виталий Панасенко   (2005-08-26 15:08) [10]


> 2[8] Виталий Панасенко   (26.08.05 14:52)
> А что, датасет - это непременно клиентский? А TQuery им
> не является?

Проехали... Проблему это не решает...Придется в Rx совать...Не, проще все-таки строку создать со значением даты...


 
Sergey13 ©   (2005-08-26 15:10) [11]

2[2] Виталий Панасенко   (26.08.05 14:21)
>  Каждый подзапрос в отдельности - пожалуйста, все тип-топ... Все вместе - фиг..
Попробуй 2 подзапроса из одной таблицы. Т.е. только приход или расход.


 
Sergey13 ©   (2005-08-26 15:11) [12]

И посмотри все таки тип получаемого поля, когда вместо параметров константы, т.е. когда можешь добавить поля.


 
Виталий Панасенко   (2005-08-26 15:17) [13]


> тип получаемого поля

TDateField

> Попробуй 2 подзапроса из одной таблицы. Т.е. только приход
> или расход.

Could not find object... Лады, спишем на убогость БДЕ(Ну, не себя же тупым обзывать !..:-)).. Только два дня жалко...



Страницы: 1 вся ветка

Текущий архив: 2005.10.09;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.027 c
14-1127173550
mm0
2005-09-20 03:45
2005.10.09
как зделать post запрос без curl


1-1126875099
webpauk
2005-09-16 16:51
2005.10.09
Определение property


2-1124791012
Sepuka
2005-08-23 13:56
2005.10.09
принцип работы компонента ProgressBar


3-1125391402
Term
2005-08-30 12:43
2005.10.09
View для FB 1.5


4-1123739802
Tupoy
2005-08-11 09:56
2005.10.09
Ярлыки на рабочем столе