Имя: Пароль:
1C
1С v8
Отчет по кредитной линии и запрос для просроченной ДЗ на каждый день в УТ 10.3
,
0 kn
 
15.12.11
14:15
Пытаюсь разбираться с запросом из отчета по кредитной линии чтобы воспользоваться и написать запрос для просроченной ДЗ на каждый день,
не совсем понятно как он устроен и можно ли им воспользоваться для этого.Написала свой запрос, но он показывает результат отличный от того что в стандартном отчете, например как учитывать что оплата идет без отсрочки, а покупка с отсрочкой я не понимаю(в отчете по кредитной линии вообще не вижу такого разделения).
1 screamhome
 
15.12.11
14:16
может фотку для начала???
2 kn
 
15.12.11
14:17
я не бородатый мужчина, слова достаточно?
3 ProProg
 
15.12.11
14:22
4 kn
 
15.12.11
14:30
(3)спасибо,только запрос подозрительно простой, сейчас посмотрю на данных
5 ProProg
 
15.12.11
14:31
Все элементарное просто.
6 kn
 
15.12.11
14:36
разнятся даныые с отчетом по кредитной линии, твой показывает нет просрочки, а стандартный показывает что есть, буду рада, если ошибаюсь.
7 kn
 
15.12.11
19:28
что заметно, так это то, что в отчете по кредитной линии считается отсрочка в рабочих днях, а в (3) - нет.Надо как в отчете по кредитной линии
8 ProProg
 
15.12.11
19:29
сделай. это не проблема.
9 kn
 
15.12.11
19:33
ну почему у 1с отчет накрученный, ты его видел, разбирал?
10 ProProg
 
15.12.11
19:39
(9) он фиговый. поэтому там даже можно ничего не разбирать. проще написать свой.
11 ProProg
 
15.12.11
19:40
УТ10 уже 5 лет не обновлялась в плане упр учета. Все отчеты как были так и есть с самого начала.
12 kn
 
15.12.11
19:41
с меня спросят цифру как в нем, потому что им реально ежедневно пользуются.
13 ProProg
 
15.12.11
19:42
им пользуются потоум что больше нечем)) а он я хочу сказать неправильный!!! згнаешь почему! потому что он расчитан на то что идельно закрываются долги. а я еще ни одной конторы не видел который бы по докам нормально закорывала долги. в итоге еслим вдруг не дай бог переплаты и прочие дела он начинает хрень нести.
Он расчитан на идеальный учет, которого реально не бывает.
14 ProProg
 
15.12.11
19:43
я в своем отчете специально сделал авансы, товарные долги и доки чтобы было ви дно где ошибки.
15 kn
 
15.12.11
19:43
Почему он фиговый?
16 ProProg
 
15.12.11
19:44
читай (13) он неправильно выводит картину если в базе есть ошибки по разноскам.
17 kn
 
15.12.11
19:44
у нас вроде перепривязывают документы если видят что, что-то не то
18 kn
 
15.12.11
19:45
разве я могу восстать против отчета по кредитной линии?
19 ProProg
 
15.12.11
19:49
Слушай. твои проблемы реально никого не волнуют)
20 kn
 
15.12.11
19:52
ок
21 kn
 
23.12.11
12:45
В продолжении темы, взгляните ,пожалуйста, на запрос и укажите
что не так.Он выдает не совсем верный результат,в начале и конце
верно, а остальное нет.

ВЫБРАТЬ
   РегламентированныйПроизводственныйКалендарь.ДатаКалендаря КАК Период
ПОМЕСТИТЬ Дни
ИЗ
   РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
   РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &Дата1 И &Дата2
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовКонечныйОстаток) КАК СуммаВзаиморасчетовКонечныйОстаток,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Период КАК Период
ПОМЕСТИТЬ ПросрочкаДанные
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.ОстаткиИОбороты(
           &Дата1,
           &Дата2,
           День,
           ,
           ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности > 0
               И ДоговорКонтрагента.ВестиПоДокументамРасчетовСКонтрагентом = ИСТИНА
               И ДоговорКонтрагента.ВидВзаиморасчетов = &Консигнация
               И (ДоговорКонтрагента.ВидДоговора = &СПокупателем
                   ИЛИ ДоговорКонтрагента.ВидДоговора = &СКомиссионером)) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты
ГДЕ
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.УпрУчет
   И ВЫБОР
           КОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности), &Дата2, ДЕНЬ) <= 0
               ТОГДА ЛОЖЬ
           ИНАЧЕ ИСТИНА
       КОНЕЦ

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   Дни.Период КАК ПериодКалендарь,
   ПросрочкаДанные.Период КАК ПериодОстатков
ПОМЕСТИТЬ ПросрочкаСДублями
ИЗ
   ПросрочкаДанные КАК ПросрочкаДанные
       ЛЕВОЕ СОЕДИНЕНИЕ Дни КАК Дни
       ПО ПросрочкаДанные.Период <= Дни.Период
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ПросрочкаСДублями.ПериодКалендарь,
   МАКСИМУМ(ПросрочкаСДублями.ПериодОстатков) КАК ПериодОстатков
ПОМЕСТИТЬ ПросрочкаБезДублей
ИЗ
   ПросрочкаСДублями КАК ПросрочкаСДублями

СГРУППИРОВАТЬ ПО
   ПросрочкаСДублями.ПериодКалендарь
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ПросрочкаБезДублей.ПериодКалендарь КАК ПериодКалендарь,
   ПросрочкаДанные.СуммаВзаиморасчетовКонечныйОстаток КАК СуммаВзаиморасчетовКонечныйОстаток
ИЗ
   ПросрочкаБезДублей КАК ПросрочкаБезДублей
       ЛЕВОЕ СОЕДИНЕНИЕ ПросрочкаДанные КАК ПросрочкаДанные
       ПО ПросрочкаБезДублей.ПериодОстатков = ПросрочкаДанные.Период
ИТОГИ
   СУММА(СуммаВзаиморасчетовКонечныйОстаток)
ПО
   ПериодКалендарь
22 kn
 
23.12.11
12:46
Т.е в Дата1, Дата2(крайние даты) верно, в остальные дни значительно меньше
23 kn
 
23.12.11
13:32
вверх
24 kn
 
23.12.11
18:47
подниму тему
25 kn
 
04.01.12
16:29
Приветствую в Новом году, продолжаю конструировать запрос по просроченной ДЗ на каждый день
Вот такой вариан еще был, но что-то тоже не то
ВЫБРАТЬ
   РегламентированныйПроизводственныйКалендарь.ДатаКалендаря КАК Период
ПОМЕСТИТЬ Дни
ИЗ
   РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
   РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &Дата1 И &Дата2
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовКонечныйОстаток) КАК СуммаВзаиморасчетовКонечныйОстаток,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Период КАК Период,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом,
   ПРЕДСТАВЛЕНИЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом),
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента,
   ПРЕДСТАВЛЕНИЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента),
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент,
   ПРЕДСТАВЛЕНИЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент)
ПОМЕСТИТЬ ПросрочкаДанные
{ВЫБРАТЬ
   СуммаВзаиморасчетовКонечныйОстаток,
   Период,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент.*,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом.*}
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.ОстаткиИОбороты(
           &Дата1,
           &Дата2,
           Регистратор,
           ,
           ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности > 0
               И ДоговорКонтрагента.ВестиПоДокументамРасчетовСКонтрагентом = ИСТИНА
               И ДоговорКонтрагента.ВидВзаиморасчетов = &Консигнация
               И (ДоговорКонтрагента.ВидДоговора = &СПокупателем
                   ИЛИ ДоговорКонтрагента.ВидДоговора = &СКомиссионером)
               И ВЫБОР
                   КОГДА ДОБАВИТЬКДАТЕ(ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ЕСТЬNULL(ДокументРасчетовСКонтрагентом.Акция.ДопустимоеЧислоДнейЗадолженности, ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности)) < &Дата2
                       ТОГДА ИСТИНА
                   ИНАЧЕ ЛОЖЬ
               КОНЕЦ
               И УпрУчет) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   Дни.Период КАК ПериодКалендарь,
   ПросрочкаДанные.Период КАК ПериодОстатков
ПОМЕСТИТЬ ПросрочкаСДублями
ИЗ
   ПросрочкаДанные КАК ПросрочкаДанные
       ЛЕВОЕ СОЕДИНЕНИЕ Дни КАК Дни
       ПО (ВЫБОР
               КОГДА ДОБАВИТЬКДАТЕ(ПросрочкаДанные.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ЕСТЬNULL(ПросрочкаДанные.ДокументРасчетовСКонтрагентом.Акция.ДопустимоеЧислоДнейЗадолженности, ПросрочкаДанные.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности)) < КОНЕЦПЕРИОДА(Дни.Период, ДЕНЬ)
                   ТОГДА ИСТИНА
               ИНАЧЕ ЛОЖЬ
           КОНЕЦ)
           И (НАЧАЛОПЕРИОДА(ПросрочкаДанные.Период, ДЕНЬ) <= Дни.Период)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ПросрочкаСДублями.ПериодКалендарь,
   МАКСИМУМ(ПросрочкаСДублями.ПериодОстатков) КАК ПериодОстатков
ПОМЕСТИТЬ ПросрочкаБезДублей
ИЗ
   ПросрочкаСДублями КАК ПросрочкаСДублями

СГРУППИРОВАТЬ ПО
   ПросрочкаСДублями.ПериодКалендарь
;

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

СГРУППИРОВАТЬ ПО
   ПросрочкаБезДублей.ПериодКалендарь,
   ПросрочкаДанные.Контрагент,
   ПросрочкаДанные.ДокументРасчетовСКонтрагентом
ИТОГИ
   СУММА(Долг)
