|
Заполнение табличной части ((( | ☑ | ||
---|---|---|---|---|
0
lamme
04.03.20
✎
10:37
|
БУХ 8,3 3.0
Внешняя обработка по заполнению табл части. Цель - в документ Х открыть выбор другого типа документа У и по нему заполнить табличну. часть исходного документа. Вроде просто. У обработки - реквизит обработки - ОбъектНазначения - это документ объект типа ДокументОбъект.ОтчетОРозничныхПродажах Из документа ОтчетОРозничныхПродажах открываю заполнение табл частей - выбирается документ тот что мне нужен &НаКлиенте Процедура ВыбратьЭлементДокументаКонец(Значение, ДопПараметры) Экспорт Если Значение = Неопределено Тогда Возврат; КонецЕсли; ВыполнитьЗаполнениеНаСервере(Значение); //КопироватьДанныеФормы(ИсхДокумент, ВладелецФормы.Объект); КонецПроцедуры &НаКлиенте Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт ПараметрыФормы = Новый Структура("РежимВыбора, ЗакрыватьПриВыборе", Истина, Истина); ОбработкаВыбора = Новый ОписаниеОповещения("ВыбратьЭлементДокументаКонец", ЭтаФорма, Новый Структура("Исхдокумент", ОбъектыНазначенияМассив[0])); ЭтотОбъект.ОбъектНазначения = ОбъектыНазначенияМассив[0]; ОткрытьФорму("Документ.ОтчетОРозничныхПродажах.ФормаВыбора", ПараметрыФормы, ЭтаФорма, , , , ОбработкаВыбора); КонецПроцедуры и вот тут вот какой то прикол &НаСервере Функция ВыполнитьЗаполнениеНаСервере(ВыбранныйДокумент) ЭтотОбъект.ОбъектНазначения.Продукция.Очистить(); - Объект недоступен для изменения // Возврат ОбъектЗаполнения; КонецФункции предполагаю = что там ссылка на объект проверяю &НаСервере Функция ВыполнитьЗаполнениеНаСервере(ВыбранныйДокумент) Если ТипЗнч(ЭтотОбъект.ОбъектНазначения) = тип("ДокументСсылка.ОтчетПроизводстваЗаСмену") тогда сообщить ("1"); иначе сообщить ("2"); конецесли; конецфункции Возвращает 1 - т.е. это всяко ссылка. а где прошло преобразование из документобъект в ссылку ? |
|||
1
Cyberhawk
04.03.20
✎
10:46
|
Меняй не объекты БД в памяти, а данные формы
|
|||
2
lamme
04.03.20
✎
10:46
|
пытаюсь ..
и заблудился .. |
|||
3
Cyberhawk
04.03.20
✎
10:47
|
В документации по нужной подсистеме БСП есть примеры
|
|||
4
d4rkmesa
04.03.20
✎
10:52
|
ЭтотОбъект.ОбъектНазначения.Продукция.Очистить()
поменяй на Объект.ОбъектНазначения.Продукция.Очистить() |
|||
5
D_E_S_131
04.03.20
✎
10:57
|
(4) У ссылки ТЧ очищать?
|
|||
6
lamme
04.03.20
✎
10:58
|
а тогда вопрос
обработка начинает свою жизнь из процедуры формы Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт и где тут -в этих параметрах - данныеформы ? |
|||
7
D_E_S_131
04.03.20
✎
11:00
|
&НаСервере
Функция ВыполнитьЗаполнениеНаСервере(ВыбранныйДокумент) ДокОбъект = РеквизитФормыВЗначение("Объект"); ДокОбъект.Продукция.Очистить(); КонецФункции |
|||
8
D_E_S_131
04.03.20
✎
11:01
|
...и после всех очисток/заполнений в конце:
ЗначениеВРеквизитФормы(ДокОбъект, "Объект"); |
|||
9
Cyberhawk
04.03.20
✎
11:30
|
(7) (8) Такое можно рекомендовать только от безысходности
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |