Имя: Пароль:
1C
1С v8
УТ 10.3 Остатки на каждый день из периода
0 totparen
 
21.07.11
15:54
Ребята, есть ли у кого готовый запрос ОстаткиНаСкладах на каждый день, за заданный период?

В интернете множество советов как разворачивать виртуальные таблицы и соединять, но нет не одного примера довольно распространенного запроса.

Устал я уже биться с этим запросом.

пс... почему то тема не создалась.
1 IronDemon
 
21.07.11
16:04
Трудно одну таблицу регистра на другую заменить в готовом запросе?
2 totparen
 
21.07.11
16:06
Например в каком запросе?
3 totparen
 
21.07.11
16:10
Я правильно понимаю, что бы мне получить остатки на каждую дату, мне нужно использовать не виртуальную табилцу "ТоварыНаСкладах"?
4 IronDemon
 
21.07.11
16:13
5 totparen
 
21.07.11
16:19
Да, даа... Проходил я это. Спасибо.
6 totparen
 
21.07.11
16:46
(4)

Я не пойму, что это за параметры виртуальной таблицы в запорсе

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



Где это в конструкторе смотреть?
7 totparen
 
21.07.11
16:46
{(ДоговорКонтрагента.Организация).* КАК Организация, (ДоговорКонтрагента.Владелец).* КАК Контрагент, (ДоговорКонтрагента).*}
8 DrHiHi
 
21.07.11
16:49
БУГАГА
(7) наверное построителя запроса
9 IronDemon
 
21.07.11
16:50
Построитель/Таблицы - ключик нарисованный
10 totparen
 
21.07.11
16:51
(9) Уф. Нашёл. Пасиб. Бум разбираться шо це таке.
11 totparen
 
21.07.11
17:34
ПАМАГИТЕ!

Люди добрые, дайте готовый запрос.
12 mzelensky
 
21.07.11
17:44
(0) погляди на ИС. ТАм точно такой есть...сам буквально вчера смотрел
13 totparen
 
21.07.11
17:55
(12) Что такое ИС?
14 Ksandr
 
21.07.11
18:03
Автор, ну и наглый. А самому сделать? Или не барское это дело запросы писать?
15 Ksandr
 
21.07.11
18:04
что именно не получается?
16 totparen
 
21.07.11
18:47
Не знаю, на сколько красиво, но родил (Остатки на каждый день периода, проданных за этот период товаров):

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

УПОРЯДОЧИТЬ ПО
   Номенклатура,
   ДатаКалендаря
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший