|
|
#1 |
|
Участник
|
привет всем ещё раз
Мне надо при открытии каждой формы записать ее открытия в логтаблицу,например открываем форму PurchTable void run() X++: {
super();
if (!advanced)
tabHeader.tab(2);
else
tabHeader.tab(1);
MyLog::CreateLogForm( "имя открываемый формы");
}X++: Static void CreateLogForm(FormRun _FormRun) { MytLog TableLog; ttsbegin; TableLog.ObjectType=0; //TableLog.ObjectName="имя открываемый формы"; TableLog.Data=systemDateGet(); TableLog.Time=timenow(); TableLog.insert(); ttscommit; } как узнать имя открываемый формы????
|
|
|
|
|
#2 |
|
Banned
|
Неправильно.
см \Classes\SysSetupFormRun, \Classes\Info\activate |
|
|
|
|
#3 |
|
Участник
|
Также советую не писать:
X++: TableLog.Data=systemDateGet(); TableLog.Time=timenow(); |
|
|
|
|
#4 |
|
Участник
|
В вашем конкретном примере можно использовать element.name(), но если хотите побыстрее перестать быть новичком, то советую внимательно читать советы EVGL.
|
|
|
|
|
#5 |
|
Участник
|
...
может вопрос не понятен всем? т.е я хочу в каждой формы в методе run дописать
X++: MyLog::CreateLogForm( "имя открываемый формы"); капаюсь тож, хелпните
|
|
|
|
|
#6 |
|
Участник
|
поставь точку останова на
\Classes\Info\activate и будет тебе счастье ![]() тоже относится к методам \Classes\SysSetupFormRun Последний раз редактировалось ice; 01.08.2007 в 15:18. |
|
|
|
|
#7 |
|
Участник
|
Вообще-то, petr уже ответил. Но если его ответ пропустили в спешке, то можно повторить.
Изнутри методов формы можно использовать специальную служебную ссылку "element", чтобы достучаться до свойств и методов текущей формы element.name() - имя текущей формы Также можно использовать ссылку "this" this.name() Но this, в данном случае, будет возвращать ссылку на форму только из методов собственно формы. В методах объектов формы это уже будет ссылка на соответствующий объект формы. А element возвращает ссылку на форму из любых методов любых объектов формы. Ссылка на форму через element и this в процессе работы - это ссылка объект FormRun. |
|
|
|
|
#8 |
|
Участник
|
X++: NatBotLog::CreateLogForm(this); X++: Static void CreateLogForm(FormRun _FormRun) { MyLog TableLog; ; ttsbegin; TableLog.ObjectType=0; TableLog.ObjectName =strfmt("%1%", _FormRun); TableLog.insert(); ttscommit; } что не так опять ?
Последний раз редактировалось Daido; 02.08.2007 в 10:03. |
|
|
|
|
#9 |
|
NavAx
|
Static void CreateLogForm(Name _FormRun)
|
|
|
|
|
#10 |
|
Дмитрий Ерин
|
TableLog.ObjectName =strfmt("%1%", _FormRun.name());
|
|
|
|
|
Похожие темы
|
||||
| Тема | Ответов | |||
| Имя формы | 8 | |||
| Как узнать имя формы | 5 | |||
| Можно-ли узнать сетевое имя пользователя? | 8 | |||
| что-такое "<имя-формы>_ds"? | 3 | |||
| Русская локализация Axapta 3 ? | 59 | |||
|