Текст запроса списка взаимодействий. Формирует текст запроса динамического списка взаимодействий в зависимости от вида панели навигации
// Формирует текст запроса динамического списка взаимодействий в зависимости от вида панели навигации
// и типа переданного параметра.
//
// Параметры:
// ЗначениеОтбора - СправочникСсылка, ДокументСсылка - значение отбора панели навигации.
//
// Возвращаемое значение:
// Строка - текст запроса динамического списка.
//
Функция ТекстЗапросаСпискаВзаимодействий(ЗначениеОтбора = Неопределено) Экспорт
ТекстЗапроса ="
|ВЫБРАТЬ
| ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.Ссылка ССЫЛКА Документ.Встреча
| ТОГДА ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.ПометкаУдаления
| ТОГДА 10
| ИНАЧЕ 0
| КОНЕЦ
| КОГДА ЖурналДокументовВзаимодействия.Ссылка ССЫЛКА Документ.ЗапланированноеВзаимодействие
| ТОГДА ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.ПометкаУдаления
| ТОГДА 11
| ИНАЧЕ 1
| КОНЕЦ
| КОГДА ЖурналДокументовВзаимодействия.Ссылка ССЫЛКА Документ.ТелефонныйЗвонок
| ТОГДА ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.ПометкаУдаления
| ТОГДА 12
| ИНАЧЕ 2
| КОНЕЦ
| КОГДА ЖурналДокументовВзаимодействия.Ссылка ССЫЛКА Документ.ЭлектронноеПисьмоВходящее
| ТОГДА ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.ПометкаУдаления
| ТОГДА 13
| ИНАЧЕ 3
| КОНЕЦ
| КОГДА ЖурналДокументовВзаимодействия.Ссылка ССЫЛКА Документ.ЭлектронноеПисьмоИсходящее
| ТОГДА ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.ПометкаУдаления
| ТОГДА 14
| ИНАЧЕ ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма = ЗНАЧЕНИЕ(Перечисление.СтатусыИсходящегоЭлектронногоПисьма.Черновик)
| ТОГДА 15
| КОГДА ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма = ЗНАЧЕНИЕ(Перечисление.СтатусыИсходящегоЭлектронногоПисьма.Исходящее)
| ТОГДА 16
| ИНАЧЕ 4
| КОНЕЦ
| КОНЕЦ
| КОГДА ЖурналДокументовВзаимодействия.Ссылка ССЫЛКА Документ.СообщениеSMS
| ТОГДА ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.ПометкаУдаления
| ТОГДА 22
| ИНАЧЕ ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма = ЗНАЧЕНИЕ(Перечисление.СостоянияДокументаСообщениеSMS.Черновик)
| ТОГДА 17
| КОГДА ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма = ЗНАЧЕНИЕ(Перечисление.СостоянияДокументаСообщениеSMS.Исходящее)
| ТОГДА 18
| КОГДА ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма = ЗНАЧЕНИЕ(Перечисление.СостоянияДокументаСообщениеSMS.Доставляется)
| ТОГДА 19
| КОГДА ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма = ЗНАЧЕНИЕ(Перечисление.СостоянияДокументаСообщениеSMS.ЧастичноДоставлено)
| ТОГДА 21
| КОГДА ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма = ЗНАЧЕНИЕ(Перечисление.СостоянияДокументаСообщениеSMS.НеДоставлено)
| ТОГДА 23
| КОГДА ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма = ЗНАЧЕНИЕ(Перечисление.СостоянияДокументаСообщениеSMS.Доставлено)
| ТОГДА 24
| ИНАЧЕ 17
| КОНЕЦ
| КОНЕЦ
| КОНЕЦ КАК НомерКартинки,
| ЖурналДокументовВзаимодействия.Ссылка,
| ЖурналДокументовВзаимодействия.Дата,
| ЖурналДокументовВзаимодействия.ПометкаУдаления КАК ПометкаУдаления,
| ЖурналДокументовВзаимодействия.Номер,
| ЖурналДокументовВзаимодействия.Проведен,
| ЖурналДокументовВзаимодействия.Автор,
| ЖурналДокументовВзаимодействия.ВзаимодействиеОснование,
| ЖурналДокументовВзаимодействия.Входящий,
| ЖурналДокументовВзаимодействия.Тема,
| ЖурналДокументовВзаимодействия.Ответственный КАК Ответственный,
| ЕСТЬNULL(ПредметыВзаимодействий.Рассмотрено, ЛОЖЬ) КАК Рассмотрено,
| ЕСТЬNULL(ПредметыВзаимодействий.РассмотретьПосле, ДАТАВРЕМЯ(1, 1, 1)) КАК РассмотретьПосле,
| ЖурналДокументовВзаимодействия.Участники,
| ЖурналДокументовВзаимодействия.Тип,
| ЖурналДокументовВзаимодействия.УчетнаяЗапись,
| ЖурналДокументовВзаимодействия.ЕстьВложения,
| ЖурналДокументовВзаимодействия.Важность,
| ВЫБОР
| КОГДА ЖурналДокументовВзаимодействия.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиВзаимодействия.Высокая)
| ТОГДА 2
| КОГДА ЖурналДокументовВзаимодействия.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиВзаимодействия.Низкая)
| ТОГДА 0
| ИНАЧЕ 1
| КОНЕЦ КАК ВажностьНомерКартинки,
| %Предмет% КАК Предмет,
| ТИПЗНАЧЕНИЯ(ПредметыВзаимодействий.Предмет) КАК ТипПредмета,
| ЕСТЬNULL(ПредметыВзаимодействий.ПапкаЭлектронногоПисьма, ЗНАЧЕНИЕ(Справочник.ПапкиЭлектронныхПисем.ПустаяСсылка)) КАК Папка,
| ЖурналДокументовВзаимодействия.ПолученоОтправлено,
| ЖурналДокументовВзаимодействия.Размер,
| ЖурналДокументовВзаимодействия.СтатусИсходящегоПисьма
|ИЗ
| ЖурналДокументов.Взаимодействия КАК ЖурналДокументовВзаимодействия
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыВзаимодействий
| ПО ЖурналДокументовВзаимодействия.Ссылка = ПредметыВзаимодействий.Взаимодействие
| %ТекстСоединенияТаблицаКонтактов%
|{ГДЕ
| ЖурналДокументовВзаимодействия.Ссылка КАК Поиск
| %ОтборКонтакт%}";
Если ЗначениеОтбора = Неопределено Тогда
ТекстПредмет = "ЕСТЬNULL(ПредметыВзаимодействий.Предмет, НЕОПРЕДЕЛЕНО)";
ТекстОтборКонтакт = "";
ТекстСоединениеТаблицаКонтактов = "";
ИначеЕсли ВзаимодействияКлиентСервер.ЯвляетсяПредметом(ЗначениеОтбора) ИЛИ ВзаимодействияКлиентСервер.ЯвляетсяВзаимодействием(ЗначениеОтбора) Тогда
ТекстПредмет = "ЕСТЬNULL(ВЫРАЗИТЬ(ПредметыВзаимодействий.Предмет КАК " + ЗначениеОтбора.Метаданные().ПолноеИмя() + "), НЕОПРЕДЕЛЕНО)";
ТекстОтборКонтакт = "";
ТекстСоединениеТаблицаКонтактов = "";
Иначе
ТекстПредмет = "ЕСТЬNULL(ПредметыВзаимодействий.Предмет, НЕОПРЕДЕЛЕНО)";
ТекстРазличные = "";
ТекстОтборКонтакт = ",
|КонтактыВзаимодействий.Контакт";
ТекстСоединениеТаблицаКонтактов = "{ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.КонтактыВзаимодействий КАК КонтактыВзаимодействий
|ПО ЖурналДокументовВзаимодействия.Ссылка = КонтактыВзаимодействий.Взаимодействие}";
КонецЕсли;
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%Предмет%", ТекстПредмет);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%РАЗЛИЧНЫЕ%", ТекстРазличные);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%ОтборКонтакт%", ТекстОтборКонтакт);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%ТекстСоединенияТаблицаКонтактов%", ТекстСоединениеТаблицаКонтактов);
Возврат ТекстЗапроса;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
УстановитьСвойстваДинамическогоСписка (БСП)
Простое добавление колонки в Динамический список
Отформатированный текст запроса
ПриИзмененииОтбораТипВзаимодействий (БСП)
ИнициализироватьФормуСпискаВзаимодействий (БСП)
ТекстЗапросаДляИзвлеченияТекста (БСП)
ТекстЗапросаПолногоОбъемаФайлов (БСП)