|
Запись или НаборЗаписей - как модифицировать без удаления? | ☑ | ||
---|---|---|---|---|
0
fantomrik
10.12.15
✎
17:07
|
Коллеги, добрый день!
Работаю с ВнешнимИсточникомДанных (база MySQL) как с записью или с набором записей. ТаблицаТоваров = ВнешниеИсточникиДанных.ВнешняяБД.Таблицы.product; ТоварыБД = ТаблицаТоваров.СоздатьНаборЗаписей(); ИЛИ ТаблицаТоваров = ВнешниеИсточникиДанных.ВнешняяБД.Таблицы.product; ТоварБД = ТаблицаТоваров.СоздатьМенеджерЗаписи(); Проблема следующая, как выяснилось при модификации записи, запись сначала удаляется, и следом записывается модифицированная. А так как в MySQL таблицы связанные, мне админ не разрешает удалять уже связанные записи, только модифицировать. Не могу придумать как быть. ВнешнийИсточникДанныхТаблицаМенеджерЗаписи.<Имя внешнего источника>.<Имя таблицы внешнего источника данных> (ExternalDataSourceTableRecordManager.<Имя внешнего источника>.<Имя таблицы внешнего источника данных>) Записать (Write) Синтаксис: Записать(<Замещать>) Параметры: <Замещать> (необязательный) Тип: Булево. Определяет режим замещения существующей записи по ключевым полям. Значение по умолчанию: Истина. Описание: Записывает в базу данных внешнего источника данных запись таблицы с текущими значениями полей. Если запись была предварительно прочитана из базы данных, то при выполнении метода сначала прочитанная запись удаляется, а затем производится запись измененной записи. С помощью параметра Замещать регулируется, будет ли метод замещать запись, если в момент выполнения метода существует другая (исключая прочитанную) запись с такими же значениями ключевых полей. Доступность: Толстый клиент. |
|||
1
ДенисЧ
10.12.15
✎
17:10
|
Не пользоваться кривым инструментом - не предлагать?
|
|||
2
fantomrik
10.12.15
✎
17:11
|
(1) а каким инструментом пользоваться? До меня просто начали работу с ВИД, я продолжил то что было.
|
|||
3
ДенисЧ
10.12.15
✎
17:11
|
(2) Нормальным ))
АДО, например. Там есть update |
|||
4
fantomrik
10.12.15
✎
17:14
|
(3) Что за АДО еще ?
|
|||
5
Гёдза
10.12.15
✎
17:16
|
можно функцию написать. Во внешних источниках есть поддержка функций
|
|||
6
ДенисЧ
10.12.15
✎
17:17
|
(4) ADODB
|
|||
7
fantomrik
10.12.15
✎
17:24
|
(5) Не уловил мысль
|
|||
8
Гёдза
10.12.15
✎
18:17
|
||||
9
Лефмихалыч
10.12.15
✎
19:52
|
(0) то есть, проблема в том, что ты не можешь отличить изменение существующей записи от удаления, я правьно понял?
|
|||
10
fantomrik
11.12.15
✎
11:08
|
(9) Ну почти. 1С при работе с записью и набором записи при модификации все равно сначала удаляет запись/набор а потом пишет модифицированный. SQL мне не дает удалить запись, так как к ней привязаны записи других таблиц.
|
|||
11
fantomrik
11.12.15
✎
16:31
|
Спасибо всем! Будем изучать прямые запросы в SQL для решения задачи)
|
|||
12
Лефмихалыч
11.12.15
✎
16:39
|
(10) удаление существующей легко отличить.
Перед записью набора делаешь запрос к регистру с отбором по значениям отбора. Если запрос что-то вернул, значит это удаление. |
|||
13
ptiz
11.12.15
✎
17:09
|
Не доверял бы я 1С запись во внешние источники.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |