Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

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

Как обратиться к экспортной процедуре модуля формы обработки?
Я
   DenYuliya
 
26.10.16 - 17:20
Подскажите, плиз, как обратиться к экспортной процедуре модуля формы одной обработки из модуля формы другой обработки? Платформа 8.2, не УФ.
 
 
   Naf_kultura
 
1 - 26.10.16 - 17:24
через ЭКЗЕМПЛЯР формы другой обработки
   osa1C
 
2 - 26.10.16 - 17:25
(0) Если форма обработки не создается, то и никакой процедуры модуля формы не существует.
   Naf_kultura
 
3 - 26.10.16 - 17:25
(2) метафизика
   DenYuliya
 
4 - 26.10.16 - 17:25
(1) это как? Первый раз такое слышу, если честно.
   DenYuliya
 
5 - 26.10.16 - 17:26
(2) т.е. если обработка2 не запущена, то никак?
   Lexey_
 
6 - 26.10.16 - 17:27
(5) что значит "запущена"?
   Naf_kultura
 
7 - 26.10.16 - 17:28
(4) это чуть-чуть из ООП
на самом деле процедуры модуля формы - это методы экземпляров формы
   DenYuliya
 
8 - 26.10.16 - 17:28
(6)вызвана, используется в режиме 1С Предприятие
   DenYuliya
 
9 - 26.10.16 - 17:31
(7) понятно, что ничего не понятно. Какой метод погуглить))?

А = Обработки.Обработка2.ПолучитьФорму.Форма.НазваниеЭкспортнойПроцедуры()- так не работает, зараза.
   Lexey_
 
10 - 26.10.16 - 17:31
(8) не знаю, что значит "вызвана", но добавлю к (1), что через точку
 
 Рекламное место пустует
   Lexey_
 
11 - 26.10.16 - 17:32
(9) нет такого свойства "ПолучитьФорму"
   singlych
 
12 - 26.10.16 - 17:32
(9) погугли как получить форму
   DenYuliya
 
13 - 26.10.16 - 17:34
(12) ОбработкаПодбора = Обработки.ПодборНоменклатуры.ПолучитьФорму("ОсновнаяФорма");

Так.
   osa1C
 
14 - 26.10.16 - 17:34
(9) Не понятен смысл зачем вызывать из одной обработки процедуру другой, да еще из модуля формы? ... А как насчет того чтобы нужную процедуру скопировать в нужную обработку?
   singlych
 
15 - 26.10.16 - 17:37
(13) теперь вызывай свою процедуру
   osa1C
 
16 - 26.10.16 - 17:38
(9) +  В том что написано - ошибка хотя бы в том, что идет обращение к процедуре, как к функции
   Пузан
 
17 - 26.10.16 - 17:40
(9) Пойдите и пять лет поучитесь на программиста - все сразу станет понятно. :)
   aleks_default
 
18 - 26.10.16 - 17:41
(17) а где учат "на программиста"?
   DenYuliya
 
19 - 26.10.16 - 17:51
(14) нужная процедура ссылается к куче других процедур обработки2
   DenYuliya
 
20 - 26.10.16 - 17:53
(16) т.е не 
ОбработкаПодбора = Обработки.ПодборНоменклатуры.ПолучитьФорму("ОсновнаяФорма"); 
а
Обработки.ПодборНоменклатуры.ПолучитьФорму("ОсновнаяФорма");
   newbling
 
21 - 26.10.16 - 17:55
экспортные обработки формы...вообще казуистика
   osa1C
 
22 - 26.10.16 - 17:55
(20) вы отличаете (9) от (13) ? Я только про то что в (9) говорил.
   newbling
 
23 - 26.10.16 - 17:56
Мб там в модуле объекта асть что вызвать?
   DenYuliya
 
24 - 26.10.16 - 17:57
(22) я в (9) имела в виду то же, что и в (13), только написала криво.
(13) - верно?
   DenYuliya
 
25 - 26.10.16 - 17:58
(23) ну вызвать-то много чего можно, но нужное в модуле формы генерируется.
   newbling
 
26 - 26.10.16 - 17:58
Попробуй ПолучитьФорму
   newbling
 
27 - 26.10.16 - 18:00
ФормаГдеЧтоТоНужное = ПолучитьФорму("Обработки.НужнаяОбработка.НужнаяФорма");
ФормаГдеЧтоТоНужное.НужныйМетод();

