![]() |
|
Странный результат запроса | ☑ | ||
---|---|---|---|---|
0
DCKiller
30.06.14
✎
13:08
|
Ситуация следующая: делается запрос к БД по счету 41 с фильтром по определенной организации, складу и номенклатуре. Запрос делается из модуля документа Купля-продажа. По товару фактически есть только 2 прихода - документом "Приходная накладная" и "Операция". Запрос делается в разрезе регистраторов. Так вот, этот запрос выдает результат - вместе с двумя документами прихода он также показывает и текущий документ Купля-продажа в качестве регистратора!
http://s018.radikal.ru/i510/1406/7b/7e187067750a.jpg Это тем более странно, что данный документ хотя и проводится по регистру бухгалтерии, из которого берет данные запрос, но при этом пока еще не формирует по нему никаких движений. Других документов, использующих документ этот купли-продажи в сформированных ими движениях, в базе нет. Если делать запрос без разреза по регистраторам, то все нормально, остаток количества и суммы выводятся правильные. В чем м.б. проблема? ТИИ не помогло. |
|||
1
Крошка Ру
30.06.14
✎
13:13
|
(0)В самом регистре-то по такому отбору на момент выполнения запроса какие данные?
|
|||
2
DCKiller
30.06.14
✎
13:20
|
(1) В регистре движений с Купля-продажа нет.
|
|||
3
Крошка Ру
30.06.14
✎
13:21
|
(2) Тогда давай запрос
|
|||
4
Maxus43
30.06.14
✎
13:21
|
Старые движения может?
В какой момент делается запрос? При проведении? |
|||
5
DCKiller
30.06.14
✎
13:22
|
(4) Да, при проведении. Но документ пока еще никаких движений не формирует (не прописано в модуле в смысле).
|
|||
6
DCKiller
30.06.14
✎
13:22
|
(3)
Запрос = Новый Запрос("ВЫБРАТЬ | КупляПродажаТовары.Номенклатура, | СУММА(КупляПродажаТовары.Количество) КАК Количество, | СУММА(КупляПродажаТовары.Сумма) КАК Сумма, | КупляПродажа.ОрганизацияПоставщик, | КупляПродажа.СкладПоставщик, | КупляПродажа.ОрганизацияПокупатель, | КупляПродажа.СкладПокупатель |ПОМЕСТИТЬ ВТ_ДанныеДокумента |ИЗ | Документ.КупляПродажа.Товары КАК КупляПродажаТовары | ЛЕВОЕ СОЕДИНЕНИЕ Документ.КупляПродажа КАК КупляПродажа | ПО КупляПродажаТовары.Ссылка = КупляПродажа.Ссылка |ГДЕ | КупляПродажаТовары.Ссылка = &Ссылка | |СГРУППИРОВАТЬ ПО | КупляПродажаТовары.Номенклатура, | КупляПродажа.ОрганизацияПоставщик, | КупляПродажа.СкладПоставщик, | КупляПродажа.ОрганизацияПокупатель, | КупляПродажа.СкладПокупатель |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТ_ДанныеДокумента.Номенклатура, | ВТ_ДанныеДокумента.Количество, | ВТ_ДанныеДокумента.Сумма, | ВТ_ДанныеДокумента.ОрганизацияПоставщик, | ВТ_ДанныеДокумента.СкладПоставщик, | ВТ_ДанныеДокумента.ОрганизацияПокупатель, | ВТ_ДанныеДокумента.СкладПокупатель, | УправленческийОстаткиИОбороты.Регистратор КАК Партия, | УправленческийОстаткиИОбороты.СуммаКонечныйОстатокДт, | УправленческийОстаткиИОбороты.КоличествоКонечныйОстатокДт |ИЗ | ВТ_ДанныеДокумента КАК ВТ_ДанныеДокумента | ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Управленческий.ОстаткиИОбороты( | , | &КонДата, | Регистратор, | , | Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Товары)), | , | Организация В | (ВЫБРАТЬ ПЕРВЫЕ 1 | ВТ_ДанныеДокумента.ОрганизацияПоставщик | ИЗ | ВТ_ДанныеДокумента КАК ВТ_ДанныеДокумента) | И Субконто1 В | (ВЫБРАТЬ РАЗЛИЧНЫЕ | ВТ_ДанныеДокумента.Номенклатура | ИЗ | ВТ_ДанныеДокумента КАК ВТ_ДанныеДокумента) | И Субконто2 В | (ВЫБРАТЬ ПЕРВЫЕ 1 | ВТ_ДанныеДокумента.СкладПоставщик | ИЗ | ВТ_ДанныеДокумента КАК ВТ_ДанныеДокумента)) КАК УправленческийОстаткиИОбороты | ПО ВТ_ДанныеДокумента.ОрганизацияПоставщик = УправленческийОстаткиИОбороты.Организация | И ВТ_ДанныеДокумента.СкладПоставщик = УправленческийОстаткиИОбороты.Субконто2 | И ВТ_ДанныеДокумента.Номенклатура = УправленческийОстаткиИОбороты.Субконто1"); Запрос.УстановитьПараметр("Ссылка", Ссылка); Запрос.УстановитьПараметр("КонДата", МоментВремени()); |
|||
7
Maxus43
30.06.14
✎
13:26
|
(5) Юзай границу, потому что при перепроедении например могут быть старые данные ещё
|
|||
8
DCKiller
30.06.14
✎
13:27
|
Все, разобрался. Надо было в вирт. таблице регистра метод дополнения "Движения" использовать :)
|
|||
9
Maxus43
30.06.14
✎
13:28
|
надо было Границу юзать, а не с методами дополнения играть)
|
|||
10
Maxus43
30.06.14
✎
13:28
|
типа Новый Граница(ЭтотОбъект.Ссылка, ВидГраницы.Исключая)
|
|||
11
DCKiller
30.06.14
✎
13:28
|
(9) Покажи? ;) Пригодится.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |