Добрый день!

Во время компиляций вылазит данное сообщение

Нравится

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

В указанных слева схемах ничего не менялось? Упомянутые процессы тоже существуют?

Если ничего не менялось, может помочь генерация исходных кодов и компиляция.

Если включена разработка в файловой системе (web.config - FileDesignMode: True), попробуйте очистить папку Temporary ASP.NET Files. Если же отключена, выполните очистку кэша Redis, и используйте кнопку «загрузить пакеты в файловую систему».

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

Добрый день,

 

При попытке зайти в Террасофт установленный на сервере (Windows Server 2008 R2 Enterprise), возникает ошибка:

К сожалению, многочисленные попытки решить данную проблему не принесли результата.

Также было замечено, что при добавлении новой конфигурации при нажатии на кнопку выбора имени драйверов Oracle (Home) возникает другая ошибка:

Насколько я понял проблема возникает из-за того, что на сервере были установлены несколько версий Oracle и в данный момент версия 11.2.0 отсутствует на сервере. Вместо нее установлена версия 12.2.

Попытка очистить следы Oracle 11.2.0 и в дальнейшем даже переустановка Oracle привела лишь к тому что в данный момент выходит пустой список в котором невозможно выбрать версию Oracle:

 

Прошу помочь в решении данной проблемы.

 

Благодарю.

 

P. S. По возможности помогите пожалуйста найти инструкцию по бэкапу Terrasoft 3.3, для попытки переустановки Terrasoft, чтобы решить вышеуказанную проблему.

Нравится

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

Обратите внимание на рекомендацию по поводу «Ошибка открытия конфигурации: Cannot find OCI DLL»:

Для приложения Terrasoft под Oracle обязательно необходимо, чтобы на компьютерах всех пользователей, использующих конкурентные лицензии, был установлен клиент Oracle одной и той же версии. Имя сервера на компьютерах всех пользователей должно совпадать с именем, указанным в поле [Сервер] окна редактирования строки соединения компьютера, на котором заказывают и загружают лицензии, и данный сервер должен быть зарегистрирован. Имя сервера прописывается в файле tnsnames.ora, расположенном в инсталляционной директории клиента Oracle (например, d:/oracle/ora92/network/admin/ tnsnames.ora).

Также версия ядра 3.3.2.120 далеко не самая новая, есть смысл попробовать на последних файлах 3.3.2.313, поскольку в версии 175 и выше вносились изменения в механизм работы с сервером сессий для Oracle.

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

Для получения бекапа существующей базы нужно воспользоваться средствами СУБД, а также не забыть автоматически перенести или вручную завести пользователей с такими же именами, как в базе, на уровне сервера БД. Именно для Oracle инструкции не встречал. Например, для MS SQL это делается так. Если забыть перенести, то пустит только администратора SYS.

Зверев Александр пишет:
Для приложения Terrasoft под Oracle обязательно необходимо, чтобы на компьютерах всех пользователей, использующих конкурентные лицензии, был установлен клиент Oracle одной и той же версии. Имя сервера на компьютерах всех пользователей должно совпадать с именем, указанным в поле [Сервер] окна редактирования строки соединения компьютера, на котором заказывают и загружают лицензии, и данный сервер должен быть зарегистрирован. Имя сервера прописывается в файле tnsnames.ora, расположенном в инсталляционной директории клиента Oracle (например, d:/oracle/ora92/network/admin/ tnsnames.ora).

Добрый день. Данная проблема наблюдается на самом сервере (невозможно зайти в Terrasoft установленный на сервере).

По поводу бэкапа, посмотрю, большое спасибо за помощь.

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

При установке пакет получаем ошибку. Понять в чем она не получилось. Файл прикладываю, помогите пожалуйста! 

Ошибка обновления структуры таблицы для схемы "UsrRequestPos" из пакета "Verniy_Request_m_negriy". UId 18f0eb84-a642-4a7f-88c6-62e843da5a99: При выполнении действия обновления структуры схемы произошла ошибка "Exception of type 'Terrasoft.Core.DB.DBMetaActionValidationException' was thrown.", текст Sql сценария: "
SELECT
    CASE
    WHEN COUNT(*) > 0 THEN 0
    ELSE 1
    END [Result]
FROM
    [dbo].[UsrRequestPos] [ChildSchema]
