Студия/OnStatusChange
| OnStatusChange (Визуальные события) | |||||||
|---|---|---|---|---|---|---|---|
| |||||||
Событие, вызываемое при возникновении локальных изменений на форме или изменении объекта, редактируемого с помощью формы. Событие может быть использовано для обновления заголовка формы или каких-либо индикаторов на ней. Событие возникает в случаях:
- Произошло изменение в редактируемом объекте базе данных (изменился реквизит и т.п.).
- Редактируемый объект базы данных был сохранен, удален, обработан или была отменена его обработка.
- На форме установлен или снят флаг IsChanged.
- Редактируемый объект базы данных был восстановлен из буфера с помощью функции RestoreObjectFromBuffer.
- Произошла загрузка периодических реквизитов за новую дату для редактируемого объекта базы данных.
- Для формы изменился флаг ContainsPeriodicalValues.
- Вызов был инициирован программно (к примеру, с помощью InvokeEvent или CallOnStatusChange).
Примеры
//Пример события OnStatusChange формы редактирования документа аДок
If isEmpty(аДок) Then
Exit;
EndIf;
cl:=_CLR_WINDOWTEXT;
If аДок.Status()<0 Then
cl:=_CLR_BLUE;
Form.cStatus:=" новый документ (*)";
ElseIf аДок.Status()=0 Then
If (аДок.Selected()>1)or(Form.IsChanged()) Then
Form.cStatus:=" (*)";
Else
Form.cStatus:="";
EndIf;
ElseIf аДок.Status()=1 Then
cl:=_CLR_BLACK;
If (аДок.Selected()>1)or(Form.IsChanged()) Then
Form.cStatus:=" удален (*)";
Else
Form.cStatus:=" удален";
EndIf;
ElseIf аДок.Status()>1 Then
cl:=_CLR_GREEN;
If (аДок.Selected()>1)or(Form.IsChanged()) Then
Form.cStatus:=" обработан (*)";
Else
Form.cStatus:=" обработан";
EndIf;
EndIf;
Form.bPanelOK.isDisabled:=флТолькоПросмотр or (not Form.IsChanged());
Form.bPanelSave.isDisabled:=флТолькоПросмотр or (not Form.IsChanged());
Form.cDocNum.Value:=аДок.DocNum;
Form.cDocDate.Value:=аДок.DocDate;
If Form.cStatus.FontColor<>cl Then
Form.cStatus.FontColor:=cl;
EndIf;
Стр:=""+аДок.Автор;
If Стр="" Then
Стр:=""+глПользователь;
EndIf;
Стр:=""+аДок.КодОперации;
If Стр="" Then
Стр:=аДок.DBName();
EndIf;
Form.cDocName.Caption:=Стр;