Имя: Пароль:
1C
1С v8
Запрос по Кредиторам в КА
0 mnimo
 
04.02.13
19:51
ВЫБРАТЬ
   Обороты.Организация,
   Обороты.Контрагент КАК Контрагент,
   Обороты.ДоговорКонтрагента КАК ДоговорКонтрагента,
   Обороты.Регистратор КАК Документ,
   Остатки.СуммаОстаток КАК СуммаОстаток,
   РАЗНОСТЬДАТ(Обороты.Период, &ДатаОтчета, ДЕНЬ) КАК ДнейСОтгрузки,
   Обороты.СуммаВзаиморасчетовРасход КАК СуммаОтгрузки,
   Обороты.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности КАК Отсрочка,
   ВЫРАЗИТЬ(ДОБАВИТЬКДАТЕ(Обороты.Период, ДЕНЬ, Обороты.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности) КАК ДАТА) КАК ДатаОплаты,
   РАЗНОСТЬДАТ(Обороты.Период, &ДатаОтчета, ДЕНЬ) - Обороты.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности КАК СрокДолга,
   Обороты.Период КАК Период
ИЗ
   (ВЫБРАТЬ
       ОстаткиПоВзаиморасчетам.ДоговорКонтрагента КАК ДоговорКонтрагента,
       ОстаткиПоВзаиморасчетам.СуммаВзаиморасчетовОстаток КАК СуммаОстаток
   ИЗ
       РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(&ДатаОтчета, ДоговорКонтрагента.ВидДоговора = ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СПоставщиком)) КАК ОстаткиПоВзаиморасчетам
   ГДЕ
       ОстаткиПоВзаиморасчетам.СуммаВзаиморасчетовОстаток <> 0) КАК Остатки
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВзаиморасчетыСКонтрагентами.Обороты(, &ДатаОтчета, Регистратор, ) КАК Обороты
       ПО Остатки.ДоговорКонтрагента = Обороты.ДоговорКонтрагента
{ГДЕ
   Остатки.ДоговорКонтрагента.Организация.* КАК Организация,
   Остатки.ДоговорКонтрагента.Владелец.* КАК Контрагент,
   Остатки.ДоговорКонтрагента.Владелец.ОсновнойМенеджерПокупателя.* КАК Менеджер,
   Обороты.Организация.*,
   Обороты.Контрагент.*,
   Обороты.ДоговорКонтрагента.*,
   Обороты.Контрагент.ОсновнойМенеджерПокупателя.* КАК Менеджер}

УПОРЯДОЧИТЬ ПО
   Период УБЫВ
ИТОГИ ПО
   Контрагент,
   ДоговорКонтрагента


Вот запрос выдает в конце выборки пустые строки только СуммаОстаток=Цифра есть. А остальные колонки все пустые.
Подскажите что не так в запросе, может что соединил не так не могу понять.

Может вообще по другому надо?
1 mnimo
 
04.02.13
20:04
Вроде и запрос то не большой, и все просто.
2 shuhard
 
04.02.13
20:21
(1)[Вроде и запрос то не большой, и все просто.]
поэтому форум смотреть запрос не будет
3 mnimo
 
04.02.13
20:24
(2)С такой логикой не поспоришь)))
4 sanja26
 
04.02.13
20:25
Вот запрос выдает в конце выборки пустые строки только СуммаОстаток=Цифра есть. где запятые? ни фига не понятно
5 mnimo
 
04.02.13
20:27
(4)Вот запрос, выдает в конце выборки пустые строки, только СуммаОстаток=Цифра есть.
6 sanja26
 
04.02.13
20:30
(5) так остальные колонки из оборотов получаются
7 DrShad
 
04.02.13
20:31
[ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВзаиморасчетыСКонтрагентами.Обороты(, &ДатаОтчета, Регистратор, ) КАК Обороты] и не настораживает что в левой таблице 2 поля, а соединение многих полей по одному?
8 DrShad
 
04.02.13
20:31
вообще весь запрос в топку!
9 sanja26
 
04.02.13
20:33
да, найди сначала договоры по остаткам, а потом уже в пакетном обороты вытягивай
10 mnimo
 
04.02.13
20:51
ВЫБРАТЬ
   ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента,
   ВзаиморасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток
ПОМЕСТИТЬ ВТОстатки
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(&ДатаОтчета, ДоговорКонтрагента.ВидДоговора = ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СПоставщиком)) КАК ВзаиморасчетыСКонтрагентамиОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ВзаиморасчетыСКонтрагентамиОбороты.Организация КАК Организация,
   ВзаиморасчетыСКонтрагентамиОбороты.Контрагент КАК Контрагент,
   ВТОстатки.ДоговорКонтрагента КАК ДоговорКонтрагента,
   СУММА(ВТОстатки.СуммаВзаиморасчетовОстаток) КАК СуммаВзаиморасчетовОстаток
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентами.Обороты(
           ,
           &ДатаОтчета,
           Регистратор,
           ДоговорКонтрагента В
               (ВЫБРАТЬ
                   Остатки.ДоговорКонтрагента
               ИЗ
                   ВТОстатки КАК Остатки)) КАК ВзаиморасчетыСКонтрагентамиОбороты,
   ВТОстатки КАК ВТОстатки

СГРУППИРОВАТЬ ПО
   ВзаиморасчетыСКонтрагентамиОбороты.Организация,
   ВзаиморасчетыСКонтрагентамиОбороты.Контрагент,
   ВТОстатки.ДоговорКонтрагента


(9)Так?
11 DrShad
 
04.02.13
21:06
(10) что это за адский отжиг?
12 sanja26
 
04.02.13
21:06
(10) а где условие потерял в первом запросе?
и зачем период регистратор, если в поля не выводится регистратор. Для СКД ставь авто
13 DrShad
 
04.02.13
21:06
+(11) почему не выбрать все одним запросом? накуя соединять две одинаковые таблицы да еще и через ВТ?
14 sanja26
 
04.02.13
21:08
(13) так ему сроки долга надо
15 DrShad
 
04.02.13
21:09
(14) ну и где он их выбирает?
16 sanja26
 
04.02.13
21:12
ВЫБРАТЬ РАЗРЕШЕННЫЕ
   ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента КАК ДоговорКонтрагента,
   ВзаиморасчетыСКонтрагентамиОстатки.Контрагент КАК Контрагент,
   ВзаиморасчетыСКонтрагентамиОстатки.Организация КАК Организация,
   ВзаиморасчетыСКонтрагентамиОстатки.Сделка КАК Сделка,
   ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента.ВалютаВзаиморасчетов КАК ВалютаВзаиморасчетов,
   ПРЕДСТАВЛЕНИЕ(ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента),
   ПРЕДСТАВЛЕНИЕ(ВзаиморасчетыСКонтрагентамиОстатки.Контрагент),
   ПРЕДСТАВЛЕНИЕ(ВзаиморасчетыСКонтрагентамиОстатки.Организация),
   ПРЕДСТАВЛЕНИЕ(ВзаиморасчетыСКонтрагентамиОстатки.Сделка),
   ПРЕДСТАВЛЕНИЕ(ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента.ВалютаВзаиморасчетов) КАК ВалютаВзаиморасчетовПредставление,
   ВзаиморасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток КАК СуммаВзаиморасчетов,
   ВзаиморасчетыСКонтрагентамиОстатки.СуммаУпрОстаток КАК СуммаУпр
{ВЫБРАТЬ
   Контрагент.*,
   Организация.*,
   ДоговорКонтрагента.*,
   ВалютаВзаиморасчетов,
   Сделка.*,
   СуммаВзаиморасчетов,
   СуммаУпр}
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(&ДатаКон, {(Контрагент).* КАК Контрагент, (Сделка).* КАК Сделка, (ДоговорКонтрагента).* КАК ДоговорКонтрагента, (Организация).* КАК Организация}) КАК ВзаиморасчетыСКонтрагентамиОстатки
       ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(&ДатаКон, {(Контрагент).* КАК Контрагент, (Сделка).* КАК Сделка, (ДоговорКонтрагента).* КАК ДоговорКонтрагента, (Организация).* КАК Организация}) КАК ВзаиморасчетыСКонтрагентамиОстаткиНужногоТипа
       ПО ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента = ВзаиморасчетыСКонтрагентамиОстаткиНужногоТипа.ДоговорКонтрагента
           И ВзаиморасчетыСКонтрагентамиОстатки.Сделка = ВзаиморасчетыСКонтрагентамиОстаткиНужногоТипа.Сделка
           И (ВЫБОР
               КОГДА &ПереключательЗадолженность = 1
                   ТОГДА ВзаиморасчетыСКонтрагентамиОстаткиНужногоТипа.СуммаВзаиморасчетовОстаток > 0
               КОГДА &ПереключательЗадолженность = 2
                   ТОГДА ВзаиморасчетыСКонтрагентамиОстаткиНужногоТипа.СуммаВзаиморасчетовОстаток < 0
               ИНАЧЕ ИСТИНА
           КОНЕЦ)
{ГДЕ
   ВзаиморасчетыСКонтрагентамиОстатки.Контрагент.* КАК Контрагент,
   ВзаиморасчетыСКонтрагентамиОстатки.Организация.* КАК Организация,
   ВзаиморасчетыСКонтрагентамиОстатки.Сделка.* КАК Сделка,
   ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента.* КАК ДоговорКонтрагента,
   ВзаиморасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток КАК СуммаВзаиморасчетов,
   ВзаиморасчетыСКонтрагентамиОстатки.СуммаУпрОстаток КАК СуммаУпр}
{УПОРЯДОЧИТЬ ПО
   Организация.*,
   Контрагент.*,
   ДоговорКонтрагента.*,
   ВалютаВзаиморасчетов,
   Сделка,
   СуммаВзаиморасчетов,
   СуммаУпр}
ИТОГИ
   СУММА(СуммаВзаиморасчетов),
   СУММА(СуммаУпр)
ПО
   ОБЩИЕ
{ИТОГИ ПО
   Организация.*,
   Контрагент.*,
   ДоговорКонтрагента.*,
   Сделка.*,
   ВалютаВзаиморасчетов}
17 sanja26
 
04.02.13
21:12
+(16) только переключатель убери
18 sanja26
 
04.02.13
21:13
хотя это тот же самый отчет наверно)) из УТ 10
19 mnimo
 
04.02.13
21:14
(14)Так точно.
20 DrShad
 
04.02.13
21:25
(19) что так точно? где оно в твоем последнем запросе было? тут за тебя всю жизнь думать не будут
21 mnimo
 
04.02.13
21:31
(20)Я думать за себя не прошу, а прошу направить в нужное русло.
22 Мимохожий Однако
 
04.02.13
21:34
Начинать надо с ТЗ. О том, что ты ходишь можно гадать еще 100 постов.
23 DrShad
 
04.02.13
21:34
(21) направили, но ты все равно свернул не туда
24 Мимохожий Однако
 
04.02.13
21:34
(22)ходишь = хочешь
25 mnimo
 
04.02.13
21:38
(23)Подскажите еще разок, если не так как в 10 то как тогда?(Там нет функций с датами но образно так должно быть?)
26 DrShad
 
04.02.13
21:40
(25) пилять. да бери уже свой запрос из (10) и перестань нам мозг выносить, а от устроил тут ромашка со сроками или без сроков
27 mnimo
 
04.02.13
21:42
(22)Согласен конечно, не совсем удачно начал, возможно.
Нужно мне Отчет по Кредиторам с Документами образовавшими задолженность и датами (ЧислоДнейПросроченных, ПланируемаяДатаПлатежа), ну и сумму задолженности конечно.
28 DrShad
 
04.02.13
21:43
(27) почему ты выбрал регистр ВзаиморасчетыСКонтрагентами? а не более подходящий для этого регистр?
29 mnimo
 
04.02.13
21:44
(26)Сколько злости, Похоже совсем не на кого выругаться.Сочувствую!
30 DrShad
 
04.02.13
21:46
ок. не хочешь волшебного пенделя? не надо, досвидос
31 DrShad
 
04.02.13
21:47
договаривайся сам со своими тараканами, удачи!
32 Мимохожий Однако
 
04.02.13
22:12
Чем не устроил типовой отчет "Дебиторская задолженность по срокам долга"? Можно и там подсмотреть запрос.
33 mnimo
 
04.02.13
22:19
(32)Уже разбираю его.Спасибо!
34 Мимохожий Однако
 
04.02.13
22:26
(33)Главное - не забудь собрать потом )))
35 mnimo
 
04.02.13
22:28
(34)Ха ха ха Ок... Клеем...