WHERE
    NOT [ChildSchema].[UsrReqPosTypeId] IS NULL
    AND NOT EXISTS (
        SELECT
            *
        FROM
            [dbo].[UsrReqPosType] [ReferencedSchema]
        WHERE
            [ChildSchema].[UsrReqPosTypeId] = [ReferencedSchema].[Id]
    )"

Прикрепленные файлы

Нравится

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

Проблема в том что не привязаны к пакету данные UsrReqPostType.

Если вы разработчик пакета то привяжите данные справочника в пакет если нет обратитесь к разработчикам, чтобы они исправили ошибку!

Добрый день! У вас срабатывает ограничение целостности по внешнему ключу. Т.е. отсутствуют записи UsrReqPostType, на которые ссылаюся записи UsrRequestPos. Исправьте базу, чтобы предложенный запрос возвращал 1

Проблема в том что не привязаны к пакету данные UsrReqPostType.

Если вы разработчик пакета то привяжите данные справочника в пакет если нет обратитесь к разработчикам, чтобы они исправили ошибку!

Григорий Чех,

Григорий Чех пишет:

Проблема в том что не привязаны к пакету данные UsrReqPostType.

Если вы разработчик пакета то привяжите данные справочника в пакет если нет обратитесь к разработчикам, чтобы они исправили ошибку!

Разработчик я. Подскажите, мне нужно добавить новый объект UsrReqPostType в пакет? Или добавить sql код? В общем как сделать привязку данных в справочник?

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

Спасибо. Я понял, что эти данные сразу можно добавить в пакет, только не понял как (

Mexanik,

Подробнее о привязке данных к пакету смотрите пост на Академии.

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

Добрый день, форумчане)

Всегда был интересен вопрос след. характера:

В чём отличие типа данных у параметра БП таких как Уникальный идентификатор и Справочник?

Может в Справочник можно как-то внутрь заглянуть и вытянуть displayValue, избегая запрос к root таблице?

Сталкивался кто с подобным, интересен опыт Ваш.

Нравится

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

Если создать два параметра разных типов и привязать к одной и той же записи одного справочника, в исходном коде БП будет выглядеть так:

_processSchemaParameter1 = () => { return (Guid)(new Guid("b06f1e0e-f46b-1410-7190-00155d043204")); };
_processSchemaParameter2 = () => { return (Guid)(new Guid("b06f1e0e-f46b-1410-7190-00155d043204")); };
...
private Func<Guid> _processSchemaParameter1;
public virtual Guid ProcessSchemaParameter1 {
	get {
return (_processSchemaParameter1 ?? (_processSchemaParameter1 = () => Guid.Empty)).Invoke();
	}
	set {
_processSchemaParameter1 = () => { return value; };
	}
}
 
private Func<Guid> _processSchemaParameter2;
public virtual Guid ProcessSchemaParameter2 {
	get {
return (_processSchemaParameter2 ?? (_processSchemaParameter2 = () => Guid.Empty)).Invoke();
	}
	set {
_processSchemaParameter2 = () => { return value; };
	}
}
...
private void WritePropertyValues(DataWriter writer, bool useAllValueSources) {
	if (!HasMapping("ProcessSchemaParameter1")) {
writer.WriteValue("ProcessSchemaParameter1", ProcessSchemaParameter1, Guid.Empty);
	}
	if (!HasMapping("ProcessSchemaParameter2")) {
writer.WriteValue("ProcessSchemaParameter2", ProcessSchemaParameter2, Guid.Empty);
	}
}
 
