Ошибка приложения при обращении к RecordID.GETRECORD
Задача: синхронизация справочников разных фирм в одной базе.
Проблема: информация об изменении содержит в себе recorid записи, получаемый с помощью RecRef.RECORDID.
В процессе синхронизации нужно положить в recref запись, в которой произошли изменения.
код:
RecordIDTemp := ChangeforSynchron.RecordChangeID;
RecordRefSource.OPEN(ChangeforSynchron."Table ID",
FALSE,
CompanyNameSource);
RecordRefSource := RecordIDTemp.GETRECORD;
Входные данные проверенны и корректны.
В ряде случаев происходит вылет приложения аля фанерки над Парижем. В связи с чем - понять не могу.
Ранее код был:
RecordRefSource.OPEN(ChangeforSynchron."Table ID",
FALSE,
CompanyNameSource);
if not RecordRefSource.GET(ChangeforSynchron.RecordChangeID) then
error('!!');
В этом случае приложение слетало всегда.
Не подскажите, в каком именно месте у меня кривые руки?
п.с. крайне неохота делать case по номерам таблиц и работать с rec. Ленива.
|