Имя: Пароль:
1C
1С v8
Проблема в запросе: Отдельно есть остатки, а в объединении нет
0 Jokerman
 
22.06.12
11:45
Здрасте, что не так плз, задолбался просто уже:
Делаю Запрос по регистру накопления с периодичностью "День", не показывает остатки если не было движений за день, (метод дополнения поставил), причем только если запрос участвует в объединении, а отдельно пожалуйста!!
1 mikecool
 
22.06.12
11:52
продолжайте наблюдения
2 Jokerman
 
22.06.12
12:08
(1) Продолжаю: прикол в том, что если поставить отбор по проблемной номенклатуре, то остатки исчезают даже в случае "без объединения". Как говорится ничего не понимаю, пока грешу на внутренние таблицы остатки, делаю пересчет, наблюдаю ..
3 Jokerman
 
22.06.12
12:09
Пересчет остатков не помог, значит где-то внутри: или моего мозга, или функционала платформы :)
4 Fragster
 
гуру
22.06.12
12:10
_или моего мозга_
5 Jokerman
 
22.06.12
12:11
(4) это не голосование, хелп, что не так? Я недостаточно информации дал?
6 viktor_vv
 
22.06.12
12:12
(5) Ну, типа того, телепаты в отпуске.
7 Jokerman
 
22.06.12
12:25
Запрос состоит из 5 объединений:
1: Рег. накопл. "УчетДенежныхСредств" Таблица оборотов
2: Рег. накопл. "УчетТоваровВРознице" Таблица остатков и оборотов
3. Рег. бухг.   оборотный
4. Рег. бухг.   оборотный
5. Рег. накопл. "УчетТоваровПеречислением" Таблица оборотов

У некой номенклатуры 15 февраля был остаток на конец дня 15 штук
16 февраля только в пятом объединении были обороты, остаток у этой позиции не показывается, т.к. во втором объединении не было оборотов. Но если все объединения удалить, кроме второго, то показывает. Что за ..
8 Jokerman
 
22.06.12
12:45
ап хелп
9 viktor_vv
 
22.06.12
12:49
Ну покажи уже запрос.
Правда он, наверное, километровый.
10 Jokerman
 
22.06.12
12:51
(9) Блин да

ВЫБРАТЬ
   УчетДенежныхСредствВРознице.Склад КАК Склад,
   УчетДенежныхСредствВРознице.Период КАК Период,
   УчетДенежныхСредствВРознице.Номенклатура КАК Номенклатура,
   0 КАК СуммаТовараНачальныйОстаток,
   0 КАК СуммаТовараКонечныйОстаток,
   0 КАК КоличествоТовараНачальныйОстаток,
   0 КАК КоличествоТовараКонечныйОстаток,
   УчетДенежныхСредствВРознице.КоличествоНаличныеНачальныйОстаток КАК КоличествоДенегНачальныйОстаток,
   УчетДенежныхСредствВРознице.КоличествоНаличныеКонечныйОстаток КАК КоличествоДенегКонечныйОстаток,
   УчетДенежныхСредствВРознице.СуммаНаличныеНачальныйОстаток КАК СуммаДенегНачальныйОстаток,
   УчетДенежныхСредствВРознице.СуммаНаличныеКонечныйОстаток КАК СуммаДенегКонечныйОстаток,
   0 КАК СуммаПриходаТовара,
   0 КАК КоличествоПриходаТовара,
   УчетДенежныхСредствВРознице.СуммаНаличныеРасход КАК СуммаИнкассировано,
   УчетДенежныхСредствВРознице.КоличествоНаличныеРасход КАК КоличествоИнкассировано,
   УчетДенежныхСредствВРознице.СуммаТерминалПриход КАК СуммаТерминалПриход,
   УчетДенежныхСредствВРознице.КоличествоТерминалПриход КАК КоличествоТерминалПриход,
   УчетДенежныхСредствВРознице.СуммаНаличныеПриход КАК СуммаНаличныеПриход,
   УчетДенежныхСредствВРознице.КоличествоНаличныеПриход КАК КоличествоНаличныеПриход,
   0 КАК ПоступилоИнкассация,
   0 КАК ПоступилоТерминал,
   0 КАК КоличествоРеализованоПеречислением,
   0 КАК СуммаРеализованоПеречислением
ИЗ
   РегистрНакопления.УчетДенежныхСредствВРознице.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, ДвиженияИГраницыПериода, Организация = &Организация) КАК УчетДенежныхСредствВРознице

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
   УчетТоваровВРознице.Склад,
   УчетТоваровВРознице.Период,
   УчетТоваровВРознице.Номенклатура,
   УчетТоваровВРознице.СуммаНачальныйОстаток,
   УчетТоваровВРознице.СуммаКонечныйОстаток,
   УчетТоваровВРознице.КоличествоНачальныйОстаток,
   УчетТоваровВРознице.КоличествоКонечныйОстаток,
   0,
   0,
   0,
   0,
   УчетТоваровВРознице.СуммаПриход,
   УчетТоваровВРознице.КоличествоПриход,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0
ИЗ
   РегистрНакопления.УчетТоваровВРознице.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, ДвиженияИГраницыПериода, Организация = &Организация) КАК УчетТоваровВРознице

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
   ХозрасчетныйОбороты.Субконто1,
   ХозрасчетныйОбороты.Период,
   NULL,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   ЕСТЬNULL(ХозрасчетныйОбороты.СуммаОборотКт, 0),
   0,
   0,
   0
ИЗ
   РегистрБухгалтерии.Хозрасчетный.Обороты(&НачалоПериода, &КонецПериода, День, Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.А5711), , Организация = &Организация, КорСчет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.А5100)), ) КАК ХозрасчетныйОбороты

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
   ХозрасчетныйОбороты.Субконто1,
   ХозрасчетныйОбороты.Период,
   NULL,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   ЕСТЬNULL(ХозрасчетныйОбороты.СуммаОборотКт, 0),
   0,
   0
ИЗ
   РегистрБухгалтерии.Хозрасчетный.Обороты(, &КонецПериода, День, Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.А5712), , Организация = &Организация, КорСчет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.А5100)), ) КАК ХозрасчетныйОбороты

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
   Склады.Ссылка,
   УчетРеализацииНоменклатурыОбороты.Период,
   УчетРеализацииНоменклатурыОбороты.Номенклатура,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   УчетРеализацииНоменклатурыОбороты.КоличествоОборот,
   УчетРеализацииНоменклатурыОбороты.СуммаОборот + УчетРеализацииНоменклатурыОбороты.СуммаНДСОборот
ИЗ
   РегистрНакопления.УчетРеализацииНоменклатуры.Обороты(&НачалоПериода, &КонецПериода, День, Организация = &Организация) КАК УчетРеализацииНоменклатурыОбороты
       ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Склады КАК Склады
       ПО УчетРеализацииНоменклатурыОбороты.Склад = Склады.ВнутреннийСклад
ГДЕ
   УчетРеализацииНоменклатурыОбороты.Склад <> ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)
11 viktor_vv
 
22.06.12
13:01
УчетРеализацииНоменклатурыОбороты.Склад = Склады.ВнутреннийСклад

Вот здесь тип значения "ВнутреннийСклад" какой?
12 viktor_vv
 
22.06.12
13:03
И попробуй заменить в последнем запросе
Склады.Ссылка

на

УчетРеализацииНоменклатурыОбороты.Склад

Мне кажется у тебя в посленем запросе Склады.Ссылка равно Null.
13 Jokerman
 
22.06.12
13:04
(11) Тип Справочник.Склады, но помоему (12) это не вариант, но я попробую
14 viktor_vv
 
22.06.12
13:06
(13) Непоянтно зачем тебе там левое соединение со складами.
15 Jokerman
 
22.06.12
13:09
(12) низзя и не получается, это наруешает специфику
(14) не парьтесь по этому поводу, это следствие некоторой заморочки со складами
Дело в том что реализация по рознице сидит на другом складе, типа оптовом, который связан реквизитом с розничным складом. Это все в норме. С остатками проблема.
16 viktor_vv
 
22.06.12
13:12
Насчет складов понял, а почему не работает ХЗ :).
17 Jokerman
 
22.06.12
13:15
ДАмс ребят на работе спрашиваю - разводят руками, не понятно, теоретически остатки должно выводиться, а на практике видите сами ..
18 Fragster
 
гуру
22.06.12
13:17
сделать несколько наборов данных, соединить средствами СКД. правильно прописать роли полей, включить автодополнение средствами СКД.
19 Jokerman
 
22.06.12
13:21
(18) как раз щас так и переделываю, все равно отчет на СКД
20 EasyRider
 
22.06.12
13:23
а нормально,что у хозрасчетного параметр &НачалоПериода в запросе не указан?
21 Jokerman
 
22.06.12
13:28
(20) конечно не нормально, только это не решает проблему ... где стер сорри
22 EasyRider
 
22.06.12
13:30
(21)не решает,но смотреть на это спокойно не могу.
23 Jokerman
 
22.06.12
13:31
(22) спасибо
24 Jokerman
 
22.06.12
13:39
(18) вынес второе объединение в отдельный набор (в первом наборе исключил естественно), соединил по склад, период, номенклатура. Никакие настройки ролей не менял, все как СКД предложила, никакие автозаполнения не делал (кстати что вы имели ввиду)? Результат тот же!
25 Jokerman
 
22.06.12
14:20
В общем хрень какая-то не разобрался!
26 Fragster
 
гуру
22.06.12
14:21
(24) сделай объединение, а не соединение
27 Jokerman
 
22.06.12
14:34
(26) не помогло, а недостающие поля надо создавать?
28 Fragster
 
гуру
22.06.12
14:46
(27) они же сами должны появиться. ну и из разных источников ресурсы должны быть с разными псевдонимами
29 Jokerman
 
22.06.12
15:08
(28) ну тогда я все сделал правильно, щас на крайняк пробую как внешнюю вдудонить, мож покатит ...
30 Jokerman
 
22.06.12
15:17
(29) неа не суждено видно
31 anddro
 
22.06.12
15:19
(7) Но если все объединения удалить, кроме второго, то показывает. Что за ..
Как вариант - тот запрос, который отрабатывает нормально только в гордом одиночестве (что само по себе странно), вначале поместить во временную таблицу, а потом уже остальные объединять с ней.

Тоже борьба со следствием, а не с причиной, конечно, но раз не ясно в чем причина...
32 Jokerman
 
22.06.12
15:53
(31) Хе если сделать как вы посоветовали, то выходит такая несуразица. Я забыл сказать одну деталь если отчет формировать за один день, в который не выводились остатки, то остатки выходят, а при таком раскладе, даже так не работает ... :)
33 Jokerman
 
22.06.12
15:59
Интересно, если проблемный день (в моем случае 16.02.2012) является начальной или конечной границей отчета, то остатки выходят, хотя метод дополнения - "ДвиженияИГраницы" в случае периодичности "день" должен отрабатывать с остатками на каждый день, не так ли?
34 Jokerman
 
22.06.12
16:08
Блин может в пакеты засунуть, как считаете поможет?
35 Jokerman
 
22.06.12
16:55
(34) Пакеты тоже не дело ..