Есть потребность на страницу редактирования добавить поле, по которому будет выполняться фильтрация в детали.
Добавлять текстовое поле в EntitySchemа страницы неправильно, так как это значение нужно только для поиска и хранится в таблице не должно.
1. Каким образом я могу добавить такое поле, в которое можно вводить текст, но в тоже время оно не будет связано с полем в EntitySchemа?
2. Корректно ли для этого использовать Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN?
3. Какие ещё есть варианты реализации?
+ Для наглядности хотелось бы пример добавления такого поля :smile:

Нравится

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

1. Просто добавить и привязать под атрибут нужного типа.
2. Именно так.
3. Да собственно никаких, атрибут и диф под него.

Пример:

define("ContactAddressPageV2", [],
    function() {
        return {
            attributes: {
                "UsrKladrStreet": {
                    dataValueType: Terrasoft.DataValueType.LOOKUP
                },
                "UsrVirtualKladrStreet": {
                    "dataValueType": Terrasoft.DataValueType.LOOKUP,
                    "type": Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN,
                    isLookup: true,
                    caption: "virtual street",
                    referenceSchemaName: "UsrKladrStreet"
                }
            },
            diff: /**SCHEMA_DIFF*/[
                {
                    "operation": "insert",
                    "parentName": "Header",
                    "propertyName": "items",
                    "name": "UsrKladrStreet",
                    "values": {
                        bindTo: "UsrKladrStreet",
                        "caption": {"bindTo": "Resources.Strings.UsrKladrStreetCaption"},
                        layout: {column: 0, row: 8, colSpan: 12}
                    }
                },
                {
                    "operation": "insert",
                    "parentName": "Header",
                    "propertyName": "items",
                    "name": "UsrVirtualKladrStreet",
                    "values": {
                        bindTo: "UsrVirtualKladrStreet",
                        "caption": "virtual street",
                        layout: {column: 0, row: 9, colSpan: 12}
                    }
                }
            ]/**SCHEMA_DIFF*/
        };
    }
);
Показать все комментарии