Помогите с запросом

1. Dos_1985 09.07.14 06:53 Сейчас в теме
Добрый день. Помогите с запросом. Суть: Получить список незавершенных бизнес-процессов "Продажа" с последними задачами по ним (CRM_Задача). Конфа: УПП + CRM от Рарус
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. KSy 09.07.14 07:13 Сейчас в теме
(1) Dos_1985, С чем именно помочь? Вы проблемный участок кода запроса выложите...
4. Dos_1985 09.07.14 07:19 Сейчас в теме
(2) KSy, Не могу вообще сформировать запрос. Такой запрос выдает все задачи по бизнес процессам, а мне надо только последнюю задачу привязанную к Бизнес процессу.

ВЫБРАТЬ
	CRM_Продажа.Ссылка
ПОМЕСТИТЬ БП
ИЗ
	БизнесПроцесс.CRM_Продажа КАК CRM_Продажа
ГДЕ
	CRM_Продажа.Стартован = ИСТИНА
	И CRM_Продажа.Завершен = ЛОЖЬ
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	CRM_Задача.Ссылка,
	БП.Ссылка КАК Ссылка1
ИЗ
	БП КАК БП
		ЛЕВОЕ СОЕДИНЕНИЕ Задача.CRM_Задача КАК CRM_Задача
		ПО (CRM_Задача.БизнесПроцесс = БП.Ссылка)
Показать
3. jobkostya1c_ERP 101 09.07.14 07:17 Сейчас в теме
5. Dos_1985 09.07.14 07:23 Сейчас в теме
(3) kostyaomsk, Например БП1 имеет 3 последовательные задачи Задача1,Задача2,задача3. БП2: Задача4 и Задача 5 соответственно. Мне надо выбрать в таком формате:
БП1 -- Задача3
БП2 -- Задача5
6. degtyarev85 09.07.14 08:43 Сейчас в теме
(5) Dos_1985, попробуй так, только CRM у меня нет проверить не мог. Вместо "Дата" в CRM_Задача.Дата укажи реквизит в котором хранится дата исполнения задачи.

ВЫБРАТЬ
    CRM_Задача.БизнесПроцесс,
    МАКСИМУМ(CRM_Задача.Дата) КАК Дата
ПОМЕСТИТЬ БП
ИЗ
    Задача.CRM_Задача КАК CRM_Задача
ГДЕ
    CRM_Задача.БизнесПроцесс.Стартован
    И НЕ CRM_Задача.БизнесПроцесс.Завершен
СГРУППИРОВАТЬ ПО
    CRM_Задача.БизнесПроцесс

;

////////////////////////////////////////////////////////////­////////////////////

ВЫБРАТЬ
    CRM_Задача.Ссылка,
    БП.БизнесПроцесс КАК Ссылка1
ИЗ
    БП КАК БП
        ЛЕВОЕ СОЕДИНЕНИЕ Задача.CRM_Задача КАК CRM_Задача
        ПО (CRM_Задача.БизнесПроцесс = БП.БизнесПроцесс И CRM_Задача.Дата = БП.Дата)

Показать
7. jobkostya1c_ERP 101 09.07.14 09:18 Сейчас в теме
Оптимальнее во вложенный запрос (в SQL версии временные таблицы в TempDB на диске, а не в ОЗУ):
ВЫБРАТЬ 
    CRM_Задача.Ссылка КАК Задача1,
    БПСсылка          КАК БизнесПроцесс1 
      
  ИЗ 
     ( ВЫБРАТЬ
       CRM_Задача.БизнесПроцесс КАК БПСсылка,
       МАКСИМУМ(CRM_Задача.Дата) КАК БПДата
   ИЗ
      Задача.CRM_Задача КАК CRM_Задача
  ГДЕ
      CRM_Задача.БизнесПроцесс.Стартован
      И НЕ CRM_Задача.БизнесПроцесс.Завершен
  СГРУППИРОВАТЬ ПО
     CRM_Задача.БизнесПроцесс) КАК БП
    
   ЛЕВОЕ СОЕДИНЕНИЕ  Задача.CRM_Задача КАК CRM_Задача
        ПО (CRM_Задача.БизнесПроцесс = БП.БПСсылка И CRM_Задача.Дата = БП.Дата)
Показать

Это если без конструктора и конфы под рукой. Тут главное через точку лишний раз не обращаться.
Труден в отладке (только консолью запросов, которая покажет результат вложенного запроса), зато УПП будет летать. Еще проиндексировать по объединяемым полям вложенный запрос.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот