13.01.2017, 01:04 | #1 |
Участник
|
Как узнать, что Form Control был персонализирован?
Скажем, если formControl был добавлен пользователем, то это мы можем узнать примерно так:
X++: FormBuildControl _fbc; if(_fbc.markAsUserAdd()) { info(strFmt("+++added by user+++")); }
__________________
Felix nihil admirari Последний раз редактировалось wojzeh; 13.01.2017 в 01:09. |
|
13.01.2017, 03:43 | #2 |
Участник
|
Если посмотерть в SysSetupForm.formControlMove там есть код
X++: // If control was already moved userOrgContainer is different from 0
formControlUserOrgContainer = formControl.userOrgContainer(); |
|
13.01.2017, 03:48 | #3 |
Участник
|
Хотя тамже есть такой метод:
X++: private boolean formControlHasUserAdjustment(Object _formControl ,boolean _lookDeep = true) { Object childFormControl; Counter controlCount; boolean ret; int i; if (!classidget(_formControl) == classnum(FormDesign) && _formControl.userOrgContainer()) { ret = true; } if (!ret) { if (_formControl.hasUserSetting()) { ret = true; } else { if (_formControl.isContainer() && _lookDeep) { controlCount = _formControl.controlCount(); for (i=1; i <= controlCount; i++) { childFormControl = _formControl.controlNum(i); if (this.formControlHasUserAdjustment(childFormControl, _lookDeep)) { ret = true; break; } } } } } return ret; } |
|
|
За это сообщение автора поблагодарили: S.Kuskov (2). |
13.01.2017, 20:28 | #4 |
Участник
|
гран мерси! я что-то вчера неглубоко копнул. попробую сделать методом доступным извне.
__________________
Felix nihil admirari |
|
14.01.2017, 01:19 | #5 |
Участник
|
Цитата:
для остальных элементов он всегда показывается, как изменённый, что не есть гут.
__________________
Felix nihil admirari |
|
Теги |
formbuildcontrol, formcontrol, personalize |
|
|