mirror of
https://github.com/BlizD/Tasks.git
synced 2025-03-25 21:28:57 +02:00
Merge pull request #59 from pallid/develope
#51 Новая команда "Открыть папку задачи на диске"
This commit is contained in:
commit
fbf48c720a
src/cf
Catalogs
CommonModules/узОбщийМодульКлиент/Ext
DataProcessors/узКанбанДоска/Forms/ФормаДинамическая/Ext
Roles/узПользователь/Ext
@ -3221,6 +3221,39 @@
|
|||||||
<Shortcut>Ctrl+Shift+F</Shortcut>
|
<Shortcut>Ctrl+Shift+F</Shortcut>
|
||||||
</Properties>
|
</Properties>
|
||||||
</Command>
|
</Command>
|
||||||
|
<Command uuid="055e7596-bb91-4c07-8a20-cb27e6375617">
|
||||||
|
<Properties>
|
||||||
|
<Name>КомандаОткрытьПапкуЗадачиНаДиске</Name>
|
||||||
|
<Synonym>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Открыть папку задачи на диске</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>en</v8:lang>
|
||||||
|
<v8:content>Create a file for the task on disk</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ro</v8:lang>
|
||||||
|
<v8:content>Create a file for the task on disk</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Synonym>
|
||||||
|
<Comment/>
|
||||||
|
<Group>CommandGroup.узДействияЗадачи</Group>
|
||||||
|
<CommandParameterType>
|
||||||
|
<v8:Type>cfg:CatalogRef.узЗадачи</v8:Type>
|
||||||
|
</CommandParameterType>
|
||||||
|
<ParameterUseMode>Multiple</ParameterUseMode>
|
||||||
|
<ModifiesData>false</ModifiesData>
|
||||||
|
<Representation>PictureAndText</Representation>
|
||||||
|
<ToolTip/>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>CommonPicture.Папка</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<Shortcut>Ctrl+Shift+O</Shortcut>
|
||||||
|
</Properties>
|
||||||
|
</Command>
|
||||||
</ChildObjects>
|
</ChildObjects>
|
||||||
</Catalog>
|
</Catalog>
|
||||||
</MetaDataObject>
|
</MetaDataObject>
|
14
src/cf/Catalogs/узЗадачи/Commands/КомандаОткрытьПапкуЗадачиНаДиске/Ext/CommandModule.bsl
Normal file
14
src/cf/Catalogs/узЗадачи/Commands/КомандаОткрытьПапкуЗадачиНаДиске/Ext/CommandModule.bsl
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
||||||
|
|
||||||
|
Если ТипЗнч(ПараметрКоманды) = Тип("СправочникСсылка.узЗадачи") Тогда
|
||||||
|
Массив = Новый Массив;
|
||||||
|
Массив.Добавить(ПараметрКоманды);
|
||||||
|
ИначеЕсли ТипЗнч(ПараметрКоманды) = Тип("Массив") Тогда
|
||||||
|
Массив = ПараметрКоманды;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
узОбщийМодульКлиент.ОткрытьПапкуЗадачиНаДиске(Массив);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
@ -20,7 +20,7 @@
|
|||||||
Процедура СоздатьФайлДляЗадачиНаДиске(Массив) Экспорт
|
Процедура СоздатьФайлДляЗадачиНаДиске(Массив) Экспорт
|
||||||
|
|
||||||
Пользователь = ПользователиКлиентСервер.ТекущийПользователь();
|
Пользователь = ПользователиКлиентСервер.ТекущийПользователь();
|
||||||
Каталог = узОбщийМодульСервер.ЗначениеРеквизитаОбъекта(Пользователь, "узКаталогПользователя");
|
Каталог = ПолучитьКаталогПользователя(Пользователь);
|
||||||
|
|
||||||
Если НЕ ЗначениеЗаполнено(Каталог) Тогда
|
Если НЕ ЗначениеЗаполнено(Каталог) Тогда
|
||||||
Каталог = ВыбратьКаталог(РежимДиалогаВыбораФайла.ВыборКаталога, "Выберите каталог");
|
Каталог = ВыбратьКаталог(РежимДиалогаВыбораФайла.ВыборКаталога, "Выберите каталог");
|
||||||
@ -90,3 +90,65 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Процедура ОткрытьПапкуЗадачиНаДиске(Массив) Экспорт
|
||||||
|
|
||||||
|
Пользователь = ПользователиКлиентСервер.ТекущийПользователь();
|
||||||
|
Каталог = ПолучитьКаталогПользователя(Пользователь);
|
||||||
|
|
||||||
|
Если НЕ ЗначениеЗаполнено(Каталог) Тогда
|
||||||
|
|
||||||
|
пТекстСообщения = узОбщийМодульСервер.ПолучитьТекстСообщения("ВНИМАНИЕ! Для открытия задачи на диске "
|
||||||
|
+"не указан реквизит [Каталог пользователя] в справочнике пользователи",97);
|
||||||
|
Сообщить(пТекстСообщения);
|
||||||
|
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Для Каждого СтрокаМассива Из Массив Цикл
|
||||||
|
|
||||||
|
КодЗадачи = узОбщийМодульСервер.ЗначениеРеквизитаОбъекта(СтрокаМассива, "Код");
|
||||||
|
Код = ""+Формат(КодЗадачи,"ЧГ=0");
|
||||||
|
|
||||||
|
Разделитель = ПолучитьРазделительПути();
|
||||||
|
|
||||||
|
Если НЕ СтрЗаканчиваетсяНа(Каталог, Разделитель) Тогда
|
||||||
|
Каталог = Каталог + Разделитель;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
МаскаПоиска = "*#"+Код+"*";
|
||||||
|
МассивФайлов = НайтиФайлы(Каталог, МаскаПоиска);
|
||||||
|
|
||||||
|
Если МассивФайлов.Количество() = 0 Тогда
|
||||||
|
пТекстСообщения = узОбщийМодульСервер.ПолучитьТекстСообщения("Не найдена папка с задачей #%1 в каталоге %2",98);
|
||||||
|
пТекстСообщения = СтрШаблон(пТекстСообщения, Код, Каталог);
|
||||||
|
Сообщить(пТекстСообщения);
|
||||||
|
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если МассивФайлов.Количество() > 1 Тогда
|
||||||
|
пТекстСообщения = узОбщийМодульСервер.ПолучитьТекстСообщения("Найдено более одной папки для задачи #%1 в каталоге %2",99);
|
||||||
|
пТекстСообщения = СтрШаблон(пТекстСообщения, Код, Каталог);
|
||||||
|
Сообщить(пТекстСообщения);
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ОписаниеОповещения = Новый ОписаниеОповещения("ОткрытьПапкуЗадачиНаДиске_Продолжение", ЭтотОбъект);
|
||||||
|
ВыполнитьОбработкуОповещения(ОписаниеОповещения, МассивФайлов[0].ПолноеИмя);
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ОткрытьПапкуЗадачиНаДиске_Продолжение(Результат, ДополнительныеПараметры) Экспорт
|
||||||
|
|
||||||
|
ЗапуститьПриложение(Результат);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Функция ПолучитьКаталогПользователя(Пользователь)
|
||||||
|
|
||||||
|
Возврат узОбщийМодульСервер.ЗначениеРеквизитаОбъекта(Пользователь, "узКаталогПользователя");
|
||||||
|
|
||||||
|
КонецФункции
|
@ -539,5 +539,25 @@
|
|||||||
<Action>КомандаСоздатьФайлДляЗадачиНаДиске</Action>
|
<Action>КомандаСоздатьФайлДляЗадачиНаДиске</Action>
|
||||||
<Representation>TextPicture</Representation>
|
<Representation>TextPicture</Representation>
|
||||||
</Command>
|
</Command>
|
||||||
|
<Command name="КомандаОткрытьПапкуЗадачиНаДиске" id="10">
|
||||||
|
<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+O</Shortcut>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>CommonPicture.Папка</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<Action>КомандаОткрытьПапкуЗадачиНаДиске</Action>
|
||||||
|
</Command>
|
||||||
</Commands>
|
</Commands>
|
||||||
</Form>
|
</Form>
|
@ -226,6 +226,8 @@
|
|||||||
МассивКодовСообщений.Добавить(81);//Добавить в текущие дела
|
МассивКодовСообщений.Добавить(81);//Добавить в текущие дела
|
||||||
МассивКодовСообщений.Добавить(83);//Скопировать комментарий в коде Copy the comment in the code
|
МассивКодовСообщений.Добавить(83);//Скопировать комментарий в коде Copy the comment in the code
|
||||||
МассивКодовСообщений.Добавить(96);//Создать файл для задачи на диске
|
МассивКодовСообщений.Добавить(96);//Создать файл для задачи на диске
|
||||||
|
МассивКодовСообщений.Добавить(101);//Открыть папку задачи на диске
|
||||||
|
|
||||||
|
|
||||||
СтруктураСообщений = РегистрыСведений.узСловарь.ПолучитьСтруктуруСообщений(МассивКодовСообщений);
|
СтруктураСообщений = РегистрыСведений.узСловарь.ПолучитьСтруктуруСообщений(МассивКодовСообщений);
|
||||||
|
|
||||||
@ -244,6 +246,11 @@
|
|||||||
пКомандаСоздатьФайлДляЗадачиНаДиске.ИмяКоманды="КомандаСоздатьФайлДляЗадачиНаДиске";
|
пКомандаСоздатьФайлДляЗадачиНаДиске.ИмяКоманды="КомандаСоздатьФайлДляЗадачиНаДиске";
|
||||||
пКомандаСоздатьФайлДляЗадачиНаДиске.Отображение = ОтображениеКнопки.КартинкаИТекст;
|
пКомандаСоздатьФайлДляЗадачиНаДиске.Отображение = ОтображениеКнопки.КартинкаИТекст;
|
||||||
|
|
||||||
|
пКомандаОткрытьПапкуЗадачиНаДиске = пЭлементыФормы.Добавить(ИменаЭлементов.ИмяКомандыОткрытьПапкуЗадачиНаДиске, Тип("КнопкаФормы"), пЭлементТЧЗадачи.КонтекстноеМеню);
|
||||||
|
пКомандаОткрытьПапкуЗадачиНаДиске.Заголовок=СтруктураСообщений.Текст101;
|
||||||
|
пКомандаОткрытьПапкуЗадачиНаДиске.ИмяКоманды="КомандаОткрытьПапкуЗадачиНаДиске";
|
||||||
|
пКомандаОткрытьПапкуЗадачиНаДиске.Отображение = ОтображениеКнопки.КартинкаИТекст;
|
||||||
|
|
||||||
пКомандаДобавитьВСпринт = пЭлементыФормы.Добавить(ИменаЭлементов.ИмяКомандыДобавитьВСпринт, Тип("КнопкаФормы"), пЭлементТЧЗадачи.КонтекстноеМеню);
|
пКомандаДобавитьВСпринт = пЭлементыФормы.Добавить(ИменаЭлементов.ИмяКомандыДобавитьВСпринт, Тип("КнопкаФормы"), пЭлементТЧЗадачи.КонтекстноеМеню);
|
||||||
пКомандаДобавитьВСпринт.Заголовок=СтруктураСообщений.Текст71;
|
пКомандаДобавитьВСпринт.Заголовок=СтруктураСообщений.Текст71;
|
||||||
пКомандаДобавитьВСпринт.ИмяКоманды="КомандаДобавитьВСпринт";
|
пКомандаДобавитьВСпринт.ИмяКоманды="КомандаДобавитьВСпринт";
|
||||||
@ -342,6 +349,7 @@
|
|||||||
ИмяКомандыДобавитьВТекущиеДела = ИмяКолонки + "_ТЧЗадачи_КомандаДобавитьВТекущиеДела";
|
ИмяКомандыДобавитьВТекущиеДела = ИмяКолонки + "_ТЧЗадачи_КомандаДобавитьВТекущиеДела";
|
||||||
ИмяКомандыСкопироватьКомментарийВКоде = ИмяКолонки + "_ТЧЗадачи_КомандаСкопироватьКомментарийВКоде";
|
ИмяКомандыСкопироватьКомментарийВКоде = ИмяКолонки + "_ТЧЗадачи_КомандаСкопироватьКомментарийВКоде";
|
||||||
ИмяКомандыСоздатьФайлДляЗадачиНаДиске = ИмяКолонки + "_ТЧЗадачи_СоздатьФайлДляЗадачиНаДиске";
|
ИмяКомандыСоздатьФайлДляЗадачиНаДиске = ИмяКолонки + "_ТЧЗадачи_СоздатьФайлДляЗадачиНаДиске";
|
||||||
|
ИмяКомандыОткрытьПапкуЗадачиНаДиске = ИмяКолонки + "_ТЧЗадачи_ОткрытьПапкуЗадачиНаДиске";
|
||||||
|
|
||||||
ИмяКарточкаЗадачи = ИмяКолонки + "_ТЧЗадачиКарточкаЗадачи";
|
ИмяКарточкаЗадачи = ИмяКолонки + "_ТЧЗадачиКарточкаЗадачи";
|
||||||
ИмяКарточкаЗадачи_НижняяЧасть = ИмяКолонки + "_ТЧЗадачиКарточкаЗадачи_НижняяЧасть";
|
ИмяКарточкаЗадачи_НижняяЧасть = ИмяКолонки + "_ТЧЗадачиКарточкаЗадачи_НижняяЧасть";
|
||||||
@ -362,6 +370,7 @@
|
|||||||
РезультатФункции.Вставить("ИмяКомандыДобавитьВТекущиеДела",ИмяКомандыДобавитьВТекущиеДела);
|
РезультатФункции.Вставить("ИмяКомандыДобавитьВТекущиеДела",ИмяКомандыДобавитьВТекущиеДела);
|
||||||
РезультатФункции.Вставить("ИмяКомандыСкопироватьКомментарийВКоде",ИмяКомандыСкопироватьКомментарийВКоде);
|
РезультатФункции.Вставить("ИмяКомандыСкопироватьКомментарийВКоде",ИмяКомандыСкопироватьКомментарийВКоде);
|
||||||
РезультатФункции.Вставить("ИмяКомандыСоздатьФайлДляЗадачиНаДиске",ИмяКомандыСоздатьФайлДляЗадачиНаДиске);
|
РезультатФункции.Вставить("ИмяКомандыСоздатьФайлДляЗадачиНаДиске",ИмяКомандыСоздатьФайлДляЗадачиНаДиске);
|
||||||
|
РезультатФункции.Вставить("ИмяКомандыОткрытьПапкуЗадачиНаДиске",ИмяКомандыОткрытьПапкуЗадачиНаДиске);
|
||||||
|
|
||||||
РезультатФункции.Вставить("ИмяКарточкаЗадачи",ИмяКарточкаЗадачи);
|
РезультатФункции.Вставить("ИмяКарточкаЗадачи",ИмяКарточкаЗадачи);
|
||||||
РезультатФункции.Вставить("ИмяКарточкаЗадачи_НижняяЧасть",ИмяКарточкаЗадачи_НижняяЧасть);
|
РезультатФункции.Вставить("ИмяКарточкаЗадачи_НижняяЧасть",ИмяКарточкаЗадачи_НижняяЧасть);
|
||||||
@ -997,6 +1006,23 @@
|
|||||||
Оповестить("КомандаСоздатьИерархиюЗадачНаДиске");
|
Оповестить("КомандаСоздатьИерархиюЗадачНаДиске");
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура КомандаОткрытьПапкуЗадачиНаДиске(Команда)
|
||||||
|
СтрокаТЧ = Элементы[ИмяАктивнойТЧ].ТекущиеДанные;
|
||||||
|
Если СтрокаТЧ = Неопределено тогда
|
||||||
|
узОбщийМодульСервер.узСообщить("Выберите задачи, для которых хотите открыть папки на диске",100);
|
||||||
|
Возврат;
|
||||||
|
Конецесли;
|
||||||
|
МассивВыделенныхСтрок = Элементы[ИмяАктивнойТЧ].ВыделенныеСтроки;
|
||||||
|
Если МассивВыделенныхСтрок.Количество() = 0 Тогда
|
||||||
|
узОбщийМодульСервер.узСообщить("Выберите задачи, для которых хотите открыть папки на диске",100);
|
||||||
|
Возврат;
|
||||||
|
Конецесли;
|
||||||
|
Массив = ПолучитьМассивЗадачПоВыделеннымСтрокам(МассивВыделенныхСтрок);
|
||||||
|
узОбщийМодульКлиент.ОткрытьПапкуЗадачиНаДиске(Массив);
|
||||||
|
Оповестить("КомандаОткрытьПапкуЗадачиНаДиске");
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область ОформлениеКанбанДоски
|
#Область ОформлениеКанбанДоски
|
||||||
|
@ -84,6 +84,13 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>Catalog.узЗадачи.Command.КомандаОткрытьПапкуЗадачиНаДиске</name>
|
||||||
|
<right>
|
||||||
|
<name>View</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
<object>
|
<object>
|
||||||
<name>InformationRegister.НаличиеПрисоединенныхФайлов</name>
|
<name>InformationRegister.НаличиеПрисоединенныхФайлов</name>
|
||||||
<right>
|
<right>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user