|
Передать параметр в таблицу вложенного запроса из внешнего ? | ☑ | ||
---|---|---|---|---|
0
Taiska
20.12.13
✎
12:16
|
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
Сегменты.Партнер КАК Партнер, ИСТИНА КАК ИспользуетсяОтборПоСегментуПартнеров ПОМЕСТИТЬ ОтборПоСегментуПартнеров {ВЫБРАТЬ Партнер.*} ИЗ РегистрСведений.ПартнерыСегмента КАК Сегменты {ГДЕ Сегменты.Сегмент.* КАК СегментПартнеров, Сегменты.Партнер.* КАК Партнер} ИНДЕКСИРОВАТЬ ПО Сегменты.Партнер ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗРЕШЕННЫЕ РасчетыСКлиентами.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам, РасчетыСКлиентами.ЗаказКлиента КАК ЗаказКлиента, ВЫБОР КОГДА РасчетыСКлиентами.ЗаказКлиента ССЫЛКА Справочник.ДоговорыКонтрагентов ТОГДА РасчетыСКлиентами.ЗаказКлиента ИНАЧЕ РасчетыСКлиентами.ЗаказКлиента.Договор КОНЕЦ КАК Договор, ВЫБОР КОГДА РасчетыСКлиентами.ЗаказКлиента ССЫЛКА Справочник.ДоговорыКонтрагентов ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ КАК РасчетыПоДоговору, РасчетыСКлиентами.ЗаказКлиента.Соглашение КАК Соглашение, РасчетыСКлиентами.ЗаказКлиента.Соглашение.ГруппаФинансовогоУчета КАК ГруппаФинансовогоУчета, РасчетыСКлиентами.Валюта КАК Валюта, АналитикаПоПартнерам.Партнер КАК Партнер, АналитикаПоПартнерам.Организация КАК Организация, АналитикаПоПартнерам.Контрагент КАК Контрагент, ВЫБОР КОГДА РасчетыСКлиентами.СуммаОстаток > 0 ТОГДА РасчетыСКлиентами.СуммаОстаток ИНАЧЕ 0 КОНЕЦ КАК ДолгКлиента, ВЫБОР КОГДА РасчетыСКлиентами.СуммаОстаток < 0 ТОГДА -РасчетыСКлиентами.СуммаОстаток ИНАЧЕ 0 КОНЕЦ КАК НашДолг, РасчетыСКлиентами.СуммаОстаток КАК СальдоДолга, ВЫБОР КОГДА РасчетыСКлиентами.КОплатеОстаток > 0 ТОГДА РасчетыСКлиентами.КОплатеОстаток ИНАЧЕ 0 КОНЕЦ КАК КОплате, ВЫБОР КОГДА РасчетыСКлиентами.КОтгрузкеОстаток < 0 ТОГДА -РасчетыСКлиентами.КОтгрузкеОстаток ИНАЧЕ 0 КОНЕЦ КАК КОтгрузке, ВЫБОР КОГДА Заказ.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) И Заказ.СуммаАвансаДоОбеспечения > 0 И Заказ.СуммаДокумента - РасчетыСКлиентами.КОплатеОстаток < Заказ.СуммаАвансаДоОбеспечения ТОГДА Заказ.СуммаАвансаДоОбеспечения - (Заказ.СуммаДокумента - РасчетыСКлиентами.КОплатеОстаток) ИНАЧЕ 0 КОНЕЦ КАК АвансДоОбеспечения, ВЫБОР КОГДА Заказ.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОбеспечению) И Заказ.СуммаПредоплатыДоОтгрузки > 0 И Заказ.СуммаДокумента - РасчетыСКлиентами.КОплатеОстаток < Заказ.СуммаПредоплатыДоОтгрузки + Заказ.СуммаАвансаДоОбеспечения ТОГДА Заказ.СуммаПредоплатыДоОтгрузки + Заказ.СуммаАвансаДоОбеспечения - (Заказ.СуммаДокумента - РасчетыСКлиентами.КОплатеОстаток) ИНАЧЕ 0 КОНЕЦ КАК ПредоплатаДоОтгрузки, ВЫБОР КОГДА (РасчетыСКлиентами.ЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОтгрузке) ИЛИ РасчетыСКлиентами.ЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Закрыт)) И Заказ.СуммаДокумента - Заказ.СуммаАвансаДоОбеспечения - Заказ.СуммаПредоплатыДоОтгрузки > 0 ИЛИ РасчетыСКлиентами.ЗаказКлиента <> НЕОПРЕДЕЛЕНО И Заказ.Ссылка ЕСТЬ NULL И РасчетыСКлиентами.КОплатеОстаток > 0 ТОГДА РасчетыСКлиентами.КОплатеОстаток ИНАЧЕ 0 КОНЕЦ КАК КредитПослеОтгрузки ИЗ РегистрНакопления.РасчетыСКлиентами.Остатки(, ) КАК РасчетыСКлиентами ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК Заказ ПО РасчетыСКлиентами.ЗаказКлиента = Заказ.Ссылка {ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаПоПартнерам КАК АналитикаПоПартнерам ПО РасчетыСКлиентами.АналитикаУчетаПоПартнерам = АналитикаПоПартнерам.КлючАналитики} ГДЕ АналитикаПоПартнерам.Партнер <> ЗНАЧЕНИЕ(Справочник.Партнеры.НашеПредприятие) {ГДЕ (АналитикаПоПартнерам.Партнер В (ВЫБРАТЬ ОтборПоСегментуПартнеров.Партнер ИЗ ОтборПоСегментуПартнеров ГДЕ ОтборПоСегментуПартнеров.ИспользуетсяОтборПоСегментуПартнеров = &ИспользуетсяОтборПоСегментуПартнеров))} |
|||
1
Taiska
20.12.13
✎
12:18
|
ой не тот запрос
|
|||
2
Taiska
20.12.13
✎
12:18
|
ВЫБРАТЬ
НачисленныеБонусыОбороты.Менеджер КАК Менеджер, НачисленныеБонусыОбороты.ВидБонуса КАК Статья, НачисленныеБонусыОбороты.СуммаОборот КАК Сумма, "Бонусы" КАК ВидЗатраты, НачисленныеБонусыОбороты.Номенклатура КАК Номенклатура, НачисленныеБонусыОбороты.ПериодСекунда КАК ПериодСекунда, ВЫБОР КОГДА НачисленныеБонусыОбороты.Регистратор = НЕОПРЕДЕЛЕНО ТОГДА NULL ИНАЧЕ НачисленныеБонусыОбороты.Регистратор КОНЕЦ КАК Регистратор, НачисленныеБонусыОбороты.ПериодДень КАК ПериодДень, НачисленныеБонусыОбороты.Регистратор.ЗаказКлиента, НачисленныеБонусыОбороты.Регистратор.ЗаказКлиента КАК РегистраторЗаказКлиента1 {ВЫБРАТЬ Менеджер.*, Статья.*, Сумма КАК Сумма, ВидЗатраты, Номенклатура.*, ПериодСекунда, Регистратор.*, ПериодДень} ИЗ РегистрНакопления.НачисленныеБонусы.Обороты({(&НачалоПериода)}, {(&КонецПериода)}, Авто, Менеджер В (&Менеджер) {(Номенклатура), (ВидБонуса) КАК Статья}) КАК НачисленныеБонусыОбороты ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РасчетыСКлиентамиОстатки.ЗаказКлиента КАК ЗаказКлиента, РасчетыСКлиентамиОстатки.СуммаОстаток КАК СуммаОстаток ИЗ РегистрНакопления.РасчетыСКлиентами.Остатки((&КонецПериода),Авто, ЗаказКлиента = НачисленныеБонусыОбороты.Регистратор.ЗаказКлиента) КАК РасчетыСКлиентамиОстатки ГДЕ РасчетыСКлиентамиОстатки.СуммаОстаток = 0) КАК ВложенныйЗапрос ПО НачисленныеБонусыОбороты.Регистратор.ЗаказКлиента = ВложенныйЗапрос.ЗаказКлиента {ГДЕ ("Бонусы") КАК ВидЗатраты, НачисленныеБонусыОбороты.ПериодДень} ОБЪЕДИНИТЬ ВЫБРАТЬ УчетЗатратПоБонусамОбороты.Менеджер, УчетЗатратПоБонусамОбороты.СтатьяРасхода, -УчетЗатратПоБонусамОбороты.СуммаОборот, "Затраты", NULL, УчетЗатратПоБонусамОбороты.ПериодСекунда, ВЫБОР КОГДА УчетЗатратПоБонусамОбороты.Регистратор = НЕОПРЕДЕЛЕНО ТОГДА NULL ИНАЧЕ УчетЗатратПоБонусамОбороты.Регистратор КОНЕЦ, УчетЗатратПоБонусамОбороты.ПериодДень, NULL, NULL ИЗ РегистрНакопления.УчетЗатратПоБонусам.Обороты({(&НачалоПериода)}, {(&КонецПериода)}, Авто, Менеджер В (&Менеджер) {(СтатьяРасхода) КАК Статья}) КАК УчетЗатратПоБонусамОбороты {ГДЕ ("Затраты") КАК ВидЗатраты, УчетЗатратПоБонусамОбороты.ПериодДень} |
|||
3
Maxus43
20.12.13
✎
12:21
|
передача в параментры - нельзя, соединение делай.
СКД умеет передавать результаты одного набора данных как параметры другого, но это не ваш случай помоему |
|||
4
Taiska
20.12.13
✎
12:21
|
РегистрНакопления.РасчетыСКлиентами.Остатки((&КонецПериода),Авто, ЗаказКлиента = НачисленныеБонусыОбороты.Регистратор.ЗаказКлиента) как сделать чтоб работал отбор по этому условию очень надо чоб по казазу отбирались данные
|
|||
5
Taiska
20.12.13
✎
12:23
|
(3) т.е. надо слелать методом объединить?
|
|||
6
Maxus43
20.12.13
✎
12:24
|
(5) надо делать Соединение, да и вроде оно есть, не работает?
|
|||
7
Taiska
20.12.13
✎
12:29
|
не работает т.к. параметр таблицы неправильно задан, т.е. мне надо чтоб Остатки((&КонецПериода),Авто, ЗаказКлиента = НачисленныеБонусыОбороты.Регистратор.ЗаказКлиента)
|
|||
8
Taiska
20.12.13
✎
12:30
|
чтоб условие было во внутреннем запросе такое
ГДЕ РасчетыСКлиентамиОстатки.СуммаОстаток = 0 И ЗаказКлиента = НачисленныеБонусыОбороты.Регистратор.ЗаказКлиента |
|||
9
Taiska
20.12.13
✎
12:30
|
обязательно надо заказклиента задать
|
|||
10
Maxus43
20.12.13
✎
12:31
|
Условие на ЗаказКлиента - не в параемтрах таблицы, а в соединении надо делать
|
|||
11
Taiska
20.12.13
✎
12:36
|
как ?
|
|||
12
Taiska
20.12.13
✎
12:37
|
как в соединение мне передать параметр для отбора по казаку... если б я знала не просила бы помочь(((
|
|||
13
Maxus43
20.12.13
✎
12:43
|
ПО НачисленныеБонусыОбороты.Регистратор.ЗаказКлиента = ВложенныйЗапрос.ЗаказКлиента
это и есть, убери из параметров Таблицы Остатки условие, оставь тока условие соединения |
|||
14
Taiska
20.12.13
✎
12:47
|
так уже было он выбирает суммы с 0 и все(((
точнее ничего а надо задать заказ во внутренний запрос( как его задать туда ? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |