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

#58 @capitoshko отображение выполнение чеклиста в формате 5/9 в 3 строки карточки задачи

This commit is contained in:
Anton Ivanov 2018-09-30 17:22:45 +03:00
parent ca39d25671
commit 98a85ab3ac
4 changed files with 210 additions and 4 deletions

View File

@ -138,7 +138,8 @@
<v8:content>Показывать 3 строку в карточке задачи:
* § - есть файлы по задаче;
* ✉ - есть письма по задаче;
* заказчик.</v8:content>
* заказчик.
* 2/3- чеклиста</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
@ -740,6 +741,128 @@
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
</Properties>
</Attribute>
<Attribute uuid="64374d6d-9b51-49ef-abbf-b085c435ce18">
<Properties>
<Name>ЧекЛистВыполнено</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Чек лист выполнено</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>10</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
</Properties>
</Attribute>
<Attribute uuid="7abac868-bae5-4540-82b6-24f56075e8f3">
<Properties>
<Name>ЧекЛистВсего</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Чек лист всего</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>10</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
</Properties>
</Attribute>
<Attribute uuid="ceceb848-117a-492a-8252-a20976ca40b3">
<Properties>
<Name>ЧекЛистВыполнение</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Чек лист выполнение</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>20</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
</Properties>
</Attribute>
</ChildObjects>
</TabularSection>
<TabularSection uuid="fc9c0693-c970-4285-be29-6fac7fdd05e6">

View File

@ -4,8 +4,17 @@
пНастройкиКомпоновщика = ПолучитьИзВременногоХранилища(АдресВременногоХранилища);
ТЗЗадачи = ПолучитьТЗЗадачи(пНастройкиКомпоновщика);
ЕстьКолонкаЧекЛистВыполнено = ТЗЗадачи.Колонки.Найти("ЧекЛистВыполнено") <> Неопределено;
ТЗЗадачи.Колонки.Добавить("ЧекЛистВыполнение",Новый ОписаниеТипов("Строка"));
Для каждого СтрокаТЗЗадачи из ТЗЗадачи цикл
СтрокаТЗЗадачи.ОсновнаяЗадачаПредставление = СокрЛП(СтрокаТЗЗадачи.ОсновнаяЗадачаПредставление);
Если ЕстьКолонкаЧекЛистВыполнено
И ЗначениеЗаполнено(СтрокаТЗЗадачи.ЧекЛистВыполнено)
И ЗначениеЗаполнено(СтрокаТЗЗадачи.ЧекЛистВсего) Тогда
СтрокаТЗЗадачи.ЧекЛистВыполнение = "" + СтрокаТЗЗадачи.ЧекЛистВыполнено
+ "/" + СтрокаТЗЗадачи.ЧекЛистВсего;
Конецесли;
Конеццикла;
ТЧЗадачи.Загрузить(ТЗЗадачи);
КонецПроцедуры

View File

@ -383,6 +383,19 @@
пЭлементПолеЗаказчикПредставлениеВКарточкеЗадачи.ПутьКДанным = "Объект.ТЧЗадачи.КороткоеИмяЗаказчик";
пЭлементПолеЗаказчикПредставлениеВКарточкеЗадачи.Ширина = 3;
//+ #58 Дзеса Ігор (capitoshko)
//// ****** Поле формы "Процент выполнения согласно чек - листу" ***********
пЭлементПоляЧекЛистВыполнениеВКарточкеЗадачи = пЭлементыФормы.Вставить(
ИменаЭлементов.ИмяПоляЧекЛистВыполнение,
Тип("ПолеФормы"),
пЭлементКарточкаЗадачи_НижняяЧасть3Строка,
);
пЭлементПоляЧекЛистВыполнениеВКарточкеЗадачи.Вид = ВидПоляФормы.ПолеВвода;
пЭлементПоляЧекЛистВыполнениеВКарточкеЗадачи.ПутьКДанным = "Объект.ТЧЗадачи.ЧекЛистВыполнение";
пЭлементПоляЧекЛистВыполнениеВКарточкеЗадачи.Ширина = 5;
//- #58 Дзеса Ігор (capitoshko)
Конецесли;
////Павлюков - конец
@ -420,6 +433,10 @@
ИмяПоляЕстьПисьмаВКарточкеЗадачи = ИмяКолонки + "_ТЧЗадачи_НижняяЧасть3Строка_ЕстьПисьма";
ИмяПоляЗаказчикВКарточкеЗадачи = ИмяКолонки +"_ТЧЗадачи_НижняяЧасть3Строка_Заказчик";
//+ #58 Дзеса Ігор (capitoshko)
ИмяПоляЧекЛистВыполнение = ИмяКолонки +"_ТЧЗадачи_НижняяЧасть3Строка_ЧекЛистВыполнение";
//- #58 Дзеса Ігор (capitoshko)
РезультатФункции = Новый Структура();
РезультатФункции.Вставить("ИмяГруппыКолонки",ИмяГруппыКолонки);
РезультатФункции.Вставить("ИмяТЧЗадачи",ИмяТЧЗадачи);
@ -445,6 +462,10 @@
РезультатФункции.Вставить("ИмяПоляЗаказчикВКарточкеЗадачи",ИмяПоляЗаказчикВКарточкеЗадачи);
РезультатФункции.Вставить("ИмяПоляНомерЗадачиПредставлениеВКарточкеЗадачи",ИмяПоляНомерЗадачиПредставлениеВКарточкеЗадачи);
//+ #58 Дзеса Ігор (capitoshko)
РезультатФункции.Вставить("ИмяПоляЧекЛистВыполнение",ИмяПоляЧекЛистВыполнение);
//- #58 Дзеса Ігор (capitoshko)
Возврат РезультатФункции;
КонецФункции

View File

@ -186,6 +186,26 @@
</v8:item>
</title>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>ЧекЛистВсего</dataPath>
<field>ЧекЛистВсего</field>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Чек лист всего</v8:content>
</v8:item>
</title>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>ЧекЛистВыполнено</dataPath>
<field>ЧекЛистВыполнено</field>
<title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Чек лист выполнено</v8:content>
</v8:item>
</title>
</field>
<dataSource>ИсточникДанных1</dataSource>
<query>ВЫБРАТЬ
узНаблюдателиЗаЗадачами.Задача КАК Задача
@ -198,6 +218,29 @@
ТОГДА узНаблюдателиЗаЗадачами.Пользователь = &amp;Наблюдатель
ИНАЧЕ ИСТИНА
КОНЕЦ
ИНДЕКСИРОВАТЬ ПО
Задача
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
узЗадачиКомментарии.Ссылка КАК Ссылка,
СУММА(ВЫБОР
КОГДА узЗадачиКомментарии.Выполнено
ТОГДА 1
ИНАЧЕ 0
КОНЕЦ) КАК Выполнено,
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ узЗадачиКомментарии.НомерСтроки) КАК Всего
ПОМЕСТИТЬ ВТЧекЛист
ИЗ
Справочник.узЗадачи.Комментарии КАК узЗадачиКомментарии
СГРУППИРОВАТЬ ПО
узЗадачиКомментарии.Ссылка
ИНДЕКСИРОВАТЬ ПО
Ссылка
;
////////////////////////////////////////////////////////////////////////////////
@ -352,14 +395,18 @@
ТОГДА ""
ИНАЧЕ "✉"
КОНЕЦ КАК ЕстьПисьма,
ВТРезультат.Заказчик,
ВТРезультат.Заказчик.узКороткоеИмя КАК КороткоеИмяЗаказчик
ВТРезультат.Заказчик КАК Заказчик,
ВТРезультат.Заказчик.узКороткоеИмя КАК КороткоеИмяЗаказчик,
ЕСТЬNULL(ВТЧекЛист.Выполнено, 0) КАК ЧекЛистВыполнено,
ЕСТЬNULL(ВТЧекЛист.Всего, 0) КАК ЧекЛистВсего
ИЗ
ВТРезультат КАК ВТРезультат
ЛЕВОЕ СОЕДИНЕНИЕ ВТЗадачиСФайлами КАК ВТЗадачиСФайлами
ПО ВТРезультат.Задача = ВТЗадачиСФайлами.Задача
ЛЕВОЕ СОЕДИНЕНИЕ ВТЗадачиСПисьмами КАК ВТЗадачиСПисьмами
ПО ВТРезультат.Задача = ВТЗадачиСПисьмами.Задача</query>
ПО ВТРезультат.Задача = ВТЗадачиСПисьмами.Задача
ЛЕВОЕ СОЕДИНЕНИЕ ВТЧекЛист КАК ВТЧекЛист
ПО ВТРезультат.Задача = ВТЧекЛист.Ссылка</query>
</dataSet>
<calculatedField>
<dataPath>НомерЗадачиПредставление</dataPath>
@ -483,6 +530,12 @@
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>КороткоеИмяЗаказчик</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>ЧекЛистВсего</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>ЧекЛистВыполнено</dcsset:field>
</dcsset:item>
</dcsset:selection>
<dcsset:filter>
<dcsset:item xsi:type="dcsset:FilterItemComparison">