|
Помогите с запросом? | ☑ | ||
---|---|---|---|---|
0
trooba
12.06.15
✎
01:30
|
Есть запрос, он чуть ниже. Для БП 8. В чем соль: строится 2 таблицы, в каждой по 6 объединений... Вот если по запросу сверху идти, все ок. пока не соединяю две таблицы (каждая из которых состоит из объединенных, понимаю, что сложно пишу). Вот этот запрос начинает задваивать данные, после соединения объединенных таблиц, помогите!!!
ВЫБРАТЬ СвойстваОбъектов.Ссылка КАК Свойство, ДополнительныеСведения.Значение, ДополнительныеСведения.Объект.Ссылка ПОМЕСТИТЬ ДопРеквизит ИЗ (ВЫБРАТЬ ДополнительныеРеквизитыИСведения.Ссылка КАК Ссылка, ДополнительныеРеквизитыИСведения.Наименование КАК Наименование, ДополнительныеРеквизитыИСведения.ПометкаУдаления КАК ПометкаУдаления ИЗ ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения) КАК СвойстваОбъектов ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения ПО (ДополнительныеСведения.Свойство = СвойстваОбъектов.Ссылка) ГДЕ НЕ СвойстваОбъектов.ПометкаУдаления И (СвойстваОбъектов.Наименование = "Статья ДДС (Счет на оплату поставщика)" ИЛИ СвойстваОбъектов.Наименование = "Статья ДДС (Счет на оплату покупателю)") ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВложенныйЗапрос.ЗначениеСсылка, СУММА(ВложенныйЗапрос.СуммаДокумента) КАК ПланНаНедели, СУММА(0) КАК ПланНаНачало1Недели, СУММА(0) КАК ПланНаНачало2Недели, СУММА(0) КАК ПланНаНачало3Недели, СУММА(0) КАК ПланНаНачало4Недели, СУММА(0) КАК ПланНаНачало5Недели ПОМЕСТИТЬ План ИЗ (ВЫБРАТЬ СУММА(ЕСТЬNULL(СчетНаОплатуПокупателю.СуммаДокумента, 0)) КАК СуммаДокумента, ДопРеквизит.Значение.Ссылка КАК ЗначениеСсылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПокупателю.Ссылка ГДЕ (СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ), ДЕНЬ) ИЛИ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ), ДЕНЬ) ИЛИ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ), ДЕНЬ) ИЛИ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ), ДЕНЬ) ИЛИ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ), ДЕНЬ)) И СчетНаОплатуПокупателю.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПокупателю.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СчетНаОплатуПоставщика.СуммаДокумента, 0)), ДопРеквизит.Значение.Ссылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПоставщика КАК СчетНаОплатуПоставщика ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПоставщика.Ссылка ГДЕ (СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ), ДЕНЬ) ИЛИ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ), ДЕНЬ) ИЛИ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ), ДЕНЬ) ИЛИ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ), ДЕНЬ) ИЛИ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ), МЕСЯЦ)) И СчетНаОплатуПоставщика.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПоставщика.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.ЗначениеСсылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.ЗначениеСсылка, СУММА(0), СУММА(ВложенныйЗапрос.СуммаДокумента), СУММА(0), СУММА(0), СУММА(0), СУММА(0) ИЗ (ВЫБРАТЬ СУММА(ЕСТЬNULL(СчетНаОплатуПокупателю.СуммаДокумента, 0)) КАК СуммаДокумента, ДопРеквизит.Значение.Ссылка КАК ЗначениеСсылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПокупателю.Ссылка ГДЕ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ), ДЕНЬ) И СчетНаОплатуПокупателю.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПокупателю.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СчетНаОплатуПоставщика.СуммаДокумента, 0)), ДопРеквизит.Значение.Ссылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПоставщика КАК СчетНаОплатуПоставщика ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПоставщика.Ссылка ГДЕ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ), ДЕНЬ) И СчетНаОплатуПоставщика.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПоставщика.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.ЗначениеСсылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.ЗначениеСсылка, СУММА(0), СУММА(0), СУММА(ВложенныйЗапрос.СуммаДокумента), СУММА(0), СУММА(0), СУММА(0) ИЗ (ВЫБРАТЬ СУММА(ЕСТЬNULL(СчетНаОплатуПокупателю.СуммаДокумента, 0)) КАК СуммаДокумента, ДопРеквизит.Значение.Ссылка КАК ЗначениеСсылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПокупателю.Ссылка ГДЕ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ), ДЕНЬ) И СчетНаОплатуПокупателю.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПокупателю.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СчетНаОплатуПоставщика.СуммаДокумента, 0)), ДопРеквизит.Значение.Ссылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПоставщика КАК СчетНаОплатуПоставщика ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПоставщика.Ссылка ГДЕ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ), ДЕНЬ) И СчетНаОплатуПоставщика.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПоставщика.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.ЗначениеСсылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.ЗначениеСсылка, СУММА(0), СУММА(0), СУММА(0), СУММА(ВложенныйЗапрос.СуммаДокумента), СУММА(0), СУММА(0) ИЗ (ВЫБРАТЬ СУММА(ЕСТЬNULL(СчетНаОплатуПокупателю.СуммаДокумента, 0)) КАК СуммаДокумента, ДопРеквизит.Значение.Ссылка КАК ЗначениеСсылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПокупателю.Ссылка ГДЕ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ), ДЕНЬ) И СчетНаОплатуПокупателю.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПокупателю.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СчетНаОплатуПоставщика.СуммаДокумента, 0)), ДопРеквизит.Значение.Ссылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПоставщика КАК СчетНаОплатуПоставщика ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПоставщика.Ссылка ГДЕ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ), ДЕНЬ) И СчетНаОплатуПоставщика.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПоставщика.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.ЗначениеСсылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.ЗначениеСсылка, СУММА(0), СУММА(0), СУММА(0), СУММА(0), СУММА(ВложенныйЗапрос.СуммаДокумента), СУММА(0) ИЗ (ВЫБРАТЬ СУММА(ЕСТЬNULL(СчетНаОплатуПокупателю.СуммаДокумента, 0)) КАК СуммаДокумента, ДопРеквизит.Значение.Ссылка КАК ЗначениеСсылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПокупателю.Ссылка ГДЕ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ), ДЕНЬ) И СчетНаОплатуПокупателю.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПокупателю.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СчетНаОплатуПоставщика.СуммаДокумента, 0)), ДопРеквизит.Значение.Ссылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПоставщика КАК СчетНаОплатуПоставщика ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПоставщика.Ссылка ГДЕ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ), ДЕНЬ) И СчетНаОплатуПоставщика.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПоставщика.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.ЗначениеСсылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.ЗначениеСсылка, СУММА(0), СУММА(0), СУММА(0), СУММА(0), СУММА(0), СУММА(ВложенныйЗапрос.СуммаДокумента) ИЗ (ВЫБРАТЬ СУММА(ЕСТЬNULL(СчетНаОплатуПокупателю.СуммаДокумента, 0)) КАК СуммаДокумента, ДопРеквизит.Значение.Ссылка КАК ЗначениеСсылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПокупателю.Ссылка ГДЕ СчетНаОплатуПокупателю.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ), НЕДЕЛЯ) И СчетНаОплатуПокупателю.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПокупателю.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СчетНаОплатуПоставщика.СуммаДокумента, 0)), ДопРеквизит.Значение.Ссылка ИЗ ДопРеквизит КАК ДопРеквизит ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПоставщика КАК СчетНаОплатуПоставщика ПО ДопРеквизит.ОбъектСсылка = СчетНаОплатуПоставщика.Ссылка ГДЕ СчетНаОплатуПоставщика.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ), НЕДЕЛЯ) И СчетНаОплатуПоставщика.Организация = &ОрганизацияПлан И НЕ СчетНаОплатуПоставщика.ПометкаУдаления СГРУППИРОВАТЬ ПО ДопРеквизит.Значение.Ссылка) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.ЗначениеСсылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств, СУММА(ВложенныйЗапрос.СуммаПлатежа) КАК ФактНаНедели, СУММА(0) КАК ФактНаНачало1Недели, СУММА(0) КАК ФактНаНачало2Недели, СУММА(0) КАК ФактНаНачало3Недели, СУММА(0) КАК ФактНаНачало4Недели, СУММА(0) КАК ФактНаНачало5Недели ПОМЕСТИТЬ Факт ИЗ (ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа, СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств ИЗ Документ.СписаниеСРасчетногоСчета.РасшифровкаПлатежа КАК СписаниеСРасчетногоСчетаРасшифровкаПлатежа ГДЕ СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Проведен И СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&КонПериода, МЕСЯЦ) И КОНЕЦПЕРИОДА(&КонПериода, МЕСЯЦ) СГРУППИРОВАТЬ ПО СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(ЕСТЬNULL(ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СуммаПлатежа, 0)), ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ИЗ Документ.ПоступлениеНаРасчетныйСчет.РасшифровкаПлатежа КАК ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа ГДЕ ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Проведен И ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&КонПериода, МЕСЯЦ) И КОНЕЦПЕРИОДА(&КонПериода, МЕСЯЦ) СГРУППИРОВАТЬ ПО ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств, СУММА(0), СУММА(ВложенныйЗапрос.СуммаПлатежа), СУММА(0), СУММА(0), СУММА(0), СУММА(0) ИЗ (ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа, СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств ИЗ Документ.СписаниеСРасчетногоСчета.РасшифровкаПлатежа КАК СписаниеСРасчетногоСчетаРасшифровкаПлатежа ГДЕ СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Проведен И СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(ЕСТЬNULL(ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СуммаПлатежа, 0)), ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ИЗ Документ.ПоступлениеНаРасчетныйСчет.РасшифровкаПлатежа КАК ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа ГДЕ ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Проведен И ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -4), НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств, СУММА(0), СУММА(0), СУММА(ВложенныйЗапрос.СуммаПлатежа), СУММА(0), СУММА(0), СУММА(0) ИЗ (ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа, СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств ИЗ Документ.СписаниеСРасчетногоСчета.РасшифровкаПлатежа КАК СписаниеСРасчетногоСчетаРасшифровкаПлатежа ГДЕ СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Проведен И СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(ЕСТЬNULL(ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СуммаПлатежа, 0)), ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ИЗ Документ.ПоступлениеНаРасчетныйСчет.РасшифровкаПлатежа КАК ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа ГДЕ ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Проведен И ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -3), НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств, СУММА(0), СУММА(0), СУММА(0), СУММА(ВложенныйЗапрос.СуммаПлатежа), СУММА(0), СУММА(0) ИЗ (ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа, СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств ИЗ Документ.СписаниеСРасчетногоСчета.РасшифровкаПлатежа КАК СписаниеСРасчетногоСчетаРасшифровкаПлатежа ГДЕ СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Проведен И СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(ЕСТЬNULL(ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СуммаПлатежа, 0)), ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ИЗ Документ.ПоступлениеНаРасчетныйСчет.РасшифровкаПлатежа КАК ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа ГДЕ ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Проведен И ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -2), НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств, СУММА(0), СУММА(0), СУММА(0), СУММА(0), СУММА(ВложенныйЗапрос.СуммаПлатежа), СУММА(0) ИЗ (ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа, СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств ИЗ Документ.СписаниеСРасчетногоСчета.РасшифровкаПлатежа КАК СписаниеСРасчетногоСчетаРасшифровкаПлатежа ГДЕ СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Проведен И СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(ЕСТЬNULL(ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СуммаПлатежа, 0)), ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ИЗ Документ.ПоступлениеНаРасчетныйСчет.РасшифровкаПлатежа КАК ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа ГДЕ ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Проведен И ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, НЕДЕЛЯ, -1), НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств, СУММА(0), СУММА(0), СУММА(0), СУММА(0), СУММА(0), СУММА(ВложенныйЗапрос.СуммаПлатежа) ИЗ (ВЫБРАТЬ СУММА(-1 * ЕСТЬNULL(СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа, СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств ИЗ Документ.СписаниеСРасчетногоСчета.РасшифровкаПлатежа КАК СписаниеСРасчетногоСчетаРасшифровкаПлатежа ГДЕ СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Проведен И СписаниеСРасчетногоСчетаРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО СписаниеСРасчетногоСчетаРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ СУММА(ЕСТЬNULL(ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СуммаПлатежа, 0)), ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств ИЗ Документ.ПоступлениеНаРасчетныйСчет.РасшифровкаПлатежа КАК ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа ГДЕ ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Проведен И ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ) И КОНЕЦПЕРИОДА(НАЧАЛОПЕРИОДА(&КонПериода, НЕДЕЛЯ), НЕДЕЛЯ) СГРУППИРОВАТЬ ПО ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.СтатьяДвиженияДенежныхСредств ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ План.ЗначениеСсылка.Родитель КАК СтатьяДДСРодитель, План.ЗначениеСсылка КАК СтатьяДДС, СУММА(План.ПланНаНедели) КАК ПланНаНедели, СУММА(План.ПланНаНачало1Недели) КАК ПланНаНачало1Недели, СУММА(План.ПланНаНачало2Недели) КАК ПланНаНачало2Недели, СУММА(План.ПланНаНачало3Недели) КАК ПланНаНачало3Недели, СУММА(План.ПланНаНачало4Недели) КАК ПланНаНачало4Недели, СУММА(План.ПланНаНачало5Недели) КАК ПланНаНачало5Недели, СУММА(Факт.ФактНаНедели) КАК ФактНаНедели, СУММА(Факт.ФактНаНачало1Недели) КАК ФактНаНачало1Недели, СУММА(Факт.ФактНаНачало2Недели) КАК ФактНаНачало2Недели, СУММА(Факт.ФактНаНачало3Недели) КАК ФактНаНачало3Недели, СУММА(Факт.ФактНаНачало4Недели) КАК ФактНаНачало4Недели, СУММА(Факт.ФактНаНачало5Недели) КАК ФактНаНачало5Недели ПОМЕСТИТЬ Итоговая ИЗ План КАК План ВНУТРЕННЕЕ СОЕДИНЕНИЕ Факт КАК Факт ПО План.ЗначениеСсылка = Факт.СтатьяДвиженияДенежныхСредств СГРУППИРОВАТЬ ПО План.ЗначениеСсылка.Родитель, План.ЗначениеСсылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Итоговая.СтатьяДДСРодитель КАК СтатьяДДСРодитель, Итоговая.СтатьяДДС КАК СтатьяДДС, СУММА(Итоговая.ПланНаНедели) КАК ПланНаНедели, СУММА(Итоговая.ПланНаНачало1Недели) КАК ПланНаНачало1Недели, СУММА(Итоговая.ПланНаНачало2Недели) КАК ПланНаНачало2Недели, СУММА(Итоговая.ПланНаНачало3Недели) КАК ПланНаНачало3Недели, СУММА(Итоговая.ПланНаНачало4Недели) КАК ПланНаНачало4Недели, СУММА(Итоговая.ПланНаНачало5Недели) КАК ПланНаНачало5Недели, СУММА(Итоговая.ФактНаНедели) КАК ФактНаНедели, СУММА(Итоговая.ФактНаНачало1Недели) КАК ФактНаНачало1Недели, СУММА(Итоговая.ФактНаНачало2Недели) КАК ФактНаНачало2Недели, СУММА(Итоговая.ФактНаНачало3Недели) КАК ФактНаНачало3Недели, СУММА(Итоговая.ФактНаНачало4Недели) КАК ФактНаНачало4Недели, СУММА(Итоговая.ФактНаНачало5Недели) КАК ФактНаНачало5Недели, СУММА(Итоговая.ФактНаНедели - Итоговая.ПланНаНедели) КАК ОтклоненияНедели, СУММА(Итоговая.ФактНаНачало1Недели - Итоговая.ПланНаНачало1Недели) КАК Отклонения1Недели, СУММА(Итоговая.ФактНаНачало2Недели - Итоговая.ПланНаНачало2Недели) КАК Отклонения2Недели, СУММА(Итоговая.ФактНаНачало3Недели - Итоговая.ПланНаНачало3Недели) КАК Отклонения3Недели, СУММА(Итоговая.ФактНаНачало4Недели - Итоговая.ПланНаНачало4Недели) КАК Отклонения4Недели, СУММА(Итоговая.ФактНаНачало5Недели - Итоговая.ПланНаНачало5Недели) КАК Отклонения5Недели, СУММА(ВЫБОР КОГДА Итоговая.ПланНаНедели = 0 ТОГДА Итоговая.ФактНаНедели ИНАЧЕ Итоговая.ФактНаНедели / Итоговая.ПланНаНедели * 100 КОНЕЦ) КАК ПроцентВыполненияНедели, СУММА(ВЫБОР КОГДА Итоговая.ПланНаНачало1Недели = 0 ТОГДА Итоговая.ФактНаНачало1Недели ИНАЧЕ Итоговая.ФактНаНачало1Недели / Итоговая.ПланНаНачало1Недели * 100 КОНЕЦ) КАК ПроцентВыполнения1Недели, СУММА(ВЫБОР КОГДА Итоговая.ПланНаНачало2Недели = 0 ТОГДА Итоговая.ФактНаНачало2Недели ИНАЧЕ Итоговая.ФактНаНачало2Недели / Итоговая.ПланНаНачало2Недели * 100 КОНЕЦ) КАК ПроцентВыполнения2Недели, СУММА(ВЫБОР КОГДА Итоговая.ПланНаНачало3Недели = 0 |
|||
1
1s_ivan
12.06.15
✎
07:51
|
Раньше (Не шучу) я бы посоветовал: Скопируй текст запроса в текстовый редактор (кроме блокнота), там обычно есть вещь "выделение текста цветом", тратишь 30 минут на раскраску каждого из полей "выбрать ..., из ... как ..." своим цветом, соблюдая соответствие. Лично мне помогает разобраться с самым сложным запросом. Или распечатай и маркерами раскрась.
НО это слишком долго!, поэтому: Правой кнопкой мыши жми на тексте запроса, пункт: Конструктор запроса. Все-все там будет понятно и компактно. |
|||
2
hhhh
12.06.15
✎
08:13
|
(0) если задваивается, значит соединение не по всем полям. Какие-то поля забыли включить в соединение.
|
|||
3
trooba
14.06.15
✎
10:25
|
(2) Я это понимаю, но , хоть убейте не пойму где
|
|||
4
trooba
14.06.15
✎
10:26
|
Ай нид хэлп
|
|||
5
trooba
14.06.15
✎
10:28
|
туплю
|
|||
6
trooba
14.06.15
✎
10:32
|
(2) готов дать подключение
|
|||
7
trooba
14.06.15
✎
10:39
|
Братцы! Помогите!
|
|||
8
zhig75
14.06.15
✎
10:42
|
А нахрена в самом первом запросе выборка из вложенного запроса?
|
|||
9
trooba
14.06.15
✎
10:47
|
(8) Я по разному пробовал,
|
|||
10
itlikbez
14.06.15
✎
10:51
|
(0) Что конкретно у тебя задваивается? Приведи фрагмент итоговой таблицы.
|
|||
11
trooba
14.06.15
✎
15:07
|
(10) набери в скайп deniseek? Я все покажу
|
|||
12
GROOVY
14.06.15
✎
15:29
|
А где цена вопроса?
|
|||
13
trooba
14.06.15
✎
15:35
|
(12) А по результату
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |