AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.03.2005, 14:23   #1  
Eivanova is offline
Eivanova
Участник
 
9 / 10 (1) +
Регистрация: 05.03.2005
Адрес: Moscow
Ошибка приложения при обращении к 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. Ленива.
Старый 14.03.2005, 16:06   #2  
aivanov is offline
aivanov
Участник
 
3 / 10 (1) +
Регистрация: 02.12.2004
Адрес: Санкт-Петербург
Re: Ошибка приложения при обращении к RecordID.GETRECORD
п.с. крайне неохота делать case по номерам таблиц и работать с rec. Ленива. [/B][/QUOTE]

Сорри, но единственное что могу сказать однозначно - case делать придется по крайней мере так быстрее увидишь в чем проблема.
__________________
--- Новое - это хорошо забытое старое ---
Старый 12.05.2005, 16:31   #3  
Eivanova is offline
Eivanova
Участник
 
9 / 10 (1) +
Регистрация: 05.03.2005
Адрес: Moscow
Не пришлось. Опытным путем было установлено, что ряд функций recRef не работают, или работают не стабильно.
Пришлось отводить отдельную таблицу под ключи и делать setrange по ключевым полям.

Подвела вера в работу документируемых функций.
Старый 12.05.2005, 17:41   #4  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
RecordRef появились только в версии 3.60. И они там сырые.
Собственно, в 3.60 работают они криво. Если есть возможность избежать - лучше избежать
В 3.70 и в 4.0 не работал с ними, к сожалению.
Старый 12.05.2005, 17:47   #5  
Eivanova is offline
Eivanova
Участник
 
9 / 10 (1) +
Регистрация: 05.03.2005
Адрес: Moscow
Я работала в 3.70. За неимением надобности 4.0 не трогала.
Не работают те функции, которые связаны с RecordID.

Сам по себе RecordRef очень полезная штука и веселая штука. Например решать задачи сравнения записей в одной и той же таблице разных фирм, 2 дня программинга, день тестирования.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Внутренняя ошибка 27 в модуле 30 vel_vel NAV: Администрирование 1 26.09.2014 15:56
Ошибка импорта yaner-rom NAV: Администрирование 0 07.10.2005 11:17
Ошибка с FORM.RUNMODAL Nataly NAV: Программирование 18 18.05.2005 05:56
Ошибка при оптимизации базы. .rejector. NAV: Прочие вопросы 5 09.09.2004 01:32
ошибка при запуске finsql Alex_V NAV: Администрирование 6 28.04.2003 11:21

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:56.