|
![]() |
#1 |
Участник
|
ПОдскажите, плиз, как обойти след. проблему:
Имеем таблицу 37. Когда в Заказе меняем поле "No", срабатывает триггер OnValidate(), в которорм есть след. строки: Код: T50022.TechNo := "No."; T50022.Modify(TRUE); В нем прописано следующее: Код: IF Rec.TechNo <> xRec.TechNo THEN выполнить какие-то действия ![]() Как с этим бороться? |
|
![]() |
#2 |
Участник
|
Цитата:
Сообщение от Kadawrik
![]() ПОдскажите, плиз, как обойти след. проблему:
Имеем таблицу 37. Когда в Заказе меняем поле "No", срабатывает триггер OnValidate(), в которорм есть след. строки: Код: T50022.TechNo := "No."; T50022.Modify(TRUE); В нем прописано следующее: Код: IF Rec.TechNo <> xRec.TechNo THEN выполнить какие-то действия ![]() Как с этим бороться? Тогда код будет такой: Код: T50022.VALIDATE(TechNo,"No."); T50022.Modify(TRUE); |
|
![]() |
#3 |
Участник
|
Цитата:
Цитата:
Тогда код будет такой:
Код: T50022.VALIDATE(TechNo,"No."); T50022.Modify(TRUE); Честно говоря, ну ооочень не хотелось бы всё это сейчас переделывать. Если длугих, менее трудозатратныых вариантов нет, то придется делать так, как Вы предлагаете. |
|
![]() |
#4 |
Участник
|
Цитата:
Если вы в T50022.TechNo присваиваете "No.", который ничем не отличается TechNo то зачем делать MODIFY? |
|
![]() |
#5 |
Участник
|
В том-то и дело, что ДО присвоения эти значения разные (к примеру, до выполнения команды T50022.TechNo := "No." , поля содержали след. значения: T50022.TechNo = RI265,а "No." равнялось AM378
|
|
![]() |
#6 |
Участник
|
Цитата:
В том-то и дело, что ДО присвоения эти значения разные (к примеру, до выполнения команды T50022.TechNo := "No." , поля содержали след. значения: T50022.TechNo = RI265,а "No." равнялось AM378
![]() |
|
![]() |
#7 |
Участник
|
Цитата:
Код: T50022.TechNo := "No."; //строка 1 T50022.Modify(TRUE); //строка 2 T50022.Zoom.TechNo Rec.Zoom.TechNo xRec.Zoom.TechNo Курсор стоит на стороке 1 (т.е. как я понимаю строка эта еще не выполнилась), переменные имеют след. значения: T50022.Zoom.TechNo - старое значение Rec.Zoom.TechNo - Error: Symbol Rec was not found xRec.Zoom.TechNo - Error: Symbol xRec was not found Нажимаем F8. Курсор переходит в строку 2. Наши переменные: T50022.Zoom.TechNo - НОВОЕ значение Rec.Zoom.TechNo - Error: Symbol Rec was not found xRec.Zoom.TechNo - Error: Symbol xRec was not found Еще раз F8 - попадаем в триггер OnModify таблицы 50022. Переменные становятся: T50022.Zoom.TechNo - Error: Symbol TechNo was not found Rec.Zoom.TechNo - НОВОЕ значение xRec.Zoom.TechNo - НОВОЕ значение ПАЧИМУУУУ!?!?!? Это какой-то глюк в программе или у меня уже в голове глючит и я за деревьями не вижу леса? |
|