Добрый день!
Для меня Террасофт новое ПО, понемногу пытаюсь разбираться. При запуске настройки страницы из мастера разделов автоматически генерируется страница с вкладками "Файлы и примечания" и "Лента". На вкладке "Файлы и примечания" есть деталь Примечания, которая отображает поле RICH_TEXT с визуальным редактором.
Вот он
Если же я попробую создать страницу, например, при добавлении преднастроенной страницы в бизнес-процесс, то найти деталь "Примечания" не удастся. У меня Studio. Исходя из документации, "Примечания" доступны для всех продуктов.
Добавить через исходный код тоже не удалось, здесь есть статья на эту тему, но или я еще плохо понимаю что делать или одно из двух.
Подскажите, пожалуйста, если есть какой-то рецепт, как добавлять поле RICH_TEXT на вкладку новой страницы?
Нравится
Александр, на сколько я помню там все было достаточно просто, я сам не разработчик, но делал так. Добавляем текстовое поле на страницу редактирования (не важно преднастроенная страница или карточка редактирования), а далее в исходном коде схемы вставляем/редактируем свойства этого поля. Примерно так:
{ "operation": "insert", "name": "UsrTextEmaila9104234-0e5e-4e48-8f19-3b2a78a42e99", "values": { "layout": { "colSpan": 24, "rowSpan": 1, "column": 0, "row": 5, "layoutName": "LeadPageRegisterInfoBlock" }, "bindTo": "UsrTextEmail", //Ваше текстовое поле "enabled": false, "contentType": 4, //добавляем "labelConfig": { //добавляем "visible": false. //добавляем }. //добавляем }
Таким образом на текстовое поле нужно навесить ContentType и labelConfig. Код выдирал из одного из старых проектов - года 3 назад оно работало)
p.s. свойство enabled - у вас будет, естественно, true.
Александр, на сколько я помню там все было достаточно просто, я сам не разработчик, но делал так. Добавляем текстовое поле на страницу редактирования (не важно преднастроенная страница или карточка редактирования), а далее в исходном коде схемы вставляем/редактируем свойства этого поля. Примерно так:
{ "operation": "insert", "name": "UsrTextEmaila9104234-0e5e-4e48-8f19-3b2a78a42e99", "values": { "layout": { "colSpan": 24, "rowSpan": 1, "column": 0, "row": 5, "layoutName": "LeadPageRegisterInfoBlock" }, "bindTo": "UsrTextEmail", //Ваше текстовое поле "enabled": false, "contentType": 4, //добавляем "labelConfig": { //добавляем "visible": false. //добавляем }. //добавляем }
Таким образом на текстовое поле нужно навесить ContentType и labelConfig. Код выдирал из одного из старых проектов - года 3 назад оно работало)
p.s. свойство enabled - у вас будет, естественно, true.
Александр, можно создать преднастроенную страницу с обычным текстовым полем, переключиться на код и добавить перед «layout» строку «"contentType": Terrasoft.ContentType.RICH_TEXT,», тем самым получить требуемый результат. При последующих правках в дизайнере страницы константа «Terrasoft.ContentType.RICH_TEXT» автоматически заменится на 4, это одно и то же.
define("UsrClientUnit_ca620a9", [], function() { return { entitySchemaName: "", attributes: {}, modules: /**SCHEMA_MODULES*/{}/**SCHEMA_MODULES*/, details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/, businessRules: /**SCHEMA_BUSINESS_RULES*/{}/**SCHEMA_BUSINESS_RULES*/, methods: {}, dataModels: /**SCHEMA_DATA_MODELS*/{}/**SCHEMA_DATA_MODELS*/, diff: /**SCHEMA_DIFF*/[ { "operation": "insert", "name": "STRING8ab3f912-5eb7-42a5-a397-1e2f1d9455b9", "values": { "contentType": 4, "layout": { "colSpan": 12, "rowSpan": 1, "column": 0, "row": 0, "layoutName": "Header" }, "bindTo": "UsrString1", "enabled": true }, "parentName": "Header", "propertyName": "items", "index": 0 } ]/**SCHEMA_DIFF*/ }; });
В результате в параметр, который далее можно считать в БП, попадёт введенная строка, окружённая HTML-тегами:
<div>Hello world!</div>
Но в реальной детали заметок есть ещё обработка вставляемых по кнопке картинок, реализованная в функции insertImagesToNotes из схемы GeneralDetails и в схеме NotesUtilities. Если она Вам важна, нужно вносить ещё доработки.