Хз. мб взлетит
   osa1C
 
28 - 26.10.16 - 18:01
(24) вы можете в конце концов объяснить что вы хотите добиться? В модуле формы объекта обычно располагаются процедуры относящиеся к форме объекта. Что вы хотите делать с формой одной обработки из другой?
   DenYuliya
 
29 - 26.10.16 - 18:07
(28) я в (13) через ПолучитьФорму(), вот так:
Обработки.ПодборНоменклатуры.ПолучитьФорму("ОсновнаяФорма").СправочникНоменклатураПриПолученииДанныхКатегории(Элемент, ОформленияСтрок);

Ругается на переменные "Элемент, ОформленияСтрок" не найдены.
"Элемент" в обработке "ПодборНоменклатуры" имеет тип "ТабличноеПоле"
   Пузан
 
30 - 26.10.16 - 18:12
(18) Ты не поверишь - в университете.
   DenYuliya
 
31 - 26.10.16 - 18:15
(28) В Обработке2 есть часть процедур, раскрашивающих список номенклатуры в цвета по определенному принципу. Хочу перетащить этот принцип в Обработку1.
И в Обработке1, и в Обработке2 - работа со спр. Номенклатура
   singlych
 
32 - 26.10.16 - 18:19
(29) так не взлетит, прислушайся к (14)
   Михаил Козлов
 
33 - 26.10.16 - 18:19
(31) Т.е. процедура формы обработки2 будет раскрашивать элемент формы обработки1?
 
 
   DenYuliya
 
34 - 26.10.16 - 18:20
(33) да.
Там работа со всеми элементами спр.Номенклатура. Что в Обработка1, что в Обработка2. Одни и те же.
   DenYuliya
 
35 - 26.10.16 - 18:21
(32) изначально так и хотела))). потом подумала, что может можно как-то упростить и не заниматься копи-пастом
   osa1C
 
36 - 26.10.16 - 18:32
(32) Разочарую вас. Если вы хотите раскрасить строки в табличной части обработки, то существуют два события табличной части в которых это можно сделать. Это ПриПолученииДанных и ПриВыбореСтроки... Даже если вы опишите (и правильно) эти процедуры, то ничего работать не будет, так как они должны быть привязаны к табличной части. Надо их выбрать в Событиях табличной части. Тем более глупой звучит идея вызова процедур из других объектов. Эти процедуры работают с формами тех (других) объектов. Так что создавайте указанные выше процедуры для табличной части, а логику их делайте на основании второй обработки, раз та логика вас устраивает
   osa1C
 
37 - 26.10.16 - 18:33
(36) --- это к (34)
   Lexey_
 
38 - 26.10.16 - 18:33
(35) ну если очень надо, вызывай ее в соответствующем событии, все будет работать
   osa1C
 
39 - 26.10.16 - 18:34
(36) опечатка... событие ПриВыводеСтроки вместо при ПриВыборе...
   DenYuliya
 
40 - 26.10.16 - 18:38
(39) строки должны раскрашиваться все, а не выбранная. В Обработке2 инициализация абсолютно точно в "ПередОткрытием" происходит
   DenYuliya
 
41 - 26.10.16 - 18:40
(36) оке, спасибо за совет, значит придется копипастить
   osa1C
 
42 - 26.10.16 - 18:42
(40) Я же написал, что это опечатка... событие ПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки). Это вывод строки на экран, а вывод идет построчно. Вот при выводе строку по каким-то условиям можно раскрасить. Или задать другое условное оформление через параметр ОформлениеСтроки
   singlych
 
43 - 26.10.16 - 18:45
(38) в данном случае будет работать неправильно, тк оформление зависит от значений переменных и реквизитов второй обработки
   shpioleg
 
44 - 26.10.16 - 18:47
(35) Это все на скорую руку делаешь. У тебя есть некая общая для форм сущность Раскраска (Класс). Ее нужно выделить отдельно (Общий модуль или обработка). В Раскраске выделить экспортный метод и только с ним работать из твоих форм.

Например, завтра разработчик Формы2 поменяет алгоритмы или названия методов и твоя обработка "заглохнет".
   DenYuliya
 
45 - 27.10.16 - 10:09
(44) так-то да, по-хорошему надо сам принцип вынести в общий модуль.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует