Имя: Пароль:
1C
 
Интерактивное копирование строки табличной части документа
0 yabes
 
11.10.10
06:57
Как сделать, чтобы при интерактивном копировании строки табличной части документа в новую строку копировалась не вся строка целиком, а только определенные колонки?
1 kokamoonga
 
11.10.10
07:01
а что такое "интерактивное копирование строки табличной части"?
2 yabes
 
11.10.10
07:03
Ну при выделении строки в табличной части документа и нажатие на значок "Добавить копированием" или при нажатии на F9
3 kokamoonga
 
11.10.10
07:06
ага, ясно. при таком копировании никак. нарисуй свою кнопку и в обработчике напиши что-то типа:


НоваяСтрокаТЧ = ТвояТабЧасть.Добавить();
НоваяСтрокаТЧ.Ревизит = КопируемаяСтрока.Реквизит1
// ну и так далее
4 yabes
 
11.10.10
07:09
Ну там же есть обработчик события ПередНачаломДобавления(Элемент, Отказ, Копирование). Может в нем реально что-то прописать? Ты точно уверен, что нельзя?
5 Фокусник
 
11.10.10
07:10
(3) Процедура РаботыПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
есть параметр НоваяСтрока:
Можно очистить лишние реквизиты
6 Фокусник
 
11.10.10
07:10
(5) к (0)
7 kokamoonga
 
11.10.10
07:12
(5) не катит. при копировании не вызывается этот обработчик
8 kokamoonga
 
11.10.10
07:13
(7) + или я туплю))
9 Фокусник
 
11.10.10
07:14
(7) При копировании не вызывается, вызывается при начале редактирования сразу после копирования :)

Если Копирование Тогда
  Элемент.ТекущаяСтрока.ЛишнийРеквизит = Неопределено;
КонецЕсли;
10 kokamoonga
 
11.10.10
07:15
(9) да туплю)
11 Рэйв
 
11.10.10
07:15
Процедура ТаблицаПередНачаломДобавления(Элемент, Отказ, Копирование)
   ТекСтр=Элементыформы.ТаблицаРассчета.ТекущиеДанные;
   Если Копирование тогда
       ТекСтр.КолонкаТакаято="";
   КонецЕсли;    
КонецПроцедуры
12 kokamoonga
 
11.10.10
07:16
(9) можно так да... но переписывать стандартный функционал не очень хорошо потому как пользователю может понадобиться в один прекрасный день скопировать строку целиком а тут нежданчик
13 Фокусник
 
11.10.10
07:19
(11) И очистит этот код исходную строку, которую копируем...
14 yabes
 
11.10.10
07:21
Разобрался! Всё получилось! Фокусник, спасибо тебе!)
15 Рэйв
 
11.10.10
07:23
(13)Нифига
16 Рэйв
 
11.10.10
07:23
Все как надо отрабатывает
17 yabes
 
11.10.10
07:26
(16) Фокусник прав. Я сам так сначала сделал! При этом и в копируемой и в новой строке очищается столбец
18 Рэйв
 
11.10.10
07:27
(17)У вас какая то странная 1С:-)  У меня все работает как надо
19 Фокусник
 
11.10.10
07:28
(16) Наверное событие спутал, в ПередНачаломДобавления еще не существует новой (добавленной) строки, поэтому текущая - это исходная, копируемая строка.
20 Рэйв
 
11.10.10
07:31
(17)Да,на реквизит копируемой строки не посмотрел:)
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс