• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Смена владельца объекта

Автор Александр Волков, 23.12.14, 09:03:55

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Александр Волков

Здравствуйте

Задача следующая:
сменить владельца объекта в ЛОЦМАН V14 (язык программирования – Delphi).

Есть рабочий плагин для ЛОЦМАН V9, который не работает в ЛОЦМАН V14.
Соединение осуществляется через COM-интерфейс.
В плагине для ЛОЦМАН V9 смена владельца осуществляется с помощью следующего SQL запроса:

//Сменить владельца версии в таблице stVersions
    ADOQuery.SQL.Text:='UPDATE stVersions SET';
    ADOQuery.SQL.Add('inOwner = '+IntToStr(NewOwnerID));
    ADOQuery.SQL.Add('WHERE inID = '+IntToStr(ID));

//Скорректировать права доступа в таблице stPrivileges
    ADOQuery.SQL.Text:='DELETE FROM stPrivileges';
    ADOQuery.SQL.Add('WHERE inIDVersion = '+IntToStr(ID));
    ADOQuery.SQL.Add('AND inIDUser = '+IntToStr(NewOwnerID));//старые права удалим

    ADOQuery.SQL.Add('UPDATE stPrivileges SET');
    ADOQuery.SQL.Add('inIDUser = '+IntToStr(NewOwnerID));
    ADOQuery.SQL.Add('WHERE inIDVersion = '+IntToStr(ID));
    ADOQuery.SQL.Add('AND inIDUser = '+IntToStr(OwnerID));//заберем права владельца

Где NewOwnerID – идентификатор нового владельца
      ID – идентификатор версии
      OwnerID – идентификатор старого владельца

В ЛОЦМАН V14 приведенный SQL запрос не работает, выдает ошибку.

Вопрос: можно ли сменить владельца через функции интерфейса API?
Если да, то с помощью какой функции (я не нашел функции для этого)?
Если нет, то как можно по-другому сменить владельца?

И еще вопрос: можно ли сменить владельца сразу у всех объектов базы данных? Если да, то как?

stboris

с правами доступа к данным таблицам точно все в порядке?

Александр Волков

У меня права доступа администратора к базе данных. У владельца – чтение и запись или администратор.
Если я правильно понял ваш вопрос.
Я только третий месяц Лоцманом занимаюсь. Еще многого не знаю.

Александр Волков

В Лоцмане поменяли ядро. Может быть из-за этого не работают эти запросы? Но как сделать, чтобы владелец сменился – не понятно.

Александр Волков

И есть ли, вообще, в 15-й версии Лоцма возможность доступа к таблицам базы данных через SQL-запросы? Или только API функции можно применять из справки Лоцман API?

Александр Волков

Вопрос закрыт.
В 14-й версии Лоцмана поменялось обращение к таблицам, по сравнению с 9-й.