mirror of
https://github.com/BlizD/Tasks.git
synced 2025-04-02 21:55:45 +02:00
#164 @etnety Cделать кнопку "Заполнить наблюдателями из вышестоящей основной задачей"?
This commit is contained in:
parent
bc9241e6ab
commit
30829ef38e
@ -1955,7 +1955,15 @@
|
|||||||
<DataPath>Объект.НаблюдателиЗаОсновнойЗадачей</DataPath>
|
<DataPath>Объект.НаблюдателиЗаОсновнойЗадачей</DataPath>
|
||||||
<RowFilter xsi:nil="true"/>
|
<RowFilter xsi:nil="true"/>
|
||||||
<ContextMenu name="НаблюдателиЗаОсновнойЗадачейКонтекстноеМеню" id="505"/>
|
<ContextMenu name="НаблюдателиЗаОсновнойЗадачейКонтекстноеМеню" id="505"/>
|
||||||
<AutoCommandBar name="НаблюдателиЗаОсновнойЗадачейКоманднаяПанель" id="506"/>
|
<AutoCommandBar name="НаблюдателиЗаОсновнойЗадачейКоманднаяПанель" id="506">
|
||||||
|
<ChildItems>
|
||||||
|
<Button name="НаблюдателиЗаОсновнойЗадачейКомандаЗаполнитьНаблюдателямиИзВышестоящейОсновнойЗадачи" id="584">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Command.КомандаЗаполнитьНаблюдателямиИзВышестоящейОсновнойЗадачи</CommandName>
|
||||||
|
<ExtendedTooltip name="НаблюдателиЗаОсновнойЗадачейКомандаЗаполнитьНаблюдателямиИзВышестоящейОсновнойЗадачиРасширеннаяПодсказка" id="585"/>
|
||||||
|
</Button>
|
||||||
|
</ChildItems>
|
||||||
|
</AutoCommandBar>
|
||||||
<ExtendedTooltip name="НаблюдателиЗаОсновнойЗадачейРасширеннаяПодсказка" id="507"/>
|
<ExtendedTooltip name="НаблюдателиЗаОсновнойЗадачейРасширеннаяПодсказка" id="507"/>
|
||||||
<SearchStringAddition name="НаблюдателиЗаОсновнойЗадачейСтрокаПоиска" id="508">
|
<SearchStringAddition name="НаблюдателиЗаОсновнойЗадачейСтрокаПоиска" id="508">
|
||||||
<AdditionSource>
|
<AdditionSource>
|
||||||
@ -2690,6 +2698,21 @@
|
|||||||
</ToolTip>
|
</ToolTip>
|
||||||
<Action>КомандаДобавитьФактРабот</Action>
|
<Action>КомандаДобавитьФактРабот</Action>
|
||||||
</Command>
|
</Command>
|
||||||
|
<Command name="КомандаЗаполнитьНаблюдателямиИзВышестоящейОсновнойЗадачи" id="16">
|
||||||
|
<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>
|
||||||
|
<Action>КомандаЗаполнитьНаблюдателямиИзВышестоящейОсновнойЗадачи</Action>
|
||||||
|
</Command>
|
||||||
</Commands>
|
</Commands>
|
||||||
<CommandInterface>
|
<CommandInterface>
|
||||||
<NavigationPanel>
|
<NavigationPanel>
|
||||||
|
@ -1188,5 +1188,75 @@
|
|||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
//- #104 Дзеса Ігор (capitoshko) 08.10.2018
|
//- #104 Дзеса Ігор (capitoshko) 08.10.2018
|
||||||
|
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура КомандаЗаполнитьНаблюдателямиИзВышестоящейОсновнойЗадачи(Команда)
|
||||||
|
КомандаЗаполнитьНаблюдателямиИзВышестоящейОсновнойЗадачиНаСервере();
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
|
||||||
|
&НаСервере
|
||||||
|
Процедура КомандаЗаполнитьНаблюдателямиИзВышестоящейОсновнойЗадачиНаСервере()
|
||||||
|
|
||||||
|
Если НЕ ЗначениеЗаполнено(Объект.Родитель) Тогда
|
||||||
|
Сообщение = Новый СообщениеПользователю;
|
||||||
|
Сообщение.Текст = НСтр("ru = 'Не выбран родитель'");
|
||||||
|
Сообщение.Поле = "Объект.Родитель";
|
||||||
|
Сообщение.Сообщить();
|
||||||
|
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
пОсновнаяЗадачаРодитель = НайтиОсновногоРодителя(Объект.Родитель);
|
||||||
|
Если пОсновнаяЗадачаРодитель = Неопределено Тогда
|
||||||
|
Сообщение = Новый СообщениеПользователю;
|
||||||
|
Сообщение.Текст = НСтр("ru = 'Не найдена основная задача'");
|
||||||
|
Сообщение.Поле = "Объект.Родитель";
|
||||||
|
Сообщение.Сообщить();
|
||||||
|
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Для каждого СтрокаНаблюдателиРодитель Из пОсновнаяЗадачаРодитель.НаблюдателиЗаОсновнойЗадачей Цикл
|
||||||
|
|
||||||
|
пПользователь = СтрокаНаблюдателиРодитель.Пользователь;
|
||||||
|
Если НЕ ЗначениеЗаполнено(пПользователь) Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ВТДопПараметры = Новый Структура("Пользователь", пПользователь);
|
||||||
|
|
||||||
|
НайденныеСтроки = Объект.НаблюдателиЗаОсновнойЗадачей.НайтиСтроки(ВТДопПараметры);
|
||||||
|
|
||||||
|
Если НайденныеСтроки.Количество() = 0 Тогда
|
||||||
|
СтрокаНаблюдателиЗаОсновнойЗадачей = Объект.НаблюдателиЗаОсновнойЗадачей.Добавить();
|
||||||
|
ЗаполнитьЗначенияСвойств(СтрокаНаблюдателиЗаОсновнойЗадачей, СтрокаНаблюдателиРодитель);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
|
||||||
|
Сообщение = Новый СообщениеПользователю;
|
||||||
|
Сообщение.Текст = "Наблюдатели добавлены";
|
||||||
|
Сообщение.Сообщить();
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаСервере
|
||||||
|
Функция НайтиОсновногоРодителя(Ссылка)
|
||||||
|
|
||||||
|
Если НЕ ЗначениеЗаполнено(Ссылка) Тогда
|
||||||
|
Возврат Неопределено;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
РеквизитыЗадачи = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, "Родитель, ЭтоОсновнаяЗадача");
|
||||||
|
Если РеквизитыЗадачи.ЭтоОсновнаяЗадача Тогда
|
||||||
|
Возврат Ссылка;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат НайтиОсновногоРодителя(РеквизитыЗадачи.Родитель);
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user