|
Внешние источники - MS SQL
| ☑ |
0
DrLekter
13.02.17
✎
10:04
|
Делаю выгрузку во внешнюю таблицу через ВнешнийИсточникДанных.
Использую следующие методы:
НовыйОбъект = ВнешнийИсточник.Таблицы.dbo_CUSTOMERS.СоздатьОбъект();
НовыйОбъект.<Поле1> = ....
.....
НовыйОбъект.Записать();
При первом проходе все ОК, а как только нужно изменить существующую запись, вываливает ошибку нарушения уникальности PRIMARY KEY. То есть НовыйОбъект - он действительно новый, а не перезапись существующего. В методе Записать() у НабораЗаписей есть параметр "замещать", у объектных таблиц такого нету. НаборЗаписей с объектной таблицей не работает. Я чего-то не дочитал в СП? Не нашел там способов менять объекты ("Прочитать()" перед заполнением пробовал).
|
|
1
Тихий омут
13.02.17
✎
10:07
|
имхо лучше через ado такие вещи делать. во всяком случае, там ты всегда будешь знать, что происходит, а не телепатию развивать в направлении фантазии разработчиков платформы.
|
|
2
DrLekter
13.02.17
✎
10:38
|
Разобрался. Объектные данные нельзя редактировать. Если нужно отредактировать существующую запись в объектной таблице, нужно сначала её удалить, затем создать заново. *Рукалицо*, конечно, но для моей цели этого достаточно.
|
|
3
HardBall
13.02.17
✎
10:45
|
(0) НайтиПоПолю(), Получить(), Записать() не канает?
|
|
4
DrLekter
13.02.17
✎
12:10
|
Пользуюсь именно НайтиПоПолю. Наверное, проканает, только не Получить(), а ПолучитьОбъект(). Но мне как бы все равно в данном случае. Как в анекдоте, "сведём задачу к предыдущей" )
|
|