Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Функция КопироватьНаСервере(МассивСтрок)
- // Вставить содержимое обработчика.
- Если ЗначениеЗаполнено(ДокументЗаявки) Тогда
- ТЧ = РеквизитФормыВЗначение("Объект");
- ДокументСсылочка = ДокументЗаявки.Ссылка;
- Перфоманс = ДокументСсылочка.ПолучитьОбъект();
- Для каждого Элемент из МассивСтрок ЦИКЛ
- СтрокаТовара = Перфоманс.Товары.Добавить();
- ТЧ.Товары[Элемент].Поставлен = ЛОЖЬ;
- ЗаполнитьЗначенияСвойств(СтрокаТовара,ТЧ.Товары[Элемент]);
- КонецЦикла;
- Перфоманс.Записать(РежимЗаписиДокумента.Запись);
- Иначе
- Сообщить("Не выбрана заявка для копирования выделенных позиций");
- КонецЕсли;
- КонецФункции
- Функция ОбновитьДокумент()
- ЭтотОбъект.Записать();
- ЭтотОбъект.Прочитать();
- КонецФункции
- Функция Недубликат()
- Если ДокументЗаявки.Ссылка <> Объект.Ссылка Тогда
- Возврат Истина;
- Иначе
- Возврат ЛОЖЬ;
- КонецЕсли;
- КонецФункции
- &НаКлиенте
- Процедура Копировать(Команда)
- Если ЗначениеЗаполнено(ДокументЗаявки) Тогда
- Если Недубликат() Тогда
- Если УдалитьПослеКопирования = ИСТИНА Тогда
- Ответ = Вопрос("Данная операция:"+Символы.ПС+"1. Сохранит все изменения в заявке"+Символы.ПС+"2. Скопирует позиции"+Символы.ПС+"3. Удалит позиции, и запишет изменения"+Символы.ПС+"Хотите продолжить?",РежимДиалогаВопрос.ДаНет,0,КодВозвратаДиалога.Да,"Внимание");
- Иначе
- Ответ = Вопрос("Данная операция:"+Символы.ПС+"1. Сохранит все изменения в заявке"+Символы.ПС+"2. Скопирует позиции"+Символы.ПС+"Хотите продолжить?",РежимДиалогаВопрос.ДаНет,0,КодВозвратаДиалога.Да,"Внимание");
- КонецЕсли;
- Если Ответ = КодВозвратаДиалога.Да Тогда
- ОбновитьДокумент();
- ВыделенныеСтроки = Элементы.Товары.ВыделенныеСтроки;
- КопироватьНаСервере(ВыделенныеСтроки);
- Список = Новый СписокЗначений;
- Список.ЗагрузитьЗначения(ВыделенныеСтроки);
- Список.СортироватьПоЗначению(НаправлениеСортировки.Убыв);
- ВыделенныеСтроки = Список.ВыгрузитьЗначения();
- Если УдалитьПослеКопирования = ИСТИНА Тогда
- Для каждого Индекс из ВыделенныеСтроки Цикл
- Объект.Товары.Удалить(Индекс);
- КонецЦикла;
- ОбновитьДокумент();
- КонецЕсли;
- КонецЕсли;
- Иначе
- Сообщить("Ай-яй, нельзя копировать позиции в заявку откуда идет копирование");
- КонецЕсли;
- Иначе
- Сообщить("Не выбрана заявка для копирования выделенных позиций");
- КонецЕсли;
- КонецПроцедуры
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement