Имя: Пароль:
1C
1С v8
Простой отчет. Запрос из Регистра накопления по датам и справочнику.
0 Полька
 
22.10.13
12:58
Ребята, помогите. Вторую неделю как села за "восьмерку".
Отчет простой. Выбираем или элемент справочника или группу. Нужно получить остатки на начало месяца и на указанную дату.
Для одного элемента и одной даты сделала. А как добавить остальное- не соображу.
"ВЫБРАТЬ
|    СпрНоменклатура.Ссылка как СпрНом,
|    ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоНач
|ИЗ
|    Справочник.Номенклатура
|        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаНачало, ) КАК ТоварыНаСкладахОстатки
|        ПО ТоварыНаСкладахОстатки.Номенклатура = СпрНоменклатура.Ссылка
|ГДЕ
|(НЕ СпрНоменклатура.ЭтоГруппа)
|И СпрНоменклатура.Ссылка = &Ном" ;
Запрос.УстановитьПараметр("ДатаКонец",ДатаОтчета);
Запрос.УстановитьПараметр("ДатаНачало",НачалоМесяца(ДатаОтчета));
Запрос.УстановитьПараметр("Ном",СпрНоменклатура);
1 palpetrovich
 
22.10.13
13:04
типа так:
ВЫБРАТЬ
    ТоварыНаСкладахОстаткиИОбороты.Номенклатура,
    ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток,
    ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток
ИЗ
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , Номенклатура В ИЕРАРХИИ (&Номенклатура)) КАК ТоварыНаСкладахОстаткиИОбороты
2 eklmn
 
гуру
22.10.13
13:09
...ОстаткиИОбороты(НАЧАЛОПЕРИОДА(&ДатаНач,МЕСЯЦ),...
3 Полька
 
22.10.13
13:10
А из Остатков это не вытащить? Только из ОстаткиИОбороты?
4 eklmn
 
гуру
22.10.13
13:13
(3) тогда делай еще раз
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаКОНЕЦ
5 palpetrovich
 
22.10.13
13:15
(2)  не думаю что "Нужно получить остатки на начало месяца" -  такой уж и факт :)
(3) можно и из Остатков  - за 2 раза :)
6 Полька
 
22.10.13
13:29
А откуда быстрее и правильнее?
7 palpetrovich
 
22.10.13
13:36
(6) пробуй, замеряй...
8 eklmn
 
гуру
22.10.13
13:38
(5) задачи разные бывают, как автор написал так и говорим :)
9 Полька
 
22.10.13
13:39
Ну я просто читала, что якобы, если можно взять информацию из Остатков, то использовать ОстаткиИОбороты не правильно.
Отбор по 1 элементу работает. Только почему-то выводится куча записей.
А как сделать, чтобы и по группе работал?
10 eklmn
 
гуру
22.10.13
13:42
см. (1)
11 Полька
 
22.10.13
14:09
Не получается.
Если выбираю 1 элемент, то результат выводится, правильный, но куча одинаковых строк.
Если выбираю групп- пустая таблица
12 eklmn
 
гуру
22.10.13
14:13
(11) помнишь детскую игру "Найди отличия", я кстати до сих пор в нее  иногда играю, очень помогает читать и писать внимательно.
13 Полька
 
22.10.13
14:48
Вроде выводит. Но!
По много строчек на каждую позицию. Почему? Свернуть то я сверну, но почему?
14 Полька
 
22.10.13
15:21
...
15 palpetrovich
 
22.10.13
15:23
(14) ты-б код показала где "много строчек на каждую позицию."
16 Enders
 
22.10.13
15:32
(13) судя по тому, что регистр называется "ТоварыНаСкладах" логично предположить, что кроме измерения "Номенклатура" у него ещё есть как минимум одно измерение - "Склад".
По-этому и множатся строки, так у тебя по одной номенклатуре на разных складах есть остатки ;)
17 Полька
 
22.10.13
15:38
"ВЫБРАТЬ
|Номенклатура.Ссылка КАК СпрНом,
|ТоварыНаСкладахОстаткиИОбороты.Номенклатура,
|ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток КАК КоличествоНач,
|ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКон
|ИЗ
|Справочник.Номенклатура
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачало,&ДатаКонец) КАК ТоварыНаСкладахОстаткиИОбороты
|ПО ТоварыНаСкладахОстаткиИОбороты.Номенклатура = Номенклатура.Ссылка
|ГДЕ
|Номенклатура.Ссылка В ИЕРАРХИИ (&Ном)" ;
18 Полька
 
22.10.13
16:10
..
19 Михаил Козлов
 
22.10.13
16:12
Посмотрите штатный отчет по остаткам (и измените его нужным образом - будет больше пользы).
20 palpetrovich
 
22.10.13
16:34
(17) а с какой целью делается запрос к спраовнику? в результате нужен отчет по всем товарам, включая и те, по которым остатков нет?
ну и, учитывая (16) - пробуй так:
ВЫБРАТЬ
    ТоварыНаСкладахОстаткиИОбороты.Номенклатура,
    ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток,
    ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток
ИЗ
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(
            &ДатаНач,
            &ДатаКон,
            ,
            ,
            Номенклатура В ИЕРАРХИИ (&ВыбНоменклатура)
                И Склад = &ВыбСклад) КАК ТоварыНаСкладахОстаткиИОбороты
21 Полька
 
23.10.13
08:28
(20) Да вот сначала так думала. Сейчас думаю, что ограничусь выборкой из регистра, потом у меня еще там будет информация. Не буду нулевые брать.
Подскажите тогда вот такое. К пункту меню подсоединен отчет или документ. Где увидеть- какой? В 7-ке просто было. А тут никак не найду.
22 Полька
 
23.10.13
08:34
(20) Сделала, работает. Спасибо.