![]() |
![]() |
![]() |
|
Пакетный запрос данных для отчета ГрафикПлатежей | ☑ | ||
---|---|---|---|---|
0
LivingStar
17.10.13
✎
10:45
|
Извиняюсь за многократный повторы, но снова создаю тему в надежде услышать от кого либо, то что подтолкнёт меня на мотивацию к действию. Я все же стараюсь не сидеть просто так а думать над этой выборкой, как она должна быть правильная. Напомню что, к сумме запроса №1 в таблицу тзОплаты должны прибавиться 2 документа РасходныйКассовыйОрдер, АвансовыйОтчет. А из суммы тзПокупки, которая выполняется по документу ПоступлениеТоваровУслуг должна вычитаться сумма документа ВозвратТоваровПоставщику.
ЗАПРОС №1 ВЫБРАТЬ ПлатежноеПоручениеИсходящее.ДоговорКонтрагента, ПлатежноеПоручениеИсходящее.Контрагент, СУММА(ЕСТЬNULL(ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа ПОМЕСТИТЬ тзОплаты ИЗ Документ.ПлатежноеПоручениеИсходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеИсходящееРасшифровкаПлатежа ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПлатежноеПоручениеИсходящее КАК ПлатежноеПоручениеИсходящее ПО ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.Ссылка = ПлатежноеПоручениеИсходящее.Ссылка ГДЕ ПлатежноеПоручениеИсходящее.Проведен И ПлатежноеПоручениеИсходящее.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийППИсходящее.ОплатаПоставщику) СГРУППИРОВАТЬ ПО ПлатежноеПоручениеИсходящее.ДоговорКонтрагента, ПлатежноеПоручениеИсходящее.Контрагент ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПоступлениеТоваровУслуг.Ссылка, ПоступлениеТоваровУслуг.Номер КАК НомерДокумента, ПоступлениеТоваровУслуг.НомерВходящегоДокумента КАК НомерВходящегоДокумента, ПоступлениеТоваровУслуг.Дата КАК ДатаДокумента, ПоступлениеТоваровУслуг.ДоговорКонтрагента КАК Договор, ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности, ПоступлениеТоваровУслуг.Контрагент КАК Контрагент, ЕСТЬNULL(ПоступлениеТоваровУслуг.СуммаДокумента, 0) КАК СуммаКОплате, НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(ПоступлениеТоваровУслуг.Дата, ДЕНЬ, ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности), ДЕНЬ) КАК ПоследняяДатаОплаты ПОМЕСТИТЬ тзПокупки ИЗ Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг ГДЕ ПоступлениеТоваровУслуг.Проведен И ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности <> 0 ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ тзПокупки.Ссылка, тзПокупки.ДатаДокумента, тзПокупки.НомерДокумента, тзПокупки.НомерВходящегоДокумента, тзПокупки.Контрагент, тзПокупки.Договор, тзПокупки.ДопустимоеЧислоДнейЗадолженности, тзПокупки.СуммаКОплате, тзПокупки.ПоследняяДатаОплаты, СУММА(тзПокупки1.СуммаКОплате) КАК СуммаКОплатеДО ПОМЕСТИТЬ тзРаспределениеДолга ИЗ тзПокупки КАК тзПокупки ЛЕВОЕ СОЕДИНЕНИЕ тзПокупки КАК тзПокупки1 ПО тзПокупки.Контрагент = тзПокупки1.Контрагент И тзПокупки.Договор = тзПокупки1.Договор И тзПокупки.ДатаДокумента > тзПокупки1.ДатаДокумента СГРУППИРОВАТЬ ПО тзПокупки.Ссылка, тзПокупки.ДатаДокумента, тзПокупки.НомерДокумента, тзПокупки.НомерВходящегоДокумента, тзПокупки.Контрагент, тзПокупки.Договор, тзПокупки.ДопустимоеЧислоДнейЗадолженности, тзПокупки.СуммаКОплате, тзПокупки.ПоследняяДатаОплаты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ тзРаспределениеДолга.Ссылка КАК Ссылка, тзРаспределениеДолга.Договор КАК Договор, тзРаспределениеДолга.НомерДокумента КАК НомерДокумента, тзРаспределениеДолга.НомерВходящегоДокумента КАК НомерВходящегоДокумента, тзРаспределениеДолга.ДатаДокумента КАК ДатаДокумента, тзРаспределениеДолга.Контрагент КАК Контрагент, тзОплаты.СуммаПлатежа КАК СуммаПлатежа, тзРаспределениеДолга.СуммаКОплате КАК СуммаКОплате, тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаКОплатеДО, тзРаспределениеДолга.СуммаКОплате + тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаКОплатеВсего, тзРаспределениеДолга.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности, тзОплаты.СуммаПлатежа - тзРаспределениеДолга.СуммаКОплате - тзРаспределениеДолга.СуммаКОплатеДО КАК Долг, тзРаспределениеДолга.ПоследняяДатаОплаты КАК ПоследняяДатаоплаты ИЗ тзРаспределениеДолга КАК тзРаспределениеДолга ЛЕВОЕ СОЕДИНЕНИЕ тзОплаты КАК тзОплаты ПО тзРаспределениеДолга.Контрагент = тзОплаты.Контрагент И тзРаспределениеДолга.Договор = тзОплаты.ДоговорКонтрагента УПОРЯДОЧИТЬ ПО Контрагент, Договор, ДатаДокумента |
|||
1
LivingStar
17.10.13
✎
10:47
|
Попытался сделать что описанно в (0), но эта выборка сбрасывается с сервера с ошибкой времени выполнения
ВЫБРАТЬ ПлатежноеПоручениеИсходящее.Ссылка, ПлатежноеПоручениеИсходящее.Ссылка.Контрагент КАК Контрагент, ПлатежноеПоручениеИсходящее.ДоговорКонтрагента КАК ДоговорКонтрагента, ПлатежноеПоручениеИсходящее.СуммаВзаиморасчетов КАК СуммаПлатежа ПОМЕСТИТЬ ВТ_Оплаты ИЗ Документ.ПлатежноеПоручениеИсходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеИсходящее ГДЕ ПлатежноеПоручениеИсходящее.Ссылка.Проведен И ПлатежноеПоручениеИсходящее.Ссылка.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийППИсходящее.ОплатаПоставщику) ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ РасходныйКассовыйОрдер.Ссылка, РасходныйКассовыйОрдер.Ссылка.Контрагент КАК Контрагент, РасходныйКассовыйОрдер.ДоговорКонтрагента КАК ДоговорКонтрагента, РасходныйКассовыйОрдер.СуммаПлатежа КАК СуммаПлатежа ИЗ Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК РасходныйКассовыйОрдер ГДЕ РасходныйКассовыйОрдер.Ссылка.Проведен И РасходныйКассовыйОрдер.Ссылка.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийРКО.ОплатаПоставщику) ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ АвансовыйОтчетОплатаПоставщикам.Ссылка, АвансовыйОтчетОплатаПоставщикам.Контрагент КАК Контрагент, АвансовыйОтчетОплатаПоставщикам.ДоговорКонтрагента КАК ДоговорКонтрагента, АвансовыйОтчетОплатаПоставщикам.Сумма КАК СуммаПлатежа ИЗ Документ.АвансовыйОтчет.ОплатаПоставщикам КАК АвансовыйОтчетОплатаПоставщикам ГДЕ АвансовыйОтчетОплатаПоставщикам.Ссылка.Проведен ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_Оплаты.Ссылка, ВТ_Оплаты.Контрагент КАК Контрагент, ВТ_Оплаты.ДоговорКонтрагента, СУММА(ВТ_Оплаты.СуммаПлатежа) КАК СуммаПлатежа, ВТ_Оплаты.Контрагент.Наименование КАК КонтрагентНаименование ПОМЕСТИТЬ тзОплаты ИЗ ВТ_Оплаты КАК ВТ_Оплаты СГРУППИРОВАТЬ ПО ВТ_Оплаты.Ссылка, ВТ_Оплаты.Контрагент, ВТ_Оплаты.ДоговорКонтрагента, ВТ_Оплаты.Контрагент.Наименование ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПоступлениеТоваровУслуг.Ссылка КАК Ссылка, ПоступлениеТоваровУслуг.Номер КАК НомерДокумента, ПоступлениеТоваровУслуг.НомерВходящегоДокумента КАК НомерВходящегоДокумента, ПоступлениеТоваровУслуг.Дата КАК ДатаДокумента, ПоступлениеТоваровУслуг.ДоговорКонтрагента КАК Договор, ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности, ПоступлениеТоваровУслуг.Контрагент КАК Контрагент, ЕСТЬNULL(ПоступлениеТоваровУслуг.СуммаДокумента, 0) КАК СуммаКОплате, НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(ПоступлениеТоваровУслуг.Дата, ДЕНЬ, ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности), ДЕНЬ) КАК ПоследняяДатаОплаты ПОМЕСТИТЬ ВТ_Покупки ИЗ Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг ГДЕ ПоступлениеТоваровУслуг.Проведен И ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности <> 0 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 0, 0, 0, 0, ВозвратТоваровОтПокупателя.ДоговорКонтрагента, 0, ВозвратТоваровОтПокупателя.Контрагент, ЕСТЬNULL(ВозвратТоваровОтПокупателя.СуммаДокумента * -1, 0), 0 ИЗ Документ.ВозвратТоваровОтПокупателя КАК ВозвратТоваровОтПокупателя ГДЕ ВозвратТоваровОтПокупателя.Проведен ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_Покупки.Ссылка, ВТ_Покупки.НомерДокумента, ВТ_Покупки.НомерВходящегоДокумента, ВТ_Покупки.ДатаДокумента, ВТ_Покупки.Договор, ВТ_Покупки.Контрагент, ВТ_Покупки.ДопустимоеЧислоДнейЗадолженности, СУММА(ВТ_Покупки.СуммаКОплате) КАК СуммаКОплате, ВТ_Покупки.ПоследняяДатаОплаты ПОМЕСТИТЬ тзПокупки ИЗ ВТ_Покупки КАК ВТ_Покупки СГРУППИРОВАТЬ ПО ВТ_Покупки.Контрагент, ВТ_Покупки.Договор, ВТ_Покупки.Ссылка, ВТ_Покупки.НомерДокумента, ВТ_Покупки.НомерВходящегоДокумента, ВТ_Покупки.ДатаДокумента, ВТ_Покупки.ДопустимоеЧислоДнейЗадолженности, ВТ_Покупки.ПоследняяДатаОплаты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ тзПокупки.Ссылка, тзПокупки.ДатаДокумента, тзПокупки.НомерДокумента, тзПокупки.НомерВходящегоДокумента, тзПокупки.Контрагент, тзПокупки.Договор, тзПокупки.ДопустимоеЧислоДнейЗадолженности, тзПокупки.СуммаКОплате, тзПокупки.ПоследняяДатаОплаты, СУММА(тзПокупки1.СуммаКОплате) КАК СуммаКОплатеДО ПОМЕСТИТЬ тзРаспределениеДолга ИЗ ВТ_Покупки КАК тзПокупки ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Покупки КАК тзПокупки1 ПО тзПокупки.Контрагент = тзПокупки1.Контрагент И тзПокупки.Договор = тзПокупки1.Договор И тзПокупки.ДатаДокумента > тзПокупки1.ДатаДокумента СГРУППИРОВАТЬ ПО тзПокупки.Ссылка, тзПокупки.ДатаДокумента, тзПокупки.НомерДокумента, тзПокупки.НомерВходящегоДокумента, тзПокупки.Контрагент, тзПокупки.Договор, тзПокупки.ДопустимоеЧислоДнейЗадолженности, тзПокупки.СуммаКОплате, тзПокупки.ПоследняяДатаОплаты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ тзРаспределениеДолга.Ссылка КАК Ссылка, тзРаспределениеДолга.Контрагент КАК Контрагент, тзРаспределениеДолга.Договор КАК Договор, тзРаспределениеДолга.НомерДокумента КАК НомерДокумента, тзРаспределениеДолга.НомерВходящегоДокумента КАК НомерВходящегоДокумента, тзРаспределениеДолга.ДатаДокумента КАК ДатаДокумента, тзОплаты.СуммаПлатежа КАК СуммаПлатежа, тзРаспределениеДолга.СуммаКОплате КАК СуммаДокумента, тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаДокументаДО, тзОплаты.СуммаПлатежа - тзРаспределениеДолга.СуммаКОплате - тзРаспределениеДолга.СуммаКОплатеДО КАК Долг, тзРаспределениеДолга.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности, тзРаспределениеДолга.ПоследняяДатаОплаты КАК ПоследняяДатаоплаты, тзРаспределениеДолга.СуммаКОплате + тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаКОплатеВсего ИЗ тзРаспределениеДолга КАК тзРаспределениеДолга ЛЕВОЕ СОЕДИНЕНИЕ тзОплаты КАК тзОплаты ПО тзРаспределениеДолга.Контрагент = тзОплаты.Контрагент И тзРаспределениеДолга.Договор = тзОплаты.ДоговорКонтрагента УПОРЯДОЧИТЬ ПО Контрагент, Договор, ДатаДокумента |
|||
2
LivingStar
17.10.13
✎
10:51
|
Пытаюсь сделать что то подобное по регистрам, но не совсем понятно можно ли так же вывести данные, что бы видеть все оплаты и необходимый набор столбцов.
1). НомерПоПорядку 2). Договор 3). НомерДокумента 4). НомерВходящегоДокумента 5). ДатаДокумента 6). СуммаПлатежа 7). СуммаКОплате 8). СуммаДокумента 9). СуммаДокументаДО 10). Долг 11). ДопустимоеЧислоДнейЗадолженности 12). ПоследняяДатаОплаты Все это есть в выборке в (0) и нормально выводится в типовой конфигурации 10.3, за исключением тех документов которые стоит добавить. ВЫБРАТЬ ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Контрагент КАК Контрагент, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента, СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток) КАК СуммаВзаиморасчетовОстаток, &ДатаВыборки, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Контрагент.Наименование КАК КонтрагентНаименование, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Ссылка ПОМЕСТИТЬ ВТ_Взаиморасчеты ИЗ РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.Остатки(&ДатаВыборки, ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности <> 0) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки ГДЕ ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток < 0 СГРУППИРОВАТЬ ПО ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Контрагент, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Контрагент.Наименование, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Номер, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.ДатаВходящегоДокумента, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.СуммаДокумента, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ВидРасчетовСКонтрагентом.Ссылка, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ВидРасчетовСКонтрагентом.Порядок, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Ссылка ПОМЕСТИТЬ ВТ_Документы ИЗ РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.Остатки КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_Взаиморасчеты.Контрагент, ВТ_Взаиморасчеты.ДоговорКонтрагента, ВТ_Взаиморасчеты.СуммаВзаиморасчетовОстаток, ВТ_Взаиморасчеты.ДатаВыборки, ВТ_Взаиморасчеты.ДоговорКонтрагентаДопустимоеЧислоДнейЗадолженности, ВТ_Документы.ДокументРасчетовСКонтрагентомСсылка ИЗ ВТ_Взаиморасчеты КАК ВТ_Взаиморасчеты ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Документы КАК ВТ_Документы ПО ВТ_Взаиморасчеты.ДокументРасчетовСКонтрагентомСсылка = ВТ_Документы.ДокументРасчетовСКонтрагентомСсылка |
|||
3
LivingStar
17.10.13
✎
10:56
|
может кому интересно, все выборки приведены, что нужно отобрать написано, хоть и в 10й раз...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |