|
"Конвертация" внешней обработки из обычных форм в управляемые | ☑ | ||
---|---|---|---|---|
0
Wefast
23.09.15
✎
16:03
|
Необходимо переделать обработку на управляемые формы.
Начну с текущей проблемы. В обычной форме есть ревизит с типом ТаблицаЗначений. После в модуле форме вне процедур создавались колонки в этой таблице значений. После таблица заполняется и обрабатывается после. Я не понял как сделать колонки и просто создал табличную часть в обработке. После в обычных формах шел перебор колонок Для каждого Колонка из Реквизит.Колонки Цикл //идет заполнение другой табличной части этими колонками или что то еще КонецЦикла Сейчас перебрать так же не получается так как Объект.ТабЧасть имеет тип ДанныеФормыКоллекция. Я подумал воспользоваться ДанныеФормыВзначение("Объект.ТабЧасть",Тип(ТаблицаЗначений)); Но появляется ошибка что первый параметр не правильный. |
|||
1
vicof
23.09.15
✎
16:04
|
кавычки забыл, как минимум
|
|||
2
Wefast
23.09.15
✎
16:05
|
(1) ну я сюда не копировал, там ошибка не в кавычках, так как они есть.
|
|||
3
Cyberhawk
23.09.15
✎
16:10
|
"//идет заполнение другой табличной части этими колонками или что то еще " // делай на сервере, ничего переделывать не надо
|
|||
4
Wefast
23.09.15
✎
16:21
|
Сделал в общем так
Табличка = Объект.ТабЧасть.Выгрузить() Для каждого колонка из Табличка.Колонки Цикл // КонецЦикла; |
|||
5
xxTANATORxx
23.09.15
✎
16:22
|
(0)покури философию управляемых форм
пойми что такое упр форма что такое объект когда нужно исполнять код на клиенте на сервере и т.п |
|||
6
Wefast
23.09.15
✎
20:44
|
Перенес процедуру создания нового документа которая вызывается из процедуры на Клиенте.
В конце должная открываться форма создаваемого документа. На сервере она не откроется если я все правильно понял. Попытался передать обратно этот создаваемый документ. Но пишет что не может передавать такой тип с сервера на клиент. Вот как было: Сообщить("Создан документ "+НовыйДок); ФормаДокумента = НовыйДок.ПолучитьФорму(); ФормаДокумента.Открыть(); |
|||
7
Maniac
23.09.15
✎
20:51
|
В сказку попал))))
|
|||
8
Wefast
23.09.15
✎
21:04
|
Сделал так:
&НаКлиенте Процедура один() Форма = ПолучитьФорму("Документ.ПоступлениеТоваровУслуг.ФормаОбъекта"); ДанныеФормы = Форма.Объект; СоздатьДокумент(ДанныеФормы); КопироватьДанныеФормы(ДанныеФОрмы, Форма.Объект); Форма.Открыть(); КонецПроцедуры Функция СоздатьДокумент(ДанныеФОрмы); НовыйДок = Документы.МойДок.Создать(); //заполнение всякого ЗначениеВДанныеФормы(НовыйДок,ДанныеФормы); КонецФункции |
|||
9
Wefast
23.09.15
✎
21:05
|
ну функция на Сервере
|
|||
10
Wefast
24.09.15
✎
11:40
|
Следующая проблема. В 10.3 после заполнения строк шли две функции из общего модуля
ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(НоваяСтрока, НовыйДок); ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(НоваяСтрока, НовыйДок); в 11.1 такого модуля уже нет и функции таких нет, а те что есть более менее похожие требуют параметры который я без понятия где взять. Вопрос в общем есть ли аналог подобным функций. И при обычном создании при выборе/изменении номенклатуры в табличной части в строке что то меняется. Я же получил форму, можно ли как то вызвать процедуру из модуля этой формы, если та не эспортная? |
|||
11
VikingKosmo
24.09.15
✎
11:46
|
Если речь идет о том, что бы использовать обработку от 10.3 в 11.1, то куда проще обработку написать заново, чем изобретать кучу велосипедов...
|
|||
12
Славен
24.09.15
✎
11:47
|
(10) смотри в модуле менеджера документа либо сам пиши подобное, там не трудно
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |