Имя: Пароль:
1C
1С v8
Помогите с глобальной переменной
0 ddigg
 
09.08.13
10:15
Подскажите новичку, как создать глобальную переменную. Необходимо, чтобы она была видна из одной обработки и не связанной с ней формы документа.
Спасибо! :)
1 Godofsin
 
09.08.13
10:19
в модуле объекта:
Перем МояПерем; экспорт
2 ddigg
 
09.08.13
10:21
(1) ээээ объекта нету ))))))) только обработка и форма. можно ли это сделать в одном из общих модулей? и как его подключить %)
3 Godofsin
 
09.08.13
10:21
(2) объект есть всегда
4 KindLion
 
09.08.13
10:22
(2) Друг, если есть обработка, есть и объект.
Обработка - это объект и есть :)
5 Godofsin
 
09.08.13
10:22
из обработки нужно получить переменную документа?
6 ddigg
 
09.08.13
10:23
(5) нужно в обработке задать ей определенное значение и сразу после этого в открытой форме его получить
7 FIXXXL
 
09.08.13
10:24
(0) насколько глобально?
8 Godofsin
 
09.08.13
10:25
(6) передавай как параметр при открытии формы
9 ddigg
 
09.08.13
10:27
(8) мне нужно уже после того как форма открыта. то есть при ее записи. а до открытия я еще не знаю нужное значение
10 KindLion
 
09.08.13
10:27
(0) - Вообще, конечно, самое простое решение при ответе на "глобальная переменная в 8-ке" - создать параметр сеанса. Но, похоже, в вашем случае - это из пушки по воробьям.
11 ddigg
 
09.08.13
10:29
(10) а можно поподробнее, ссылку с примером или типо того=)
12 Godofsin
 
09.08.13
10:29
(9) Rfrfz-nj cnhtvyfz e nt,z kjubrf hf,jns j,hf,jnrb
13 KindLion
 
09.08.13
10:30
(6) - тут надо действовать через "Оповестить" и обработку оповещения в форме
14 ddigg
 
09.08.13
10:32
(12) почему же? из обработки создается документ при поступлении звонка. он весит открытый. потом трубку кладут (опять срабатывает обработка) - надо в него записать время окончания звонка. а потом можно и сохранять документ.
15 Maxus43
 
09.08.13
10:32
зависит от УФ или обычное.
Все совету тыт смешались, не принимая в рассчет этот простой факт
16 Jokero
 
09.08.13
10:35
почему нельзя использовать реквизит документа?
17 KindLion
 
09.08.13
10:37
(11) Конфа не пустая?
Сделай глобальный поиск по имени любого из параметров сеанса.
В модуле сеанса этот параметр инициализируется, ну а дальше - используется по усмотрению.
Но, повторюсь - этот метод не айс. Без него тут легко можно обойтись
18 KindLion
 
09.08.13
10:39
(14) как тут написано - так это вообще просто.
(16) - думаю подойдет, да.
19 ddigg
 
09.08.13
10:41
(18) и как проще, через оповещение?
20 KindLion
 
09.08.13
10:43
Конкретно:

1) При снятии трубки, из обработки:
Док = Документы.МойДокумент.СоздатьДокумент();
Док.ВремяНачалаРазговора = ТекущаяДата();

2) При опускании трубки на рычаг, из обработки:
ДОк.ВремяОкончанияРазговора = ТекущаяДата();
ДОк.Записать();

Форму Док-та в таком раскладе можно вообще не открывать.
21 KindLion
 
09.08.13
10:45
(15) - расскажи мне, где вру?
Где не учитываю УФ/Не УФ?
22 ddigg
 
09.08.13
10:47
(20) там 2 события. Когда берем трубку то срабатывает OnEvent(), а когда кладем OnCallInfo(). То есть разные процедуры. Когда в OnCallInfo() пытаюсь Док.ВремяОкончанияРазговора = ТекущаяДата(); оно не видит Док :(
23 Maxus43
 
09.08.13
10:47
(21) обработка оповещения - перебор, не для этого она используется имхо
24 KindLion
 
09.08.13
10:50
(22) - Док надо создавать внутри обработки. Или открывать внутри обработки, если он создан ранее.

2 разные процедуры.
ОК.
Тогда пишешь вверху модуля объекта обработки:

Перем Док Экспорт;
25 ddigg
 
09.08.13
10:51
(24) о, сейчас попробую
26 KindLion
 
09.08.13
10:52
(23) - я вначале топика прочел "независимый от обработки док-т".
Подумалось - иначе никак.
А если Док можно создать из обработки - тогда... как описал в (20) конечно, будет достаточно
27 ddigg
 
09.08.13
10:55
(22) пишет переменная не определена(
28 ddigg
 
09.08.13
10:58
в обработке сделал:

перем ФормаСобытие Экспорт;

[+] Процедура OnEvent()
[+] Процедура OnRecordInfo()

В первой создается документ Док.Открыть();
Во второй надо записать Док.ВремяОкончанияРазговора = ТекущаяДата();
Если пишу так, то во второй не видит Док
29 ddigg
 
09.08.13
10:59
*ФормаСобытие -это-> Док %)
30 ddigg
 
09.08.13
11:06
Получилось!)))))))))))))))
перед Перем Док Экспорт; поставил &НаКлиенте
31 KindLion
 
09.08.13
11:10
1. перем ФормаСобытие Экспорт;
- Это ты, конечно, написал в модуле объекта обработки? В самом  верху, до всех функций-процедур?

2. Обработку на время разговора не закрываешь ведь? Это таже самая обработка, которую создал в начале разговора?
32 KindLion
 
09.08.13
11:11
(30) Ну и славно.
(15) - хех, все-таки это был УФ. ;)
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший