Запрос ТХО

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

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

Ответить
Marisha_P
Местный житель
Сообщения: 232
Зарегистрирован: 10 ноя 2010, 13:49

Запрос ТХО

Сообщение Marisha_P »

Здравствуйте! Подскажите, в чем ошибка
В запросе для актов на услуги в снабжении надо вывести наименование ТХО, дебет, кредит и сумму оборота

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

select oborot.sumob, hozoper.name1 from hozoper
where ((281474980991941==katsopr.nrec
and katsopr.chozoper ==hozoper.nrec
and oborot.chozoper==hozoper.nrec (noindex)
));   
если убираю ---and oborot.chozoper==hozoper.nrec (noindex)---
то выводится одна строчка в результате запроса, иначе выполнение запроса уходит в бесконечность:(
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Запрос ТХО

Сообщение edward_K »

1. Не стоит использовать таблицы без подцепок - поэтому после убирания строки уходите в никуда.
2. oborot.chozoper==hozoper.nrec замените на hozoper.nrec == oborot.chozoper - у вас же компилятор ругается что поле уже подвязано по этому узлу!
правило простое для (()) - значения(в том числе и поля родительских таблиц) условий слева, поля под условия справа, но не наоборот.
3. Не знаю в чем там у вас цель, но правильней отбирать обороты по ключу tidkgal + csoprdoc. Ну или по csoprhoz - а его уже искать по tidkgal + csoprdoc
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Re: Запрос ТХО

Сообщение Алексей »

Это выведет все проводки, независимо от плана счетов.

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

select oborot.sumob, hozoper.name1 from hozoper
where ((281474980991941==katsopr.nrec
and katsopr.vidsopr == soprhoz.tipdoc
and katsopr.nrec == soprhoz.csoprdoc
and soprhoz.chozoper == hozoper.nrec
and soprhoz.nrec == oborot.csoprhoz
));   
Marisha_P
Местный житель
Сообщения: 232
Зарегистрирован: 10 ноя 2010, 13:49

Re: Запрос ТХО

Сообщение Marisha_P »

проверила этот запрос. практически для всех актов проводки выводятся верно, а для ТХО (ФРО 44сч) почему-то данные задваиваются.. Потому что в таблице oborot так проставлены значения.. Как исключить повторы? distinct нельзя использовать:(
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Запрос ТХО

Сообщение edward_K »

Причин две
1. Проводки в нескольких планах счетов
2. Несколько SoprHoz на документ, и к каждой свои проводки. Если ФРО, то там ищите же по PlPor? Там как раз возможно деление. Учтите. что фильтр по типу документа обязателен - это общая помойка для всех документов для связи с проводками. В модуле хозоперации вы видите именно эту таблицу.
Ответить