...
protected override void InitializeMetaPathParameterValues() {
	base.InitializeMetaPathParameterValues();
	MetaPathParameterValues.Add("e0873088-8334-4b85-96a4-fa3e5ecb7374", () => ProcessSchemaParameter1);
	MetaPathParameterValues.Add("246467c7-071b-4cb0-8073-30c4f72be120", () => ProcessSchemaParameter2);
...	
protected override void ApplyPropertiesDataValues(DataReader reader) {
	base.ApplyPropertiesDataValues(reader);
	bool hasValueToRead = reader.HasValue();
	switch (reader.CurrentName) {
case "ProcessSchemaParameter1":
	if (!hasValueToRead) break;
	ProcessSchemaParameter1 = reader.GetValue<System.Guid>();
break;
case "ProcessSchemaParameter2":
	if (!hasValueToRead) break;
	ProcessSchemaParameter2 = reader.GetValue<System.Guid>();
break;
	}
}
...

А в метаданных:

      "Parameters": [
        {
          "TypeName": "Terrasoft.Core.Process.ProcessSchemaParameter",
          "UId": "e0873088-8334-4b85-96a4-fa3e5ecb7374",
          "Name": "ProcessSchemaParameter1",
          "CreatedInSchemaUId": "f4c123c0-d628-4d9f-867c-6c0b78c86395",
          "ModifiedInSchemaUId": "f4c123c0-d628-4d9f-867c-6c0b78c86395",
          "DataValueType": "b295071f-7ea9-4e62-8d1a-919bf3732ff2",
          "SourceValue": {
            "Source": 3,
            "Value": "[#Lookup.c449d832-a4cc-4b01-b9d5-8a12c42a9f89.b06f1e0e-f46b-1410-7190-00155d043204#]",
            "ModifiedInSchemaUId": "f4c123c0-d628-4d9f-867c-6c0b78c86395"
          },
          "ReferenceSchemaUId": "c449d832-a4cc-4b01-b9d5-8a12c42a9f89"
        },
        {
          "TypeName": "Terrasoft.Core.Process.ProcessSchemaParameter",
          "UId": "246467c7-071b-4cb0-8073-30c4f72be120",
          "Name": "ProcessSchemaParameter2",
          "CreatedInSchemaUId": "f4c123c0-d628-4d9f-867c-6c0b78c86395",
          "ModifiedInSchemaUId": "f4c123c0-d628-4d9f-867c-6c0b78c86395",
          "DataValueType": "23018567-a13c-4320-8687-fd6f9e3699bd",
          "SourceValue": {
            "Source": 3,
            "Value": "[#Lookup.c449d832-a4cc-4b01-b9d5-8a12c42a9f89.b06f1e0e-f46b-1410-7190-00155d043204#]",
            "ModifiedInSchemaUId": "f4c123c0-d628-4d9f-867c-6c0b78c86395"
          }
        }
      ],

То есть разницы практически нет, хотя внешний вид и интерфейс выбора значения разные.

Также на значения параметров в выполняющемся процессе можно посмотреть запросом в базу:

select top 10 *, cast(PropertiesData as varchar(max)) from SysProcessData

Там для параметров видно тоже только Id.

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

Добрый день, Коллеги!

Версия 7.11.3

Суть проблемы:

1) Подключили SVN.

2) Создали свой пакет. Пакет привязан к SVN

3) Создали раздел через мастер раздела. Создались автоматически схемы

https://www.screencast.com/t/Q5QGRbjj

4) Зафиксировали пакет в SVN - успешно

 

Проблема:

После фиксации в SVN схема на скриншоте

https://www.screencast.com/t/B8UYl1aZg

оказалась заблокированной

 

Что пробовали сделать:

1) Компиляция всего

2) Обновление БД

3) Генерация исходных кодов всего

4) Удаление Схемы и обновление пакета из SVN

5) Восстановление конфигурации из хранилища

6) Разблокировка пакета SQL сценарием 

https://www.screencast.com/t/AJjjnyf8C

https://www.screencast.com/t/0dWvpqJsod

7) Повторная и фиксация и обновление из SVN

8) Очистка кеша Redis

 

Все перечисленные выше действия не помогли

Другие схемы и объекты пакета не заблокированы. Проблема возникает только с конкретной схемой

Подскажите, пожалуйста, в чём может быть проблема и как это вылечить?

Нравится

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

Если дело именно в блокировке схемы, то можете попробовать через TortoiseSVN снять блокировку. А так судя по ошибке на скрине это не похоже на блокировку. 

Миннекаев Айдар,

Айдар, Если бы был лок в SVN, он не давал бы закоммитить повторно =)

На всякий случай проверили 

https://www.screencast.com/t/IpuwnUUa 

Блокировки нет

Если это не блокировка, то в чём может быть проблема? Буду благодарен за идеи!

В SysSchema вроде тоже всё в порядке.. 

 

Разблокировка пакета SQL сценарием 

2019-07-02_1705.png (195×91)

В поле Maintainer должно быть указано то значение, которое стоит в системной настройке «Издатель» (Maintainer). Проверьте, точно ли у Вас там сейчас «Customer».

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

Всем привет. 

Продукт bpmn SDE 7.13.2.934

Подскажите, пожалуйста, каким образом реализовать выбор Сервиса в зависимости ото выбранной КЕ. 

Из коробки требуется выбрать сервис и только потом КЕ, но дело в том, что всегда легче узнать с какой КЕ проблема и выбрать сервис для неё. Наверняка этот кейс сильно распространён

Нравится

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

В разделе фильтрация одного поля по другому делается при помощи бизнес-правил. Они настраиваются в мастере раздела. Стандартно КЕ не фильтруется по сервису, как и наоборот, их можно выбирать в любом порядке. Сервис блокируется бизнес-правилом при пустом сервисном договоре.

Зверев Александр, есть ли примеры настройки подобного(фильтрация) БП ?  

Достаточно переключиться в мастере раздела на нужную вкладку и посмотреть существующие бизнес-правила. Либо см. документацию. Их бывает 4 разновидности, в том числе и фильтрация:

scr_section_wizard_rules_designer_action.png

В целом, вопрос решён, важна была подсказка о том, что для решения кейса стоит использовать бизнес-правило в разделе "Обращения". 

Для реализации задуманного нужно сделать следующее - задать всем КЕ при импорте "тип" и добавить суррогатное поле "тип КЕ" в каталоге услуг. 

После этого сравнивать два поля. Выглядит это примерно следующим образом: 

Кстати, разрабам на заметку - подписи "Если" , "То", а также сама инфографика, при выборе фильтра значений, сбивают с толку.

Коллеги, спасибо за помощь. 

 

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

При попытке открыть конфигурацию сначала идет долгое ожидание, а затем выходит ошибка: "У вас нет прав на выполнение данного действия. Обратитесь к системному администратору." Но спустя секунд 30, а то и больше в конфигурацию заходит, но и то не всегда. 

Появилось это после обновления с 7.12.4 до 7.13.1.

Как можно это исправить?

Нравится

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

Попробуйте зайти по ссылке адрес_сервера:порт/0/dev

После обновления вы поменяли бинарники веб сервера на новые? Выполнили очистку редиса и перезапуск пула придложений? Попробуйте еще очистить кэш броузера и перекомпелировать конфигурацию! (Это можно сделать через WorkspaceConsole  (-operation=BuildWorkspace)  детальнее описано тут

Григорий Чех,

Все этоя проделывал, не помогло. Пробовал развернуть чистую сборку 7.13.1 и там та же ошибка. 

Григорий Чех пишет:
Попробуйте зайти по ссылке адрес_сервера:порт/0/dev

 Так заходит, но хотелось чтобы и через дизайнер системы можно было зайти

Возможно, у пользователя не актуализированы роли. Нужно запустить действие актуализации в разделе «Организационная структура».

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

Здравствуйте! Может кто-нибудь объяснить почему не работают следующие команды в конфигураторе:
- Сгенерировать требующих генерации
- Обновить для требующих обновления (Структура БД)
- Установить для требующих установки
И я уверен что они не работают, "Обновить для требующих обновления" уж точно, т.к. начал через пару секунд вышло сообщение о том, что выполнено успешно, НО в БД структура не обновилась, а обновилась оно после того команды "Обновить для выбранных", на выбранном объекте. Неужели нужно каждый объект в ручную выделять и обновлять?

P.S.: пакеты были установлены, точнее обновлены при помощи встроенной утилиты "Установка приложений", и она автоматически почему-то не обновила структуру

Нравится

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

Добрый день!

В коробке функционал этих команд работает. Попробуйте вывести колонку "Текст последней ошибки", вбить в поиск "%" и отсортировать по этой колонке - есть ли в конфигурации объекты с ошибками?

Антон Малий,

нет таких объектов

На community такой вопрос решить сложно. В коробке данный функционал работает корректно. Если вопрос актуален - создайте обращение в поддержку и предоставьте пакеты и копию БД до накатки.

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

Коллеги, добрый день! На дев площадке добавили колонки в разделы Контрагенты, Конфигурации и Обращения. После добавления разделы отображались корректно. После фиксации изменений, обновления пакета из хранилища на прод площадку и последующей компиляции конфигурации, разделы Конфигурации и Обращения стали отображаться некорректно. В разделе Конфигурации при открытии существующей записи отображается окно новой записи: https://yadi.sk/d/kHsdJtiL3Gg3Wd , в консоли появляются следующие ошибки https://yadi.sk/d/sXIPRxkn3Gg3eF,приложение ругается на новые колонки (Недопустимое имя столбца) В разделе Обращения при открытии записи не отображается номер обращения https://yadi.sk/d/JuO8WvQ63Gg3sq в консоли также появляются аналогичные ошибки из-за созданных колонок https://yadi.sk/d/slVgPRYq3Gg3z3 Есть способ лечения ошибок с помощью удаления этих колонок с помощью мастера раздела и из конфигурации, последующей фиксации изменений в хранилище и переносе обратно на дев площадку, но это неправильно. Также после обновления пакета из хранилища, возникает ошибка для пользовательского бизнес процесса https://yadi.sk/d/gn6EsdX33Gg6zc
Какова природа данной проблемы?

Нравится

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

Я, конечно, не разработчик, но в почему всё в пакете Custom? Его же, вроде, нельзя корректно перенести.

"Сидоров Александр Валерьевич" написал:всё в пакете Custom?

Разве? всё вроде как в пакете WS_FirstOfd
"Голикова Елена Евгеньевна" написал:Какова природа данной проблемы?

Вы только компилировали? Или делали все 5 шагов? (генерация-компиляция-данные-скрипты-обновление структур)?

"Варфоломеев Данила" написал:Разве? всё вроде как в пакете WS_FirstOfd

Да, Вы правы. На этом скрине мне показалось, что открыт пакет Custom https://yadi.sk/d/gn6EsdX33Gg6zc

"Варфоломеев Данила" написал:
Сидоров Александр Валерьевич пишет:

всё в пакете Custom?

Разве? всё вроде как в пакете WS_FirstOfd

Голикова Елена Евгеньевна пишет:

Какова природа данной проблемы?

Вы только компилировали? Или делали все 5 шагов? (генерация-компиляция-данные-скрипты-обновление структур)?


Делала обновление структур БД, компиляцию, генерацию всех исходных кодов. Результат тот же. В тех поддержке отклонили обращение по SLA

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

Ответ на вопрос "Какова природа данной проблемы?" - различие между тестовой средой и продуктовой среда, на прод вносятся изменения на прямую миную тест.

Выполните следующие рекомендации:

  • Убедитесь в корректности зависимостей пакетов и их соответствие между тест и прод средой
  • Откройте все объекты участвующие в разделе, убедитесь, что все поля заполнены корректно, после чего пересохраните и опубликуйте. Все возникшие конфликты устраните
  • Переоткройте каждую схему/модуль раздела и пересохраните/скомпилируйте
  • Откройте процесс и выполните его пересохранение, возникшие ошибки устраните

Не забудьте все исправления внести тестовую среду.

Обратите внимание на системную настройку SchemaNamePrefix на прод среде, она должна совпадать с настройкой на тест среде.

"Терещук Павел" написал:

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

Ответ на вопрос "Какова природа данной проблемы?" - различие между тестовой средой и продуктовой среда, на прод вносятся изменения на прямую миную тест.

Выполните следующие рекомендации:

  • Убедитесь в корректности зависимостей пакетов и их соответствие между тест и прод средой
  • Откройте все объекты участвующие в разделе, убедитесь, что все поля заполнены корректно, после чего пересохраните и опубликуйте. Все возникшие конфликты устраните
  • Переоткройте каждую схему/модуль раздела и пересохраните/скомпилируйте
  • Откройте процесс и выполните его пересохранение, возникшие ошибки устраните

Не забудьте все исправления внести тестовую среду.

Обратите внимание на системную настройку SchemaNamePrefix на прод среде, она должна совпадать с настройкой на тест среде.


Помогла пошаговая компиляция и сохранение всех объектов и схем. Префиксы названий объектов были настроены на обоих площадках корректно. Спасибо

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

Добрый день.
Искал похожую тему на форуме - на нашел.

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

Нравится

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

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

После удаления полей со схемы необходимо очистить кеш браузера (если поля были действительно удалены корректно, например, комментированием кода, который их добавляет на страницу).
Также Вы можете удалить поля, используя мастер раздела.

Это только визуально скроет поля. Тем не менее их можно быт выбрать в фильтре или в представлении раздела. Для того, чтобы поля не отображались Вам необходимо удалить их из объекта (либо изменить режим использования на "Никогда").

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