Например, есть поле у которого мы хотим динамически включать/выключать "обязательность заполнения".
Для этого можно использовать следующую функцию:
if (!Assigned(Window)) {
return;
}
if (IsRequired != false) {
var IsRequired = true;
}
if (IsRequired) {
Window.ComponentsByName('edt' + FieldName).CaptionColor =
LayoutLookAndFeelRequiredItemColor;
} else {
Window.ComponentsByName('edt' + FieldName).CaptionColor =
LayoutLookAndFeelDefaultItemColor;
}
Dataset.DataFields.ItemsByName(FieldName).IsRequired = IsRequired;
}
Нужно удостовериться что в вашем скрипте подключен скрипт "scr_Consts",
где описаны 2 константы:
var LayoutLookAndFeelDefaultItemColor = 0x874011;
Для получения цвета лучше использовать следующую функцию:
[javascript]
var Default16LayoutBlackColor = 0x000000;
function GetControlCaptionColorByThemeIsRequirment(IsRequired){
var Color;
var Theme = Connector.Attributes('THEME');
var UseTheme = !((Theme.toUpperCase() == 'FALSE')||(Theme == '0'))
if (IsRequired) {
if (UseTheme){
Color = LayoutLookAndFeelRequiredItemColor;
} else {
Color = Default16LayoutRedColor;
}
} else {
if (UseTheme){
Color = LayoutLookAndFeelDefaultItemColor;
} else {
Color = Default16LayoutBlackColor;
}
}
return Color;
}
[/javascript]