Получить значения двух полей из каталога - как (BPM7)?

Есть каталог. И там есть 2 поля - тип цены и ее расшифровка. Как я могу, например, в договорах, вывести на экран не только тип цены, но и, в в виде дополнительной информации, расшифровку цены?

Нравится

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

Наталия, есть несколько вариантов:

1. Создать дополнительное поле, недоступное для редактирования, и выводить информацию в него;

2. Использовать Hint поля Тип цены;

3. Добавить дополнительный элемент типа Label, и выводить информацию в него.

Детали зависят от объема текста, потребностей в отключаемости, и т.д.

Это мой первый проект в среде BPMonline. Потому могла бы ли я получить инструкцию, где будет рассказано как
> Создать дополнительное поле, недоступное для редактирования, и выводить информацию в него

Особенно интересует момент вывода информации (опыт работы с Terrasoft есть, там бы я это сумела сделать).

Здравствуйте, Наталья!

Рассмотрим на примере полей Контакт и Контрагент в карточке лида:

1. Создать текстовое поле:

Поле называется TextEdit, заголовок поля вводится в свойствах.

2. Открываем процесс карточки:

3. Открываем на редактирование скрипт PageLoadComplete:

4. Добавляем строки:

Page.TextEdit.Value = Page.AccountEdit.Value.ToString() + Page.ContactEdit.Value.ToString();

5. Добавляем такой же код в обработчик изменения значений ContactEdit и AccountEdit.

6. Публикуем схему.

Если нужно, чтобы полученное значение сохранялось в БД, создаем предварительно поле в объекте, и привязываем к контролу в карточке.

Мне кажется, что вопрос был о 7.X.

"Зверев Александр" написал:

Мне кажется, что вопрос был о 7.X.


да....

Наталья, в таком случае алгоритм действий следующий:

1. Открываете Настройки - Конфигурация;

2. Создаете новый замещающий объект для того объекта, куда хотите добавлять поле;

3. Добавляете поле в замещающий объект и публикуете его;

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

type: Terrasoft.ViewModelSchemaItem.ATTRIBUTE,
name: 'ContactAccountElement',
columnPath: 'ContactAccountElement',
dataValueType: Terrasoft.DataValueType.TEXT,
customConfig: {
	 enabled: false,
	 value: {
		 bindTo: 'getContactAccountElementValue'
	 }
}

и само тело функции:

this.methods.getContactAccountElementValue = function() {
   return this.get('Account') + this.get('Contact');
};

рекомендуется все изменения выполнять на тестовой конфигурации. Механизм создания тестовой конфигурации не отличается от 5.4 (http://www.community.terrasoft.ru/blogs/7655)

Я прошу прощения за слишком подробные вопросы. Но как я уже выше писала, это мой первый проект в среде BPMonline, потому спрошу - как и где я могу найти исходный код страницы? Чтобы скопировать туда содержимое родительского объекта.... И где мне взять содержимое родительского объекта?

Здравствуйте, Наталия!

"Наталия П." написал:Я прошу прощения за слишком подробные вопросы. Но как я уже выше писала, это мой первый проект в среде BPMonline, потому спрошу - как и где я могу найти исходный код страницы?

Исходный код содержится в схеме конфигурации. Открыть ее можно так:


Чтобы скопировать туда содержимое родительского объекта.... И где мне взять содержимое родительского объекта?

Родительский объект - это так схема, которую Вы хотели редактировать. например, если нас интересовала карточка Контрагента, тогда это AccountEdit А замещающий объект создается так:

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