Имя: Пароль:
1C
1С v8
Подскажие как посчитать частоту повторных продаж
0 mvgfirst
 
05.06.13
15:50
Поставили задачу. Рассчитать частоту повторных продаж (они же повторные покупки) за период времени.

Посидел подумал... понял что количество повторных продаж посчитать смогу. Даже одним запросом....

А вот частоту .... не смог придумать ни чего ...
кроме перебора документов.
1 andreymongol82
 
05.06.13
15:54
Ну так частоту можно определить, как отношение единичного (день, минута, месяц)отрезка времени к количеству? То есть посчитать скока дней, и тупо на них разделить количество
2 ИС-2
 
naïve
05.06.13
15:56
(1) согласен. Но надо спрашивать у руководства что для них есть частота
3 andreymongol82
 
05.06.13
15:58
(2) Точняк. Мало ли что в голове у них крутится :)
4 Ranger_83
 
05.06.13
16:01
Частота в строгом смысле-это количество покупок на единицу времени
5 mvgfirst
 
05.06.13
16:01
Ну да... именно так и собираюсь считать.
Но как посчитать сколько дней? Ведь у каждого контрагент продажи идут в разные дни.

Я уже для себя определил не очень красивый вариант.
1. Отбираю запросом всек контрагентов у которых продаж было больше 1
2. по каждому отбираю документы продажи..
2.1. по выборке прохожу и считаю количества дней, и складываю в табличку
3. по таблице считаю среднее значение количества дней. Таким образом и получаю среднюю частоту.

Однако же - этот вариант не есть красивый... и в отчет это не добавить... поэтому и хотел найти более элегантное решение... возможно через СКД
6 mvgfirst
 
05.06.13
16:05
(4) А это мысль....
Надо ее подумать хорошенечко.
Может и подойдет
7 Eugeneer
 
05.06.13
16:08
один запрос
группировки контрагент документ товар

КОЛИЧЕСТВО РАЗНЫЕ(Количество.ДокументПродажи)
КОЛИЧЕСТВО РАЗНЫЕ(Продажи.Товар)

Получаем по клиентам в зависимости от группировок - количество доков отгрузки, количество покупки одинх и тех же товаров.
8 Eugeneer
 
05.06.13
16:09
еще можно и период тоже в количество впихнуть
9 Eugeneer
 
05.06.13
16:09
тьфу короче там различные - разберешся в синтаксисе
10 mvgfirst
 
05.06.13
16:10
(7) Постановщиков задачи - вообще пока не интересует количество покупок одинаковых товаров.
И опять же - это всего лишь количество - а как посчитать длинну в днях межу покупками?
11 Ranger_83
 
05.06.13
16:11
(10) бери по средней
12 mvgfirst
 
05.06.13
16:12
(4) Быстренько обдумав мысль о ДлиннаПериода/КоличествоПокупок  - пришел к выводу что он (коэффициент) покажет только усреднненную частоту покупок за период.

Исходная задачи, все-таки несколько глубже. Если 90% клиентов совершаю вторую покупку через месяц, а третью через два месяца
то средняя частота покупки будет 1,5месяца. Если же делить год (искомый период) на 3 (количестов покупо) получаем 4 месяца.

Вот и весь расклад.
13 mvgfirst
 
05.06.13
16:17
Вообщем уточняя (0) могу сказать:
Нужно посчитать среднее время между повторными покупками. Это уже не частота... хотя очень похожее понятие.
Т.е. нужно получить длины отрезков времени между покупками одного клиента. Посчитать среднюю по ним. А потом среднюю по результатам всех клиентов. (ну или группы, в зависимости от отбора)
14 Fragster
 
гуру
05.06.13
16:18
(0) покажи им XYZ-анализ в УТ
15 Eugeneer
 
05.06.13
16:19
Соединить с календарем. получить промежутки. получить между ними разности дней. и считать что хоч.
16 Mikeware
 
05.06.13
16:19
(13) у тебя в школе по математике двойка была?
17 Ranger_83
 
05.06.13
16:22
(13) тебе нужен период покупок,период=1/частоту
18 Ranger_83
 
05.06.13
16:22
а частота=1/период)))
19 mvgfirst
 
05.06.13
16:44
(18) Я выше объяснял нужна средняя длительность между покупками.
20 mvgfirst
 
05.06.13
16:46
Объясняю еще раз только медленно:
имеем покупателя который совершил 1-ю покупку в январе
вторую (для ровного счета) через 30 дней
третью еще через 30 дней
Больше покупок не делал до конца года

Получается в среднем 3 покупки за год И если пользоваться твоей формулой то интервалы между покупками получаются 120 дней.
Хотя в условии задачи видно что покупатель делал покупки с интервалом в 30 дней.
21 mvgfirst
 
05.06.13
16:48
(15) Можно поподробнее что нужно соединить с календарем.
Я вот никак не могу понять.
22 mvgfirst
 
05.06.13
16:58
(16) А что в школе на математике объясняют как получить из таблицы длины отрезков времени в одном запросе. Если да - то такой математики у меня вообще в школе небыло...
23 Серго62
 
05.06.13
16:58
Может быть тебе надо определить количество дней между датой первой покупки и датой последней покупки, а потом поделить на количество покупок в этом периоде? Тогда выбирай запросом минимальную и максимальную дату с группировкой по контрагенту.
24 Серго62
 
05.06.13
17:07
Примерно как то так
ВЫБРАТЬ
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслуг.Дата) КАК Количество,
   МАКСИМУМ(РеализацияТоваровУслуг.Дата) КАК ДатаМакс,
   МИНИМУМ(РеализацияТоваровУслуг.Дата) КАК ДатаМин,
   РеализацияТоваровУслуг.Контрагент
ИЗ
   Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг

СГРУППИРОВАТЬ ПО
   РеализацияТоваровУслуг.Контрагент
25 mistеr
 
05.06.13
19:00
(20) А если бы он сделал четвертую покупку под конец года? Результат был бы другим?

Постановку еще нужно уточнять.
26 mistеr
 
05.06.13
19:07
(25) Например. Найти все покупки данного покупателя, их количество, дату первой и последней в заданном периоде. Интервал между первой и последней в днях поделить на количество.

Но то ли это, что хочет твое руководство - хз.
27 Eugeneer
 
05.06.13
19:13
(26) отдай под заказ на сторону - мы поможем сделать многофункциональный отчет. контакты в нике.
28 mistеr
 
05.06.13
19:26
(27) Это не мне нужно :)