Коллеги, подскажите, пожалуйста, с чем может быть связана ошибка:

Error: Script error for "НазваниеРаздела"
http://requirejs.org/docs/errors.html#scripterror

Был создан новый раздел, протестирован, всё работало, выгружен в svn и установлен на другой машине.

Раздел добавлен в рабочее место. При попытке открыть реестр раздела в консоли выдаётся такая вот ошибка.

Нравится

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

Помогла генерация исходных кодов для требующих перегенерации и последующая полная компиляция.

Хотя в настройках web.config указана автоматическая установка и компиляция пакетов.

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

Добрый день!

Возникла нужда интегрировать Terrasoft XRM Professional Services v3.3.2.292 с сервисом ExpertSender. Этот сервис имеет собственный API, который работает через POST и GET запросы.Ранее мы уже проводили интеграцию данного сервиса с BPM'online. Для этого мы создавали бизнес-процесс, который запускался как только в CRM добавлялся новый Лид. У этого Лида считывался email-адрес, после чего запускался скрипт, который отправлял на сервис ExpertSender API-запрос, в котором содержался считанный email. Таким образом, мы добавляли новых Лидов в сервис ExpertSender, который работает через API.

Теперь же нужно то же самое воссоздать в Terrasoft XRM. Мы смогли создать новый процесс, в нем создали скрипт, который отправляет POST-запрос на ExpertSender. Но вот как сделать, чтобы процесс запускался автоматически, когда добавляется новый Лид, и как у конкретно этого нового Лида считать email - разобраться так и не удалось. Возможно, кто-то здесь подскажет, что можно сделать?

Нравится

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

Здравствуйте, Александр Николаевич!

Для решения Вашей задачи Вы можете использовать функцию WFStartByID(WorkflowID, ParamNames, ParamValues). В качестве параметров, в которую передаются WorkflowID - ID сервиса Вашего процесса, ParamNames - массив имен параметров Вашего БП, для которых Вы хотите передать начальное значение, ParamValues - массив значений параметров.

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

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

Если есть необходимость переименовать название раздела в главном меню системы, может помочь пример ниже.

Необходимо заместить модуль SimpleIntro, изменить в нем значение локализированной строки нужного раздела, после чего скопировать из блока diff базовой схемы блок добавления нужного раздела в блок diff замещающего клиентского модуля, при этом операцию insert заменить на merge.

Пример замещающего клиентского модуля для заголовка раздела Контрагенты (значение локализированной строки изменено на "Клиенты"):

define("SimpleIntro", ["SimpleIntroResources", "ConfigurationConstants"], function(resources, ConfigurationConstants) {
return {
attributes: {
},
methods: {
init: function() {
this.callParent(arguments);
},
},
diff: [
{
"operation": "merge",
"propertyName": "items",
"parentName": "BasicTile",
"name": "AccountSectionV2",
"values": {
"itemType": Terrasoft.ViewItemType.LINK,
"caption": {"bindTo": "Resources.Strings.AccountSectionCaption"},
"tag": "SectionModuleV2/AccountSectionV2/",
"click": {"bindTo": "onNavigateTo"}
}
}
]
};
});

http://storage3.static.itmages.ru/i/15/0513/h_1431534157_4107282_131d2c6f19.png

Нравится

Поделиться

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

А каким образом можно переименовать разделы левого бокового меню?

Роман, добрый день!

Поменять заголовок раздела Вы можете в Мастере разделов (на скриншотах)

Спасибо!

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

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

Скрипт принимает один единственный параметр - полное имя файла бекапа.
Перед использованием необходимо отредактировать скрипт и настроить параметры под себя:

  • DestinationPath - путь, где будет развернут заданный бекап
  • ServerName, UserName, Password - параметры соединения с СУБД

После выполнения скрипта, в папке DestinationPath будет создана папка с именем базы, в которой будут храниться файлы данных и лога и произойдет связывание пользователя Supervisor с одноименным логином.

Нравится

Поделиться

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

Сергей, я так понимаю Restore.sql отсутствует потому как в cmd написано

 del Restore.sql

:)

Именно - это временный файл. После его выполнения в нем уже нет надобности.

Теперь понял. А почему сразу не выполнить этот запрос через osql?

Сначала так и пробовал. Текст запроса оказался слишком большим для такого способа выполнения.

Здорово :) Я мечтала о такой штуке, а теперь она есть! :)

Уххх. Давно было пора.

Сереж, а можно сразу для восстановленной базы проводить сопоставление fkeys? Куда это добавить в скрипт?

Можно продублировать предпоследнюю строку и в ней заменить

exec sp_change_users_login 'Auto_Fix', 'Supervisor'

на

exec sp_change_users_login 'update_one', 'fkeys', 'fkeys'

Я бы добавил еще несколько улучшений:
1. Передача параметров через командную строку. Постоянно править файл неудобно. И если не передали, то спросить пользователя в консоли.
2. Добавить поддержку Windows авторизации
3. Обработать корректно если система не знает где утилита osql - в переменной PATH не добавлен путь или вы запустили файл не в папке с osql.

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

Сергей, все верное - часть параметров очень часто статична: имя пользователя, пароль, сервер, а вот Имя БД, имя файла бекапа в моем случае нет, то править все время файл не удобно или хранить много таких скриптов или сделать самые часто изменяемые параметры - опциональными.

Добавил такую возможность.
Теперь, если задан второй параметр, то он воспринимается как имя базы, иначе имя базы определяется по имени файла бекапа.
Если задан третий параметр, то он воспринимается как папка, в которую будут помещены файлы БД, иначе - этот параметр берется из переменной DestinationPath, указанной в скрипте.

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

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