1
0
mirror of https://github.com/BlizD/Tasks.git synced 2025-01-28 03:57:18 +02:00

Документ "Выпуск релиза" очистка связанных ТЧ, изменение название ТЧ задачи

This commit is contained in:
Anton Ivanov 2017-03-08 16:36:10 +03:00
parent 73638ea657
commit 997d222814
5 changed files with 133 additions and 57 deletions

View File

@ -287,21 +287,21 @@
<Form>ФормаСписка</Form>
<TabularSection uuid="df059574-7bbc-4b9d-8e43-9623ec2e3739">
<InternalInfo>
<xr:GeneratedType name="DocumentTabularSection.узВыпускРелиза.Задачи" category="TabularSection">
<xr:GeneratedType name="DocumentTabularSection.узВыпускРелиза.ТЧЗадачи" category="TabularSection">
<xr:TypeId>c585ebd8-e429-497b-8759-b78800ecf03b</xr:TypeId>
<xr:ValueId>aaaff310-919f-49b0-a204-2239e78a50fa</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="DocumentTabularSectionRow.узВыпускРелиза.Задачи" category="TabularSectionRow">
<xr:GeneratedType name="DocumentTabularSectionRow.узВыпускРелиза.ТЧЗадачи" category="TabularSectionRow">
<xr:TypeId>278f6581-84c4-4bf8-88a7-96b36c98efba</xr:TypeId>
<xr:ValueId>21fa8d93-613f-46e9-96d5-d6a46fb96f6b</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>Задачи</Name>
<Name>ТЧЗадачи</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Задачи</v8:content>
<v8:content>ТЧЗадачи</v8:content>
</v8:item>
</Synonym>
<Comment/>

View File

@ -0,0 +1,28 @@

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
ОчиститьСвязанныеТЧ();
КонецПроцедуры
Процедура ОчиститьСвязанныеТЧ() Экспорт
МассивЗадач = ТЧЗадачи.ВыгрузитьКолонку("Задача");
МассивОбрабатываемыхТЧ = Новый Массив();
МассивОбрабатываемыхТЧ.Добавить("ИсторияХранилища");
МассивОбрабатываемыхТЧ.Добавить("ИзмененныеОбъекты");
Для каждого ИмяТЧ из МассивОбрабатываемыхТЧ цикл
СтрокиКУдалению = Новый Массив();
Для каждого СтрокаТЧ из ЭтотОбъект[ИмяТЧ] цикл
пЗадача = СтрокаТЧ.Задача;
Если МассивЗадач.Найти(пЗадача) = Неопределено Тогда
СтрокиКУдалению.Добавить(СтрокаТЧ);
Конецесли;
Конеццикла;
Для каждого СтрокаКУдалению из СтрокиКУдалению цикл
ЭтотОбъект[ИмяТЧ].Удалить(СтрокаКУдалению);
Конеццикла;
Конеццикла;
КонецПроцедуры

View File

@ -208,16 +208,21 @@
<Group>Horizontal</Group>
<ExtendedTooltip name="ГруппаСоставРелизаРасширеннаяПодсказка" id="99"/>
<ChildItems>
<Table name="Задачи" id="14">
<Table name="ТЧЗадачи" id="14">
<Representation>List</Representation>
<AutoInsertNewRow>true</AutoInsertNewRow>
<EnableStartDrag>true</EnableStartDrag>
<EnableDrag>true</EnableDrag>
<DataPath>Объект.Задачи</DataPath>
<DataPath>Объект.ТЧЗадачи</DataPath>
<RowFilter xsi:nil="true"/>
<ContextMenu name="ЗадачиКонтекстноеМеню" id="15"/>
<AutoCommandBar name="ЗадачиКоманднаяПанель" id="16">
<ContextMenu name="ТЧЗадачиКонтекстноеМеню" id="15"/>
<AutoCommandBar name="ТЧЗадачиКоманднаяПанель" id="16">
<ChildItems>
<Button name="ТЧЗадачиКомандаОбновитьДанныеПоЗадачам" id="191">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.КомандаОбновитьДанныеПоЗадачам</CommandName>
<ExtendedTooltip name="ТЧЗадачиКомандаОбновитьДанныеПоЗадачамРасширеннаяПодсказка" id="192"/>
</Button>
<Button name="ЗадачиКомандаПодборЗадач" id="136">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.КомандаПодборЗадач</CommandName>
@ -230,43 +235,45 @@
</Button>
</ChildItems>
</AutoCommandBar>
<ExtendedTooltip name="ЗадачиРасширеннаяПодсказка" id="17"/>
<SearchStringAddition name="ЗадачиСтрокаПоиска" id="18">
<ExtendedTooltip name="ТЧЗадачиРасширеннаяПодсказка" id="17"/>
<SearchStringAddition name="ТЧЗадачиСтрокаПоиска" id="18">
<AdditionSource>
<Item>Задачи</Item>
<Item>ТЧЗадачи</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="ЗадачиСтрокаПоискаКонтекстноеМеню" id="19"/>
<ExtendedTooltip name="ЗадачиСтрокаПоискаРасширеннаяПодсказка" id="20"/>
<ContextMenu name="ТЧЗадачиСтрокаПоискаКонтекстноеМеню" id="19"/>
<ExtendedTooltip name="ТЧЗадачиСтрокаПоискаРасширеннаяПодсказка" id="20"/>
</SearchStringAddition>
<ViewStatusAddition name="ЗадачиСостояниеПросмотра" id="21">
<ViewStatusAddition name="ТЧЗадачиСостояниеПросмотра" id="21">
<AdditionSource>
<Item>Задачи</Item>
<Item>ТЧЗадачи</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<ContextMenu name="ЗадачиСостояниеПросмотраКонтекстноеМеню" id="22"/>
<ExtendedTooltip name="ЗадачиСостояниеПросмотраРасширеннаяПодсказка" id="23"/>
<ContextMenu name="ТЧЗадачиСостояниеПросмотраКонтекстноеМеню" id="22"/>
<ExtendedTooltip name="ТЧЗадачиСостояниеПросмотраРасширеннаяПодсказка" id="23"/>
</ViewStatusAddition>
<SearchControlAddition name="ЗадачиУправлениеПоиском" id="24">
<SearchControlAddition name="ТЧЗадачиУправлениеПоиском" id="24">
<AdditionSource>
<Item>Задачи</Item>
<Item>ТЧЗадачи</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="ЗадачиУправлениеПоискомКонтекстноеМеню" id="25"/>
<ExtendedTooltip name="ЗадачиУправлениеПоискомРасширеннаяПодсказка" id="26"/>
<ContextMenu name="ТЧЗадачиУправлениеПоискомКонтекстноеМеню" id="25"/>
<ExtendedTooltip name="ТЧЗадачиУправлениеПоискомРасширеннаяПодсказка" id="26"/>
</SearchControlAddition>
<Events>
<Event name="BeforeDeleteRow">ЗадачиПередУдалением</Event>
<Event name="OnActivateRow">ЗадачиПриАктивизацииСтроки</Event>
<Event name="AfterDeleteRow">ЗадачиПослеУдаления</Event>
</Events>
<ChildItems>
<LabelField name="ЗадачиНомерСтроки" id="27">
<DataPath>Объект.Задачи.LineNumber</DataPath>
<DataPath>Объект.ТЧЗадачи.LineNumber</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ЗадачиНомерСтрокиКонтекстноеМеню" id="28"/>
<ExtendedTooltip name="ЗадачиНомерСтрокиРасширеннаяПодсказка" id="29"/>
</LabelField>
<InputField name="ЗадачиЗадача" id="30">
<DataPath>Объект.Задачи.Задача</DataPath>
<DataPath>Объект.ТЧЗадачи.Задача</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ЗадачиЗадачаКонтекстноеМеню" id="31"/>
<ExtendedTooltip name="ЗадачиЗадачаРасширеннаяПодсказка" id="32"/>
@ -275,7 +282,7 @@
</Events>
</InputField>
<LabelField name="ЗадачиЗадачаКод" id="102">
<DataPath>Объект.Задачи.Задача.Code</DataPath>
<DataPath>Объект.ТЧЗадачи.Задача.Code</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
@ -287,25 +294,25 @@
<ExtendedTooltip name="ЗадачиЗадачаКодРасширеннаяПодсказка" id="104"/>
</LabelField>
<LabelField name="ЗадачиЗадачаСтатус" id="108">
<DataPath>Объект.Задачи.Задача.Статус</DataPath>
<DataPath>Объект.ТЧЗадачи.Задача.Статус</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ЗадачиЗадачаСтатусКонтекстноеМеню" id="109"/>
<ExtendedTooltip name="ЗадачиЗадачаСтатусРасширеннаяПодсказка" id="110"/>
</LabelField>
<LabelField name="ЗадачиЗадачаИсполнитель" id="105">
<DataPath>Объект.Задачи.Задача.Исполнитель</DataPath>
<DataPath>Объект.ТЧЗадачи.Задача.Исполнитель</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ЗадачиЗадачаИсполнительКонтекстноеМеню" id="106"/>
<ExtendedTooltip name="ЗадачиЗадачаИсполнительРасширеннаяПодсказка" id="107"/>
</LabelField>
<LabelField name="ЗадачиЗадачаОсновнаяЗадача" id="114">
<DataPath>Объект.Задачи.Задача.ОсновнаяЗадача</DataPath>
<DataPath>Объект.ТЧЗадачи.Задача.ОсновнаяЗадача</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ЗадачиЗадачаОсновнаяЗадачаКонтекстноеМеню" id="115"/>
<ExtendedTooltip name="ЗадачиЗадачаОсновнаяЗадачаРасширеннаяПодсказка" id="116"/>
</LabelField>
<LabelField name="ЗадачиЗадачаКомментарииВКоде" id="111">
<DataPath>Объект.Задачи.Задача.КомментарииВКоде</DataPath>
<DataPath>Объект.ТЧЗадачи.Задача.КомментарииВКоде</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ЗадачиЗадачаКомментарииВКодеКонтекстноеМеню" id="112"/>
<ExtendedTooltip name="ЗадачиЗадачаКомментарииВКодеРасширеннаяПодсказка" id="113"/>
@ -588,5 +595,25 @@
</ToolTip>
<Action>КомандаПодборЗадач</Action>
</Command>
<Command name="КомандаОбновитьДанныеПоЗадачам" id="3">
<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>
<Picture>
<xr:Ref>StdPicture.Refresh</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>КомандаОбновитьДанныеПоЗадачам</Action>
<Representation>Picture</Representation>
</Command>
</Commands>
</Form>

View File

@ -43,11 +43,11 @@
ПараметрыОтбора = Новый Структура();
ПараметрыОтбора.Вставить("Задача",пЗадача);
НайденныеСтроки = Объект.Задачи.НайтиСтроки(ПараметрыОтбора);
НайденныеСтроки = Объект.ТЧЗадачи.НайтиСтроки(ПараметрыОтбора);
Если НайденныеСтроки.Количество() > 0 Тогда
Продолжить;
Конецесли;
СтрокаЗадачи = Объект.Задачи.Добавить();
СтрокаЗадачи = Объект.ТЧЗадачи.Добавить();
СтрокаЗадачи.Задача = пЗадача;
Конеццикла;
@ -65,12 +65,12 @@
ПараметрыОтбора.Вставить("Задача",пЗадача);
СтрокиКУдалению = Объект.ИсторияХранилища.НайтиСтроки(ПараметрыОтбора);
Для каждого СтрокаКУдалению из СтрокиКУдалению цикл
Объект.ИзмененныеОбъекты.Удалить(СтрокаКУдалению);
Объект.ИсторияХранилища.Удалить(СтрокаКУдалению);
Конеццикла;
Конецесли;
Если СтрокаЗадачиСтруктура = Неопределено Тогда
МассивЗадач = Объект.Задачи.Выгрузить(,"Задача");
МассивЗадач = Объект.ТЧЗадачи.Выгрузить(,"Задача");
Иначе
МассивЗадач = Новый Массив();
МассивЗадач.Добавить(СтрокаЗадачиСтруктура.Задача);
@ -103,8 +103,17 @@
КонецЦикла;
ЗаполнитьИзмененныеОбъекты(СтрокаЗадачиСтруктура);
ОчиститьСвязанныеТЧНаСервере();
КонецПроцедуры
&НаСервере
Процедура ОчиститьСвязанныеТЧНаСервере()
пОбъект = РеквизитФормыВЗначение("Объект");
пОбъект.ОчиститьСвязанныеТЧ();
ЗначениеВРеквизитФормы(пОбъект,"Объект");
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьИзмененныеОбъекты(СтрокаЗадачиСтруктура = Неопределено)
Если СтрокаЗадачиСтруктура = Неопределено Тогда
@ -159,7 +168,7 @@
Процедура УстановитьОтборыВСвязанныхТЧ()
Перем пЗадача;
СтрокаЗадачи = Элементы.Задачи.ТекущиеДанные;
СтрокаЗадачи = Элементы.ТЧЗадачи.ТекущиеДанные;
Если СтрокаЗадачи <> Неопределено тогда
пЗадача = СтрокаЗадачи.Задача;
Конецесли;
@ -175,7 +184,7 @@
Процедура ПриИзмененииЗадачи(СтрокаЗадачи)
СтрокаЗадачиСтруктура = Новый Структура();
СтрокаЗадачиСтруктура.Вставить("Задача",СтрокаЗадачи.Задача);
ЗаполнитьИсториюХранилищаПоЗадачам(СтрокаЗадачиСтруктура);
ЗаполнитьИсториюХранилищаПоЗадачам(СтрокаЗадачиСтруктура);
КонецПроцедуры
&НаКлиенте
@ -185,7 +194,7 @@
&НаКлиенте
Процедура ЗадачиЗадачаПриИзменении(Элемент)
СтрокаЗадачи = Элементы.Задачи.ТекущиеДанные;
СтрокаЗадачи = Элементы.ТЧЗадачи.ТекущиеДанные;
Если СтрокаЗадачи = Неопределено тогда
Возврат;
Конецесли;
@ -209,7 +218,7 @@
&НаКлиенте
Процедура ИсторияХранилищаПометкаПриИзменении(Элемент)
СтрокаЗадачи = Элементы.Задачи.ТекущиеДанные;
СтрокаЗадачи = Элементы.ТЧЗадачи.ТекущиеДанные;
Если СтрокаЗадачи <> Неопределено тогда
пЗадача = СтрокаЗадачи.Задача;
Конецесли;
@ -296,41 +305,43 @@
НомерПорядка = 1;
Если Найти(пПолноеИмяМетаданных,".") = 0 Тогда
пПорядок = "1_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"Общие") > 0 Тогда
пПорядок = "2_";
пПорядок = "001_";
ИначеЕсли Найти(Лев(пПолноеИмяМетаданных,5),"Общие") > 0 Тогда
пПорядок = "002_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"Константа") > 0 Тогда
пПорядок = "3_";
пПорядок = "003_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"Справочник") > 0 Тогда
пПорядок = "4_";
пПорядок = "004_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"Документ") > 0 Тогда
пПорядок = "5_";
пПорядок = "005_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"ЖурналДокументов") > 0 Тогда
пПорядок = "6_";
пПорядок = "006_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"Перечисление") > 0 Тогда
пПорядок = "7_";
пПорядок = "007_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"Отчет") > 0 Тогда
пПорядок = "8_";
пПорядок = "008_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"Обработка") > 0 Тогда
пПорядок = "009_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"ПланВидовХарактеристик") > 0 Тогда
пПорядок = "9_";
пПорядок = "010_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"ПланСчетов") > 0 Тогда
пПорядок = "10_";
пПорядок = "011_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"ПланВидовРасчета") > 0 Тогда
пПорядок = "11_";
пПорядок = "012_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"РегистрСведений") > 0 Тогда
пПорядок = "12_";
пПорядок = "013_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"РегистрНакопления") > 0 Тогда
пПорядок = "13_";
пПорядок = "014_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"РегистрБухгалтерии") > 0 Тогда
пПорядок = "14_";
пПорядок = "015_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"РегистрРасчета") > 0 Тогда
пПорядок = "15_";
пПорядок = "016_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"БизнесПроцесс") > 0 Тогда
пПорядок = "16_";
пПорядок = "017_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"Задача") > 0 Тогда
пПорядок = "17_";
пПорядок = "018_";
ИначеЕсли Найти(пПолноеИмяМетаданных,"ВнешнийИсточникДанных") > 0 Тогда
пПорядок = "18_";
пПорядок = "019_";
Конецесли;
Возврат пПорядок;
@ -354,3 +365,13 @@
Процедура ПриОткрытии(Отказ)
ОбновитьЗаголовокФормы();
КонецПроцедуры
&НаКлиенте
Процедура ЗадачиПослеУдаления(Элемент)
ОчиститьСвязанныеТЧНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура КомандаОбновитьДанныеПоЗадачам(Команда)
ЗаполнитьИсториюХранилищаПоЗадачам();
КонецПроцедуры

View File

@ -2212,7 +2212,7 @@
</right>
</object>
<object>
<name>Document.узВыпускРелиза.TabularSection.Задачи.Attribute.Задача</name>
<name>Document.узВыпускРелиза.TabularSection.ТЧЗадачи.Attribute.Задача</name>
<right>
<name>Edit</name>
<value>false</value>
@ -5169,7 +5169,7 @@
</right>
</object>
<object>
<name>Document.узВыпускРелиза.TabularSection.Задачи</name>
<name>Document.узВыпускРелиза.TabularSection.ТЧЗадачи</name>
<right>
<name>Edit</name>
<value>false</value>