|
УТП как приципить внешнию обработку в документ. для заполнение тч |
☑ |
0
zladenuw
16.05.13
✎
11:42
|
Хочу сделать обработку при вызове которой заполнялась табличная часть документа с источника.
Хочу возможность выбора типа документа и сам документ.
Есть какая то особенность для внешних обработок для тч ?
Не делал раньше такого. по этому спрашиваю :)
|
|
1
Джинн
16.05.13
✎
11:44
|
Русский язык не пробовали учить? Стыдно должно быть...
"приципить", "по этому"
|
|
2
zmaximka
16.05.13
✎
11:45
|
в справочнике "внешние обработки" нажми f1. там описаны требования к внешним обработкам
|
|
3
viktor_vv
16.05.13
✎
11:45
|
Да нету там никаких особенностей.
Появится в меню кнопки Заполнить над табличной частью. Ну разве сто для выбора Типа документа и документа источника надо будет форму наваять и из модуля открыть.
|
|
4
zladenuw
16.05.13
✎
11:48
|
спасибо
|
|
5
zladenuw
16.05.13
✎
12:55
|
что то делаю не так.
в модуле обработки добавил
Процедура Инициализировать(Объект, ИмяТабличнойЧасти, ТабличноеПолеОбъекта) Экспорт
СсылкаНаОбъект = Объект;
Форма = ЭтотОбъект.ПолучитьФорму("форма", Объект);
Форма.ОткрытьМодально();
КонецПроцедуры
в модуле формы
Процедура КнопкаВыполнитьНажатие(Кнопка)
ТчТовары = СсылкаНаОбъект.Товары;
ТчТоварыИсточник = ДокументИсточник.Товары;
ТчТовары.Загрузить(ТчТоварыИсточник.Выгрузить());
КонецПроцедуры
Процедура ТипДокументаПриИзменении(Элемент)
Если ЗначениеЗаполнено(ТипДокумента) Тогда
ЭлементыФормы.ДокументИсточник.Доступность = Истина;
ЭлементыФормы.ДокументИсточник.ВыбиратьТип = Ложь;
Массив = Новый Массив;
Массив.Добавить(Тип("ДокументСсылка."+ТипДокумента));
ОписаниеТиповС = Новый ОписаниеТипов(Массив,,);
ЭлементыФормы.ДокументИсточник.ОграничениеТипа = ОписаниеТиповС;
ЭлементыФормы.ДокументИсточник.Данные = Документы[ТипДокумента].пустаяссылка();
ЭлементыФормы.ДокументИсточник.ТипЗначения = ОписаниеТиповС;
КонецЕсли;
КонецПроцедуры
ТипыДокументов = Новый Массив;
ТипыДокументов.Добавить(Метаданные.Документы.ПоступлениеТоваровУслуг.Имя);
ТипыДокументов.Добавить(Метаданные.Документы.ОприходованиеТоваров.Имя);
ТипыДокументов.Добавить(Метаданные.Документы.ПеремещениеТоваров.Имя);
ТипыДокументов.Добавить(Метаданные.Документы.РеализацияТоваровУслуг.Имя);
ЭлементыФормы.ТипДокумента.СписокВыбора.ЗагрузитьЗначения(ТипыДокументов);
но пишет ошибку .
{Форма.Форма.Форма(3)}: Значение не является значением объектного типа (Товары)
ТчТовары = СсылкаНаОбъект.Товары;
Чего ей не нравиться ?
|
|
6
zladenuw
16.05.13
✎
13:09
|
(5) мда. не хочет мозг работать, тип не тот был у реквизита :)
|
|