|
|
РС запрос определить "ДатаПо" |
☑ |
|
0
spiller26
29.05.13
✎
09:44
|
Есть РС самописный
"_ИсторияМенеджеров" (переодический - в пределах дня)
Измерения - "Контрагент" (Спр.Контрагенты)
Ресурс - "Менеджер" (Спр.Пользователи)
В него записывается с какого момента времени у "Контрагента" меняется "Менеджер"
Записи в РС:
01.01.2013 - ООО"РК" - Пупкин П.П.
02.05.2013 - ООО"РК" - Иванов И.И.
04.05.2013 - ООО"РК" - Сидоров С.С.
09.05.2013 - ООО"РК" - Пупкин П.П.
Не могу в запросе вытащить даты прекращения действия "Менеджера" для "Контрагента", т.е. нужна примерно такая таблица на выходе (ДатаН, ДатаК):
------------------------------------------------
ДатаС ДатаПо Контрагент Менеджер
------------------------------------------------
01.01.2013 - 02.05.2013 - ООО"РК" - Пупкин П.П.
02.05.2013 - 04.05.2013 - ООО"РК" - Иванов И.И.
04.05.2013 - 09.05.2013 - ООО"РК" - Сидоров С.С.
09.05.2013 - ДатаК - ООО"РК" - Пупкин П.П.
Помогите, голова кипит уже!
|
|
|
1
Defender aka LINN
29.05.13
✎
09:49
|
соедини регистр с ним же
|
|
|
2
spiller26
29.05.13
✎
09:52
|
(1) соединить по какому условию?
|
|
|
3
Defender aka LINN
29.05.13
✎
09:58
|
|
|
|
4
эцп
29.05.13
✎
11:09
|
(2)
ВЫБРАТЬ
ВТA.Контрагент КАК Контрагент,
ВТA.Менеджер КАК Менеджер,
ВТA.Дата КАК ДатаС,
ДОБАВИТЬКДАТЕ(МИНИМУМ(ЕСТЬNULL(ВТБ.Дата, ДОБАВИТЬКДАТЕ(&КонецПериода, СЕКУНДА, 1))), ДЕНЬ, -1) КАК ДатаПо
ИЗ
ВТМояТаблица КАК ВТA
ЛЕВОЕ СОЕДИНЕНИЕ ВТМояТаблица КАК ВТБ
ПО ВТA.Контрагент = ВТБ.Контрагент
И ВТA.Менеджер = ВТБ.Менеджер
И ВТA.Дата < ВТБ.Дата
СГРУППИРОВАТЬ ПО
ВТA.Проект,
ВТA.Удостоверение,
ВТA.Дата
|
|
|
5
эцп
29.05.13
✎
11:11
|
СГРУППИРОВАТЬ ПО
ВТA.Контрагент,
ВТA.Менеджер,
ВТA.Дата
|
|
|
6
spiller26
29.05.13
✎
11:13
|
(4) какие данные в "ВТМояТаблица" и "ВТА"?
|
|
|
7
spiller26
29.05.13
✎
11:22
|
(6) разобрался где что
|
|
|
8
spiller26
29.05.13
✎
11:25
|
(4) Жесть конечно, просто минусовать дату :)
|
|
|
9
spiller26
29.05.13
✎
11:30
|
(4,5)
ВЫБРАТЬ
ВТA.Контрагент КАК Контрагент,
ВТA.Менеджер КАК Менеджер,
ВТA.Дата КАК ДатаС,
ДОБАВИТЬКДАТЕ(МИНИМУМ(ЕСТЬNULL(ВТБ.Дата, ДОБАВИТЬКДАТЕ(&КонецПериода, СЕКУНДА, 1))), ДЕНЬ, -1) КАК ДатаПо
ИЗ
ВТМояТаблица КАК ВТA
ЛЕВОЕ СОЕДИНЕНИЕ ВТМояТаблица КАК ВТБ
ПО ВТA.Контрагент = ВТБ.Контрагент
// И ВТA.Менеджер = ВТБ.Менеджер
И ВТA.Дата < ВТБ.Дата
СГРУППИРОВАТЬ ПО
ВТA.Контрагент,
ВТA.Менеджер,
ВТA.Дата
Убрать нужно // И ВТA.Менеджер = ВТБ.Менеджер
т.к. Менеджеры разные всё прошло
|
|
|
10
spiller26
29.05.13
✎
11:33
|
ВСЕМ ПО ПРЯНИКУ. БЛАГОДАРЮ!!!
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший