Глобальный контекст
ПолучитьСтруктуруХраненияБазыДанных (GetDBStorageStructureInfo)
Синтаксис:
ПолучитьСтруктуруХраненияБазыДанных(<Объекты метаданных>, <Имена базы данных>)
Параметры:
<Объекты метаданных> (необязательный)
Тип: Массив. Массив имен объектов метаданных или массив объектов метаданных, для которых требуется получить структуру таблиц базы данных.
<Имена базы данных> (необязательный)
Тип: Булево. Определяет, в каких терминах выдается информация о структуре хранения.
Истина — в терминах СУБД
Ложь — в терминах SDBL.
Значение по умолчанию: Ложь
Возвращаемое значение:
Тип: ТаблицаЗначений. Возвращает таблицу значений с описаниями структуры таблиц, индексов и полей базы данных в терминах SDBL или используемой СУБД, в зависимости от значения параметра "Имена базы данных".
Если параметр не используется, то возвращаемая таблица значений содержит информацию о структуре таблиц базы данных всех объектов метаданных.
Таблица значений включает следующие колонки:
ИмяТаблицыХранения(StorageTableName) – имя таблицы SDBL или базы данных;
ИмяТаблицы(TableName) – имя таблицы в терминах языка запросов (для тех у кого оно есть);
Метаданные(Metadata) – полное имя объекта метаданных;
…
Дальше нам нужно новый элемент справочника все ж таки записать, ну например :
|
Попытка спр.Записать(); Исключение Сообщить("Не уникальный код "+стр.Код+" у элемента "+стр.Наименование); Спр.УстановитьНовыйКод(); Спр.Записать(); КонецПопытки; |
Все, делаем подмену.
|
подключение=Подключение(Сервер,База); ТекстЗапроса="UPDATE Номенклатура |SET Номенклатура._Code="+Формат(КодНужный,"ЧГ=0")+" |FROM _Reference57 AS Номенклатура |WHERE (CAST(Номенклатура._Folder AS int)=1) |AND (Номенклатура._Code="+Формат(Спр.Код,"ЧГ=0")+") |"; подключение.Execute(ТекстЗапроса); Сообщить("Код "+КодБыл+" подменен на "+КодНужный); |