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

Добавил отображение "ЧасыПлан", "ЧасыФакт" и "ЧасыКОплате" в отчет "Отчет по задачам"

This commit is contained in:
Буслов Дмитрий 2016-12-21 21:08:54 +10:00
parent 6a4fdda0f4
commit f6b016df40
9 changed files with 220 additions and 15 deletions
features
src
cf/Reports
узОтчетПоЗадачам.xml
узОтчетПоЗадачам/Templates
ОсновнаяСхемаКомпоновкиДанных.xml
ОсновнаяСхемаКомпоновкиДанных/Ext
features/step_definitions/УчетВремениПоЗадачам

@ -52,15 +52,16 @@
И я нажимаю на кнопку "Записать и закрыть"
Сценарий: Проверка вывода "ЧасыПлан", "ЧасыФакт", "ЧасыКОплате" в отчете "узОтчетПоЗадачам"
Когда В панели разделов я выбираю "Управление задачами"
И Я нажимаю кнопку командного интерфейса "Отчет по задачам"
#Когда В панели разделов я выбираю "Управление задачами"
Когда Я нажимаю кнопку командного интерфейса "Отчет по задачам"
Тогда открылось окно "Основной"
И я нажимаю на кнопку "Сформировать"
Тогда табличный документ формы с именем "ОтчетТабличныйДокумент" стал равен:
| 'Основная задача' | '' | '' | '' | '' | '' | '' | '' | 'Количество задач' |
| 'Статус' | '' | '' | '' | '' | '' | '' | '' | '' |
| 'Номер задачи' | 'Задача' | 'Исполнитель' | 'Конфигурация' | 'Важность' | 'Дата создания' | 'Дата передачи исполнителю' | 'Срок исполнения' | '' |
| '' | '' | '' | '' | '' | '' | '' | '' | '1' |
| 'Зарегистрирована' | '' | '' | '' | '' | '' | '' | '' | '1' |
| '1' | 'ЭтоТестоваяЗадача' | '' | '' | 'Обычная' | '19.12.2016 23:17:58' | '' | '' | '1' |
| 'Итого' | '' | '' | '' | '' | '' | '' | '' | '1' |
И Пауза 2
Тогда табличный документ формы с именем "ОтчетТабличныйДокумент" стал равен1:
| 'Основная задача' | '' | '' | '' | '' | '' | '' | '' | 'Часы план' | 'Часы факт' | 'Часы к оплате' | 'Количество задач' |
| 'Статус' | '' | '' | '' | '' | '' | '' | '' | '' | '' | '' | '' |
| 'Номер задачи' | 'Задача' | 'Исполнитель' | 'Конфигурация' | 'Важность' | 'Дата создания' | 'Дата передачи исполнителю' | 'Срок исполнения' | '' | '' | '' | '' |
| '' | '' | '' | '' | '' | '' | '' | '' | '10,00' | '15,00' | '10,00' | '1' |
| 'Зарегистрирована' | '' | '' | '' | '' | '' | '' | '' | '10,00' | '15,00' | '10,00' | '1' |
| '1' | 'ЭтоТестоваяЗадача' | '' | '' | 'Обычная' | '19.12.2016 23:17:58' | '' | '' | '10,00' | '15,00' | '10,00' | '1' |
| 'Итого' | '' | '' | '' | '' | '' | '' | '' | '10,00' | '15,00' | '10,00' | '1' |

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" 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:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" 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.1">
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" 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:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" 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">
<Report uuid="0096772c-ed94-4a59-8321-8a8628fc02a4">
<InternalInfo>
<xr:GeneratedType name="ReportObject.узОтчетПоЗадачам" category="Object">

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" 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:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" 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.1">
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" 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:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" 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">
<Template uuid="080b3cd1-82a5-47d9-ba48-ca8aa9d91154">
<Properties>
<Name>ОсновнаяСхемаКомпоновкиДанных</Name>

