Имя: Пароль:
1C
1С v8
Отчет по ОС, проблема с датами
0 Asteroida
 
16.08.13
08:40
Здравствуйте, помогите с проблемой: надо сделать расшифровку 01 счета. Надо вывести помесячно(конецмесяца) остаток по счету. Написала запрос :  
|    КОНЕЦПЕРИОДА(ХозрасчетныйОстаткиИОбороты.Период, МЕСЯЦ) КАК КонМесяца,
|    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК Сумма
|ИЗ
|    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Месяц, , Счет В ИЕРАРХИИ (&Счет01), , Организация = &Организация) КАК ХозрасчетныйОстаткиИОбороты
|
|УПОРЯДОЧИТЬ ПО
|    КонМесяца"

Но так как с июня по этому счету небыло движений он мне выдает данные построчно до июня, а потом сразу 31.12.12.
ВОПРОС: как сделать чтоб он все 12 месяце вывел Дб остаток?
1 Asteroida
 
16.08.13
08:42
То есть должно выглядеть так:
Дата                 Сумма
31.01.12            546780,00
28.02.12            769874.00
31.03.12            678904,00
и т.д
2 wms
 
16.08.13
08:58
3 Armando
 
16.08.13
09:02
Выбрать(,, "Все") про это?
4 Asteroida
 
16.08.13
09:11
Непоняла про Выбрать Все...
5 Asteroida
 
16.08.13
09:20
(2) не помогает, если посмотришь запрос то я так и пишу, а отрицательные остатки и регистры валют мне не нужны
(3) объясни пожалуйста подробно что ты имеешь ввиду?
6 wms
 
16.08.13
09:21
(5)фотки нет.мне лень, в гугле полно ссылок.
делал давно уже забыл.
если СКД так там намного проще
7 wms
 
16.08.13
10:05
8 Asteroida
 
16.08.13
10:19
(6) не СКД :(
9 Asteroida
 
16.08.13
10:20
(7) в любом случае, спасибо за ответы )
10 wms
 
16.08.13
10:22
(8)вспомнил, я из скд выводил данные в таблицу значений и там уже их обрабатывал как надо.
11 Asteroida
 
19.08.13
08:36
Сделала так:
ВЫБРАТЬ
    КОНЕЦПЕРИОДА(ХозрасчетныйОстаткиИОбороты.Период, МЕСЯЦ) КАК Период,
    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт) КАК Сумма01
ПОМЕСТИТЬ ТаблицаОстатков01
ИЗ
    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Месяц, , Счет В ИЕРАРХИИ (&Счет01), , Организация = &Организация) КАК ХозрасчетныйОстаткиИОбороты

СГРУППИРОВАТЬ ПО
    КОНЕЦПЕРИОДА(ХозрасчетныйОстаткиИОбороты.Период, МЕСЯЦ)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    КОНЕЦПЕРИОДА(ХозрасчетныйОстаткиИОбороты.Период, МЕСЯЦ) КАК Период,
    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт) КАК Сумма02
ПОМЕСТИТЬ ТаблицаОстатков02
ИЗ
    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Месяц, , Счет В ИЕРАРХИИ (&Счет02), , Организация = &Организация) КАК ХозрасчетныйОстаткиИОбороты

СГРУППИРОВАТЬ ПО
    КОНЕЦПЕРИОДА(ХозрасчетныйОстаткиИОбороты.Период, МЕСЯЦ)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    КОНЕЦПЕРИОДА(ДОБАВИТЬКДАТЕ(&ДатаНач, МЕСЯЦ, aa.a * 10 + bb.b), МЕСЯЦ) КАК ПериодМесяц
ПОМЕСТИТЬ ТаблицаПериодов
ИЗ
    (ВЫБРАТЬ
        0 КАК a
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        1
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        2
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        3
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        4
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        5
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        6
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        7
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        8
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        9) КАК aa
        ПОЛНОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            0 КАК b
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            1
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            2
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            3
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            4
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            5
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            6
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            7
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            8
        
        ОБЪЕДИНИТЬ
        
        ВЫБРАТЬ
            9) КАК bb
        ПО (ИСТИНА)
ГДЕ
    ДОБАВИТЬКДАТЕ(&ДатаНач, МЕСЯЦ, aa.a * 10 + bb.b) < &ДатаКон
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТаблицаПериодов.ПериодМесяц КАК ПериодМесяц,
    МАКСИМУМ(ТаблицаОстатков.Период) КАК Период01
ПОМЕСТИТЬ ТаблицаСоответствия01
ИЗ
    ТаблицаПериодов КАК ТаблицаПериодов
        ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаОстатков01 КАК ТаблицаОстатков
        ПО ТаблицаПериодов.ПериодМесяц >= ТаблицаОстатков.Период

СГРУППИРОВАТЬ ПО
    ТаблицаПериодов.ПериодМесяц
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТаблицаСоответствия.ПериодМесяц КАК ПериодМесяц,
    ТаблицаСоответствия.Период01,
    МАКСИМУМ(ТаблицаОстатков02.Период) КАК Период02
ПОМЕСТИТЬ ТаблицаСоответствия
ИЗ
    ТаблицаСоответствия01 КАК ТаблицаСоответствия
        ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаОстатков02 КАК ТаблицаОстатков02
        ПО ТаблицаСоответствия.ПериодМесяц >= ТаблицаОстатков02.Период

СГРУППИРОВАТЬ ПО
    ТаблицаСоответствия.ПериодМесяц,
    ТаблицаСоответствия.Период01
;

////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ТаблицаСоответствия01
;

////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ТаблицаПериодов
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТаблицаСоответствия.ПериодМесяц КАК ПериодМесяц,
    ВЫБОР
        КОГДА ТаблицаОстатков01.Сумма01 ЕСТЬ NULL
            ТОГДА 0
        ИНАЧЕ ТаблицаОстатков01.Сумма01
    КОНЕЦ КАК Сумма01,
    ВЫБОР
        КОГДА ТаблицаОстатков02.Сумма02 ЕСТЬ NULL
            ТОГДА 0
        ИНАЧЕ ТаблицаОстатков02.Сумма02
    КОНЕЦ КАК Сумма02,
    ВЫБОР
        КОГДА ТаблицаОстатков01.Сумма01 ЕСТЬ NULL
            ТОГДА -ТаблицаОстатков02.Сумма02
        ИНАЧЕ ТаблицаОстатков01.Сумма01 - ТаблицаОстатков02.Сумма02
    КОНЕЦ КАК ОстаточнаяСтоимость
ИЗ
    ТаблицаСоответствия КАК ТаблицаСоответствия
        ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаОстатков01 КАК ТаблицаОстатков01
        ПО ТаблицаСоответствия.Период01 = ТаблицаОстатков01.Период
        ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаОстатков02 КАК ТаблицаОстатков02
        ПО ТаблицаСоответствия.Период02 = ТаблицаОстатков02.Период

УПОРЯДОЧИТЬ ПО
    ПериодМесяц