#0
by ekat_kuzn
Обработка вызывается из Справочника(ВнешниеОбработки). Где в конфигурации поставить точку останова, чтобы попасть из этой точки останова в модуль исходной обработки?
#3
by strange2007
Только надо учесть, что обработка сохраняется на диск и надо не пропустить ее открытие. Проще имитировать автозапуск.
#4
by ekat_kuzn
спасибо автозапуск - это вызов через Меню, Файл? для моей цели нужно именно через конфигурацию
#6
by ekat_kuzn
Дело в том, что эта обработка давно отлажена. Нужно нажатием кнопок на форме этой главной обработки вызывать на выполнение другие обработки (которые не добавлены в справочник(ВнешниеОбработки)). На главной форме указывается период, за который выполняется обработка, значение периода нужно передавать в обработки, вызываемые из главной. Вот и ищу, как обратиться к форме обработки, открытой из доп-ных внешних обработок. Поставила точку останова в форме списка справочника(ВнешниеОбработки), процедура(СправочникСписокВыбор), там видно имя временного файла, этот файл записывается в ХранилищеВнешнейОбработки, как обратиться к открытой форме обработки еще не нашла.
#8
by Megas
Не совсем понял что ты пишеш, но НужнаяФормаОбработки.Открыть("",ЭтаФорма) то есть через владельца формы... попал ?
#9
by ekat_kuzn
задача нерешаема, потому что ее невозможно решить, или потому что я непонятно условие задачи написала? вопрос как раз в том, как написать НужнаяФормаОбработки, т.е. как получить эту форму программно в зависимой обработке, если код главной обработки хранится во временном файле (справочнике(ВнешниеОбработки)). А форма эта открыта уже, ведь из нее нажатием на кнопки и вызываются зависимые обработки.
#10
by ekat_kuzn
потом не могу нырнуть в главную обработку, вышла только на двоичные данные и хранилище.
#11
by ekat_kuzn
после этого просто выходится из процедуры СправочникСписокВыбор, в модуле главной обработки не останавливается
#12
by Rie
Что получить-то нужно? Просто остановиться отладчиком в обработке? Остановись в тот момент, где обработка сохранилась во внешнем файле. Загрузи этот файл как внешнюю обработку в Конфигуратор, попробуй остановиться в ней.
#13
by ekat_kuzn
Local SettingsTempv8_119_59.tmp - такое вот имя файла не открывать же его в конфигураторе?????? какой тогда файл нужен ?
#14
by Rie
Перечитывая ветку, всё меньше понимаю... Эту внешнюю обработку, которая главная - ты из принципа как-то менять не хочешь?
#15
by ekat_kuzn
почему не хочу? если нужно, можно и изменить цель: из формы обработки, которая занесена в доп-ные внешние обработки, вызывать, например 10, "подчиненных" (подчиненных, т.к. на форме выбирается для общий период, контрагент) обработок нажатием кнопок на форме, чтобы не заносить каждую из этих 10 обработок в доп-ные внешние обработки.
#16
by Rie
Тогда решение - в . При нажатии на кнопку формы главной обработки вспомогательной обработке сообщается, кто у ней владелец (в параметрах ПолучитьФорму). Далее эта обработка, зная своего владельца, может извлечь из него всё, что ей заблагорассудится. Или наоборот - создавая вспомогательную обработку-объект, задать ей реквизиты. Если эти вспомогательные обработки не занесены в справочник внешних обработок, то они обитают в файлах и
#17
by ekat_kuzn
У меня изначально в каждой вспомогательной обр-ке было написано так: ВыбНачПериода=ВнешниеОбработки.ПолучитьФорму(КаталогИБ+"ExtForms"+"Главная.epf",,,).ВыбНачПериода; и главная обработка вызывалась не из доп.внешних обработок - всё работало. Приспичило сделать через доп.внешние обработки: ВыбНачПериода не берется с открытой формы, т.к. код находится теперь не по адресу КаталогИБ+"ExtForms"+"Главная.epf".
#19
by ekat_kuzn
а у вспомогательных нет своих форм - всё необходимое заносится на форму главной. Это к слову, т.к. не имеет значения для данной проблемы
#20
by ekat_kuzn
хочу пробраться в модуль формы главной, чтобы узнать, как эта форма теперь называется. что-то связанное с временным файлом Например, при отладке печатных форм ставила точку останова в определенном месте в конфигурации, оттуда прыгалось в нужный модуль печатной формы. Здесь хочется также.
#21
by ekat_kuzn
при нажатии на строку с главной в форме списка доп-ных внешних обработок сначала формируется временный файл с именем "ИмяФайла", затем получают его форму (эта строка выделена на рис): Форма = ВнешниеОбработки.ПолучитьФорму(ИмяФайла); (думаю, что надо еще где-то в конф-ции поставить точку останова, где выполняется ПолучитьФорму, чтобы попасть во временный файл????? Когда работала с печатной формой , прыгалось во временный файл, где было видно, что происходит) затем форма открывается. Форма.Открыть;
#25
by Rie
Есть внешние обработки. У них нет форм. И не надо. По нажатию кнопки - создать _объект_ внешней обработки, и дёргать нужные методы этого объекта, передавая им нужные параметры. Извини, но такое чувство, что ты пытаешься открыть правой рукой зонтик в левом ухе.
#27
by ekat_kuzn
Насчет двигаться от объектов, вроде так и делаю: в модуле формы главной обр-ки написано: ... Обработка = ВнешниеОбработки.Создать(КаталогИБ+"ExtForms"+ИмяФайлаВспомогОбработки); ... КонецПроцедуры С помощью команды Создать перешла в мелкую обр-ку, там в модуле объекта: безFile=сред(СтрокаСоединенияИнформационнойБазы,7); ВыбНачПериода=ВнешниеОбработки.ПолучитьФорму(КаталогИБ+"ExtForms"+"Главная.epf").ВыбНачПериода; И такое работало при вызове главной через Файл, Открыть. А через сервис просто не получает значения с формы (напр, ВыбНачПериода 01.01.0001). Почитала про параметры ПолучитьФорму, пробовала так: .ПолучитьФорму(,КаталогИБ+"ExtForms"+"Главная.epf") - пишет каталог не найден. Как же нужно записать параметры? уже спрашивать стыдно(. У меня есть подозрение, что реализовать невозможно
#28
by Rie
Третий параметр у ПолучитьФорму задаёт форму-владелеца. В вызванной форме к форме-владельцу можно обратиться через свойство ВладелецФормы. Не надо получать ещё раз форму для главной обработки - нужно передать её вспомогательной форме, и всё. А ещё спокойнее - получив объект вспомогательной обработки, прямо из главной обработки задать ему нужные реквизиты (надеюсь, эти реквизиты не упрятаны в форму, а являются именно реквизитами обработки?).
#29
by ekat_kuzn
- Извините, что долго не отвечала: дома с обеда интернета не было. - "Вызванной формы" нет: главная обработка имеет форму, код в модуле формы; в мелких обработках форм нет, есть макет, код в модуле объекта. - реквизитов у обработок нет При нажатии на кнопки формы сразу формируются отчеты(у меня они реализованы в файлах-обработках), без открытия доп. форм. у главной ВыбНачПериода - реквизит формы Сейчас: у вспом создала реквизит обработки ВыбНачПериода Дописала в модуле формы главной после Обработка = ВнешниеОбработки.Создать(КаталогИБ+"ExtFormsMSFO"+ИмяФайла); (на этой строке ВыбНачПериода 01.01.2010; С ЭТОЙ СТРОКИ СРАЗУ ПРЫГАЕТСЯ В МЕЛКУЮ ОБР) следующее: Обработка.ВыбНачПериода = ВыбНачПериода; СЮДА УЖЕ НЕ ПОПАДАЕМ!!!
#30
by Rie
"Всё страньше и страньше". Есть обработки ("вспомогательные"). Реквизитов у них нет, только процедуры (с параметрами?). Раз синтаксический контроль проходят, то на "неопознанные летающие объекты" (имена реквизитов/переменных, отсутствующих в самой обработке) - не ссылаются. Экспортируемые подпрограммы этих обработок - доступны. Например, если во "вспомогательной" обработке есть процедура то можно написать: Обраб = ВнешниеОбработки.Создать(ИмяФайлаВспомогательнойОбработки); Обраб.ВыполнитьНечто(КуКу,Кука+Реку); Чего для счастья-то не хватает?
#31
by ekat_kuzn
Обраб.ВыполнитьНечто(КуКу,Кука+Реку); Если я правильно поняла, строки и записаны в модуле формы главной. Но со строки , минуя , попадаем в модуль вспом обработки!!!!!!! зачем тогда строка ??
#34
by ekat_kuzn
открываем в конфигураторе файл обработки, в нем нажамаем Действия, затем "Открыть модуль объекта"
#35
by Rie
Если модуль не содержит выполняемых операторов (в секции инициализации) - говорить о "попадании в него" бессмысленно. Некуда там "попадать". Создали - и потопали дальше. Если у тебя в секции инициализации записано нечто нетривиальное - то оно может вести себя самым непонятным образом. Может, лучше вытащить из секции инициализации это в процедуру какую-нибудь?
#37
by Rie
В этом модуле объекта какие-нибудь операторы _в конце модуля_ есть? Если да - то зачем? Если нет - то никакого "попадания в модуль" не может быть.
#38
by ekat_kuzn
я не знаю, что такое "секция инициализации", скажите, пожалуйста. модуль объекта выглядит так: конечно, он не пустой, там алгоритм формирования конкретного отчета. ... Главная; Что не так?
#40
by Rie
Я бы убрал не только Главная, но и предыдущие операторы. ВыбНачПериода и Организация - сделал бы параметрами у Главная, а Макет = ... - перенёс бы в начало Главная. Ну и естественно, объявил бы Главная со словом Экспорт.
#43
by ekat_kuzn
СПАСИБО ОГРОМНОЕ, вроде получается!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (есть еще моментик, постараюсь сама доделать) А я смотрела про временные файлы, двоичные данные, уникальный ключ(((((((( Т.е. секция инициализации - это область ниже процедур? Скажите, пожалуйста, можно ли на этом форуме хотя бы 1 раз изменить свой псевдоним?
#45
by Rie
Она самая (это о секции инициализации). Хотя "секцией инициализации" я называю её неправильно, 1С именует эту часть модуля "раздел основной программы". Понятия не имею (это о псевдониме). Меня как-то до сих пор светлая идея сменить псевдоним не посещала и вряд ли посетит в ближайшие лет 50.
#46
by ekat_kuzn
Спасибо Вам за терпение, доброжелательность и ценные советы! думала, что инженер знаний всё знает об этом форуме.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- 1C 8. Вылетает при сравнении нетиповых конфигураций
- Как встать на нужный элемент справочника?
- Ошибка при обновлении конфигурации
- РИБ. В плане обмена авторегистрация для документов отключена
- В параметрах 1С нет закладки 1С: сканер штрихкодов.
- Как раскрасить строку справочника в форме списка ?
- В макете СКД как произвольно расположить колонки одной группировки
- УПП График работы по сменам
- FastInfoSet
- не запускается 1с. требует обновления
- Принадлежность элемента группе номенклатуры
- Вопрос про написание *.bat файлов в несколько строк!
- 8.2 Как расположить реквизиты ТЧ друг под другом?
- УПП 1.2.27.1 - на 8.2? оО
- Что значит точка справа снизу в элементе справочника?
- 1С:Предприятие 8 Конфигурация Управление торговлей (базовая), редакция 10.310.3.9.4
- Построитель отчетов. Группировки колонки.
- Поиск по dbf файлу
- Зик.292. Вычет НДФЛ 331 (имущественный)
- Подключение к базам через OLE