|
Необходимо выводить значения измененых реквизитов "ЧтоБыло-ЧтоСтало" 8.2 упр. пр | ☑ | ||
---|---|---|---|---|
0
ser-korvin
27.03.12
✎
16:08
|
В обычном приложении в процедуре ПриОткрытии() в ранее обозначенные переменные присваиваются значения старые.
В процедуре ПередЗаписью() сравниваются с текущими ив итоге выводится сообщение. Пытаюсь также все это реализовать на управляемом приложении: ругается что переменные не определены Траздел, ТОтветственный и т.д. &НаКлиенте Перем ТРаздел; Перем ТОтветственный; Перем ТПроект; Перем ТСтатус; Перем ТПриоритет; Процедура ПриОткрытии(Отказ) Если Объект.Ссылка.Пустая() Тогда ///// Иначе ПриоритетПриИзменении(Объект); ТОтветственный = Объект.Ответственный; ТРаздел = Объект.Раздел; ///// КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ПередЗаписью(Отказ, ПараметрыЗаписи) К = 0; Если НЕ ТРаздел = Объект.Раздел Тогда Т1 = "Изменен " + ТРаздел + " на " + Объект.Раздел + ". "; К = 1; Если К = 1 Тогда //ЗаписьИзменений(Т1,Т2,Т3,Т4,Т5); НК = Объект.ИсторияИзменений.Добавить(); НК.АвторИзменения = ИмяПользователя(); НК.ДатаИзменения = ТекущаяДата(); НК.СлужебноеСообщение = Т2; Иначе //ЗаписьИзменений(Т1,Т2,Т3,Т4,Т5); КонецЕсли; КонецПроцедуры Подскажите как решить данную проблему. |
|||
1
Человечкин
27.03.12
✎
16:34
|
&НаКлиенте
Перем ТРаздел=неопределено; Перем ТОтветственный=неопределено; Перем ТПроект; Перем ТСтатус; Перем ТПриоритет; |
|||
2
ser-korvin
27.03.12
✎
16:40
|
(1) Увы, ругается
{Документ.Задача.Форма.ФормаДокумента.Форма(3,23)}: Ожидается символ ';' Перем ТОтветственный<<?>> = Неопределено; (Проверка: Сервер) {Документ.Задача.Форма.ФормаДокумента.Форма(3,24)}: Неопознанный оператор Перем ТОтветственный <<?>>= Неопределено; (Проверка: Сервер) |
|||
3
Euguln
27.03.12
✎
16:42
|
&НаКлиенте
Процедура ПриОткрытии(Отказ) |
|||
4
Euguln
27.03.12
✎
16:43
|
А по-хорошему лучше реквизитом формы делать
|
|||
5
yabes
27.03.12
✎
16:43
|
(0) ты просто хочешь проверить изменил ли пользователь реквизиты после открытия объекта?
|
|||
6
ser-korvin
27.03.12
✎
16:46
|
(4) спасибо за идею, попробую
(5) не только изменил но и что на что Т1 = "Изменен " + ТРаздел + " на " + Объект.Раздел + ". "; |
|||
7
ser-korvin
27.03.12
✎
16:46
|
(3) в коде у меня это есть, просто лишнее убирал и случайно удалил когда сюда копировал
|
|||
8
Азат
27.03.12
✎
16:50
|
(4) + 100500, сделать реквизит формы типа Произвольный, при создании на сервере пихать туда структуру всех реквизитов...
ПередЗаписьюНаСервере сравнивать и все... делов-то на 30 минут с тремя перекурами и парой игр в контру |
|||
9
Человечкин
27.03.12
✎
16:51
|
(0) номер строки глянь на какой ругается, тобишь в твоей ошибке, если что при открытии инициализируй эти переменные
|
|||
10
ser-korvin
27.03.12
✎
16:58
|
Всем спасибо за помощь, сделал по (4). Делается все на клиенте -> меньше запросов на сервер(делается конфа для WEB интерфейса)
|
|||
11
yabes
27.03.12
✎
17:00
|
Смысл в том, что не обязательно запоминать значения при открытии! До записи старые значения можно прочитать обратившись по ссылке, например Объект.Ссылка.Ответственный (на сервере), а новые можно прям из формы прочитать!
&НаКлиенте Процедура ПередЗаписью(Отказ, ПараметрыЗаписи) ПроверкаИзменений() КонецПроцедуры &НаСервере Процедура ПроверкаИзменений() Если Объект.Ответственный <> Объект.Ссылка.Ответственный Тогда Сообщить("Бало изменение ответственного"); КонецЕсли; Если Объект.ТРаздел <> Объект.Ссылка.ТРаздел Тогда Сообщить("Бало изменение раздела"); КонецЕсли; КонецПроцедуры |
|||
12
wald
27.03.12
✎
17:07
|
(11) в (10) правильно сделал, нефиг каждый раз на сервер лазить
|
|||
13
ser-korvin
27.03.12
✎
17:22
|
(11) спасибо за объяснения, при необходимости - применю.
|
|||
14
Человечкин
27.03.12
✎
18:43
|
(11) Эй там - наверху. И куда ты серверу собрался сообщать?
|
|||
15
Человечкин
27.03.12
✎
18:44
|
(11) и перед словом "Бало" забыл поставить букву "Е" ГГгггг )Медаль Петросяна мне встудию)
|
|||
16
simol
27.03.12
✎
18:52
|
&НаКлиенте
Перем ТРаздел, ТОтветственный, ТПроект, ТСтатус, ТПриоритет; |
|||
17
vmv
27.03.12
✎
18:53
|
(0) и (16) + в соответствие
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |