Добрый день!

 

Коллеги, имею ситуацию, когда часть функциональности, которая написана в пользовательском пакете другим разработчиком, необходимо изменить. А именно написана реализация лисенера

[EntityEventListener(SchemaName = "UsrObject")]
    public class SomeEventListener : BaseEntityEventListener

и клиентского модуля(сорс код). Как можно разблокировать схемы для внесения в них изменений или например для лисенера отключить его отрабатывание при наступлении условий?

Спасибо!

Нравится

5 комментариев

Необходимо выполнить SQL скрип для SysPackage, который устанавливает: InstallType = 0, Maintainer = Customer.

Pavel Litvinovich,

это не помогает.

После выполнения скрипта

 

update SysPackage

set IsChanged = 1, InstallType = 0, IsLocked = 1, Maintainer = 'Customer'

where Name in ('CRM1')

and SysWorkspaceId in (select Id from SysWorkspace where Name = 'Default')

 

у пакет снимается блок. Также для схем в этом пакете делаю скрипт

 

update SysSchema

set IsChanged = 1,

IsLocked = 1

where Name in ('SomeEventListener')

and SysPackageId in (

    select Id from SysPackage where SysWorkspaceId in (select Id from SysWorkspace where Name = 'Default')

    and Name in ('CRM1')

 

но по итогу(после даже компилирую все) схема все равно не редактируемая.

Сергей Хоменко пишет:



1) Пакет вы разблокировали, тут все ок.

Но, в скрипте вы использовали изменение значения колонки Maintainer, если вы изначально правильно начали разработку, это значение в системной настройки вы изменили на собственное (Издатель). Если это так - то для разблокировки пакета, вместо Customer вам необходимо было указать своё значение.

2) После манипуляций по разблокировке пакетов - вам необходимо перелогиниться в систему, иначе так и будете видеть, что пакеты схемы заблокированы.

Литвинко Павел,

я брал значение из системной настройки Publisher и менял для пакета на такое значение. Или как правильно нужно сделать? 

а вообще перезашел в систему - и схемы пакета стали редактируемыми. Спасибо!

Показать все комментарии