gifts2017

Ведомость по взаиморасчетам (общая, текущая, просроченная задолженность по календарным и рабочим дням + документы регистраторы)

Опубликовал macsol (macsol) в раздел Обработки - Обработка документов

Во второй версии исправлены ошибки, ускорено формирование отчета при установленных отборах, изменился способ указания отсрочки платежа. (описание имеется в справке отчета).
О третьей версии.
При использовании второй версии столкнулся с тем, что у большинства пользователей вылетала ошибка SQL  256 таблиц. На предприятии права настроены гибко, а многочисленные роли и группы пользователей "раздувают" конечный запрос к серверу. Пришлось переписывать запрос учитывая это. В результате он отрабатывает в два раза быстрее предыдущего. Добавлены общие итоги по всем организациям.
  В четвертой версии можно считать отсрочку платежа по рабочим и календарным  дням,
добавлена возможность менять алгоритм отчета  - учитывать или не учитывать "Документы расчетов".  
Очень благодарен за отзывы, а особенно за объективную критику. (подробная инструкция есть в справке)

Отчет не требует изменения типовой конфигурации и дополнительных обработок для сохранения информации о количестве дней отсрочки платежа. Установка не требует знания конфигуратора, обновления конфигураций не влияют на работу отчета.

 

 Отчет выводит информацию о текущуей и просроченной задолженности на конечную дату указанного интервала, в разрезе контнтрагентов, договоров, документов расчетов, сделок.
 Расчет текущей и просроченной задолженностей производится из данных, указанных в договоре контрагента.
 В настройках отчета можно указать общее значение календарных дней  отсрочки . Оно будет распространяться на все договора, 
 в которых отсрочка не указана явно (по умолчанию 30 календарных дней).
 
Для того чтобы явно указать число календарных дней отсрочки, нужно:
 1 создать свойство  "Отсрочка по календарным дням" в справочнике "ДоговорыКонтрагентов". (название можно изменить, для этого новое название нужно указать в настройках отчета).
 2 установить для  данного свойства тип число (10,0) 
 3 ввести данные об отсрочках в свойства нужных договоров.
 4 выбрать интересующий интервал времени,  установить нужные отборы ...  нажать "Сформировать"

 Для того чтобы явно указать число рабочих дней отсрочки, нужно:
 1 создать свойство  "Отсрочка по рабочим дням" в справочнике "ДоговорыКонтрагентов". (название можно изменить, для этого новое название нужно указать в настройках отчета).
 2 установить для  данного свойства тип число (10,0) 
 3 ввести данные об отсрочках в свойства нужных договоров.
 4 выбрать интересующий интервал времени,  установить нужные отборы ...  нажать "Сформировать"
 При расчете отсрочки по рабочим дням, система берет данные из производственного календаря. Если календарь не заполнен на дату отсрочки - система будет считать эту задолженность по
 календарным дням. 

 ВНИМАНИЕ  в случае указания в характеристике "Договора контрагента", сразу двух способов расчета отсрочки (по календарным дням, и по рабочим). Система рассчитает данные два раза, что
 приведет к двойной записи в отчете и искажению информации.  
 В отчет добавлена возможность получать данные без учета "Документов расчтетов". Флаг можно поменять в настройках отчета.
 Названия характеристик справочника "Договоры контрагентов" можно менять, новые названия необходимо указать в настройках отчета.

 В отчет попадают данные взаиморасчетов за указанный интервал !!!
 Если документы сформировавшие остаток на дату отчета не входят в этот интервал, задолженность попадает в поле "Регистратор в предыдущем периоде"  и ей присваивается ата начала интервала - 1 день, отнесение задолженности на текущую и просроченную будет расчитываться исходя из этой даты. Для того чтобы получить полную информацию по документам сформировавшим задолженность, нужно уменьшить начальную границу интервала отчета.
 В отчете могут использоваться любые доступные отборы если поле по которому установлен отбор, присутствует на закладке настроек "Выбранные поля" и отмечено флагом.

 

Скачать файлы

Наименование Файл Версия Размер
- 197
.1246617838 53,31Kb
25.09.09
197
.1246617838 53,31Kb Скачать
- 30
.1246967362 54,51Kb
25.09.09
30
.1246967362 54,51Kb Скачать
- 133
.1247057525 60,61Kb
25.09.09
133
.1247057525 60,61Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Z-z-z (ZLENKO) 23.06.09 17:06
"При реализации возникла проблема"
А в чем проблема то ? В конфигурацию добавить 1 строчку кода и сделать доступным количество дней отсрочки.
2. macsol (macsol) 23.06.09 18:09
(1) А проблема в том, что у меня в базе 7 организаций, из них 3 - в разных городах России, а я один со всем этим хозяйством. 1-сники штампуют обновления каждый месяц. Если я буду по любому случаю в конфу "строчки добавлять", то просто не справлюсь один с очередным обновлением. Я придерживаюсь такого мнения, что менять конфу нужно только в случае крайней необходимости. Если можно обойти, нужно обходить.
3. Z-z-z (ZLENKO) 23.06.09 18:15
А можно увидеть в отчете по каким документам просрочено и на сколько дней просрочено ?
4. Евгений (wirg) 23.06.09 20:21
Я уже таких кучу на сайте видел и зачем такой отчет, если он расшифровку по документам не показывает? Советую поучится или посмотреть подобное на сайте, чем выкладывать такое.
5. Малышко В.Н. (molot) 24.06.09 01:44
"При реализации возникла проблема"

Кстати, а чем "Максимальное число дней отсрочки" в договоре не устраивает? В 23-м релизе - доступно и для договоров с поставщиком. А до этого можно было и внешней обработкой заполнять...
6. macsol (macsol) 24.06.09 08:40
(5) Не успеваю угнаться за новыми релизами, 6 дней назад обновлялся только.
"Максимальное число дней отсрочки" в типовой конфигурации доступно только при ведении взаиморасчетов по документам расчетов. У нас не все договора ведутся по документам расчетов. Внешней обработкой заполнить можно, только в типовой форме значений не будет видно, придется выводить в этой обработке. А самый главный минус - человеческий фактор. Придется обучать менеджеров пользоваться обработкой и отчетом.
7. macsol (macsol) 24.06.09 08:49
(3)В этом отчете нельзя. Я писал что у нас договора смешаны. Запрос строился по регистру "Взаиморасчеты с контрагентами". Если у вас все договора ведутся по документам расчетов то можно переделать запрос по регистру "Взаиморасчеты с контрагентами по документам расчетов" и дернуть нужные данные. У меня такой задачи не стояло.
8. Z-z-z (ZLENKO) 24.06.09 09:09
(7) У нас документы расчетов вообще не используются, поэтому я написал отчет, который выдает данные в независимости от использования документов расчетов. По личному опыту если выдается сумма без расшифровки - возникает много вопросов типа "Почему тут такая сумма ?!".
9. macsol (macsol) 24.06.09 09:34
(8) Если документы расчетов не используются можно считать что платежи их закрывают по порядку. В моем случае все смешано, поэтому выбрать какой-то один способ (по порядку или по док.расчетов с контр) не правильно. Когда у манагеров возникают вопросы, они ищут на них ответы в типовых отчетах.
10. Александр Медведев (anig99) 24.06.09 09:37
Вот-вот. Точно как (8) Возьми мою обработку, глянь. А число дней отсрочки там вычисляется отдельно, можно исправить на твой вариант со свойствами. И расшифровки там есть. Скоро обновлю отчет - пару функций добавлю. Оценки не ставлю ибо особо плохого в этой обработке не вижу, но и новизны никакой.
11. Z-z-z (ZLENKO) 24.06.09 09:39
(9) "ищут на них ответы в типовых отчетах"

Ну вот, например, на вопрос "А за какие такие отгрузки у клиента просрочена оплата на вот эту сумму что показывает отчет ?" в каких типовых отчетах и как они ищут ответ ? Вручную отбирают последние отгрузки что ли ?
12. Z-z-z (ZLENKO) 24.06.09 09:41
(10) "Оценки не ставлю ибо особо плохого в этой обработке не вижу, но и новизны никакой."

Аналогично.
13. macsol (macsol) 24.06.09 09:48
Да пофиг оценки, интересно послушать мнения. Если кто знает, пролейте свет.
Какое выражение в запросе выполниться быстрее :
a >= b
Не a<b
14. macsol (macsol) 24.06.09 10:56
(11) данный отчет был написан в рамках поставленной задачи, попросили бы показать документы, были бы документы. Я выложил отчет на этом сайте, для того чтоб народ его посмотрел, написал отзывы по поводу запроса, возможно что - то взял для себя. Мне он показался интересным, именно способом получения дней отсрочки, все остальное в нем ерунда. И вообще для меня этот сайт не место откуда можно скатать готовые решения, а возможность познакомиться с новыми идеями.
15. Z-z-z (ZLENKO) 24.06.09 11:29
(14) С другой стороны, если каждый начнет выкладывать сюда все свои запросы или процедуры - раздел "Программы" превратится в помойку. Для обсуждения приемов программирования есть раздел "Форум" и тематические форумы на других сайтах.
16. Малышко В.Н. (molot) 24.06.09 13:25
(13) второе.

Только вряд ли ты этим че-то оптимизируешь :)
17. Александр Медведев (anig99) 29.06.09 13:56
Код закрыт - это минус. Производительность по сравнению с моей обработкой вроде бы хуже. Пока тестировал на 1 клиенте - где-то раз в 10 эта обработка медленнее. Сейчас буду пробывать на группе клиентов. Но для манагеров часто важен 1 клиент.
18. Александр Медведев (anig99) 29.06.09 14:14
Так, кажется, просто при заполнении данных не делается предварительный отбор по контрагентам. Сделай примерно как я. Сначала через СКД формируется список контрагентов, потом его в таблицу и запихивается как условие в твою обработку. Существенно должно сократить срок выполнения на одиночных клиентах.
19. Александр Медведев (anig99) 29.06.09 14:15
Да... на множестве клиентов получилось быстрее. Но вот достоверность данных надо тоже проверить.
20. Александр Медведев (anig99) 29.06.09 14:20
А что за 2 скриншот? На интервалы не похоже.
21. macsol (macsol) 29.06.09 16:21
(20) вывод таблицей по строки - контрагенты
колонки - отсрочка платежа.
Просто хотел показать что по интервалам возможно вывести ( вместо отсрочки платежа вставить планируемую дату отсрочки)
(18) Дорабатывать отчет для предварительного отбора по контрагентам, смысла не вижу. (так как он строится в разрезе договоров, контрагентов, организаций, сделок, договоров расчетов). А писать перенос отборов из компоновки в запрос не хочу.
22. macsol (macsol) 30.06.09 11:27
(18) Я реализовал предварительный отбор, который ускоряет работу запроса при установке отборов. При малых значениях выборки, ускорение впечатляет. Но эту версию не выкладываю.
23. Z-z-z (ZLENKO) 01.07.09 07:33
(19) Проверил отчет на демо базе конфигурации "Управление торговлей".

Отчет работает неправильно:
- общая сумма задолженности всех контрагентов не соответствует отчету "Ведомость по взаиморасчетам с контрагентами", а должна быть одинаковая;
- есть ошибка в логике отчета - в колонку с суммой просроченной задолженности попадают все суммы, а обычно речь идет только об отсрочке за отгруженный товар.
24. Анна Кузнецова (Nefertary) 01.07.09 10:44
"Создается свойство договора "Отсрочка платежа", в нем по порядку добавляются знаечения свойств 1,2,3, 4, 5, 6... Числа должны идти по порядку, и заканчиваться числом равным количеству дней максимальной отсрочки."
Можно создать свойство договора "Отсрочка платежа" и задать ему тип "Число".
25. macsol (macsol) 03.07.09 14:05
(23) спасибо за тестирование, замечание справедливо. Я перемудрил с запросом (некоторые данные задваивались). Во второй версии исправил.
По поводу просрочки я не согласен. Отчетом пользуются не только менеджеры, но и снабженцы, для них просрочка - платежки не закрытые поступлениями к примеру, или корректировкой одна задолженность на другую кидается ....ситуаций море. К тому же, имеется гибкий механизм отборов (пример контрагенты в группе покупатели + договор вид с покупателем....)
26. macsol (macsol) 03.07.09 14:10
(24) Решая некоторые задачи, иногда кажется что простых решений нет, по-этому и спрятаны эти решения прямо перед носом тех кто их не замечает.
В общем - огромное спасибо и респект. Во второй версии отчета использовал числовой тип.
27. Анна Кузнецова (Nefertary) 03.07.09 14:45
Дефолтовое название характеристики лучше другое поставить
28. macsol (macsol) 03.07.09 14:58
(27) аФтор начальник отдела продаж.
29. Александр Медведев (anig99) 09.07.09 15:18
чего-то последняя версия какая-то не такая стала. Во первых - странное поведение с датами отчета.

" Если документы сформировавшие остаток на дату отчета не входят в этот интервал, отчет присваивает им дату ДАТА = (Дата начала интервала - 1 день) отнесение задолженности
на текущую и просроченную будет расчитываться исходя из этой даты." - честно абракадабра какая-то. Т.е. получается, что если долг не вошел в этот период, то я его не увижу? Фигня какая-то... должен сидеть и подбирать период... Имхо изначально отчет лучше был.
30. macsol (macsol) 09.07.09 15:25
(29) Извиняюсь за костоязычность. Попробую объяснить заново. Отчет выводит задолженность на конец последней даты интервала. Общую задолженность отчет покажет в любом случае. В интервал могут не попасть даты документов - образовавших эту задолженность. Отчет может не показать документ регистратор, и если он его не находит, то присваивает ему дату КонецПериода - 1.
Это сделано для ускорения, кому нужна вся инфа, уменьшат начальную дату интервала.
31. Александр Медведев (anig99) 09.07.09 15:50
Просто получается, что если я не угадаю с периодом, то просроченный долг увижу неверно. Это очень плохо.
32. Александр Медведев (anig99) 09.07.09 15:53
Попробуй позапускай у себя мой новый запрос. Если не будет проблем с 256 таблицами, то могу помочь переделать его под документы расчета. Просто без всяких ограничений нижней границы периодов производительность выше твоего первоначального отчета, но ниже текущего. Но ведь в текущем отчете получился прирост скорости за счет уменьшения его точности.
33. macsol (macsol) 09.07.09 16:13
(32)Уже посмотрел, впечатление хорошее. Есть недочеты, я тебе о них написал.
34. Anna Babynina (orsprog) 20.10.11 08:18
Да ладно!!! вполне сносный отчет...
35. John Smith (AndrewAks) 08.08.12 19:18
Скачал v4, сконвертировал под 8.2, при запуске получил сообщение "Демонстрационный срок использования отчета вышел.". Отчёт платный? И если да, то почему об этом нигде не сказано?
36. Ягр Еромир (trum86) 18.11.12 19:19
(33) macsol, при запуске пишет "Демонстрационный срок использования отчета вышел.", какой еще демонстрационный срок? Только скачал..
37. Александр Завалишин (gkstrade) 13.05.15 15:38
То же самое: "Скачал v4, сконвертировал под 8.2, при запуске получил сообщение "Демонстрационный срок использования отчета вышел.""

{ВнешнийОтчет.ВедомостьПоВзаиморасчетамТекущимПросроченным.МодульОбъекта(737)}: Ошибка при вызове метода контекста (Вывести)
по причине:
Ошибка вывода результата
по причине:
Ошибка при выводе результата
по причине:
Ошибка получения данных
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Ошибка при исполнении запроса набора данных
по причине:
{(94, 21)}: Ошибка обработки представления "РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.ОстаткиИОбороты:Неправильно задан период: начало периода должно быть меньше или равно окончанию"
ЛЕВОЕ СОЕДИНЕНИЕ <<?>>РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.ОстаткиИОбороты(&ДатаНачала, &ДатаОкончания, Регистратор, , ДоговорКонтрагента.ВестиПоДокументамРасчетовСКонтрагентом) КАК Обороты