ПО
   ПериодКалендарь,
   Контрагент,
   ДокументРасчетовСКонтрагентом

Подсажите что не так, как проавильно составить запрос, очень надеюсь на вашу помощь.
26 kn
 
04.01.12
16:53
Результаты подзапросов такие.
В первом запросе получается таблица дат
01.01.11
02.01.11
03.01.11
04.01.11
Результат второго и третьего такая таблица
01.01.11  01.01.11 + время
02.01.11  01.01.11 + время
03.01.11  01.01.11 + время
04.01.11  04.01.11 + время
Т.е получается каждому дню сопоставляется максимальный момент времени(или все таки до 1 секунды?), на который были остатки
В последнем запросе ищется остаток на это время.И если бы условие на просроченность
КОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности), &Дата2, ДЕНЬ) <= 0
               ТОГДА ЛОЖЬ
           ИНАЧЕ ИСТИНА
не нужно было бы то наверное получился бы остаток при развороте ВТ по дням, а так видимо нужно разворачивать до регистратора?И как тогда соединять таблицы в последнем запросе?
27 kn
 
04.01.12
19:20
Получилось в итоге так(сходится с отчетом по кредитной линии)

ВЫБРАТЬ
   РегламентированныйПроизводственныйКалендарь.ДатаКалендаря КАК Период
ПОМЕСТИТЬ Дни
ИЗ
   РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
   РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &Дата1 И &Дата2
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   СУММА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.СуммаВзаиморасчетовКонечныйОстаток) КАК СуммаВзаиморасчетовКонечныйОстаток,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Период КАК Период
ПОМЕСТИТЬ ПросрочкаДанные
{ВЫБРАТЬ
   СуммаВзаиморасчетовКонечныйОстаток,
   Период,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.Контрагент.*,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты.ДокументРасчетовСКонтрагентом.*}
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.ОстаткиИОбороты(
           &Дата1,
           &Дата2,
           Регистратор,
           ,
           ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности > 0
               И ДоговорКонтрагента.ВестиПоДокументамРасчетовСКонтрагентом = ИСТИНА
               И ДоговорКонтрагента.ВидВзаиморасчетов = &Консигнация
               И (ДоговорКонтрагента.ВидДоговора = &СПокупателем
                   ИЛИ ДоговорКонтрагента.ВидДоговора = &СКомиссионером)
               И УпрУчет
               И ВЫБОР
                   КОГДА ДОБАВИТЬКДАТЕ(ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ,  ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности) < &Дата2
                       ТОГДА ИСТИНА
                   ИНАЧЕ ЛОЖЬ
               КОНЕЦ) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстаткиИОбороты

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   Дни.Период КАК ПериодКалендарь,
   ПросрочкаДанные.Период КАК ПериодОстатков
ПОМЕСТИТЬ ПросрочкаСДублями
ИЗ
   Дни КАК Дни
       ЛЕВОЕ СОЕДИНЕНИЕ ПросрочкаДанные КАК ПросрочкаДанные
       ПО (НАЧАЛОПЕРИОДА(ПросрочкаДанные.Период, ДЕНЬ) <= Дни.Период)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ПросрочкаСДублями.ПериодКалендарь,
   МАКСИМУМ(ПросрочкаСДублями.ПериодОстатков) КАК ПериодОстатков
ПОМЕСТИТЬ ПросрочкаБезДублей
ИЗ
   ПросрочкаСДублями КАК ПросрочкаСДублями

СГРУППИРОВАТЬ ПО
   ПросрочкаСДублями.ПериодКалендарь
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ПросрочкаБезДублей.ПериодКалендарь КАК ПериодКалендарь,
   ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОбороты.СуммаВзаиморасчетовОборот КАК СуммаВзаиморасчетовОборот
ИЗ
   ПросрочкаБезДублей КАК ПросрочкаБезДублей
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.Обороты(
               ,
               &Дата2,
               Регистратор,
               ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности > 0
                   И ДоговорКонтрагента.ВестиПоДокументамРасчетовСКонтрагентом = ИСТИНА
                   И ДоговорКонтрагента.ВидВзаиморасчетов = &Консигнация
                   И (ДоговорКонтрагента.ВидДоговора = &СПокупателем
                       ИЛИ ДоговорКонтрагента.ВидДоговора = &СКомиссионером)
                   И УпрУчет) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОбороты
       ПО ПросрочкаБезДублей.ПериодОстатков >= ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОбороты.Период
           И (ВЫБОР
               КОГДА ДОБАВИТЬКДАТЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОбороты.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОбороты.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности) <= КОНЕЦПЕРИОДА(ПросрочкаБезДублей.ПериодКалендарь, ДЕНЬ)
                   ТОГДА ИСТИНА
               ИНАЧЕ ЛОЖЬ
           КОНЕЦ)
ИТОГИ
   СУММА(СуммаВзаиморасчетовОборот)
ПО
   ПериодКалендарь
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс