mirror of
https://github.com/BlizD/Tasks.git
synced 2025-03-19 21:07:53 +02:00
#36 Копирование в буфер обмена номера задачи плюс название задачи в канбан доске
This commit is contained in:
parent
beaa824ec7
commit
6719d82c2b
@ -20,4 +20,33 @@
|
||||
|
||||
Функция ПолучитьНомерЗадачи(ЗадачаСсылка) Экспорт
|
||||
Возврат Формат(ЗадачаСсылка.Код,"ЧГ=0");
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьКомментарииВКоде(ДопПараметры) Экспорт
|
||||
Перем КомментарииВКоде;
|
||||
|
||||
пКод = ДопПараметры.Код;
|
||||
пИсполнитель = ДопПараметры.Исполнитель;
|
||||
пНомерВнешнейЗаявки = ДопПараметры.НомерВнешнейЗаявки;
|
||||
|
||||
ФИОИсполнителя = Неопределено;
|
||||
Если ЗначениеЗаполнено(пИсполнитель) Тогда
|
||||
МассивПодстрок = СтрРазделить(пИсполнитель," ");
|
||||
КоличествоСлов = МассивПодстрок.Количество();
|
||||
Если КоличествоСлов > 0 Тогда
|
||||
ФИОИсполнителя = " "+ МассивПодстрок[0];
|
||||
Конецесли;
|
||||
Если КоличествоСлов > 1 Тогда
|
||||
ФИОИсполнителя = ФИОИсполнителя + " " + Лев(МассивПодстрок[1],1)+".";
|
||||
Конецесли;
|
||||
Если КоличествоСлов > 2 Тогда
|
||||
ФИОИсполнителя = ФИОИсполнителя + "" + Лев(МассивПодстрок[2],1)+".";
|
||||
Конецесли;
|
||||
Конецесли;
|
||||
пКомментарииВКоде = "//+ #"+Формат(пКод,"ЧГ=0")
|
||||
+ ?(ЗначениеЗаполнено(пНомерВнешнейЗаявки)," "+пНомерВнешнейЗаявки,"")
|
||||
+ ФИОИсполнителя
|
||||
+ " " + Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd");
|
||||
|
||||
Возврат пКомментарииВКоде;
|
||||
КонецФункции
|
@ -374,26 +374,20 @@
|
||||
&НаКлиенте
|
||||
Процедура КомментарииВКодеОткрытие(Элемент, СтандартнаяОбработка)
|
||||
СтандартнаяОбработка = Ложь;
|
||||
ФИОИсполнителя = Неопределено;
|
||||
Если ЗначениеЗаполнено(Объект.Исполнитель) Тогда
|
||||
МассивПодстрок = СтрРазделить(Объект.Исполнитель," ");
|
||||
КоличествоСлов = МассивПодстрок.Количество();
|
||||
Если КоличествоСлов > 0 Тогда
|
||||
ФИОИсполнителя = " "+ МассивПодстрок[0];
|
||||
Конецесли;
|
||||
Если КоличествоСлов > 1 Тогда
|
||||
ФИОИсполнителя = ФИОИсполнителя + " " + Лев(МассивПодстрок[1],1)+".";
|
||||
Конецесли;
|
||||
Если КоличествоСлов > 2 Тогда
|
||||
ФИОИсполнителя = ФИОИсполнителя + "" + Лев(МассивПодстрок[2],1)+".";
|
||||
Конецесли;
|
||||
Конецесли;
|
||||
Объект.КомментарииВКоде = "//+ #"+Формат(Объект.Код,"ЧГ=0")
|
||||
+ ?(ЗначениеЗаполнено(Объект.НомерВнешнейЗаявки)," "+Объект.НомерВнешнейЗаявки,"")
|
||||
+ ФИОИсполнителя
|
||||
+ " " + Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd");
|
||||
|
||||
ДопПараметры = Новый Структура();
|
||||
ДопПараметры.Вставить("Код",Объект.Код);
|
||||
ДопПараметры.Вставить("Исполнитель",Объект.Исполнитель);
|
||||
ДопПараметры.Вставить("НомерВнешнейЗаявки",Объект.НомерВнешнейЗаявки);
|
||||
|
||||
Объект.КомментарииВКоде = ПолучитьКомментарийВКодеНаСервере(ДопПараметры);
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервереБезКонтекста
|
||||
Функция ПолучитьКомментарийВКодеНаСервере(ДопПараметры)
|
||||
Возврат Справочники.узЗадачи.ПолучитьКомментарииВКоде(ДопПараметры);
|
||||
КонецФункции
|
||||
|
||||
&НаКлиенте
|
||||
Процедура СрокИсполненияПриИзменении(Элемент)
|
||||
Если НЕ ЗначениеЗаполнено(Объект.СрокИсполнения) Тогда
|
||||
|
@ -6,3 +6,13 @@
|
||||
//Возврат ТекстHTMLМакет;
|
||||
КонецФункции
|
||||
|
||||
Функция УстановитьТекстВБуферОбмена(ТекстДляКопирования) Экспорт
|
||||
пОбъект = Новый COMОбъект("htmlfile");
|
||||
пОбъект.ParentWindow.ClipboardData.Setdata("Text", ТекстДляКопирования);
|
||||
|
||||
пТекстСообщения = узОбщийМодульСервер.ПолучитьТекстСообщения("Скопирован в буфер: %1",86);
|
||||
пТекстСообщения = СтрШаблон(пТекстСообщения,ТекстДляКопирования);
|
||||
ПоказатьОповещениеПользователя(пТекстСообщения);
|
||||
|
||||
Возврат ТекстДляКопирования;
|
||||
КонецФункции
|
@ -5194,16 +5194,211 @@
|
||||
<c>
|
||||
<c>
|
||||
<f>15</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обработка.узКанбанДоска.ФормаДинамическая</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>14</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Скопировать комментарий в коде</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>11</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Copy the comment in the code</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>17</f>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<rowsItem>
|
||||
<index>84</index>
|
||||
<row>
|
||||
<c>
|
||||
<c>
|
||||
<f>16</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>84</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>13</f>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>15</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обработка.узКанбанДоска.ФормаДинамическая</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>14</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Выберите задачу, по которой хотите скопировать комментарий в коде</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>11</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Select the task for which you want to copy the comment in the code</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>17</f>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<rowsItem>
|
||||
<index>85</index>
|
||||
<row>
|
||||
<c>
|
||||
<c>
|
||||
<f>16</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>85</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>13</f>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>15</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обработка.узКанбанДоска.ФормаДинамическая</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>14</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Можно выбрать только одну задачу для копирования комментария в коде</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>11</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>You can select only one task to copy the comment in the code</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>17</f>
|
||||
</c>
|
||||
</c>
|
||||
</row>
|
||||
</rowsItem>
|
||||
<rowsItem>
|
||||
<index>86</index>
|
||||
<row>
|
||||
<c>
|
||||
<c>
|
||||
<f>16</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>86</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>13</f>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>15</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обработка.узКанбанДоска.ФормаДинамическая</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>14</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Скопирован в буфер: %1</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<c>
|
||||
<f>11</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Copied to clipboard: %1</v8:content>
|
||||
</v8:item>
|
||||
</tl>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
@ -5215,8 +5410,8 @@
|
||||
</rowsItem>
|
||||
<templateMode>true</templateMode>
|
||||
<defaultFormatIndex>18</defaultFormatIndex>
|
||||
<height>84</height>
|
||||
<vgRows>84</vgRows>
|
||||
<height>87</height>
|
||||
<vgRows>87</vgRows>
|
||||
<line width="1" gap="false">
|
||||
<v8ui:style xsi:type="v8ui:SpreadsheetDocumentCellLineType">Solid</v8ui:style>
|
||||
</line>
|
||||
|
@ -502,5 +502,21 @@
|
||||
<Action>КомандаДобавитьВТекущиеДела</Action>
|
||||
<Representation>TextPicture</Representation>
|
||||
</Command>
|
||||
<Command name="КомандаСкопироватьКомментарийВКоде" id="8">
|
||||
<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>
|
||||
<Shortcut>Ctrl+Shift+C</Shortcut>
|
||||
<Action>КомандаСкопироватьКомментарийВКоде</Action>
|
||||
</Command>
|
||||
</Commands>
|
||||
</Form>
|
@ -175,13 +175,19 @@
|
||||
МассивКодовСообщений.Добавить(73);//Следить за задачей
|
||||
МассивКодовСообщений.Добавить(74);//Не следить за задачей
|
||||
МассивКодовСообщений.Добавить(81);//Добавить в текущие дела
|
||||
МассивКодовСообщений.Добавить(83);//Скопировать комментарий в коде Copy the comment in the code
|
||||
|
||||
СтруктураСообщений = РегистрыСведений.узСловарь.ПолучитьСтруктуруСообщений(МассивКодовСообщений);
|
||||
|
||||
пКомандаДобавитьВТекущиеДела = пЭлементыФормы.Добавить(ИменаЭлементов.ИмяКомандыДобавитьВТекущиеДела, Тип("КнопкаФормы"), пЭлементТЧЗадачи.КонтекстноеМеню);
|
||||
пКомандаДобавитьВТекущиеДела.Заголовок=СтруктураСообщений.Текст81;
|
||||
пКомандаДобавитьВТекущиеДела.ИмяКоманды="КомандаДобавитьВТекущиеДела";
|
||||
пКомандаДобавитьВТекущиеДела.Отображение = ОтображениеКнопки.КартинкаИТекст;
|
||||
пКомандаДобавитьВТекущиеДела.Отображение = ОтображениеКнопки.КартинкаИТекст;
|
||||
|
||||
пКомандаСкопироватьКомментарийВКоде = пЭлементыФормы.Добавить(ИменаЭлементов.ИмяКомандыСкопироватьКомментарийВКоде, Тип("КнопкаФормы"), пЭлементТЧЗадачи.КонтекстноеМеню);
|
||||
пКомандаСкопироватьКомментарийВКоде.Заголовок=СтруктураСообщений.Текст83;
|
||||
пКомандаСкопироватьКомментарийВКоде.ИмяКоманды="КомандаСкопироватьКомментарийВКоде";
|
||||
пКомандаСкопироватьКомментарийВКоде.Отображение = ОтображениеКнопки.КартинкаИТекст;
|
||||
|
||||
пКомандаДобавитьВСпринт = пЭлементыФормы.Добавить(ИменаЭлементов.ИмяКомандыДобавитьВСпринт, Тип("КнопкаФормы"), пЭлементТЧЗадачи.КонтекстноеМеню);
|
||||
пКомандаДобавитьВСпринт.Заголовок=СтруктураСообщений.Текст71;
|
||||
@ -279,6 +285,7 @@
|
||||
ИмяКомандыСледитьЗаЗадачей = ИмяКолонки + "_ТЧЗадачи_КомандаСледитьЗаЗадачей";
|
||||
ИмяКомандыНеСледитьЗаЗадачей = ИмяКолонки + "_ТЧЗадачи_КомандаНеСледитьЗаЗадачей";
|
||||
ИмяКомандыДобавитьВТекущиеДела = ИмяКолонки + "_ТЧЗадачи_КомандаДобавитьВТекущиеДела";
|
||||
ИмяКомандыСкопироватьКомментарийВКоде = ИмяКолонки + "_ТЧЗадачи_КомандаСкопироватьКомментарийВКоде";
|
||||
|
||||
ИмяКарточкаЗадачи = ИмяКолонки + "_ТЧЗадачиКарточкаЗадачи";
|
||||
ИмяКарточкаЗадачи_НижняяЧасть = ИмяКолонки + "_ТЧЗадачиКарточкаЗадачи_НижняяЧасть";
|
||||
@ -297,8 +304,9 @@
|
||||
РезультатФункции.Вставить("ИмяКомандыСледитьЗаЗадачей",ИмяКомандыСледитьЗаЗадачей);
|
||||
РезультатФункции.Вставить("ИмяКомандыНеСледитьЗаЗадачей",ИмяКомандыНеСледитьЗаЗадачей);
|
||||
РезультатФункции.Вставить("ИмяКомандыДобавитьВТекущиеДела",ИмяКомандыДобавитьВТекущиеДела);
|
||||
РезультатФункции.Вставить("ИмяКарточкаЗадачи",ИмяКарточкаЗадачи);
|
||||
РезультатФункции.Вставить("ИмяКомандыСкопироватьКомментарийВКоде",ИмяКомандыСкопироватьКомментарийВКоде);
|
||||
|
||||
РезультатФункции.Вставить("ИмяКарточкаЗадачи",ИмяКарточкаЗадачи);
|
||||
РезультатФункции.Вставить("ИмяКарточкаЗадачи_НижняяЧасть",ИмяКарточкаЗадачи_НижняяЧасть);
|
||||
РезультатФункции.Вставить("ИмяПоляЗадачиВКарточкеЗадачи",ИмяПоляЗадачиВКарточкеЗадачи);
|
||||
|
||||
@ -876,6 +884,46 @@
|
||||
Справочники.узТекущиеДела.ДобавитьЗадачуВТекущиеДела(ДопПараметры);
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура КомандаСкопироватьКомментарийВКоде(Команда)
|
||||
СтрокаТЧ = Элементы[ИмяАктивнойТЧ].ТекущиеДанные;
|
||||
Если СтрокаТЧ = Неопределено тогда
|
||||
узОбщийМодульСервер.узСообщить("Выберите задачу, по которой хотите скопировать комментарий в коде",84);
|
||||
Возврат;
|
||||
Конецесли;
|
||||
МассивВыделенныхСтрок = Элементы[ИмяАктивнойТЧ].ВыделенныеСтроки;
|
||||
Если МассивВыделенныхСтрок.Количество() = 0 Тогда
|
||||
узОбщийМодульСервер.узСообщить("Выберите задачу, по которой хотите скопировать комментарий в коде",84);
|
||||
Возврат;
|
||||
Конецесли;
|
||||
Если МассивВыделенныхСтрок.Количество() > 1 Тогда
|
||||
узОбщийМодульСервер.узСообщить("Можно выбрать только одну задачу для копирования комментария в коде",85);
|
||||
Возврат;
|
||||
Конецесли;
|
||||
пКомментарииВКоде = ПолучитьКомментарийВКодеНаСервере(МассивВыделенныхСтрок);
|
||||
узОбщийМодульКлиент.УстановитьТекстВБуферОбмена(пКомментарииВКоде);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Функция ПолучитьКомментарийВКодеНаСервере(МассивВыделенныхСтрок)
|
||||
МассивЗадач = ПолучитьМассивЗадачПоВыделеннымСтрокам(МассивВыделенныхСтрок);
|
||||
|
||||
Если МассивЗадач.Количество() > 1 Тогда
|
||||
узОбщийМодульСервер.узСообщить("Можно выбрать только одну задачу для копирования комментария в коде",85);
|
||||
Конецесли;
|
||||
|
||||
пЗадача = МассивЗадач[0];
|
||||
ДопПараметры = Новый Структура();
|
||||
ДопПараметры.Вставить("Код",пЗадача.Код);
|
||||
ДопПараметры.Вставить("Исполнитель",пЗадача.Исполнитель);
|
||||
ДопПараметры.Вставить("НомерВнешнейЗаявки",пЗадача.НомерВнешнейЗаявки);
|
||||
|
||||
пКомментарииВКоде = Справочники.узЗадачи.ПолучитьКомментарииВКоде(ДопПараметры);
|
||||
Возврат пКомментарииВКоде;
|
||||
КонецФункции
|
||||
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОформлениеКанбанДоски
|
||||
@ -1125,6 +1173,7 @@
|
||||
КонецФункции
|
||||
|
||||
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user