1
0
mirror of https://github.com/BlizD/Tasks.git synced 2025-03-19 21:07:53 +02:00

Определение предмета взаимодействия (справочник задачи) и контакта взаимодействия (справочник Контрагенты)

This commit is contained in:
Anton Ivanov 2017-12-11 09:37:59 +03:00
parent e305d63197
commit 482d27d451
14 changed files with 223 additions and 9 deletions

View File

@ -50,3 +50,81 @@
Возврат пКомментарииВКоде;
КонецФункции
// СтандартныеПодсистемы.Взаимодействие
////////////////////////////////////////////////////////////////////////////////
// Интерфейс для работы с подсистемой Взаимодействия.
// Возвращает партнера и контактных лиц сделки.
//
Функция ПолучитьКонтакты(Ссылка) Экспорт
Если НЕ ЗначениеЗаполнено(Ссылка) Тогда
Возврат Неопределено;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.Текст = ТекстЗапросаПоКонтактам();
Запрос.УстановитьПараметр("Предмет",Ссылка);
НачатьТранзакцию();
Попытка
РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Результат = Неопределено;
Иначе
Результат = РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("Контакт");
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
Возврат Результат;
КонецФункции
// Возвращает текст запроса по контактам взаимодействий, содержащимся в документе.
//
// Параметры:
// ТекстВременнаяТаблица - Строка - Имя временной таблицы, в которую помещаются полученные данные.
// Объединить - Булево - признак, указывающий на необходимость добавления конструкции ОБЪЕДИНИТЬ в запрос.
//
// Возвращаемое значение:
// Строка - сформированный текст запроса для получения контактов взаимодействий объекта.
//
Функция ТекстЗапросаПоКонтактам(ТекстВременнаяТаблица = "", Объединить = Ложь) Экспорт
ШаблонВыбрать = ?(Объединить,"ВЫБРАТЬ РАЗЛИЧНЫЕ","ВЫБРАТЬ РАЗЛИЧНЫЕ РАЗРЕШЕННЫЕ");
ТекстЗапроса = "
|%ШаблонВыбрать%
| узЗадачи.Контрагент КАК Контакт " + ТекстВременнаяТаблица + "
|ИЗ
| Справочник.узЗадачи КАК узЗадачи
|ГДЕ
| узЗадачи.Ссылка = &Предмет
| И (НЕ узЗадачи.Контрагент = ЗНАЧЕНИЕ(Справочник.узКонтрагенты.ПустаяСсылка))
|
|";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ШаблонВыбрать%",ШаблонВыбрать);
Если Объединить Тогда
ТекстЗапроса = "
| ОБЪЕДИНИТЬ ВСЕ
|" + ТекстЗапроса;
КонецЕсли;
Возврат ТекстЗапроса;
КонецФункции
// Конец СтандартныеПодсистемы.Взаимодействие

View File

@ -160,6 +160,10 @@
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="14"/>
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="15"/>
</SearchControlAddition>
<Events>
<Event name="DragCheck">СписокПроверкаПеретаскивания</Event>
<Event name="Drag">СписокПеретаскивание</Event>
</Events>
<ChildItems>
<LabelField name="Наименование" id="16">
<DataPath>Список.Description</DataPath>

View File

@ -82,3 +82,21 @@
Конецесли;
УстановитьПараметрыСписка();
КонецПроцедуры
&НаКлиенте
Процедура СписокПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Поле)
// СтандартныеПодсистемы.Взаимодействие
ВзаимодействияКлиент.СписокПредметПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Поле);
// Конец СтандартныеПодсистемы.Взаимодействие
КонецПроцедуры
&НаКлиенте
Процедура СписокПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Поле)
// СтандартныеПодсистемы.Взаимодействие
ВзаимодействияКлиент.СписокПредметПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Поле);
// Конец СтандартныеПодсистемы.Взаимодействие
КонецПроцедуры

View File

@ -2173,6 +2173,20 @@
<v8:Type>cfg:CatalogRef.узКонфигурации</v8:Type>
</Type>
</Attribute>
<Attribute name="НеобходимоОповещение" id="11">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Необходимо оповещение</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ОбъектОснование" id="12">
<Type/>
</Attribute>
</Attributes>
<Commands>
<Command name="КомандаПоказатьСкрытьКомментарии" id="1">

View File

@ -13,6 +13,11 @@
УправлениеСвойствами.ПриСозданииНаСервере(ЭтотОбъект, ДополнительныеПараметры);
// Конец СтандартныеПодсистемы.Свойства
// СтандартныеПодсистемы.Взаимодействие
// Учесть возможность создания из взаимодействия.
Взаимодействия.ПодготовитьОповещения(ЭтотОбъект,Параметры,Ложь);
// Конец СтандартныеПодсистемы.Взаимодействие
Если Объект.Ссылка.Пустая() Тогда
ЗаполнитьРеквизитыПоУмолчанию();
КонецЕсли;
@ -141,6 +146,10 @@
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
// СтандартныеПодсистемы.Взаимодействие
ВзаимодействияКлиент.КонтактПослеЗаписи(ЭтотОбъект,Объект,ПараметрыЗаписи,"_узЗадачи");
// Конец СтандартныеПодсистемы.Взаимодействие
Оповестить("СправочникЗадачаЗаписана");
КонецПроцедуры

View File

@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.2">
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
</AutoCommandBar>
<Events>
<Event name="NotificationProcessing">ОбработкаОповещения</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
@ -18,6 +20,22 @@
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка" id="2"/>
</UsualGroup>
<CommandBar name="КоманднаяПанель" id="27">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Командная панель</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Командная панель</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Form</CommandSource>
<ExtendedTooltip name="КоманднаяПанельРасширеннаяПодсказка" id="28"/>
</CommandBar>
<Table name="Список" id="3">
<CommandBarLocation>None</CommandBarLocation>
<DefaultItem>true</DefaultItem>

View File

@ -135,5 +135,19 @@
<MainAttribute>true</MainAttribute>
<SavedData>true</SavedData>
</Attribute>
<Attribute name="НеобходимоОповещение" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Необходимо оповещение</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ОбъектОснование" id="3">
<Type/>
</Attribute>
</Attributes>
</Form>

View File

@ -18,8 +18,10 @@
УправлениеКонтактнойИнформацией.ПриСозданииНаСервере(ЭтотОбъект, Объект, "ГруппаКонтактнаяИнформация");
// Конец СтандартныеПодсистемы.КонтактнаяИнформация
//// Учесть возможность создания из взаимодействия.
//Взаимодействия.ПодготовитьОповещения(ЭтотОбъект,Параметры,Ложь);
// СтандартныеПодсистемы.Взаимодействие
// Учесть возможность создания из взаимодействия.
Взаимодействия.ПодготовитьОповещения(ЭтотОбъект,Параметры,Ложь);
// Конец СтандартныеПодсистемы.Взаимодействие
//// СтандартныеПодсистемы.Печать
//УправлениеПечатью.ПриСозданииНаСервере(ЭтотОбъект);
@ -86,7 +88,10 @@
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
//ВзаимодействияКлиент.КонтактПослеЗаписи(ЭтотОбъект,Объект,ПараметрыЗаписи,"_узКонтрагенты");
// СтандартныеПодсистемы.Взаимодействие
ВзаимодействияКлиент.КонтактПослеЗаписи(ЭтотОбъект,Объект,ПараметрыЗаписи,"_узКонтрагенты");
// Конец СтандартныеПодсистемы.Взаимодействие
//Оповестить("Запись_узКонтрагенты", Новый Структура, Объект.Ссылка);

View File

@ -14,9 +14,11 @@
//
Функция ПолучитьМассивТиповПредметов() Экспорт
МассивТиповПредметов = Новый Массив;
МассивТиповПредметов = Новый Массив;
// _Демо начало примера
МассивТиповПредметов.Добавить("СправочникСсылка.узЗадачи");
// _Демо конец примера
Возврат МассивТиповПредметов;

View File

@ -2586,10 +2586,48 @@
</c>
</row>
</rowsItem>
<rowsItem>
<index>67</index>
<row>
<c>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>0fffc09c-8f4c-47cc-b41c-8d5c5a221d79</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>HTTPСервис</v8:content>
</v8:item>
</tl>
</c>
</c>
<c>
<c>
<f>7</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>HTTPСервис</v8:content>
</v8:item>
</tl>
</c>
</c>
</row>
</rowsItem>
<templateMode>true</templateMode>
<defaultFormatIndex>15</defaultFormatIndex>
<height>67</height>
<vgRows>67</vgRows>
<height>68</height>
<vgRows>68</vgRows>
<line width="1" gap="false">
<v8ui:style xsi:type="v8ui:SpreadsheetDocumentCellLineType">Solid</v8ui:style>
</line>

View File

@ -18,6 +18,7 @@
<Comment/>
<Type>
<v8:Type>cfg:CatalogRef.СтроковыеКонтактыВзаимодействий</v8:Type>
<v8:Type>cfg:CatalogRef.узКонтрагенты</v8:Type>
<v8:Type>cfg:CatalogRef.Пользователи</v8:Type>
</Type>
</Properties>

View File

@ -19,6 +19,7 @@
<Type>
<v8:Type>cfg:DocumentRef.ЭлектронноеПисьмоИсходящее</v8:Type>
<v8:Type>cfg:DocumentRef.ЗапланированноеВзаимодействие</v8:Type>
<v8:Type>cfg:CatalogRef.узЗадачи</v8:Type>
<v8:Type>cfg:DocumentRef.ЭлектронноеПисьмоВходящее</v8:Type>
<v8:Type>cfg:DocumentRef.ТелефонныйЗвонок</v8:Type>
<v8:Type>cfg:DocumentRef.Встреча</v8:Type>

View File

@ -26,6 +26,11 @@
<xr:Common>true</xr:Common>
</Visibility>
</Command>
<Command name="DocumentJournal.Взаимодействия.StandardCommand.OpenList">
<Visibility>
<xr:Common>true</xr:Common>
</Visibility>
</Command>
<Command name="Report.узОтчетПоЗадачам.StandardCommand.Open">
<Visibility>
<xr:Common>true</xr:Common>
@ -63,6 +68,10 @@
<CommandGroup>NavigationPanelOrdinary</CommandGroup>
<Placement>Manual</Placement>
</Command>
<Command name="DocumentJournal.Взаимодействия.StandardCommand.OpenList">
<CommandGroup>NavigationPanelOrdinary</CommandGroup>
<Placement>Manual</Placement>
</Command>
<Command name="Report.узОтчетПоЗадачам.StandardCommand.Open">
<CommandGroup>ActionsPanelReports</CommandGroup>
<Placement>Manual</Placement>
@ -92,6 +101,9 @@
<Command name="Document.узВыпускРелиза.StandardCommand.OpenList">
<CommandGroup>NavigationPanelOrdinary</CommandGroup>
</Command>
<Command name="DocumentJournal.Взаимодействия.StandardCommand.OpenList">
<CommandGroup>NavigationPanelOrdinary</CommandGroup>
</Command>
</CommandsOrder>
<GroupsOrder>
<Group>NavigationPanelOrdinary</Group>

File diff suppressed because one or more lines are too long