0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 38
|
||||||
1 | ||||||
Отчет по простроченным долгам24.10.2013, 22:24. Показов 1776. Ответов 11
Метки нет (Все метки)
Платформа 8.2.
Конфигурация своя. Режим - неуправляемый. Мною был создан отчет по простроченным долгам на СКД. Запрос работает и выдает правильный результат, но он получился крайне странным и запутанным. Прошу помочь мне идеями по оптимизации и упрощению данного запроса. Буду очень благодарна за помощь. Отчет должен отображать все неоплаченные долги клиентов, которые простроченны на количество дней, передаваемое параметром &КолДней, в сравнении с текущей датой, передаваемое параметром &Период. Долги считаються по документу ЗаказПокупателя. Простроченным долг считается если: 1. (Дата ЗаказПокупателя < Текущая Дата - &КолДней) и (в базе нет Документа ОплатаПокупателя, ссылающегося на этот ЗаказПокупателя) и (в базе нет Документа ВозвратТовараОтПокупателя, ссылающегося на этот ЗаказПокупателя) или 2. (Дата ЗаказПокупателя < Текущая Дата - &КолДней) и (в базе есть Документ ОплатаПокупателя, ссылающегося на этот ЗаказПокупателя, но сумма ОплатыПокупателя < суммы ЗаказаПокупателя) и (в базе нет Документа ВозвратТовараОтПокупателя, ссылающегося на этот ЗаказПокупателя) или 3. (Дата ЗаказПокупателя < Текущая Дата - &КолДней) и (в базе нет Документа ОплатаПокупателя, ссылающегося на этот ЗаказПокупателя) и (в базе есть Документ ВозвратТовараОтПокупателя, ссылающийся на этот ЗаказПокупателя, но сумма ВозвратаТовараОтПокупателя < суммы ЗаказаПокупателя) или 4. (Дата ЗаказПокупателя < Текущая Дата - &КолДней) и (в базе есть Документ ОплатаПокупателя, ссылающегося на этот ЗаказПокупателя, но сумма ОплатыПокупателя < суммы ЗаказаПокупателя) и (в базе есть Документ ВозвратТовараОтПокупателя, ссылающийся на этот ЗаказПокупателя, но сумма ВозвратаТовараОтПокупателя < суммы ЗаказаПокупателя) и (сумма ОплатыПокупателя + сумма ВозвратаТовараОтПокупателя < суммы ЗаказаПокупателя) Вот сам текст запроса.
0
|
24.10.2013, 22:24 | |
Ответы с готовыми решениями:
11
Отфильтровать базу пользователей по оплаченным долгам Отчет СКД. Вывод нескольких таблиц в отчет из разных запросов. Отчет РАУЗ переделать в отчет с партионным учетом Отчет в C# |
900 / 877 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
|
|
25.10.2013, 09:08 | 2 |
Собирать данные по документам не правильно. Что регистров для учета взаиморасчетов в вашей конфигурации не предусмотрено?
0
|
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 38
|
|
25.10.2013, 12:14 [ТС] | 3 |
Данные брала из документов, а не из регистров, так как мне была необходима дата каждого заказ.
Также читала в интернете, что в 8.2 разница в корости выполнения запросов по регистам и по документам небольшая. Поэтому решила не создавать лишний громоздкий регистр куда писалась бы три разных по стуктуре документа. Тем более что ни общие Обороты ни Остатки меня по ним не интересуют.
0
|
286 / 186 / 18
Регистрация: 20.02.2012
Сообщений: 925
|
|
25.10.2013, 12:18 | 4 |
0
|
900 / 877 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
|
|
25.10.2013, 12:20 | 5 |
Для решения вашей задачи достаточно регистра остатков с одним измерением Заказ.
А можно ссылку на эту несусветную чушь? Подумайте сами например у Вас в системе 1000000 заказов и из них 5 неоплаченных. Ваш запрос будет перебирать весь миллион записей, а запрос к таблице остатков просто получит 5 записей и все. В вашем случае - это ошибка проектирования. Делайте регистр.
1
|
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 38
|
|
25.10.2013, 12:26 [ТС] | 6 |
Регистр взаиморасчетов существует, но из него получаю общие Остатки и Обороты по взаиморассчетам с контрагентами.
SonicQ и Fenomen, подскажите, пожалуйста, как из регистра взаиморассчетов (измерение - контрагент, ресурс - сумма), в котором три регистратора (ЗаказПокупателя, ОплатаПокупателя и ВозвратТовараОтПокупателя) получить простроченный долг а не весь, если учесть, что оплата производиться по факту и может иметь отстрочку во времени?
0
|
900 / 877 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
|
|
25.10.2013, 12:36 | 7 |
Для оптимальности нужно измерение Заказ.
Выбираете все неоплаченные заказы, и накладываете свое условие
1
|
286 / 186 / 18
Регистрация: 20.02.2012
Сообщений: 925
|
||||||
25.10.2013, 12:47 | 8 | |||||
решение данного вопрос на прямую зависит от построенной логики ведения учета. Например у меня, чтобы получить задолженность используется такой запрос
1
|
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 38
|
|
25.10.2013, 13:09 [ТС] | 9 |
Fenomen, Скажите, пожалуйста, как выбрать из регистра оплаченный заказ, если оплат по одному заказу может быть несколько (частичная оплата), а также может быть возврат (частичный)?
Миллион заказов - это не в нашем случае
0
|
900 / 877 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
|
|
25.10.2013, 13:20 | 10 |
По оплаченному заказу не будет остатка.
zironka, Вы пишите: Я Вам и предлагаю выбирать не оплаченные заказы, по ним в регистре будет остаток. Если Вы хотите получить информацию по всем просроченным оплатам, а не только по тем которые еще не оплачены, то такая задача также решается с помощью регистра довольно просто. Вы делаете запрос к таблице оборотов с периодичность до регистратора. Для документов формирующих движения по оплате, получаете их дату. Группируете по заказу, для даты оплаты используете функцию Максимум. Накладываете условие по колву дней просрочки. Таким образом у Вас идет обращение к одной таблице и один раз. Добавлено через 2 минуты Ну так время идет заказы накапливаются! Да и кто не стремится увеличить их количество. Хорошо созданная система, не должна быть чувствительна к объемам данных. Это не всегда возможно, но к этому нужно стремится.
1
|
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 38
|
|
25.10.2013, 13:24 [ТС] | 11 |
Я с вами согласна, поэтому и создала эту тему. Остальные отчеты в конфигурации дела по регистрам, а этот у меня иначе не получался.
Добавлено через 1 минуту За совет большое спасибо. Сегодня попробую переделать. Надеюсь, получиться. О результате отпишусь.
0
|
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 38
|
||||||
05.11.2013, 11:18 [ТС] | 12 | |||||
Большое спасибо за совет.
В результате в регистр ВзаиморасчетыСПокупателями добавила измерение НомерЗаказа (Тип Документ-Ссылка на ЗаказПокупателя). Запрос для отчета по простроченным долгам получился очень кратким.
0
|
05.11.2013, 11:18 | |
05.11.2013, 11:18 | |
Помогаю со студенческими работами здесь
12
Отчет в БД Отчет Отчет Отчет Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |