Как обратиться к экспортной процедуре модуля формы обработки? #783806


#0 by DenYuliya
Подскажите, плиз, как обратиться к экспортной процедуре модуля формы одной обработки из модуля формы другой обработки? Платформа 8.2, не УФ.
#1 by Naf_kultura
через ЭКЗЕМПЛЯР формы другой обработки
#2 by osa1C
Если форма обработки не создается, то и никакой процедуры модуля формы не существует.
#3 by Naf_kultura
метафизика
#4 by DenYuliya
это как? Первый раз такое слышу, если честно.
#5 by DenYuliya
т.е. если обработка2 не запущена, то никак?
#6 by Lexey_
что значит "запущена"?
#7 by Naf_kultura
это чуть-чуть из ООП на самом деле процедуры модуля формы - это методы экземпляров формы
#8 by DenYuliya
вызвана, используется в режиме 1С Предприятие
#9 by DenYuliya
понятно, что ничего не понятно. Какой метод погуглить))? А = Обработки.Обработка2.ПолучитьФорму.Форма.НазваниеЭкспортнойПроцедуры- так не работает, зараза.
#10 by Lexey_
не знаю, что значит "вызвана", но добавлю к , что через точку
#11 by Lexey_
нет такого свойства "ПолучитьФорму"
#12 by singlych
погугли как получить форму
#13 by DenYuliya
Так.
#14 by osa1C
Не понятен смысл зачем вызывать из одной обработки процедуру другой, да еще из модуля формы? ... А как насчет того чтобы нужную процедуру скопировать в нужную обработку?
#15 by singlych
теперь вызывай свою процедуру
#16 by osa1C
+  В том что написано - ошибка хотя бы в том, что идет обращение к процедуре, как к функции
#17 by Пузан
Пойдите и пять лет поучитесь на программиста - все сразу станет понятно. :)
#18 by aleks_default
а где учат "на программиста"?
#19 by DenYuliya
нужная процедура ссылается к куче других процедур обработки2
#20 by DenYuliya
а Обработки.ПодборНоменклатуры.ПолучитьФорму("ОсновнаяФорма");
#21 by newbling
экспортные обработки формы...вообще казуистика
#22 by osa1C
вы отличаете от ? Я только про то что в говорил.
#23 by newbling
Мб там в модуле объекта асть что вызвать?
#24 by DenYuliya
я в имела в виду то же, что и в , только написала криво. - верно?
#25 by DenYuliya
ну вызвать-то много чего можно, но нужное в модуле формы генерируется.
#26 by newbling
Попробуй ПолучитьФорму
#27 by newbling
#28 by osa1C
вы можете в конце концов объяснить что вы хотите добиться? В модуле формы объекта обычно располагаются процедуры относящиеся к форме объекта. Что вы хотите делать с формой одной обработки из другой?
#29 by DenYuliya
я в через ПолучитьФорму, вот так: Ругается на переменные "Элемент, ОформленияСтрок" не найдены. "Элемент" в обработке "ПодборНоменклатуры" имеет тип "ТабличноеПоле"
#30 by Пузан
Ты не поверишь - в университете.
#31 by DenYuliya
В Обработке2 есть часть процедур, раскрашивающих список номенклатуры в цвета по определенному принципу. Хочу перетащить этот принцип в Обработку1. И в Обработке1, и в Обработке2 - работа со спр. Номенклатура
#32 by singlych
так не взлетит, прислушайся к
#33 by Михаил Козлов
Т.е. процедура формы обработки2 будет раскрашивать элемент формы обработки1?
#34 by DenYuliya
да. Там работа со всеми элементами спр.Номенклатура. Что в Обработка1, что в Обработка2. Одни и те же.
#35 by DenYuliya
изначально так и хотела))). потом подумала, что может можно как-то упростить и не заниматься копи-пастом
#36 by osa1C
Разочарую вас. Если вы хотите раскрасить строки в табличной части обработки, то существуют два события табличной части в которых это можно сделать. Это ПриПолученииДанных и ПриВыбореСтроки... Даже если вы опишите (и правильно) эти процедуры, то ничего работать не будет, так как они должны быть привязаны к табличной части. Надо их выбрать в Событиях табличной части. Тем более глупой звучит идея вызова процедур из других объектов. Эти процедуры работают с формами тех (других) объектов. Так что создавайте указанные выше процедуры для табличной части, а логику их делайте на основании второй обработки, раз та логика вас устраивает
#37 by osa1C
--- это к
#38 by Lexey_
ну если очень надо, вызывай ее в соответствующем событии, все будет работать
#39 by osa1C
опечатка... событие ПриВыводеСтроки вместо при ПриВыборе...
#40 by DenYuliya
строки должны раскрашиваться все, а не выбранная. В Обработке2 инициализация абсолютно точно в "ПередОткрытием" происходит
#41 by DenYuliya
оке, спасибо за совет, значит придется копипастить
#42 by osa1C
Я же написал, что это опечатка... событие ПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки). Это вывод строки на экран, а вывод идет построчно. Вот при выводе строку по каким-то условиям можно раскрасить. Или задать другое условное оформление через параметр ОформлениеСтроки
#43 by singlych
в данном случае будет работать неправильно, тк оформление зависит от значений переменных и реквизитов второй обработки
#44 by shpioleg
Это все на скорую руку делаешь. У тебя есть некая общая для форм сущность Раскраска (Класс). Ее нужно выделить отдельно (Общий модуль или обработка). В Раскраске выделить экспортный метод и только с ним работать из твоих форм. Например, завтра разработчик Формы2 поменяет алгоритмы или названия методов и твоя обработка "заглохнет".
#45 by DenYuliya
так-то да, по-хорошему надо сам принцип вынести в общий модуль.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С