Сравнить два курсора | |
---|---|
Centory Автор Сообщений: 88 Откуда: г. Зеленоград Дата регистрации: 20.08.2004 |
Хочется сделать сабж. В чем суть проблемы - есть две базы - одна база это заголовк накладной, занимает одну запись в базе с уникальным полем number, вторая база это тело накладной, с полем docnumber, содержащим уникальный номер из первой базы (для привязки) и пожет содержать кучу позицицй.
Тело заголовка сравнить легко - перед редактированием документа запомниаем состояние а потом через afields или еще как сравниваем записи. Это легко. А вот как быть с телом документа? Ведь там какие то позиции могу измениться или добавиться или удалиться..... Может кто сталкивался с таким? Наверняка многие ведут историю редактирования документа...... |
Re: Сравнить два курсора | |
---|---|
IGOR_SMIRNOVSKY Сообщений: 132 Откуда: СПб Дата регистрации: 02.03.2005 |
Работай с курсором, в нем доп. поля.
Например, поле с номером записи реальной таблицы и т.д. ------------------ дураком помру |
Re: Сравнить два курсора | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Ну, например
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Сравнить два курсора | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Вообще-то, именно для того, чтобы упростить подбные задачи и было введено понятие "буфферизация". Если перед редактированием таблица была переведена в режим буферизации, то тогда:
MyTable.MyField - значение в буфере OldVal("MyTable.MyField") - значение в исходной таблице непосредственно перед началом редактирования CurVal("MyTable.MyField") - текущее значение в исходной таблице. Имеет смысл для оптимистической буферизации, если за то время, что данный пользователь редактировал данные другой пользователь изменил эти же данные. Кроме того, почитай описание команд GetFldState() GetNextModified() |
© 2000-2024 Fox Club  |