Перенос нескольких работ в проект. ППМ

Обнаружил, что часто приходится множество работ заносить в один проект. Захожу в каждую работу из списка, копирую название проекта в буфер обмена, вставляю в поле проект, закрываю.

Но ведь я программист и должен автоматизировать свой труд?

Поэтому написал небольшой код, который по нажатию кнопки «В проект» запрашивает проект и переносит в него выделенные работы.

Теперь разбор работ, полученных из Toggl, стал еще быстрее.


&НаКлиенте
Процедура ВПроект(Команда)
	ПараметрыФормы = Новый Структура();
	ПараметрыФормы.Вставить("МножественныйВыбор", Ложь);
	ПараметрыФормы.Вставить("РежимВыбора", истина);
	ДП = Новый Структура("ВыделенныеСтроки", Элементы.Список.ВыделенныеСтроки);
	ОО = Новый ОписаниеОповещения("ВПроектЗавершение", ЭтаФорма, ДП);
	ОткрытьФорму("Справочник.Проекты.ФормаСписка", ПараметрыФормы,ЭтаФорма,,,,ОО, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецПроцедуры

&НаКлиенте
Процедура ВПроектЗавершение(Результат, ДП) Экспорт
	Если Не ЗначениеЗаполнено(Результат) Тогда
		Возврат;
	КонецЕсли;
	
	ПеренестиРаботыВПроект(ДП.ВыделенныеСтроки, Результат);
	//ЭтаФорма.ОбновитьОтображениеДанных(Элементы.Список);
	Элементы.Список.Обновить();
	
КонецПроцедуры

&НаСервере
Процедура ПеренестиРаботыВПроект(Работы, Проект) Экспорт
	Для Каждого Работа ИЗ Работы Цикл
		РО = Работа.ПолучитьОбъект();
		РО.Проект = Проект;
		РО.Записать();
	КонецЦикла;
КонецПроцедуры

Объем: 0.3 час.

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *