Здравствуйте, подскажите пожалуйста, как можно исправить выход из схемы при ее сохранении.
Например в лиде я создаю продажу


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

Нравится

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

На странице продажи сделайте сохранение без выхода

https://community.terrasoft.ua/ideas/dobavit-vozmozhnost-otklyuchit-avt…

 

Добрый день. 

Описанная логика сейчас присутствует во всей системе, не только в карточках Лида, Продажи. Суть в том, что находясь в родительской записи мы также вносим изменения, и переходя по ссылке в связанную запись при сохранении предполагается что работа с ней завершена, и нас возвращает к родительской - где есть незавершенные изменения. 
Как обходное решение могу посоветовать открывать нужные записи с детали в новой вкладке, тогда запись не будет закрываться.

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

Сохранение без закрытия производится при помощи:

this.save({silent:true});
Показать все комментарии

Доброго времени суток!

Ситуация такая. В процессе работы над crm в разделе Проекты была одна колонка и бизнес-правило к ней: поле Статус недоступно для редактирования, пока значение в той колонке(поле с дробным числом) равно 0.
Позже это бизнес-правило удалилось из-за ненадобности. И после этого начала появляться ошибка:
23502: null value in column "ITdsMarzha2" violates not-null constraint

ITdsMarzha2 - это и есть та колонка.
Её мы и удаляли в базе данных postgre, и чистили схему страницы от неё, и почистил все бизнес-правила в мастере раздела и в схеме страницы (думал там мог след остаться от удаленных б-правил). Постоянно кучу раз делал полную проверку системы: обновление бд, генерация, компиляция. Ну вот нигде её след больше не можем найти.

И всё равно ошибка появляется при сохранении карточки. При чем карточка то сохраняется успешно, а вот всякие связанные с этим бизнес-процессы не запускаются.
Кстати проблема только на боевой продуктивной среде. На моей локальной разработческой ошибки не возникает.

Может подсказать кто, куда нам ещё нужно залезть проверить эту "несуществующую" колонку?

Нравится

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

Добрый день. Ошибка приходит из постгре - там явно подразумевается, что колонка существует, и что в записи она будет заполнена значением. Вы точно уверены, что в схеме объекта не осталось этой колонки? Из базы может и удалили, но ОРМка может создать колонку обратно, основываясь на метаданных объекта.

Vyacheslav Lipatkin,

Метаданные проверили, там тоже нет следа по этой колонке.
Может, колонки могут как-то в айди преобразовываться? Ну в плане, что поиск по названию колонки ничего не находит
Где то ещё может хранятся данные?

Андрей Касаткин,

Поэкспериментируйте над схемой объекта на копии прода. Попробуйте добавить в схему объекта колонку с таким названием, опубликовать объект, потом удалить эту колонку и снова опубликовать. Может по ходу какие ошибки всплывут, и получится хоть как-то найти проблему.

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

Здравствуйте, столкнулся с интересной проблемой. Обычно мы не пользовались заказом в срм и не трогали его. Сейчас, когда он стал нужен, столкнулся с проблемой добавления продуктов в заказ. Страничка не отображается, в консоли ссылается на не отработанный запрос

Как я понял запрос ссылается на файл которого нет, как можно это исправить?

Нравится

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

Добрый день!

 

При воспроизведении ошибки  message: Uncaught Error: Script error for "***",
Происходит попытка вызова кастомной схемы, но схема не вызывается.

Возможно, проблема связана с настроенной разработкой в файловой системе на Вашем сайте (РФС)
Что можно сделать?
1) Попробуй "Выгрузить пакеты в файловую систему"
2) если ошибка продолжит воспроизводиться - попробовать отключить РФС.
Инструкция на Академии Террасофт по работе с файловой системой
https://academy.terrasoft.ru/docs/7-16/developer/development_tools/version_control_system/kontrol_versiy_v_subversion#title-2114-6

3) Данная ошибка, так же, может возникать, если переименовать схему, но не переименовать ее название во всех схемах, которые ее вызывают, то возникает ошибка типа Uncaught Error: Script error for . При этом не будет работать та часть функционала, в схемах которой не было изменено название схемы на новую. 

Ivan Kuchma,

Спасибо, буду разбираться. В поисках наткнулся на то, что ошибка вылезает при открытии "показать группы" в фильтрах продукта.

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

Здравствуйте, при выполнении процесса перевода продажи в заказ вылетает ошибка на переносе продуктов

"Terrasoft.Common.DbOperationException: Конфликт инструкции INSERT с ограничением FOREIGN KEY "FKPU5pFJW1zR5qrqXfCC4TQdQNI". Конфликт произошел в базе данных "BPMonline", таблица "dbo.Pricelist", column 'Id'."

Подскажите, с чем может быть связана эта ошибка.
Спасибо!

Нравится

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

Ошибка значит, что в поле Pricelist некоего продукта был записан Id, которого не существует в таблице прайс-листов. Наиболее частая ситуация: попадание в поле значения пустого Guid {00000000-0000-0000-0000-000000000000}.

 

Исходя из того, что вы переносите продукты из продажи в заказ, скорее всего произошёл такой сценарий: 

- у какого-то копируемого продукта не был проставлен прайс-лист;

- в результат выборки соответственно пришло значение {00000000-0000-0000-0000-000000000000};

- при создании нового продукта устанавливается полученное значение пустого Guid;

- при попытке сохранить запись возникает ошибка.

 

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

Ошибка значит, что в поле Pricelist некоего продукта был записан Id, которого не существует в таблице прайс-листов. Наиболее частая ситуация: попадание в поле значения пустого Guid {00000000-0000-0000-0000-000000000000}.

 

Исходя из того, что вы переносите продукты из продажи в заказ, скорее всего произошёл такой сценарий: 

- у какого-то копируемого продукта не был проставлен прайс-лист;

- в результат выборки соответственно пришло значение {00000000-0000-0000-0000-000000000000};

- при создании нового продукта устанавливается полученное значение пустого Guid;

- при попытке сохранить запись возникает ошибка.

 

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

Vyacheslav Lipatkin,

Спасибо, разобрался. В поле была установлена константа (id теперь уже несуществующего объекта).

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

Страница перевода лида в продажу не переведена на русский

У элементов есть локализованные варианты. При открытии страницы редактирования ссылается на дублирование элементов, объясните пожалуйста с чем это может быть связано.

 

Нравится

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

все еще актуальный вопрос!

В итоге у кнопок установил caption и вбил названия вручную, сидел с названием раздела. Починил, но особо не понял как это произошло.
По поводу контейнеров, создал свою схему указал лишь 1 контейнер и заместил диф.
Странно, что с коробки "перевод в продажу" выбивал такую ошибку и была проблема с контейнерами.

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

Здравствуйте, встретил странное поведение срм. Иногда при обновлении страницы (лид или продажа) сбрасывается поле контрагента и дублируется туда фио контакта. 

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

Нравится

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

"Контрагент" на вашем скриншоте - коробочный контейнер который называется Клиент (вы его видимо переименовали). Это виртуальное поле, которое может содержать значение как Контакт так и Контрагент. Подробнее можно почитать тут https://community.terrasoft.ru/articles/sozdanie-multilukapnogo-polya

Дмитрий А.,

Спасибо, теперь я понимаю, что это. Но почему же поле клиент иногда сбрасывается при обновлении страницы или использования в коде (reloadEntity) и присваивает значение контакта

Булат Хабирзянов,

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

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

Добрый день.

Есть необходимость на преднастроенной странице отображать список пользователей (по ФИО) входящих в выбранную организационную роль.

Какие условия бизнес-правила страницы необходимо указать? 

Нравится

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

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

 

Если правильно понимаю задачу, то базовыми элементами не получиться отображать список пользователей с фильтрацией по определенной организационной роли без дополнительных кастомизации логики. По поводу кастомизации есть несколько тем где поднимались подобные вопросы,  надеюсь Вам это будет полезно. https://community.terrasoft.ru/questions/spravochniki-v-prednastroennoy… и https://community.terrasoft.ua/questions/neskolko-voprosov-po-prednastr…

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

Приветствую, коллеги. Фильтрацию по содержимому в поле, которое является типом массива байт, можно произвести например таким условием: 

where encode("InputArguments", 'escape') like '%identifierNo=cardnumber123%';

По той же логике пытался сделать фильтр через ESQ такого формата:

esq.Filters.Add(
    esq.CreateFilterWithParameters(
        FilterComparisonType.Contain,
        "InputArguments",
        Encoding.UTF8.GetBytes(inputArguments)
));

В результате получаю исключение:  "42883: function upper(bytea) does not exist". Есть ли обходные пути для реализации данного фильтра?

Нравится

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

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

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

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

Подскажите, пожалуйста, какие настройки необходимо произвести на стороне Infinity и/или Creatio, чтобы информация о смене статуса оператора из клиента Infinity передавалась в Creatio.

В обратную сторону работает. 

Нравится

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

Добрый день, Александр! 

 

Базовый функционал приложения Creatio, в случае взаимодействия с Infinity, поддерживает передачу этих данных в обе стороны по умолчанию. Рекомендую ознакомиться с руководством по вопросу настройки данной интеграции:

https://academy.terrasoft.ru/docs/user/drugie_reshenija/konnektory_tele…

Также будет полезно обновить версию TMS (CMS) до последней и перепроверить настройки на стороне Infinity. 

Хорошего дня!

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

Добрый день!

Неизвестно, после каких действий, но практически у всех объектов "слетело" событие On..Saved. 
В итоге и сами процессы на это событие не отрабатывают.

Проходить каждый объект в поисках не хочется, потому вопрос - где можно найти в базе, у каких объектов было это событие определено? Сравним таким образом работающий backup и текущую конфигурацию, сможем восстановить

Нравится

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

Добрый день.

 

Как такового универсального решения данной проблемы - нет. В базе подобные записи можно найти в таблице SysSchema, колонка MetaData. 
И искать необходимо по ключу "Name": "{ObjectName}Saved" (например "Name": "AccountSaved").

Но если они слетели, то их в метаданных не будет.

 

Самое оптимальное решение - бэкап.

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