@ -98,6 +98,18 @@
<dataPath>Спринт</dataPath>
<field>Спринт</field>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>ЧасыФакт</dataPath>
<field>ЧасыФакт</field>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>ЧасыКОплате</dataPath>
<field>ЧасыКОплате</field>
</field>
<field xsi:type="DataSetFieldField">
<dataPath>ЧасыПлан</dataPath>
<field>ЧасыПлан</field>
</field>
<dataSource>ИсточникДанных1</dataSource>
<query>ВЫБРАТЬ
узЗадачи.Ссылка КАК Задача,
@ -116,7 +128,10 @@
узЗадачи.СрокИсполнения,
узЗадачи.НомерВнешнейЗаявки,
узЗадачи.URLВнешнейЗаявки,
1 КАК КоличествоЗадач
1 КАК КоличествоЗадач,
узЗадачи.ЧасыПлан,
узЗадачи.ЧасыФакт,
узЗадачи.ЧасыКОплате
ИЗ
Справочник.узЗадачи КАК узЗадачи
ГДЕ
@ -126,6 +141,18 @@
<dataPath>КоличествоЗадач</dataPath>
<expression>Сумма(КоличествоЗадач)</expression>
</totalField>
<totalField>
<dataPath>ЧасыКОплате</dataPath>
<expression>Сумма(ЧасыКОплате)</expression>
</totalField>
<totalField>
<dataPath>ЧасыПлан</dataPath>
<expression>Сумма(ЧасыПлан)</expression>
</totalField>
<totalField>
<dataPath>ЧасыФакт</dataPath>
<expression>Сумма(ЧасыФакт)</expression>
</totalField>
<settingsVariant>
<dcsset:name>Основной</dcsset:name>
<dcsset:presentation xsi:type="xs:string">Основной</dcsset:presentation>
@ -155,6 +182,15 @@
<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:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>ЧасыКОплате</dcsset:field>
</dcsset:item>
<dcsset:item xsi:type="dcsset:SelectedItemField">
<dcsset:field>КоличествоЗадач</dcsset:field>
</dcsset:item>

@ -28,6 +28,8 @@
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,"ПолеФормыСИменемСталоРавным(Парам01,Парам02)","ПолеФормыСИменемСталоРавным","Тогда поле формы с именем ""ЧасыФакт"" стало равным '15'");
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,"ЯПодготавливаюКонстантуСНаименованием(Парам01)","ЯПодготавливаюКонстантуСНаименованием","Допустим я подготавливаю константу с наименованием ""узИспользоватьУчетВремени""");
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,"ТабличныйДокументФормыСИменемСталРавен1(Парам01,ТабПарам)","ТабличныйДокументФормыСИменемСталРавен1","Тогда табличный документ формы с именем ""ОтчетТабличныйДокумент"" стал равен1:");
Возврат ВсеТесты;
КонецФункции
@ -155,4 +157,86 @@
Ванесса.ПроверитьРавенство(ДанныеПоля,Результат,"Ожидаемое значение поля.");
КонецПроцедуры
&НаКлиенте
//Тогда табличный документ формы с именем "ОтчетТабличныйДокумент" стал равен1:
//@ТабличныйДокументФормыСИменемСталРавен1(Парам01,ТабПарам)
Процедура ТабличныйДокументФормыСИменемСталРавен1(ИмяРеквизита,ТабПарамБыло,СталПустым = Ложь) Экспорт
Нашли = Ложь;
МассивФорм = НайтиФормыТекущегоОкна();
Для каждого ТекущаяФорма Из МассивФорм Цикл
ПолеТабДок = ТекущаяФорма.НайтиОбъект(Тип("ТестируемоеПолеФормы"),,ИмяРеквизита);
Если ПолеТабДок = Неопределено Тогда
Продолжить;
КонецЕсли;
Если ПолеТабДок = Неопределено Тогда
Продолжить;
КонецЕсли;
ТабДокСтало = Ванесса.ПолучитьТабДокИзTestClient(ПолеТабДок);
Если СталПустым Тогда
Если ТабДокСтало.Количество() = 0 Тогда
Возврат;
Иначе
Стр = "В табличном документе " + ТабДокСтало.Количество() + " строк, а ожидалось, что он пустой.";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
КонецЕсли;
//Ванесса.ПосмотретьЗначение(ТабПарамБыло,Истина);
Если ТабДокСтало.Количество() <> ТабПарамБыло.Количество() Тогда
Стр = "В табличном документе " + ТабДокСтало.Количество() + " строк, а ожидалось " + ТабПарамБыло.Количество() + " строк.";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
Ном = -1;
Для каждого СтрСтало Из ТабДокСтало Цикл
Ном = Ном + 1;
СтрБыло = ТабПарамБыло[Ном];
Если СтрСтало.Количество() <> СтрБыло.Количество() Тогда
Стр = "В табличном документе " + СтрСтало.Количество() + " колонок, а ожидалось " + СтрБыло.Количество() + " колонок.";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
НомКол = 0;
Для каждого ЗнСтало Из СтрСтало Цикл
НомКол = НомКол + 1;
ЗнБыло = СтрБыло["Кол" + НомКол];
Если ЗнСтало <> ЗнБыло Тогда
Если ЗнБыло <> "*" Тогда
Стр = "В табличном документе в колонке №" + НомКол + " значение= <" + ЗнСтало + "> , а ожидалось <" + ЗнБыло + ">";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЦикла;
Нашли = Истина;
Прервать;
КонецЦикла;
Если НЕ Нашли Тогда
Стр = "Элемент формы с именем <" + ИмяРеквизита + "> не найден!";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Функция НайтиФормыТекущегоОкна()
Возврат Ванесса.НайтиФормыТекущегоОкнаTestClient();
КонецФункции
//окончание текста модуля

@ -1 +1 @@
Form\Форма\Форма.bsl-->70e297e0-e8a2-43bf-8be1-62e408f610a1.0 (46, 203)
Form\Форма\Форма.bsl-->70e297e0-e8a2-43bf-8be1-62e408f610a1.0 (46, 287)

@ -73,6 +73,8 @@
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,""ПолеФормыСИменемСталоРавным(Парам01,Парам02)"",""ПолеФормыСИменемСталоРавным"",""Тогда поле формы с именем """"ЧасыФакт"""" стало равным '15'"");
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,""ЯПодготавливаюКонстантуСНаименованием(Парам01)"",""ЯПодготавливаюКонстантуСНаименованием"",""Допустим я подготавливаю константу с наименованием """"узИспользоватьУчетВремени"""""");
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,""ТабличныйДокументФормыСИменемСталРавен1(Парам01,ТабПарам)"",""ТабличныйДокументФормыСИменемСталРавен1"",""Тогда табличный документ формы с именем """"ОтчетТабличныйДокумент"""" стал равен1:"");
Возврат ВсеТесты;
КонецФункции
@ -200,6 +202,88 @@
Ванесса.ПроверитьРавенство(ДанныеПоля,Результат,""Ожидаемое значение поля."");
КонецПроцедуры
&НаКлиенте
//Тогда табличный документ формы с именем ""ОтчетТабличныйДокумент"" стал равен1:
//@ТабличныйДокументФормыСИменемСталРавен1(Парам01,ТабПарам)
Процедура ТабличныйДокументФормыСИменемСталРавен1(ИмяРеквизита,ТабПарамБыло,СталПустым = Ложь) Экспорт
Нашли = Ложь;
МассивФорм = НайтиФормыТекущегоОкна();
Для каждого ТекущаяФорма Из МассивФорм Цикл
ПолеТабДок = ТекущаяФорма.НайтиОбъект(Тип(""ТестируемоеПолеФормы""),,ИмяРеквизита);
Если ПолеТабДок = Неопределено Тогда
Продолжить;
КонецЕсли;
Если ПолеТабДок = Неопределено Тогда
Продолжить;
КонецЕсли;
ТабДокСтало = Ванесса.ПолучитьТабДокИзTestClient(ПолеТабДок);
Если СталПустым Тогда
Если ТабДокСтало.Количество() = 0 Тогда
Возврат;
Иначе
Стр = ""В табличном документе "" + ТабДокСтало.Количество() + "" строк, а ожидалось, что он пустой."";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
КонецЕсли;
//Ванесса.ПосмотретьЗначение(ТабПарамБыло,Истина);
Если ТабДокСтало.Количество() <> ТабПарамБыло.Количество() Тогда
Стр = ""В табличном документе "" + ТабДокСтало.Количество() + "" строк, а ожидалось "" + ТабПарамБыло.Количество() + "" строк."";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
Ном = -1;
Для каждого СтрСтало Из ТабДокСтало Цикл
Ном = Ном + 1;
СтрБыло = ТабПарамБыло[Ном];
Если СтрСтало.Количество() <> СтрБыло.Количество() Тогда
Стр = ""В табличном документе "" + СтрСтало.Количество() + "" колонок, а ожидалось "" + СтрБыло.Количество() + "" колонок."";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
НомКол = 0;
Для каждого ЗнСтало Из СтрСтало Цикл
НомКол = НомКол + 1;
ЗнБыло = СтрБыло[""Кол"" + НомКол];
Если ЗнСтало <> ЗнБыло Тогда
Если ЗнБыло <> ""*"" Тогда
Стр = ""В табличном документе в колонке №"" + НомКол + "" значение= <"" + ЗнСтало + ""> , а ожидалось <"" + ЗнБыло + "">"";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЦикла;
Нашли = Истина;
Прервать;
КонецЦикла;
Если НЕ Нашли Тогда
Стр = ""Элемент формы с именем <"" + ИмяРеквизита + ""> не найден!"";
Сообщить(Стр);
ВызватьИсключение Стр;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Функция НайтиФормыТекущегоОкна()
Возврат Ванесса.НайтиФормыТекущегоОкнаTestClient();
КонецФункции
//окончание текста модуля",
{4,1,
{9,

@ -1 +1 @@
{1,9,"",2dfc3d33-d540-4feb-9153-cf25659ec9c8,"70e297e0-e8a2-43bf-8be1-62e408f610a1",8770dd44-d5b1-4736-94dd-c62686e7b316,"70e297e0-e8a2-43bf-8be1-62e408f610a1.0",c03bd1df-f0d9-4100-8d27-3889cca5e016,"79a499cc-1782-4a2f-abe7-61ea4d49fd5a",44a02535-75a1-49ac-8561-a6f8e79d21fc,"8aa13ab8-188a-4f59-be4f-031aa5450c90.0",e28145f0-8f5a-4469-9fe5-b1f86fb512b6,"copyinfo",4174d491-948a-4413-b5f5-28f4df9095fd,"root",60c46de6-8ffa-417b-b85c-06c00990eceb,"version",174017ab-dc5e-4d32-b168-de6e5dbf97d9,"versions",34ccdd9a-b02b-4303-bb5b-81644da7cd1b}
{1,9,"",106fe068-840b-48ec-a8d0-737b07f24023,"70e297e0-e8a2-43bf-8be1-62e408f610a1",443350b1-90fa-458d-a962-ab4f66366540,"70e297e0-e8a2-43bf-8be1-62e408f610a1.0",e23f12ab-193f-4ad8-b3a0-ab7bc1439721,"79a499cc-1782-4a2f-abe7-61ea4d49fd5a",44a02535-75a1-49ac-8561-a6f8e79d21fc,"8aa13ab8-188a-4f59-be4f-031aa5450c90.0",e28145f0-8f5a-4469-9fe5-b1f86fb512b6,"copyinfo",5ba79528-3c57-447b-81ed-f8b0e423cc0f,"root",e1f93eed-18e7-4d09-a6d2-7d776fa2e162,"version",864e949b-75f4-44cd-9ddc-23aca6fb7f50,"versions",0f2201a9-67c6-4c82-8de1-a4f5035dadb0}