Имя: Пароль:
1C
1С v8
Ребят подскажите по выборке
0 LivingStar
 
14.10.13
11:19
В итоговой выборке отсутствуют документы "АвОтч" видимо это из за связи ЛЕВОЕ СОЕДИНЕНИЕ, так как нет этого контрагента в связуемой первой выборке. Как поступать в данном случае??? Как получить выборку по АвансовомуОтчету ?

ВЫБРАТЬ
    ПлатежноеПоручениеИсходящее.ДоговорКонтрагента,
    ПлатежноеПоручениеИсходящее.Контрагент,
    СУММА(ЕСТЬNULL(ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа
ПОМЕСТИТЬ тзОплаты_ПлатежноеПоручениеИсходящее
ИЗ
    Документ.ПлатежноеПоручениеИсходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеИсходящееРасшифровкаПлатежа
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПлатежноеПоручениеИсходящее КАК ПлатежноеПоручениеИсходящее
        ПО ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.Ссылка = ПлатежноеПоручениеИсходящее.Ссылка
ГДЕ
    ПлатежноеПоручениеИсходящее.Проведен
    И ПлатежноеПоручениеИсходящее.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийППИсходящее.ОплатаПоставщику)

СГРУППИРОВАТЬ ПО
    ПлатежноеПоручениеИсходящее.ДоговорКонтрагента,
    ПлатежноеПоручениеИсходящее.Контрагент
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    РасходныйКассовыйОрдер.ДоговорКонтрагента,
    РасходныйКассовыйОрдер.Контрагент,
    СУММА(ЕСТЬNULL(РасходныйКассовыйОрдерРасшифровкаПлатежа.СуммаПлатежа, 0)) КАК СуммаПлатежа
ПОМЕСТИТЬ тзОплаты_РасходныйКассовыйОрдер
ИЗ
    Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК РасходныйКассовыйОрдерРасшифровкаПлатежа
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.РасходныйКассовыйОрдер КАК РасходныйКассовыйОрдер
        ПО РасходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка = РасходныйКассовыйОрдер.Ссылка
ГДЕ
    РасходныйКассовыйОрдер.Проведен
    И РасходныйКассовыйОрдер.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийРКО.ОплатаПоставщику)

СГРУППИРОВАТЬ ПО
    РасходныйКассовыйОрдер.ДоговорКонтрагента,
    РасходныйКассовыйОрдер.Контрагент
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    АвансовыйОтчетОплатаПоставщикам.Контрагент,
    АвансовыйОтчетОплатаПоставщикам.ДоговорКонтрагента,
    СУММА(ЕСТЬNULL(АвансовыйОтчетОплатаПоставщикам.Сумма, 0)) КАК СуммаПлатежа
ПОМЕСТИТЬ тзОплаты_АвансовыйОтчет
ИЗ
    Документ.АвансовыйОтчет.ОплатаПоставщикам КАК АвансовыйОтчетОплатаПоставщикам
ГДЕ
    АвансовыйОтчетОплатаПоставщикам.Ссылка.Проведен

СГРУППИРОВАТЬ ПО
    АвансовыйОтчетОплатаПоставщикам.Контрагент,
    АвансовыйОтчетОплатаПоставщикам.ДоговорКонтрагента
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПоступлениеТоваровУслуг.Ссылка,
    ПоступлениеТоваровУслуг.Номер КАК НомерДокумента,
    ПоступлениеТоваровУслуг.НомерВходящегоДокумента КАК НомерВходящегоДокумента,
    ПоступлениеТоваровУслуг.Дата КАК ДатаДокумента,
    ПоступлениеТоваровУслуг.ДоговорКонтрагента КАК Договор,
    ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности,
    ПоступлениеТоваровУслуг.Контрагент КАК Контрагент,
    ЕСТЬNULL(ПоступлениеТоваровУслуг.СуммаДокумента, 0) КАК СуммаКОплате,
    НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(ПоступлениеТоваровУслуг.Дата, ДЕНЬ, ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности), ДЕНЬ) КАК ПоследняяДатаОплаты
ПОМЕСТИТЬ тзПокупки
ИЗ
    Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
ГДЕ
    ПоступлениеТоваровУслуг.Проведен
    И ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности <> 0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    тзПокупки.Ссылка,
    тзПокупки.ДатаДокумента,
    тзПокупки.НомерДокумента,
    тзПокупки.НомерВходящегоДокумента,
    тзПокупки.Контрагент,
    тзПокупки.Договор,
    тзПокупки.ДопустимоеЧислоДнейЗадолженности,
    тзПокупки.СуммаКОплате,
    тзПокупки.ПоследняяДатаОплаты,
    СУММА(тзПокупки1.СуммаКОплате) КАК СуммаКОплатеДО
ПОМЕСТИТЬ тзРаспределениеДолга
ИЗ
    тзПокупки КАК тзПокупки
        ЛЕВОЕ СОЕДИНЕНИЕ тзПокупки КАК тзПокупки1
        ПО тзПокупки.Контрагент = тзПокупки1.Контрагент
            И тзПокупки.Договор = тзПокупки1.Договор
            И тзПокупки.ДатаДокумента > тзПокупки1.ДатаДокумента

СГРУППИРОВАТЬ ПО
    тзПокупки.Ссылка,
    тзПокупки.ДатаДокумента,
    тзПокупки.НомерДокумента,
    тзПокупки.НомерВходящегоДокумента,
    тзПокупки.Контрагент,
    тзПокупки.Договор,
    тзПокупки.ДопустимоеЧислоДнейЗадолженности,
    тзПокупки.СуммаКОплате,
    тзПокупки.ПоследняяДатаОплаты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    тзРаспределениеДолга.Ссылка КАК Ссылка,
    тзРаспределениеДолга.Договор КАК Договор,
    тзРаспределениеДолга.НомерДокумента КАК НомерДокумента,
    тзРаспределениеДолга.НомерВходящегоДокумента КАК НомерВходящегоДокумента,
    тзРаспределениеДолга.ДатаДокумента КАК ДатаДокумента,
    тзРаспределениеДолга.Контрагент КАК Контрагент,
    тзОплаты_ПлатежноеПоручениеИсходящее.СуммаПлатежа КАК ПлатПоручИсх,
    тзОплаты_РасходныйКассовыйОрдер.СуммаПлатежа КАК РасхКассОрд,
    тзОплаты_АвансовыйОтчет.СуммаПлатежа КАК АвОтч,
    тзРаспределениеДолга.СуммаКОплате КАК СуммаКОплате,
    тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаКОплатеДО,
    тзРаспределениеДолга.СуммаКОплате + тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаКОплатеВсего,
    тзРаспределениеДолга.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности,
    тзОплаты_ПлатежноеПоручениеИсходящее.СуммаПлатежа,
    тзРаспределениеДолга.ПоследняяДатаОплаты КАК ПоследняяДатаоплаты
ИЗ
    тзРаспределениеДолга КАК тзРаспределениеДолга
        ЛЕВОЕ СОЕДИНЕНИЕ тзОплаты_ПлатежноеПоручениеИсходящее КАК тзОплаты_ПлатежноеПоручениеИсходящее
        ПО тзРаспределениеДолга.Контрагент = тзОплаты_ПлатежноеПоручениеИсходящее.Контрагент
            И тзРаспределениеДолга.Договор = тзОплаты_ПлатежноеПоручениеИсходящее.ДоговорКонтрагента
        ЛЕВОЕ СОЕДИНЕНИЕ тзОплаты_РасходныйКассовыйОрдер КАК тзОплаты_РасходныйКассовыйОрдер
        ПО тзРаспределениеДолга.Контрагент = тзОплаты_РасходныйКассовыйОрдер.Контрагент
            И тзРаспределениеДолга.Договор = тзОплаты_РасходныйКассовыйОрдер.ДоговорКонтрагента
        ЛЕВОЕ СОЕДИНЕНИЕ тзОплаты_АвансовыйОтчет КАК тзОплаты_АвансовыйОтчет
        ПО тзРаспределениеДолга.Договор = тзОплаты_АвансовыйОтчет.ДоговорКонтрагента
            И тзРаспределениеДолга.Контрагент = тзОплаты_АвансовыйОтчет.Контрагент

УПОРЯДОЧИТЬ ПО
    Контрагент,
    Договор,
    ДатаДокумента
1 le_
 
14.10.13
11:20
(0) Не левое соединение делать, а объединение.
2 LivingStar
 
14.10.13
11:38
(1) а с дальнейшими запросами как увязать это?
3 piter3
 
14.10.13
11:42
а зачем по документам?
4 le_
 
14.10.13
11:43
(2) Либо через соединение, либо через объединение, в зависимости от того, что нужно получить.

