Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Дилетантский вопрос про контекст (число прочтений - 1961 )
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Дилетантский вопрос про контекст
26. Августа 2008 :: 07:58
Печать  
Нигде пока не натыкался на ответ следующего вопроса:
Зачем практикуется ВзятьКонтекст?
Цитата:
Что такое контекст формы?

Контекст – это идентификатор формы, что-то вроде ее имени. Он используется для того, чтобы точно указать программе, к какой форме вы обращаетесь. То есть с помощью контекста можно обращаться к одной форме из другой.

Как работать с контекстом?

Все довольно просто. Для того, чтобы с контекстом работать, его надо сначала передать.
Передается он с помощью параметра. Например:

     ОткрытьФорму ("Отчет.ДвиженияТМЦ", Контекст);

Но правильнее будет воспользоваться такой процедурой в глобально модуле:

Функция глВзятьКонтекст(Конт) Экспорт
  Возврат Конт;
КонецФункции // глВзятьКонтекст()

использовать ее нужно так:

     ОткрытьФорму ("Отчет.ДвиженияТМЦ", глВзятьКонтекст(Контекст));

http://subscribe.ru/archive/comp.soft.prog.magic1c/200605/31100758.html

Прошу прощения, что отнимаю у вас время. Пошарил по форуму, поискав "Сам()" - не помогло.
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Дилетантский вопрос про контекст
Ответ #1 - 26. Августа 2008 :: 08:02
Печать  
Цитата:
Функция глВзятьКонтекст(Конт) Экспорт
 Возврат Конт;
КонецФункции
Нужна из-за того, что в 1С не сработает простое присваивание типа:
глКонт = Контекст;

http://www.kuban.ru/forum_new/forum9/arhiv/264305.html


Цитата:
Но правильнее будет воспользоваться такой процедурой в глобально модуле:

?
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Дилетантский вопрос про контекст
Ответ #2 - 26. Августа 2008 :: 08:25
Печать  
Зачастую правильнее будет
Код
Выбрать все
_конт =глВзятьКонтекст(Контекст);
ОткрытьФорму ("Отчет.ДвиженияТМЦ", _конт);
 


Потому что ОткрытьФорму возвращает значение контекста в данной переменной.
И часто это значение оказывается полезным.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Дилетантский вопрос про контекст
Ответ #3 - 26. Августа 2008 :: 08:40
Печать  
Цитата:
Нужна из-за того, что в 1С не сработает простое присваивание типа:
глКонт = Контекст;

Ограничения встроенного языка 1С?
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать