Как програмно отследить изменения на форме?

  • Автор темы Guest
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

#1
Как можно програмно определить произошла ли смена значений в элементах диалога (поле со списком, поле ввода и т.д.)? Можно ли вообще отследить изменения на форме?
Положим на форме обработки есть поле ввода А. При его изменении нужно выдать Предупреждение("Элемент был изменен"), как это сделать???

Положим в окне ввода есть какоето значение... Если мы тыкнулись в него (нажали Enter) то сработает процедура, заданная в окне Дополнительно, для этого поля... Дак вот мне нужно проверить было ли изменено значение в поле, или пользователь просто навел на него курсор, а потом тыкнул Ентер ничего не меняя (или ввел тоже значение)... Если было изменено, то вывести сообщение...
 

vitfil

IT-интегратор
02.04.2004
2 062
0
#2
Иногда очень полезно почитать ЖКК:
Процедура ПриНачалеВыбораЗначения(<?>,)
КонецПроцедуры
Синтаксис:
ПриНачалеВыбораЗначения(<ИдентЭлемДиалога>,<ФлагСтандОбр>)
Назначение:
Предопределенная процедура после выбора значения в форме выбора (выбор может быть инициирован в немодальном режиме интерактивно, при помощи элемента диалога с ''педалькой'').
<ИдентЭлемДиалога> - идентификатор элемента диалога, которым инициализирован выбор значения.
<ФлагСтандОбр> - флаг, изначально, при вызове процедуры равен 1, если в теле процедуры значение этого параметра поменять на 0, то стандартный процесс выбора значения не будет происходить.
Замечание:
Данная процедура может располагаться только в программном модуле формы.
 
G

Guest

#3
Любой формы? Я в Обработке работаю...
Тыб примерчик привел, ценыб тебе небыло... Я уж все входные параметры дал... =)
 
G

Guest

#4
Был бы этот ЖЖК, у меня вообще док нормальных нету блин... =\
 
G

Guest

#5
Ну и опятьже из твоего примера непонять как узнать старое значение и как сравнивать с новым... =\
 
T

Typhoon

#6
Модифицированность()

Синтаксис:
Модифицированность()

Назначение:
Возвращает признак изменения реквизитов текущей формы:
1 - если реквизиты текущей формы документа были изменены, 0 - иначе.

Замечание:
Метод доступен только в Модуле формы и работает с документом доступным в локальном контексте.

Вроде бы этим все сказано!
 
G

Guest

#7
Это только выдержка из хелпа, без примера она не имеет реальной ценности... =\
 
T

Typhoon

#8
Иногда можно самим дойти до простых основ!
 
G

Guest

#9
Можно, но это если есть литература, а если ее нет, то даже догадки непомогут... =\
Блин, еслиб у меня была инфа думаете я бы задавал такие вопросы???
 
G

Guest

#10
Да ладно не обижайся. Просто в обработке да и в остальных формах стандартными средствами 1с отследить изменение (модификацию) реквизита - НЕВОЗМОЖНО! :)
 
G

Guest

#11
Блин, а я сижу мучаюсь... =\
Обошел я короче эту тему, взял и при открытие формы просто сохранил все значения в элементах ввода... А потом просто сравниваю новое значение со старым... =\
Но мог бы быть метод и поэлегантней... =\ 1С - лажа... =\
 
Статус
Закрыто для дальнейших ответов.