![]() |
Запрос по регистрам. v7.Предприниматель Всем добрый день. Подскажите, где ошибка в запросе? Проверяю по встроенному отчету ДвижениеДокумента. Исходные - док.Реализации и Номенклатура. Цель - найти док.Поступления. Если делать : Рег = СоздатьОбъект("Регистр.РасчетыСПокупателями") ; Если Рег.ВыбратьДвиженияДокумента(ДокВыбр) = 1 Тогда Пока Рег.ПолучитьДвижение() = 1 Цикл ----------- Показывает все док. движения . А если делаю Запрос - то в некоторых документах Запрос пустой. ------------ ТекстЗапроса=" |ОбрабатыватьДокументы Все; |ДокПоступления = Регистр.РасчетыСПокупателями.ДокументПоступления; |ДокРеализации = Регистр.РасчетыСПокупателями.РасчДокумент; |РеализНоменкл = Регистр.РасчетыСПокупателями.Номенклатура; |РеализКоличество = Регистр.РасчетыСПокупателями.Количество; |Группировка ДокПоступления; |Функция ВсегоКолВо = КонОст(РеализКоличество); |Условие(РеализНоменкл = Номенклатура); |Условие(ДокРеализации = ДокВыбр); |"; Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; Пока Запрос.Группировка(1)=1 Цикл КонецЦикла |
Логичнее вместо коност всетаки расход А чем выборка не устраивает она имхо пошутрее будет при наличии соответствующих фильтров |
Ну просто хотела понять. По-сути, Запрос - это тоже будет движение документа. А не видит.... Кстати, Расход =0 |
> А если делаю Запрос - то в некоторых документах Запрос пустой . возможно товар оприходован другим путем.. например оприходование тмц - |
Путь товара : 1. Поступлением ТМЦ 2. Разделка 3. Реализация. ------------ В док. есть "Действия" - движение документа. Так вот там в док.Поступления указан док. Разделка: [url]http://s020.radikal.ru/i704/1409/df/d3e4bffdc05b.jpg[/url] Если выбираю движения по регистру, указывая конкретный док. Реализации, то я получаю док. разделка (п.2) -А если по запросу выбора из того же регистра, тоже указывая док, то у меня пустой запрос. Или может быть кто-то подскажет, как можно (3) док. оприходование ТМЦ в Предпринимателе нет. |
[URL=http://radikal.ru/fp/5aad97c6a26b4e94881a290696c21f74][IMG]http://s020.radikal.ru/i704/1409/df/d3e4bffdc05b.jpg[/IMG][/URL] |
Давно не смотрел предпринимателя, но по моему дело в том, что движения Вы выбираете у конкретного документа реализации, а в запросе условие РасчДокумент = ДокРеализация. А РасчДокумент не всегда есть документ реализация. Грубо говоря, Вам нужно выбирать в условии не РасчДокумент, а ТекущийДокумент, тот который двигал регистр |
выдержка из модуля : Регистр.РасчетыСПокупателями.ДокументПоступления = ТаблицаСтоимости.ДокументПоступления; Регистр.РасчетыСПокупателями.ВидМатериальногоРесурса = ТаблицаСтоимости.ВидМатериальногоРесурса; --------- ТаблицаСтоимости.ДокументПоступления = Расходы (разделка) 0000001417 (25.08.14) ТекущийДОкумент() = Реализация 0000031062 (03.09.14) --------- результат : Регистр.РасчетыСПокупателями.РасчДокумент = Реализация 0000031062 (03.09.14) Регистр.РасчетыСПокупателями.ДокументПоступления = Расходы (разделка) 0000001417 (25.08.14) -------- В запросе в качестве ДокВыбр указан этот док. Реализации, который в Регистре записан, как РасчДокумент. Тогда почему по запросу ничего не находится? |
сорри, чуток промахнулась при копировании. Из модуля : Регистр.РасчетыСПокупателями.РасчДокумент = ТекущийДокумент(); Регистр.РасчетыСПокупателями.ДокументПоступления = ТаблицаСтоимости.ДокументПоступления; |
Другая версия - Вы в запросе выбираете конечный остаток, а регистр по данному документу закрылся и остатка нет. Добавьте функции Приход и Расход, может что и вылезет. Я уже плохо помню язык запросов, полmзуюсь обычно только прямыми запросами. |
[quote=Lisonia;36437324] Кстати, Расход =0 [/quote] Совсем не кстати:-) где период запроса с ДатаДок по ДатаДок? |
(9) ясненько... жаль, я пока не умею таким пользоваться ( (10) дату указывать не обязательно. Выбирается за весь период существования данных. |
(11) "[em]дату указывать не обязательно. Выбирается за весь период существования данных[/em]" :)) жкк читать не пробовали? |
(11)в восьмерке может и да, а вот клюшки выдают данные на ТА |
Запрос.НачалоПериода() = ' . . ' Запрос.КонецПериода() = '03.09.14' |
(12) пробовали... но почему-то именно с регистрами у меня тупняк полный... В принципе, правильнее Приход ставить. Вообщем, методом НТ, установила что если не указывать Период, то показывает результат по КонОст. Если указывать Период - то результат по Приходу. -- Ну и, конечно, нифига не показывает, если док. за ТА... А тут только движение спасет.... --- Спасибо за наведение на мысль ) |
| Текущее время: 13:31. Часовой пояс GMT +3. |