|
Как запустить процедуру из модуля формы открытой формы | ☑ | ||
---|---|---|---|---|
0
sly
29.12.05
✎
11:02
|
Как запустить процедуру из модуля формы открытой формы. Т.е. обработкой открываем форму документа и нужно запустить процедуру из этого документа?
Док=СоздатьОбъект("Документ.СчетФактура"); Док.НайтиПоНомеру(Ном, Дата); Если Док.Выбран()>0 Тогда Конт=""; ОткрытьФорму(Док.ТекущийДокумент(),Конт,0); // эта процедура из документа, но как ее запустить? УправлениеДиалогом(1); Конт.Форма.Обновить(); КонецЕсли; С Новым Годом! |
|||
1
Ёпрст2
29.12.05
✎
11:04
|
||||
2
sly
29.12.05
✎
11:14
|
Не понял. Правда.
Объясните... |
|||
3
ДенисЧ
29.12.05
✎
11:19
|
||||
4
sly
29.12.05
✎
11:20
|
дык, из 1С надо...
|
|||
5
ака Пкфте
29.12.05
✎
11:24
|
(4) Непонятно, для чего... Вставь её в ПриОткрытии() открываемой формы...
или использовать Процедура ПриПовторномОткрытии() ТвояПроцедура(); КонецПроцедуры если её надо запустить после каких-то махинаций... расказывай, послушаем... |
|||
6
Ёпрст2
29.12.05
✎
11:28
|
(2) Чего там непонятного то ? В открываемую форму через контекст передаем "что-то", в открытой форме это "что-то" ловим в ПриОткрытии как Форма.Параметр,
если Форма.Параметр = "что-то" нас устраивает - то запускаем соответствующую процедуру/функцию этой формы(модуля этой формы) ... |
|||
7
sly
29.12.05
✎
11:33
|
Это процедура запусталась из модуля формы Документа при определенном условии.
А сразу можно не переписывая процедуры ПриОткрытии() в документах? |
|||
8
Рупор абсурда
29.12.05
✎
11:39
|
Кстати ...
Можно запустить процедуру из модуля формы дока, не изменяя модуль дока, и обойтись исключительно штатными средствами ... |
|||
9
Ёпрст2
29.12.05
✎
11:39
|
(7)Неа ...
.... Ты конкретно задачку нарисуюй чего хочешь ... .... Можно потом уже, когда уже форма открыта еще че нить запустить ... но опять таки, через контекст и в ПриПовторномОткрытии() дописывать ... |
|||
10
Ёпрст2
29.12.05
✎
11:40
|
(8) Ну вот ... очередной ребус от Рупора на 500 постов с съеданием башмака ...:)
|
|||
11
child
29.12.05
✎
11:43
|
(10) Можно проделать все изменения реквизитов в документе перед процедурой "ОткрытьФорма"
|
|||
12
Рупор абсурда
29.12.05
✎
11:44
|
(10) На самом деле, всё очень просто ...
Могу рассказать сразу, т.к. на разводы сегодня нет времени ... |
|||
13
GrayT
29.12.05
✎
11:45
|
(8)Достаю поп-корн и колу :)
|
|||
14
ака Пкфте
29.12.05
✎
11:46
|
Это опять таки негласный... оффициально только для глобального...
|
|||
15
Ёпрст2
29.12.05
✎
11:46
|
(12) Да не надо ... про это я уже давно знаю .... единственное - надо глобальник подправить ..
|
|||
16
ака Пкфте
29.12.05
✎
11:47
|
(15) ниче править не надо...
|
|||
17
lisss
29.12.05
✎
11:47
|
(15)расскажи, раз знаешь....
|
|||
18
GrayT
29.12.05
✎
11:48
|
(16)Ну что то все же придется подправить, чтоб запусить :)
|
|||
19
Рупор абсурда
29.12.05
✎
11:48
|
(15) Нет, не надо ничего нигде править ...
|
|||
20
Ёпрст2
29.12.05
✎
11:52
|
(17) http://www.sinor.ru/~my1c/knowhow/shablon.html
(19) Ну тогда, рассказывай ... так сказать подарок всем нам к НГ будет приятный ..! |
|||
21
ака Пкфте
29.12.05
✎
11:52
|
(18) Пусть её напишет Рупор... эту Волшебную строку...
ЗЫ Кстати, Рупор, одной строкой сможешь? |
|||
22
Рупор абсурда
29.12.05
✎
11:55
|
(21) Двумя только ...
|
|||
23
Рупор абсурда
29.12.05
✎
11:58
|
(22)+ Ан, нет, наврал ..., могу и одной ...
|
|||
24
ака Пкфте
29.12.05
✎
11:58
|
(22) А зачем? Пусть как энерджайзер...
|
|||
25
Рупор абсурда
29.12.05
✎
12:00
|
(24) Дык всё равно ж две строки-то получится ...
|
|||
26
Рупор абсурда
29.12.05
✎
12:00
|
(24) И давай-ка ты не подсказывай демиургам ...
|
|||
27
ака Пкфте
29.12.05
✎
12:05
|
(26) досвидания...
|
|||
28
Ёпрст2
29.12.05
✎
12:23
|
(26) Согласно 12 ... "на разводы сегодня нет времени" ... Расскажи!
|
|||
29
у лю 427
29.12.05
✎
12:29
|
опять Рупор начал классно вешать лапшу на уши...
а потом окажется... |
|||
30
Рупор абсурда
29.12.05
✎
12:43
|
(28) Я не врал, что это просто:
Перем Конт; Процедура Вырубить() Конт.Форма.ОбработкаОжидания(""); Конт.Форма.Закрыть(); КонецПроцедуры Процедура Сформировать() Форма.ОбработкаОжидания("Вырубить",2); Открытьформу(КакойТоТамДокумент,Конт); Конт.Форма.ОбработкаОжидания("НуНапримерПечать",1); КонецПроцедуры |
|||
31
Ёпрст2
29.12.05
✎
12:51
|
(30) Круто ... спсб!
|
|||
32
sly
29.12.05
✎
13:01
|
а не для глобального модуля можно?
|
|||
33
GrayT
29.12.05
✎
13:04
|
(32)???? Это (30) не для глобальника.
|
|||
34
sly
29.12.05
✎
13:11
|
ОбработкаОжидания()
Цитирую Инициирует преодический вызов процедуры глобального модуля ... |
|||
35
GrayT
29.12.05
✎
13:20
|
Знаю.
Но там Форма.ОбработкаОжидания - это фича такая |
|||
36
sly
29.12.05
✎
13:28
|
GrayT, подскажи глядя на (0) как из обработки мне запустить процедуру документа.
Не пойму итиомать! |
|||
37
zalex
29.12.05
✎
13:30
|
Однако ж вырубить в модуль формы дописать придется. Так что фигли толку, понты одни...
|
|||
38
GrayT
29.12.05
✎
13:31
|
(36)Тебе уже дали два варианта - какие проблемы
(37)формы обработки, а не дока! |
|||
39
zalex
29.12.05
✎
13:32
|
+(37) ОбработкуОжидания запускаешь на "Конт.Форма" а вырубаешь на "Форма". Проверить лень, но ИМХО не взлетит.
|
|||
40
zalex
29.12.05
✎
13:33
|
+(39) Хотя пардон, туплю
|
|||
41
GrayT
29.12.05
✎
13:34
|
(39)Похоже ты не въехал - там два ожидания - для разных форм
|
|||
42
Ёпрст2
29.12.05
✎
13:34
|
(39) Всё летает! Полёт нормальный ...!
|
|||
43
zalex
29.12.05
✎
13:34
|
(41) Уже въехал
|
|||
44
sly
29.12.05
✎
13:45
|
Открыв форму ее потом можно закрыть с сохрананием и проведением ПРОГРАММНО?
|
|||
45
GrayT
29.12.05
✎
13:47
|
Можно
|
|||
46
sly
29.12.05
✎
13:48
|
как?
|
|||
47
Рупор абсурда
29.12.05
✎
13:53
|
Грядёт эпоха одинэсников-идиотов ...
|
|||
48
sly
29.12.05
✎
14:01
|
ты мудак, и что!
|
|||
49
zalex
29.12.05
✎
14:03
|
Модераторам опять есть работа (48). Я б забанил, красивое решение мудаку предложили, а он...
|
|||
50
Рупор абсурда
29.12.05
✎
14:05
|
(48) Зато я умный ...
|
|||
51
ака Пкфте
29.12.05
✎
14:07
|
Мдя... пока на берёзовых лопал такое пропустить...
(49) ЗЫ Не по нашему как-то это... добровольное сотрудничество... |
|||
52
Рупор абсурда
29.12.05
✎
14:11
|
(51) Угу ..., мы модеров душили, душили ...
А тут модерская шестёрка чё-то вякает ... |
|||
53
zxcvb
29.12.05
✎
14:18
|
А если в модуле дока определена переменная:
"перем ХХХ;" Как бы мне установить ее значение перед вызовом той или иной процедуры? Не могу врубиться. |
|||
54
Рупор абсурда
29.12.05
✎
14:23
|
(53) Вызвать ту процедуру, в которой ей устанавливается значение ...
|
|||
55
zxcvb
29.12.05
✎
14:30
|
(54) Это понятно:)
А произвольно похоже никак. По крайней мере идей как это сделать нет. |
|||
56
Рупор абсурда
29.12.05
✎
14:39
|
(55) В общем случае, штатными средствами, похоже, никак ...
|
|||
57
zxcvb
29.12.05
✎
14:39
|
++(55) Просто в той процедуре могут быть операторы типа "Вопрос()", "Предупреждение()", требующие реакции пользователя.
|
|||
58
ака Пкфте
29.12.05
✎
14:41
|
(52) Я не душил, узнал то о них недавно, сразу не понравились, всё думал, кто ж их так обидел...
ЗЫ Ух ты, тебя всё глубже в БЗ вцементировывают... Кстати очень упрощаешь жизнь инженерам - написал что-то + миста как код распознала - в БЗ смело, не ошибешься! возможна драка, кто первый... |
|||
59
Рупор абсурда
29.12.05
✎
14:45
|
(58) А почему у тебя такой говённый ник нынче?
|
|||
60
ака Пкфте
29.12.05
✎
14:48
|
(59) Жизнь отражает... может даже мою...
|
|||
61
Warlock
29.12.05
✎
14:58
|
Блин... Хотел рубрику поменять, а заменилось только имя, добавившего в БЗ(КонецЦикла) :(
|
|||
62
ака Пкфте
29.12.05
✎
15:02
|
предсказуемость сплошная...
|
|||
63
Кудесник
29.12.05
✎
15:03
|
2(61) Ты тама поаккуратнее с БЗ :)
Пущай будет в БЗ... как способ Интересная инфа (и не только для начинающих) + Руппи приятно |
|||
64
Warlock
29.12.05
✎
15:13
|
Согласен с тобой. Хотел только рубрику поменять. Пробовал и с Opera 9 и из IE. Стандартный совет Волшебника "смени браузер" не прокатил...
|
|||
65
GrayT
29.12.05
✎
15:23
|
Кого послать?
|
|||
66
rsv
29.12.05
✎
15:25
|
Хм. Термин глобальный модуль относится в какой то степени и к модулю формы. Он тоже глобален но в рамках формы.:) Респект профессионализму Рупора.
|
|||
67
orefkov
29.12.05
✎
16:18
|
Если в ПриНачалеРаботыСистемы сделать
ЗагрузитьВнешнююКомпоненту("turbobl.dll"); или ЗагрузитьВнешнююКомпоненту("1cpp.dll"); то будет работать такой код: Док=СоздатьОбъект("Документ.СчетФактура"); Док.НайтиПоНомеру(Ном, Дата); Если Док.Выбран()>0 Тогда Конт=""; ОткрытьФорму(Док.ТекущийДокумент(),Конт,0); // эта процедура из документа, но как ее запустить? Конт.УправлениеДиалогом(1); Конт.Форма.Обновить(); КонецЕсли; |
|||
68
romix
модератор
29.12.05
✎
17:01
|
Чтобы иметь возможность юзать процедуру печати из разных мест (например, из документа и журнала), я выношу ее во внешний отчет (ERT).
Получается очень удобно - можно исправлять печать документа во время работы пользователей, и модуль формы не засоряется посторонней логикой. |
|||
69
alexb
29.12.05
✎
17:10
|
(68) А пример можно ?
|
|||
70
alexb
29.12.05
✎
17:15
|
А что Вы в эту процедуру печати передаете ?
Контекст документа ? |
|||
71
GrayT
29.12.05
✎
18:02
|
Или сам документ
|
Форум | Правила | Описание | Реклама | Секции | Поиск | Книга знаний | Вики-миста |