Вопрос

По ошибке установил не нужный пакет. Но базовыми средствами удалить его не могу (в Установка и удаление приложений):

Далее в SysPackage изменил InstallType на 0 и Maintainer на Customer, и в Конфигурации попробовал удалить но тоже Ошибка:

Как удалить?

Версия 7.18.2.1236

Нравится

4 комментария
Лучший ответ

Доброе утро.

 

Можно попробовать удалить sql-запросом (рекомендую развернуть тестовую копию и сначала удалить на ней):

delete from SysPackage where Name = '<название пакета>'

 

Но желательно разобраться из-за чего возникает ошибка.

1. Проверить нет ли сообщений об ошибке в консоли.

2. Если у Вас on-site, посмотреть лог ошибок приложения. Если on-demand запросить этот лог у службы поддержки Террасофт.

Доброе утро.

 

Можно попробовать удалить sql-запросом (рекомендую развернуть тестовую копию и сначала удалить на ней):

delete from SysPackage where Name = '<название пакета>'

 

Но желательно разобраться из-за чего возникает ошибка.

1. Проверить нет ли сообщений об ошибке в консоли.

2. Если у Вас on-site, посмотреть лог ошибок приложения. Если on-demand запросить этот лог у службы поддержки Террасофт.

Алла Савельева,

После удаления пакета посоветовали выполнить хранимую процедуру для актуализации пакетов: 

tsp_ActualizePackageHierarchy. Как ее (хранимку) выполнить?

Pavel Litvinovich пишет:
Как ее (хранимку) выполнить?

Выполнить запрос в sql-консоли или в sql server management studio:

exec tsp_ActualizePackageHierarchy

Алла Савельева,

Спасибо!

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

Доброго времени суток.
Подскажите, такая ситуация, создаю новый раздел, создал новый пакет, в настройке "Текущий пакет" указан нужный пакет и все изменения попадают туда. Кроме кейсов, кейсы сохраняются в пакет Custom. На странице создания кейса указан так же нужный пакет, но при сохранении кейс находится в пакете Custom.
Как это исправить или так и должно работать?
Спасибо.

Нравится

2 комментария

Здравствуйте, Сергей!

Данное поведение напоминает ошибку в базовой логике, которая была исправлена в версии 7.15.4. По данному вопросу будет зарегистрирована обращение, в рамках которого будет предоставлено решение.

Пожалуйста, ожидайте, обратной связи.

Станислав Чернышев,

 

Как раз я работаю на версии 7.15.3.

С нетерпением жду решения данной проблемы.

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

Добрый день!

Я подключаю скрипт для пользователя, но не могу понять, что нужно сделать, чтобы он подключался ко всем страницам, а не к определенным

Нравится

1 комментарий

Сделайте замещение базовой страницы, от которой наследуются все Вас интересующие страницы, и добавьте необходимый Вам код

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

Когда пытаюсь установить пакет , на новой среде, то выдает ошибку 
Конфликт инструкции INSERT с ограничением FOREIGN KEY "FKVJgxmU9tugUNJfIWHaADhTn9tE". Конфликт произошел в базе данных "ST_MENU_3503480_0906", таблица "dbo.SysCulture", column 'Id'. Выполнение данной инструкции было прервано.
Я пробовал методы из двух похожих тем, но не одна не помогла

Нравится

3 комментария

Дима, такое сообщение говорит о невозможности сохранить схему с каким-то значением Id культуры (языка), поскольку такой культуры нет на БД новой среды.

 

Попробуйте сравнить наполнение таблицы SysCulture на обеих базах. Там может либо отсутствовать какая-то запись о культуре, либо у какой-то культуры с тем же названием будет другой Id. В зависимости от этого будет нужно либо добавить недостающую, либо вносить правки в коде пакета, исправляя Id.

 

Если непонятно, о какой записи речь, можно записать неудавшийся запрос на вставку в профайлере и узнать её Id.

На версии 7.17.1 присутствует 19 строк.
Проверьте и дополните отсутствующие на своей БД.

Главное, не создать две строки с разными Id об одной культуре, будет ещё хуже, сломается компиляция.

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

Доброе время суток!
А могу я уточнить в чем разница между установкой пакетов с изменениями через Вас (@Terrasoft) и из приложения как показано на скрине: 
 

Буду благодарен за более глубокий ответ.

Нравится

5 комментариев
Лучший ответ

Andrew Prymenko,

В обоих случаях перед установкой приложения делается бекап конфигурации, к которому можно откатиться в случае сбоя при установке.

И как могут загружаться проектные доработки из Маркетплейса? 

 

Принципиально - ничем. Через Установить из файла вы загружаете свои проектные доработки. Ну а выбрать из Маркетплейс - очевидно их названия. 

Вы говорите принципиально - ничем, но все же есть отличия. Хочу узнать о них. Это может даже целый ряд моментов которые на первый взгляд не принципиальные, но все же имеют место быть. И в первом и во втором случае однозначно загружаються проектные доработки, а что под капотом? Может какие-то backup'ы........ 

Andrew Prymenko,

В обоих случаях перед установкой приложения делается бекап конфигурации, к которому можно откатиться в случае сбоя при установке.

И как могут загружаться проектные доработки из Маркетплейса? 

 

Андрей, в случае выбора «установить из файла» делается бекап только тех пакетов, которые устанавливаются и если установка пройдет с ошибками, то можно сразу же откатить изменения на предыдущие версии. Бекап БД не делается.

 

А при автоматической установке пакетов обновлений вызывается операция WorkspaceConsole InstallFromRepository. Если в действии установлено соответствующее значение, делается бекап БД с последующим восстановлением в случае возникновения ошибки в ходе выполнения.

 

Также интересующий Вас вопрос описан в статье академии «Установка пакетов из приложения» и более новой «Раздел [Установка и удаление приложений]».

Сидоров Александр Валерьевич,

Александр, добрый вечер!

посмотрите внимательно на фото, которое я прикрепил. Я там обвел синим цветом "Установить из файла". Этим самым говорю, что я проектные доработки из Маркетплейса не загружаю))) А делаю это через пункт меню который обвел синим цветом "Установить из файла". Спасибо, что берете участие в обсуждении поднятых вопросов.

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

Добрый субботний вечер!))

Есть у нас пакет, который сделан на Enterprise. Хотим его поставить на commerce.

В зависимости пакета  убираем SalesEnterprise пакет.

Добавляем зависимость от базовых пакетов Base, NUI, UIv2.
Но при удалении SalesEnterprise ошибка...  скрины

Что делаем ни так? 

Заранее спасибо!

Нравится

6 комментариев
Лучший ответ

В таком случае создайте тестовую копию базы данных, на которой Вы пытаетесь удалить связь с пакетом, и под неё разверните новый тестовый сайт.

На новом сайте попробуйте выполнить такой запрос:

delete from SysPackageDependency 
where SysPackageId = (select Id from SysPackage where Name = 'qrtHMS')
    and DependOnPackageId = (select Id from SysPackage where Name = 'SalesEnterpriseSoftkey_ENU')

А потом зайти в конфигурацию и перекомпилировать все схемы.

Также на существующем сайте (там, где Вы пытаетесь через интерфейс убрать связь с пакетом) попробуйте выполнить это действие ещё раз, а потом после свала посмотреть логи приложения bpm'online.

Ошибка возникает именно при удалении?

Возможно, проблема заключается в том, что в Вашем пользовательском пакете есть схема или схемы, которые ссылаются на объекты, которые есть только в пакете SalesEnterprise.

Алла Савельева,

Алла, .. мы их как раз и не использовали. Вообще просто свои разделы создавали.

 

Алла Савельева,

а если вдруг что то захватили.. то как определить, что те объекты именно из пакета  SalesEnterprise?

Как можно узнать есть ли эти ссылки на пакет SalesEnterprise и если есть, то на какие объекты?

 

Елена К,

Определить схемы, в которых есть зависимость можно, выполнив такой запрос:

select SS.*
from SysSchema SS
   join SysSchema Parent on Parent.Id = SS.ParentId
where SS.SysPackageId = (select Id from SysPackage where Name = '<название Вашего пакета>')
    and Parent.SysPackageId = (select Id from SysPackage where Name = '<название пакета, на который могут ссылаться схемы>')

 

Алла Савельева,

Алла, запрос 

select SS.*
from SysSchema SS
   join SysSchema Parent on Parent.Id = SS.ParentId
where SS.SysPackageId = (select Id from SysPackage where Name = 'qrtHMS')
    and Parent.SysPackageId = (select Id from SysPackage where Name = 'SalesEnterpriseSoftkey_ENU')

Запрос вернул 0 записей. Т.е. в нашем пакете нет ни одной схемы которая ссылается на SalesEnterpriseSoftkey_ENU.

Что думаете еще может быть?)

 

 

В таком случае создайте тестовую копию базы данных, на которой Вы пытаетесь удалить связь с пакетом, и под неё разверните новый тестовый сайт.

На новом сайте попробуйте выполнить такой запрос:

delete from SysPackageDependency 
where SysPackageId = (select Id from SysPackage where Name = 'qrtHMS')
    and DependOnPackageId = (select Id from SysPackage where Name = 'SalesEnterpriseSoftkey_ENU')

А потом зайти в конфигурацию и перекомпилировать все схемы.

Также на существующем сайте (там, где Вы пытаетесь через интерфейс убрать связь с пакетом) попробуйте выполнить это действие ещё раз, а потом после свала посмотреть логи приложения bpm'online.

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

Предлагаю добавить в конфигурацию базовый пакет, который зависел бы от всех базовых пакетов системы (по аналогии с пакетом Custom), но позволял бы пользовательскому пакету добавить его в "Зависит от".
Т.о. при добавлении этого пакета в "Зависит от" клиентский пакет получает доступ ко всей функциональности системы без добавления большого числа пакетов в "Зависит от".

Пакет Custom так же может зависеть только от этого пакета и пользовательских пакетов.

 

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

Бывают случаи, когда пакет Custom потом становится не пользовательским...

Владимир Соколов,

Я имею в виду создание промежуточного базового пакета, который бы наследовался от остальных базовых пакетов. Чтобы в пакете разработки не наследоваться от пачки базовых пакетов, а автоматически от одного промежуточного пакета.

 

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

Передали данное пожелание команде разработки для анализа возможности внедрения такой возможности в будущих версиях продукта.

Обратите внимание, что помимо Custom, новые пакеты нужно привязывать не ко всем предыдущим, а только к тем, чью функциональность нужно использовать в своём пакете. Принципы создания и формирования иерархии пакетов описаны в статье.

Работа с зависимостями пакета не очень удобна.
И порой, когда пакет разработки нужно поставить Текущим пакетом вылазит много проблем при, например, работе с Мастерами разделов/деталей и приходится наследоваться от всех базовых пакетов (по примеру Custom).

Если пакет унаследован от всего, то могут возникнуть затруднения при переносе на отличающуюся по набору пакетов систему, где чего-то нет.

Думаю, что на предложение реализации этой идеи однозначного ответа "Да" или "Нет" не существует.

Но я всё-таки за "Нет" - чем больше разрешений в системе, тем больше возможностей для ошибок.

Мотков Илья пишет:
Обратите внимание, что помимо Custom, новые пакеты нужно привязывать не ко всем предыдущим, а только к тем, чью функциональность нужно использовать в своём пакете

А как-то автоматизировать определения необходимости привязки к пакетам можно? 

Владимир, это потребует чего-то вроде полного синтаксического анализа CS и JS-кода всех схем в пакете. Вы можете реализовать такой механизм и опубликовать в Marketplace.

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

Добрый день!

На сервере svn создал новый branch, копию существующей главной ветки head. Вопрос, как настроить в bpmonline, чтобы при заливке в svn изменения фиксировались в эту новую ветку, а не в старую? При том, что хранилище одно и то же.

Нравится

1 комментарий

Добрый день, Дмитрий.

Для этого необходимо новую ветку выделить в отдельное хранилище и добавить его в список хранилищ в BPM'Online. Чтобы открыть список доступных хранилищ, на вкладке [Действия] в интерфейсе раздела [Конфигурация] нужно выбрать действие [Открыть список хранилищ].

Как настроить хранилище SVN

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

Здравствуйте, коллеги.

На нашей тестовой версии системы настраивал справочник печатных форм ms word и столкнулся с тем, что в конфигурации нет данных пакетов, которые должны переноситься в рабочую. 

Вопрос: можно ли каким-то образом привязать эти печатные формы к пакету или придется наполнять печатные формы в релизе сначала.

Заранее спасибо!

Нравится

1 комментарий

Здравствуйте, Роман!

Печатные формы Word можно перенести, записи о них хранятся в объектах SysModuleReport, табличные части - в SysModuleReportTable. Достаточно заместить их в нужном пакете.

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

Объясните, пожалуйста, нужен ли и для чего сервер SVN в версиях 7.10-7.11?
Ведь разработка идет в пакеты?

Есть ли документация по настройке и работе с SVN для версий 7.10-7.11?

Нравится

4 комментария

.. а пакеты фиксируются на SVN с целью их дальнейшей выгрузки или переноса. Выгружать можно как из DB так и из SVN. По окончанию всей разработки рекомендуется выгрузку производить именно из SVN.

workspaceconsole

Настройка SVN

Терещенко Алексей,

А чем это лучше чем из интерфейса выгружать?

Vladimir Kov,

Рекомендуемая последовательность разработки - "Для переноса изменений между средами разработки необходимо обязательно использовать систему контроля версий (SVN)."

У меня несколько сред: разработка (DEV) и тестирование (Pre-Prod) . Мне удобно пакеты между ними таскать с помощью SVN.

Да, и не забываем что SVN - это типа система контроля версий, со своим функционалом. Если его хорошо изучить - проблема отката, например, будет решена... ну или что-то вроде того...

 

Терещенко Алексей,

Спасибо Алексей.

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