И кстати, для чего выборки из ТЧ документов соединяются с шапками этих документов левым соединением?..
5 LivingStar
 
14.10.13
11:43
(3) не знаю регистров
6 LivingStar
 
14.10.13
11:44
(4) не нужно такого делать?
7 le_
 
14.10.13
11:45
(5) Мда...
(6) Ты написал. Может, объяснишь, для чего?
8 LivingStar
 
14.10.13
11:48
(7) не знал что ответить, мне показали пример неординарной выборки, но там было так!!! Почему я не знаю!
9 le_
 
14.10.13
11:55
(8) В данном случае, это лишние подзапросы и лишняя нагрузка на сервер, при их выполнении.
10 1Сергей
 
14.10.13
11:59
(9) ы? а разве сама этого не делает, когда из Таблицы ТЧ обращаешься к шапке?
11 1Сергей
 
14.10.13
11:59
*1С сама
12 LivingStar
 
14.10.13
12:03
ясно, все можно брать через ссылку

сейчас задача в запрос (0) добавить в сумму платежа ещё 2 докумнета
13 Infsams654
 
14.10.13
12:09
(12) почему 2? Давай лучше 20 добавим
14 le_
 
14.10.13
12:32
(10) 1С-ка иначе это делает. Такой запрос, как самый первый в (0) будет преобразован в запрос к SQL, содержащий два джойна.
15 Wobland
 
14.10.13
12:34
когда у нас автор наконец поймёт, что самые правильные данные живут в регистрах? //запрос не смотрел
16 Infsams654
 
14.10.13
12:51
(15) посмотри, :)
17 Ненавижу 1С
 
гуру
14.10.13
12:53
(15) не так, когда автор поймет, что 1С и программирование вообще не для него?
18 LivingStar
 
14.10.13
12:54
(14) Данная выборка висит долго, результата так и не дождался.

ВЫБРАТЬ
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Контрагент КАК Контрагент,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.ДоговорКонтрагента КАК ДоговорКонтрагента,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаПлатежа
ПОМЕСТИТЬ тзОплаты
ИЗ
    Документ.ПлатежноеПоручениеВходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеВходящееРасшифровкаПлатежа

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.Ссылка,
    ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.Ссылка.Контрагент КАК Контрагент,
    ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.ДоговорКонтрагента КАК ДоговорКонтрагента,
    ПлатежноеПоручениеИсходящееРасшифровкаПлатежа.СуммаПлатежа КАК СуммаПлатежа
ИЗ
    Документ.ПлатежноеПоручениеИсходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеИсходящееРасшифровкаПлатежа

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    АвансовыйОтчетОплатаПоставщикам.Ссылка,
    АвансовыйОтчетОплатаПоставщикам.Контрагент КАК Контрагент,
    АвансовыйОтчетОплатаПоставщикам.ДоговорКонтрагента КАК ДоговорКонтрагента,
    АвансовыйОтчетОплатаПоставщикам.Сумма КАК СуммаПлатежа
ИЗ
    Документ.АвансовыйОтчет.ОплатаПоставщикам КАК АвансовыйОтчетОплатаПоставщикам
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПоступлениеТоваровУслуг.Ссылка,
    ПоступлениеТоваровУслуг.Номер КАК НомерДокумента,
    ПоступлениеТоваровУслуг.НомерВходящегоДокумента КАК НомерВходящегоДокумента,
    ПоступлениеТоваровУслуг.Дата КАК ДатаДокумента,
    ПоступлениеТоваровУслуг.ДоговорКонтрагента КАК Договор,
    ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности,
    ПоступлениеТоваровУслуг.Контрагент КАК Контрагент,
    ЕСТЬNULL(ПоступлениеТоваровУслуг.СуммаДокумента, 0) КАК СуммаКОплате,
    НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(ПоступлениеТоваровУслуг.Дата, ДЕНЬ, ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности), ДЕНЬ) КАК ПоследняяДатаОплаты
ПОМЕСТИТЬ тзПокупки
ИЗ
    Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
ГДЕ
    ПоступлениеТоваровУслуг.Проведен
    И ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности <> 0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    тзПокупки.Ссылка,
    тзПокупки.ДатаДокумента,
    тзПокупки.НомерДокумента,
    тзПокупки.НомерВходящегоДокумента,
    тзПокупки.Контрагент,
    тзПокупки.Договор,
    тзПокупки.ДопустимоеЧислоДнейЗадолженности,
    тзПокупки.СуммаКОплате,
    тзПокупки.ПоследняяДатаОплаты,
    СУММА(тзПокупки1.СуммаКОплате) КАК СуммаКОплатеДО
ПОМЕСТИТЬ тзРаспределениеДолга
ИЗ
    тзПокупки КАК тзПокупки
        ЛЕВОЕ СОЕДИНЕНИЕ тзПокупки КАК тзПокупки1
        ПО тзПокупки.Контрагент = тзПокупки1.Контрагент
            И тзПокупки.Договор = тзПокупки1.Договор
            И тзПокупки.ДатаДокумента > тзПокупки1.ДатаДокумента

СГРУППИРОВАТЬ ПО
    тзПокупки.Ссылка,
    тзПокупки.ДатаДокумента,
    тзПокупки.НомерДокумента,
    тзПокупки.НомерВходящегоДокумента,
    тзПокупки.Контрагент,
    тзПокупки.Договор,
    тзПокупки.ДопустимоеЧислоДнейЗадолженности,
    тзПокупки.СуммаКОплате,
    тзПокупки.ПоследняяДатаОплаты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    тзРаспределениеДолга.Ссылка КАК Ссылка,
    тзРаспределениеДолга.Договор КАК Договор,
    тзРаспределениеДолга.НомерДокумента КАК НомерДокумента,
    тзРаспределениеДолга.НомерВходящегоДокумента КАК НомерВходящегоДокумента,
    тзРаспределениеДолга.ДатаДокумента КАК ДатаДокумента,
    тзРаспределениеДолга.Контрагент КАК Контрагент,
    тзОплаты.СуммаПлатежа КАК СуммаПлатежа,
    тзРаспределениеДолга.СуммаКОплате КАК СуммаКОплате,
    тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаКОплатеДО,
    тзРаспределениеДолга.СуммаКОплате + тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаКОплатеВсего,
    тзРаспределениеДолга.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности,
    тзОплаты.СуммаПлатежа - тзРаспределениеДолга.СуммаКОплате - тзРаспределениеДолга.СуммаКОплатеДО КАК Долг,
    тзРаспределениеДолга.ПоследняяДатаОплаты КАК ПоследняяДатаоплаты
ИЗ
    тзРаспределениеДолга КАК тзРаспределениеДолга
        ЛЕВОЕ СОЕДИНЕНИЕ тзОплаты КАК тзОплаты
        ПО тзРаспределениеДолга.Контрагент = тзОплаты.Контрагент
            И тзРаспределениеДолга.Договор = тзОплаты.ДоговорКонтрагента

УПОРЯДОЧИТЬ ПО
    Контрагент,
    Договор,
    ДатаДокумента
19 LivingStar
 
14.10.13
12:56
(15) Из регистров не выбираю потому что каждый документ делает множество движений по разным регистрам. Из каких выбирать правильно мне не понятно.
20 Starhan
 
14.10.13
12:56
(0)Сколько платят то хоть за это? И где?
21 le_
 
14.10.13
13:02
(18) Видимо, документов в базе много. И перебирать по несколько раз все платежки (в т.ч., непроведенные, неоплаченные, удаленные) и поступления за все время - это пи*дец.
22 Wobland
 
14.10.13
13:02
(19) допустим, пускай. непонятно, сделаю попроще, буду лукаться в документы. хотя, я с этим крепко не согласен. проведённость проверяешь? а то запишет юзер документ за просто так, чтобы через неделю вернуться и дооформить, а у тебя в отчёте бяка
23 le_
 
14.10.13
13:05
+(21) Думаю, пора всё-таки потихоньку начать разбираться в регистрах.
24 LivingStar
 
14.10.13
13:06
(21) Да документов дофига!!! Из за этого видимо не могу дождаться выборку. Или оставить её пусть дойдет?

(22) Про проведенность снова забыл. Сейчас проверю!

Где бы достать описание конфигурации, связки документов с регистрами, что бы делать верную выборку???!
25 LivingStar
 
14.10.13
13:09
(23) Сам серьезно озадачился. Так как по документам это все висит ((( А по регистрам выборка должна работать значительно быстрее. Сесть и начать чтение кода что бы выявить по каким регистрам делать выборки. Не факт что я опять же правильно это разберу.
26 piter3
 
14.10.13
13:10
(25) не вчитывался, но походу только РБ (если БП)
27 Wobland
 
14.10.13
13:10
(25) я тоже был когда-то молодым и не был уверен в своих силах, это нормально. всего-то нужно заставить себя разобраться в предметной области. ну и голова нужна, как без неё
28 LivingStar
 
14.10.13
13:16
(27) Надо убрать из жизни все негативное что исходит от себя и заняться делом !!! То есть (18) не получится по документам?
29 AlexITGround
 
14.10.13
13:42
(21) ты знаешь как помогать в таких случаях?)
"Здесь нужно поработать с ним по индивидуальной схеме" - из рекламы(с)
30 AlexITGround
 
14.10.13
13:49
(28) сначала определись какие поля нужны, потом в метаданных посмотри по каким регистрам делают движения эти документы, потом посмотри структуру этих регистров (попробуй понять их смысл, зачем нужен тот или иной регистр, если типовой механизм, то можешь почитать в инэте или литературе под конфу), потом определившись из каких регистров нужны данные - сделать выборку в консоли запросов и отладь его.
31 anaed
 
14.10.13
13:57
УТ 10.3 если мне память не изменяет. Смотри РН "Взаиморасчеты с контрагентами" и "Взаиморасчеты с контрагентами по документам расчетов"

На самом деле для таких ленивых у 1с есть дикий плюс - не нужно знать английский, чтобы хоть примерно понять что за что отвечает.
32 Infsams654
 
14.10.13
16:50
На самом деле для таких ленивых у 1с есть дикий плюс - не нужно знать английский...
да вообще ничего не знать ++
33 LivingStar
 
15.10.13
05:30
(30) Начинаю смотреть конфигурацию, что двигают
РасходныйКассовыйОрдер
ПлатежноеПоручениеИсходящее
АвансовыйОтчет

(31) Да УТ 10.3, измененная, но основные объекты и заложенная логика типовая. Попробую пристальнее просмотреть эти регистры.
34 Oleg_Kag
 
15.10.13
06:12
Вообще смотрю ТС молодец - изучает 1С методом проб и ошибок, что благоприятно скажется в дальнейшей работе.

Отчет который ты пытаешься сделать можно сделать из типового отчета "Ведомость по расчетам с контрагентами" (Ведомость по взаиморасчетам с контрагентами)
35 hhhh
 
15.10.13
07:14
(34) День хомячка видел? Вот это наш ТС. Он с утра встает - не помнит, что делал вчера.
36 LivingStar
 
15.10.13
07:19
(31) Если данные для выборки в (0) можно получить из РН "Взаиморасчеты с контрагентами" и "Взаиморасчеты с контрагентами по документам расчетов", не косаясь документов, то в чем разница между этими регистрами? Вижу что и там и там есть те же документы.
37 LivingStar
 
15.10.13
07:20
(35) я решил применить вот это (28)
38 Starhan
 
15.10.13
07:28
(36)>>то в чем разница между этими регистрами?

а там вроде русскими буквами по белому написано в чем разница, не?
39 Гефест
 
15.10.13
07:29
(36) Названия регистров ни на что не намекают?
40 LivingStar
 
15.10.13
07:30
(38)(39) АвансовыйОтчет в них не участвует?
41 LivingStar
 
15.10.13
07:40
Если в (0) участвуют номера документов, суммы из документов. Поможет ли выборка по регистру??? Бывает что и типовые отчеты висят при формировании, хотя они же наверное по регистрам построены?
42 anaed
 
15.10.13
07:52
(36)сравни оба названия РН, найди лишние слова - это и есть разница между ними.
(41)если типовые отчеты по регистрам висят, то твоим выборки документов будут выполняться чуть менее чем вечность.
43 LivingStar
 
15.10.13
07:58
вот эта выборка тзОплат, выполняется значительно быстро!

ВЫБРАТЬ
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Контрагент КАК Контрагент,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.ДоговорКонтрагента КАК Договор,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаПлатежа
ПОМЕСТИТЬ ВТ_Оплаты
ИЗ
    Документ.ПлатежноеПоручениеВходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеВходящееРасшифровкаПлатежа

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    РасходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка,
    РасходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Контрагент,
    РасходныйКассовыйОрдерРасшифровкаПлатежа.ДоговорКонтрагента,
    РасходныйКассовыйОрдерРасшифровкаПлатежа.СуммаПлатежа
ИЗ
    Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК РасходныйКассовыйОрдерРасшифровкаПлатежа

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    АвансовыйОтчетОплатаПоставщикам.Ссылка,
    АвансовыйОтчетОплатаПоставщикам.Контрагент,
    АвансовыйОтчетОплатаПоставщикам.ДоговорКонтрагента,
    АвансовыйОтчетОплатаПоставщикам.Сумма
ИЗ
    Документ.АвансовыйОтчет.ОплатаПоставщикам КАК АвансовыйОтчетОплатаПоставщикам
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_Оплаты.Контрагент КАК Контрагент,
    ВТ_Оплаты.Договор,
    СУММА(ВТ_Оплаты.СуммаПлатежа) КАК СуммаПлатежа,
    ВТ_Оплаты.Контрагент.Наименование КАК КонтрагентНаименование
ИЗ
    ВТ_Оплаты КАК ВТ_Оплаты

СГРУППИРОВАТЬ ПО
    ВТ_Оплаты.Контрагент,
    ВТ_Оплаты.Договор

УПОРЯДОЧИТЬ ПО
    КонтрагентНаименование
44 anaed
 
15.10.13
08:05
(43) При значительно объеме документов обоср*тся твоя выборка. Тем более что инфа ею предоставленная будет абсолютно недостоверна.
45 LivingStar
 
15.10.13
08:11
(44)  Так там объем итак значительный.

Сделаю проверку на проведенность... что недостоверного будет?
46 anaed
 
15.10.13
08:36
(45)чтобы понять в чем недостоверна сравни выборку по документам с
ВЫБРАТЬ
ВзаиморасчетыСКонтрагентамиОстатки.Контрагент,
ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента,
сумма(ВзаиморасчетыСКонтрагентамиОстатки.СуммаУпрОстаток),
сумма(ВзаиморасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток)
ИЗ
РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки КАК ВзаиморасчетыСКонтрагентамиОстатки
Сгруппировать по
ВзаиморасчетыСКонтрагентамиОстатки.Контрагент,
ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента
47 LivingStar
 
15.10.13
08:45
В (18) выборка закосяченная (именно так), повторяющиеся виды документов. Сделал сейчасм новую, отрабатываю....

ВЫБРАТЬ
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Контрагент КАК Контрагент,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.ДоговорКонтрагента КАК ДоговорКонтрагента,
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.СуммаВзаиморасчетов КАК СуммаПлатежа
ПОМЕСТИТЬ ВТ_Оплаты
ИЗ
    Документ.ПлатежноеПоручениеВходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеВходящееРасшифровкаПлатежа
ГДЕ
    ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Проведен

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    РасходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка,
    РасходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Контрагент КАК Контрагент,
    РасходныйКассовыйОрдерРасшифровкаПлатежа.ДоговорКонтрагента КАК ДоговорКонтрагента,
    РасходныйКассовыйОрдерРасшифровкаПлатежа.СуммаПлатежа КАК СуммаПлатежа
ИЗ
    Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК РасходныйКассовыйОрдерРасшифровкаПлатежа
ГДЕ
    РасходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Проведен

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    АвансовыйОтчетОплатаПоставщикам.Ссылка,
    АвансовыйОтчетОплатаПоставщикам.Контрагент КАК Контрагент,
    АвансовыйОтчетОплатаПоставщикам.ДоговорКонтрагента КАК ДоговорКонтрагента,
    АвансовыйОтчетОплатаПоставщикам.Сумма КАК СуммаПлатежа
ИЗ
    Документ.АвансовыйОтчет.ОплатаПоставщикам КАК АвансовыйОтчетОплатаПоставщикам
ГДЕ
    АвансовыйОтчетОплатаПоставщикам.Ссылка.Проведен
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_Оплаты.Контрагент КАК Контрагент,
    ВТ_Оплаты.ДоговорКонтрагента КАК ДоговорКонтрагента,
    СУММА(ВТ_Оплаты.СуммаПлатежа) КАК СуммаПлатежа
ПОМЕСТИТЬ тзОплаты
ИЗ
    ВТ_Оплаты КАК ВТ_Оплаты

СГРУППИРОВАТЬ ПО
    ВТ_Оплаты.Контрагент,
    ВТ_Оплаты.ДоговорКонтрагента
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПоступлениеТоваровУслуг.Ссылка,
    ПоступлениеТоваровУслуг.Номер КАК НомерДокумента,
    ПоступлениеТоваровУслуг.НомерВходящегоДокумента КАК НомерВходящегоДокумента,
    ПоступлениеТоваровУслуг.Дата КАК ДатаДокумента,
    ПоступлениеТоваровУслуг.ДоговорКонтрагента КАК Договор,
    ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности,
    ПоступлениеТоваровУслуг.Контрагент КАК Контрагент,
    ЕСТЬNULL(ПоступлениеТоваровУслуг.СуммаДокумента, 0) КАК СуммаКОплате,
    НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(ПоступлениеТоваровУслуг.Дата, ДЕНЬ, ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности), ДЕНЬ) КАК ПоследняяДатаОплаты
ПОМЕСТИТЬ тзПокупки
ИЗ
    Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
ГДЕ
    ПоступлениеТоваровУслуг.Проведен
    И ПоступлениеТоваровУслуг.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности <> 0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    тзПокупки.Ссылка,
    тзПокупки.ДатаДокумента,
    тзПокупки.НомерДокумента,
    тзПокупки.НомерВходящегоДокумента,
    тзПокупки.Контрагент,
    тзПокупки.Договор,
    тзПокупки.ДопустимоеЧислоДнейЗадолженности,
    тзПокупки.СуммаКОплате,
    тзПокупки.ПоследняяДатаОплаты,
    СУММА(тзПокупки1.СуммаКОплате) КАК СуммаКОплатеДО
ПОМЕСТИТЬ тзРаспределениеДолга
ИЗ
    тзПокупки КАК тзПокупки
        ЛЕВОЕ СОЕДИНЕНИЕ тзПокупки КАК тзПокупки1
        ПО тзПокупки.Контрагент = тзПокупки1.Контрагент
            И тзПокупки.Договор = тзПокупки1.Договор
            И тзПокупки.ДатаДокумента > тзПокупки1.ДатаДокумента

СГРУППИРОВАТЬ ПО
    тзПокупки.Ссылка,
    тзПокупки.ДатаДокумента,
    тзПокупки.НомерДокумента,
    тзПокупки.НомерВходящегоДокумента,
    тзПокупки.Контрагент,
    тзПокупки.Договор,
    тзПокупки.ДопустимоеЧислоДнейЗадолженности,
    тзПокупки.СуммаКОплате,
    тзПокупки.ПоследняяДатаОплаты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    тзРаспределениеДолга.Ссылка КАК Ссылка,
    тзРаспределениеДолга.Контрагент КАК Контрагент,
    тзРаспределениеДолга.Договор КАК Договор,
    тзРаспределениеДолга.НомерДокумента КАК НомерДокумента,
    тзРаспределениеДолга.НомерВходящегоДокумента КАК НомерВходящегоДокумента,
    тзРаспределениеДолга.ДатаДокумента КАК ДатаДокумента,
    тзОплаты.СуммаПлатежа КАК СуммаПлатежа,
    тзРаспределениеДолга.СуммаКОплате КАК СуммаДокумента,
    тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаДокументаДО,
    тзОплаты.СуммаПлатежа - тзРаспределениеДолга.СуммаКОплате - тзРаспределениеДолга.СуммаКОплатеДО КАК Долг,
    тзРаспределениеДолга.ДопустимоеЧислоДнейЗадолженности КАК ДопустимоеЧислоДнейЗадолженности,
    тзРаспределениеДолга.ПоследняяДатаОплаты КАК ПоследняяДатаоплаты,
    тзРаспределениеДолга.СуммаКОплате + тзРаспределениеДолга.СуммаКОплатеДО КАК СуммаКОплатеВсего
ИЗ
    тзРаспределениеДолга КАК тзРаспределениеДолга
        ЛЕВОЕ СОЕДИНЕНИЕ тзОплаты КАК тзОплаты
        ПО тзРаспределениеДолга.Контрагент = тзОплаты.Контрагент
            И тзРаспределениеДолга.Договор = тзОплаты.ДоговорКонтрагента

УПОРЯДОЧИТЬ ПО
    Контрагент,
    Договор,
    ДатаДокумента
48 LivingStar
 
15.10.13
08:50
Сейчас вопрос, что бы от ПоступленияТоваровУслуг вычесть документы ВозвратТоваровПоставщику куда лучше его включить?

В тзПокупки, и сделать сумму с минусом? Аналогично тзОплаты (где в выборке участвуют 3 документа) ...
49 LivingStar
 
15.10.13
10:06
подскажите пожалуйста кому не трудно, как решать такое в запросе?