Страница 1 из 1

Запрос ТХО

Добавлено: 19 авг 2015, 12:51
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)---
то выводится одна строчка в результате запроса, иначе выполнение запроса уходит в бесконечность:(

Re: Запрос ТХО

Добавлено: 19 авг 2015, 13:17
edward_K
1. Не стоит использовать таблицы без подцепок - поэтому после убирания строки уходите в никуда.
2. oborot.chozoper==hozoper.nrec замените на hozoper.nrec == oborot.chozoper - у вас же компилятор ругается что поле уже подвязано по этому узлу!
правило простое для (()) - значения(в том числе и поля родительских таблиц) условий слева, поля под условия справа, но не наоборот.
3. Не знаю в чем там у вас цель, но правильней отбирать обороты по ключу tidkgal + csoprdoc. Ну или по csoprhoz - а его уже искать по tidkgal + csoprdoc

Re: Запрос ТХО

Добавлено: 20 авг 2015, 07:42
Алексей
Это выведет все проводки, независимо от плана счетов.

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

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
));   

Re: Запрос ТХО

Добавлено: 21 авг 2015, 14:15
Marisha_P
проверила этот запрос. практически для всех актов проводки выводятся верно, а для ТХО (ФРО 44сч) почему-то данные задваиваются.. Потому что в таблице oborot так проставлены значения.. Как исключить повторы? distinct нельзя использовать:(

Re: Запрос ТХО

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