|SELECT НачислениеПроцентовОстаткиОбороты.Договор [Договор $Справочник.Договоры] | , NullIf(НачислениеПроцентовОстаткиОбороты.Период, '17530101') Период1 | , NullIf(ПеняПоПроцентамОстаткиОбороты.Период, '17530101') Период2 | , (CASE WHEN CAST(НачислениеПроцентовОстаткиОбороты.Период AS datetime) = CAST (' ' AS datetime) THEN ПеняПоПроцентамОстаткиОбороты.Период ELSE НачислениеПроцентовОстаткиОбороты.Период END ) ПериодОбщий | , Sum(НачислениеПроцентовОстаткиОбороты.СуммаНачальныйОстаток) СуммаПроцентыНачОст | , Sum(НачислениеПроцентовОстаткиОбороты.СуммаПриход) СуммаПроцентыПриход | , Sum(НачислениеПроцентовОстаткиОбороты.СуммаРасход) СуммаПроцентыРасход | , Sum(НачислениеПроцентовОстаткиОбороты.СуммаКонечныйОстаток) СуммаПроцентыКонОст | , Sum(НачислениеОДОстаткиОбороты.СуммаНачальныйОстаток) СуммаНачислениеОДНачОст | , Sum(НачислениеОДОстаткиОбороты.СуммаПриход) СуммаНачислениеОДПриход | , Sum(НачислениеОДОстаткиОбороты.СуммаРасход) СуммаНачислениеОДРасход | , Sum(НачислениеОДОстаткиОбороты.СуммаКонечныйОстаток) СуммаНачислениеОДКонОст | , Sum(ПеняПоПроцентамОстаткиОбороты.СуммаНачальныйОстаток) СуммаПеняПоПроцентамНачОст | , Sum(ПеняПоПроцентамОстаткиОбороты.СуммаПриход) СуммаПеняПоПроцентамПриход | , Sum(ПеняПоПроцентамОстаткиОбороты.СуммаРасход) СуммаПеняПоПроцентамРасход | , Sum(ПеняПоПроцентамОстаткиОбороты.СуммаКонечныйОстаток) СуммаПеняПоПроцентамСуммаКонОст | , Sum(ПеняПоОДОстаткиОбороты.СуммаНачальныйОстаток) СуммаПеняПоОДНачОст | , Sum(ПеняПоОДОстаткиОбороты.СуммаПриход) СуммаПеняПоОДПриход | , Sum(ПеняПоОДОстаткиОбороты.СуммаРасход) СуммаПеняПоОДРасход | , Sum(ПеняПоОДОстаткиОбороты.СуммаКонечныйОстаток) СуммаПеняПоОДКонОст | , Sum(ОстатокОДОстаткиОбороты.СуммаНачальныйОстаток) СуммаОстатокОДНачальныйОстаток | , Sum(ОстатокОДОстаткиОбороты.СуммаПриход) СуммаОстатокОДПриход | , Sum(ОстатокОДОстаткиОбороты.СуммаРасход) СуммаОстатокОДРасход | , Sum(ОстатокОДОстаткиОбороты.СуммаКонечныйОстаток) СуммаОстатокОДКонечныйОстаток |FROM $РегистрОстаткиОбороты.НачислениеПроцентов(:НачДата, | :ДатаКонцаЗапроса~, | День, | ДвиженияИГраницыПериода,, | (Договор IN (:ВыбДоговор)), | (Договор, КредитныйДокумент),) AS НачислениеПроцентовОстаткиОбороты | LEFT OUTER JOIN $РегистрОстаткиОбороты.НачислениеОД(:НачДата, | :ДатаКонцаЗапроса~, | День, | ДвиженияИГраницыПериода,, | (Договор IN (:ВыбДоговор)), | (Договор, КредитныйДокумент),) AS НачислениеОДОстаткиОбороты ON НачислениеПроцентовОстаткиОбороты.Период = НачислениеОДОстаткиОбороты.Период AND НачислениеПроцентовОстаткиОбороты.Договор = НачислениеОДОстаткиОбороты.Договор AND НачислениеПроцентовОстаткиОбороты.КредитныйДокумент = НачислениеОДОстаткиОбороты.КредитныйДокумент | LEFT OUTER JOIN $РегистрОстаткиОбороты.ПеняПоОД(:НачДата, | :ДатаКонцаЗапроса~, | День, | ДвиженияИГраницыПериода,, | (Договор IN (:ВыбДоговор)), | (Договор, КредитныйДокумент),) AS ПеняПоОДОстаткиОбороты ON НачислениеПроцентовОстаткиОбороты.Период = ПеняПоОДОстаткиОбороты.Период AND НачислениеПроцентовОстаткиОбороты.Договор = ПеняПоОДОстаткиОбороты.Договор AND НачислениеПроцентовОстаткиОбороты.КредитныйДокумент = ПеняПоОДОстаткиОбороты.КредитныйДокумент | FULL OUTER JOIN $РегистрОстаткиОбороты.ПеняПоПроцентам(:НачДата, | :ДатаКонцаЗапроса~, | День, | ДвиженияИГраницыПериода,, | (Договор IN (:ВыбДоговор)), | (Договор, КредитныйДокумент),) AS ПеняПоПроцентамОстаткиОбороты ON НачислениеПроцентовОстаткиОбороты.Период = ПеняПоПроцентамОстаткиОбороты.Период AND НачислениеПроцентовОстаткиОбороты.Договор = ПеняПоПроцентамОстаткиОбороты.Договор AND НачислениеПроцентовОстаткиОбороты.КредитныйДокумент = ПеняПоПроцентамОстаткиОбороты.КредитныйДокумент | LEFT OUTER JOIN $РегистрОстаткиОбороты.ОстатокОД(:НачДата, | :ДатаКонцаЗапроса~, | День, | ДвиженияИГраницыПериода,, | (Договор IN (:ВыбДоговор)),,) AS ОстатокОДОстаткиОбороты ON НачислениеПроцентовОстаткиОбороты.Период = ОстатокОДОстаткиОбороты.Период AND НачислениеПроцентовОстаткиОбороты.Договор = ОстатокОДОстаткиОбороты.Договор AND НачислениеПроцентовОстаткиОбороты.КредитныйДокумент = ОстатокОДОстаткиОбороты.КредитныйДокумент |GROUP BY НачислениеПроцентовОстаткиОбороты.Договор | , НачислениеПроцентовОстаткиОбороты.Период | , ПеняПоПроцентамОстаткиОбороты.Период |";
Так вот, когда идет полное внешнее соединение и группировка, я хочу чтобы колонка "ПериодОбщий" содержала в себе значение колонки "Период1", а если там пустое значение, (т.е. при соединении такой даты нет, и там получается ' . . '), тогда берет значение из колонки "Период2".
|