Имя: Пароль:
1C
1С v8
Запрос двоит стороки и выводит не то что нужно вроде все так , не пойму почему ?
0 koketka
 
10.10.13
13:22
"ВЫБРАТЬ
    |    ХозрасчетныйОстатки.Субконто1.Код КАК Инв,
    |    ХозрасчетныйОстатки.Субконто1.ГруппаОС КАК АмортизационнаяГруппа,
    |    СобытияОСОрганизацийСрезПоследних.Период КАК ДатаВводаВЭксплуатацию,
    |    ХозрасчетныйОстатки.Субконто1 КАК Наименование,
    |    ЕСТЬNULL(ХозрасчетныйОстатки.СуммаОстатокДт, 0) КАК БалансоваяСтоимостьНач,
    |    ЕСТЬNULL(ХозрасчетныйОстатки1.СуммаОстатокКт, 0) КАК АмортизацияНач,
    |    ЕСТЬNULL(ХозрасчетныйОстатки.СуммаОстатокДт, 0) - ЕСТЬNULL(ХозрасчетныйОстатки1.СуммаОстатокКт, 0) КАК ОстаточнаяСтоимостьНач,
    |    NULL КАК ИзменениеБалансовойСтоимости,
    |    NULL КАК СписаннаяАмортизация,
    |    NULL КАК НачисленнаяАмортизация,
    |    NULL КАК БалансоваяСтоимостьКон,
    |    NULL КАК АмортизацияКон,
    |    NULL КАК ОстаточнаяСтоимостьКон
    |ИЗ
    |    РегистрСведений.СобытияОСОрганизаций.СрезПоследних(
    |        ,
    |        Организация = &Организация
    |            И Событие В (&Событие)
    |            И Период >= &ДатаВВода) КАК СобытияОСОрганизацийСрезПоследних
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаНачало, Счет = &Счет1, , Организация = &Организация) КАК ХозрасчетныйОстатки
    |        ПО СобытияОСОрганизацийСрезПоследних.ОсновноеСредство = ХозрасчетныйОстатки.Субконто1
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаНачало, Счет = &Счет2, , Организация = &Организация) КАК ХозрасчетныйОстатки1
    |        ПО СобытияОСОрганизацийСрезПоследних.ОсновноеСредство = ХозрасчетныйОстатки1.Субконто1
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    ХозрасчетныйОбороты.Субконто1.Код,
    |    ХозрасчетныйОбороты.Субконто1.ГруппаОС,
    |    СобытияОСОрганизацийСрезПоследних.Период,
    |    ХозрасчетныйОбороты.Субконто1,
    |    NULL,
    |    NULL,
    |    NULL,
    |    ЕСТЬNULL(ХозрасчетныйОбороты.СуммаОборот, 0),
    |    ЕСТЬNULL(ХозрасчетныйОбороты1.СуммаОборотДт, 0),
    |    ЕСТЬNULL(ХозрасчетныйОбороты1.СуммаОборотКт, 0),
    |    NULL,
    |    NULL,
    |    NULL
    |ИЗ
    |    РегистрСведений.СобытияОСОрганизаций.СрезПоследних(
    |        ,
    |        Организация = &Организация
    |            И Событие В (&Событие)
    |            И Период >= &ДатаВВода) КАК СобытияОСОрганизацийСрезПоследних
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Обороты(&ДатаНачало, &ДатаКонец, , Счет = &Счет1, , Организация = &Организация, , ) КАК ХозрасчетныйОбороты
    |        ПО СобытияОСОрганизацийСрезПоследних.ОсновноеСредство = ХозрасчетныйОбороты.Субконто1
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Обороты(&ДатаНачало, &ДатаКонец, , Счет = &Счет2, , Организация = &Организация, , ) КАК ХозрасчетныйОбороты1
    |        ПО СобытияОСОрганизацийСрезПоследних.ОсновноеСредство = ХозрасчетныйОбороты1.Субконто1
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    ХозрасчетныйОстатки.Субконто1.Код,
    |    ХозрасчетныйОстатки.Субконто1.ГруппаОС,
    |    СобытияОСОрганизацийСрезПоследних.Период,
    |    ХозрасчетныйОстатки.Субконто1,
    |    NULL,
    |    NULL,
    |    NULL,
    |    NULL,
    |    NULL,
    |    NULL,
    |    ЕСТЬNULL(ХозрасчетныйОстатки.СуммаОстатокДт, 0),
    |    ЕСТЬNULL(ХозрасчетныйОстатки1.СуммаОстатокКт, 0),
    |    ЕСТЬNULL(ХозрасчетныйОстатки.СуммаОстатокДт, 0) - ЕСТЬNULL(ХозрасчетныйОстатки1.СуммаОстатокКт, 0)
    |ИЗ
    |    РегистрСведений.СобытияОСОрганизаций.СрезПоследних(
    |        ,
    |        Организация = &Организация
    |            И Событие В (&Событие)
    |            И Период >= &ДатаВВода) КАК СобытияОСОрганизацийСрезПоследних
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаКонец, Счет = &Счет1, , Организация = &Организация) КАК ХозрасчетныйОстатки
    |        ПО СобытияОСОрганизацийСрезПоследних.ОсновноеСредство = ХозрасчетныйОстатки.Субконто1
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаКонец, Счет = &Счет2, , Организация = &Организация) КАК ХозрасчетныйОстатки1
    |        ПО СобытияОСОрганизацийСрезПоследних.ОсновноеСредство = ХозрасчетныйОстатки1.Субконто1
    |
    |УПОРЯДОЧИТЬ ПО
    |    ДатаВводаВЭксплуатацию
    |ИТОГИ
    |    СУММА(БалансоваяСтоимостьНач),
    |    СУММА(АмортизацияНач),
    |    СУММА(ОстаточнаяСтоимостьНач),
    |    СУММА(ИзменениеБалансовойСтоимости),
    |    СУММА(СписаннаяАмортизация),
    |    СУММА(НачисленнаяАмортизация),
    |    СУММА(БалансоваяСтоимостьКон),
    |    СУММА(АмортизацияКон),
    |    СУММА(ОстаточнаяСтоимостьКон)
    |ПО
    |    ОБЩИЕ,
    |    АмортизационнаяГруппа";


    Запрос.УстановитьПараметр("ДатаВВода", '20130101000000');
    Запрос.УстановитьПараметр("ДатаКонец", Новый Граница(КонецДня(КонДата),ВидГраницы.Включая));
    Запрос.УстановитьПараметр("ДатаНачало", Новый Граница(НачалоДня(НачДата),ВидГраницы.Включая));
    Запрос.УстановитьПараметр("Организация", Справочники.Организации.НайтиПоКоду("00001"));
    Запрос.УстановитьПараметр("Событие", Событие);
    Запрос.УстановитьПараметр("счет1", ПланыСчетов.Хозрасчетный.НайтиПоКоду("01.01"));
    Запрос.УстановитьПараметр("счет2", ПланыСчетов.Хозрасчетный.НайтиПоКоду("02.01"));
1 bolobol
 
10.10.13
13:43
Ну, что сказать - буквы правильные, но похоже, что их слишком многа!
По два левых соединения в одной таблице - это очень похоже на выборку не того и задвоения.
2 koketka
 
10.10.13
14:50
спасибо! по другому сделала