Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Передать Дополнительные параметры во внеш.обработке по заполнению ТЧ документов в процедуре Инициализировать (http://forums.kuban.ru/f1040/peredat-_dopolnitel-nye_parametry_vo_vnesh_obrabotke_po_zapolneniyu_tch_dokumentov_v_procedure_inicializirovat--2098899.html)

limonkaru 23.01.2012 12:43

Передать Дополнительные параметры во внеш.обработке по заполнению ТЧ документов в процедуре Инициализировать
 
Здравствуйте!
В 1С 8 есть обработки по заполнениию табличных частей документов и справочников, когда не снимая с поддержки можно заполнить ТЧ документа или справочника. Создается внешняя обработка, в модуле объекта прописывается процедура Инициализировать(Объект, ИмяТабличнойЧасти = Неопределено, ТабличноеПолеОбъекта = Неопределено) и прописывается код, что и как заполнить.
Вопрос в другом есть спр. Внешние обработки, в кот. описывается имя обработки, путь к ней, а в ТЧ части обработки - Объект (док. или справочник), ТЧ объекта, и еще Параметры обработки (дополнительные параметры), которым можно произвольно задать имя и выбрать значение из объекта конфигурации. Так вот как в процедуре Инициализировать обратится к этим Параметрам обработки ? Подскажите, пожалуйста. Обработка уже есть, возникла неоходимость доработки для использования дополнительных параметров. В описании есть следующее: "Необязательный реквизит «ДополнительныеПараметры» произвольного типа, которому будут передаваться дополнительные параметры примитивного типа в виде структуры". А вот как передавать эти доп. параметры непонятно.

Uho 23.01.2012 12:50

Непонятно, как передавать или как к ним обращаться?

Reaper 23.01.2012 12:51

Создай реквизит как сказано в описании и в отладчике на входе в процедуру инициализировать изучи содержимое - в чем проблема-то?

limonkaru 23.01.2012 13:03

есть база Комплексная автоматизация 8.2 - в ней справочник Дополнительные внешние обработки по заполнению табличных частей. там у меня есть несколько обработок. захожу в одну из них: указываю файл внеш.обработки, наименование, затем в таличной части спр.Дополнительные внешние обработки по заполнению ТЧ - указываю Объект - Авансовый отчет, ТЧ объекта - Товары, и еще задаю Параметры обработки, где указываю свой доп. параметр МойПараметр и указываю Значение из объекта конфиг-ии. так вот: как мне теперь в этим параметрам обратиться в процедуре Инициализировать модуля объекта внешней обработки.
Отладчик не заходит в эту обработку, т.к. она в модуле объекта. сами попробуйте, так бы я тоже посмотрела...

Uho 23.01.2012 13:17

4-Limonka > ээээ...

[em]"Необязательный реквизит «ДополнительныеПараметры» произвольного типа, которому будут передаваться дополнительные параметры примитивного типа в виде структуры"[/em]

limonkaru 23.01.2012 13:21

(5) нашла, можно прописать, как четвертый параметр
было так Процедура Инициализировать(Объект, ИмяТабличнойЧасти = Неопределено, ТабличноеПолеОбъекта = Неопределено)

а мне нужно было так сделать:

Процедура Инициализировать(Объект, ИмяТабличнойЧасти = Неопределено, ТабличноеПолеОбъекта = Неопределено,Параметры = Неопределено)

теперь смогу обратиться. еще отладчик не заходит, потому что обрабатывает загруженную в конфиг обработку, а уже не внешнюю

Uho 23.01.2012 13:26

[quote=Limonka;22813950]нашла, можно прописать, как четвертый параметр[/quote]неужели реквизита было не достаточно?

[quote=Limonka;22813950]теперь смогу обратиться. еще отладчик не заходит, потому что обрабатывает загруженную в конфиг обработку, а уже не внешнюю [/quote]ваще то "обрабатывается" выгруженная в темп обработка

Reaper 23.01.2012 13:47

(6) Зачем? Зачем четвертый параметр???

limonkaru 24.01.2012 04:34

[quote=Uho;22814132]неужели реквизита было не достаточно?[/quote]
Что значит реквизита? Руководитель сказал сделать через доп.параметр.

"ваще то "обрабатывается" выгруженная в темп обработка"
это как??? вы подскажите. для этого вопросы и задаются на форумах

limonkaru 24.01.2012 04:41

что такое "темп"? хранилище?
если хранилище, то как сделать, хотя бы в двух словах подскажите, пожалуйста

limonkaru 24.01.2012 06:15

Разобралась сама. Могу поделиться, мне не жалко:

1) ОбщийМодуль.УниверсальныеМеханизмы.ОбработатьНажатиеНаДополнительнуюКнопкуЗаполненияТЧ там есть переменная ДополнительныеПараметры - как раз то, что нужно

2) во своей внешней обработке ввожу новый Реквизит ДополнительныеПараметры - тип Произвольный

3) В модуле объекта внешней обработки прописываю свой реквизит:

МойРеквизит = ДополнительныеПараметры.Мойпараметр;

и все)

limonkaru 24.01.2012 06:18

Да, и еще забыла задаю Параметр обработки в спр. ВнешниеОбработки - "МойПараметр" и присваиваю ему значение

Uho 24.01.2012 09:39

11-Limonka > мы про это и говорили вчера))), да и собственно в (1) все написано

Uho 24.01.2012 09:42

10-Limonka > темп - это временный файл, который 1Сина создает из хранилища из справочника внешних обработок


Текущее время: 08:12. Часовой пояс GMT +3.