На странице добавлены две детали с редактируемым реестром. Создал первую и понял, что неправильно. Потом создал вторую корректно и захотел первую удалить (создавал кодом). В мастере ее удалить нельзя. Открыл конфигурацию и удалил строки из схемы раздела, а именно details и diff, касающихся этой детали. Сохранил и очистил кэш. После этого перестали отображаться детали вообще и в консоли появилась ошибка cannot read property "findPrimary". После возвращения кода детали обе появились и работают. Как убрать первую деталь? 

Нравится

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

Очень похоже, что как-то не так удаляете деталь со страницы. Если корректно удалить из details и diff, делать должна удалиться.

Очень похоже, что как-то не так удаляете деталь со страницы. Если корректно удалить из details и diff, делать должна удалиться.

Тёскин Дмитрий Валерьевич,

Проблема в том, что даже ошибиться негде

Вот код страницы полностью:

define("UsrConcertProgram1Page", [],

function() {

    return {

        entitySchemaName: "UsrConcertProgram",

        attributes: {

            "UsrActiveEveryday": {

                    "dataValueType": Terrasoft.DataValueType.INTEGER,

                    "type": Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN,

                    "caption": "UsrActiveEveryday",

                    "value" : "0"

                }

        },

        modules: /**SCHEMA_MODULES*/{}/**SCHEMA_MODULES*/,

        details: /**SCHEMA_DETAILS*/{

            "Files": {

                "schemaName": "FileDetailV2",

                "entitySchemaName": "UsrConcertProgramFile",

                "filter": {

                    "masterColumn": "Id",

                    "detailColumn": "UsrConcertProgram"

                }

            },

            "UsrPerformanceDetail": {

                "schemaName": "UsrPerformanceDetail",

                "entitySchemaName": "UsrPerformance",

                "filter": {

                    "detailColumn": "UsrConcertProgram",

                    "masterColumn": "Id"

                },

            },

            "UsrSchema1Detail660d66ee": {

                "schemaName": "UsrSchema1Detail",

                "entitySchemaName": "UsrConcertPerformance",

                "filter": {

                    "detailColumn": "UsrConcertProgram",

                    "masterColumn": "Id"

                }

            }

        }/**SCHEMA_DETAILS*/,

        businessRules: /**SCHEMA_BUSINESS_RULES*/{}/**SCHEMA_BUSINESS_RULES*/,

        methods: {

            getActiveEverydayConcerts: function() {

                var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", {

                    rootSchemaName: "UsrConcertProgram"

                });

                

                var filterGroup = this.Terrasoft.createFilterGroup();

                

                filterGroup.logicalOperation = this.Terrasoft.LogicalOperatorType.AND;

                filterGroup.add("concertsIsActive",

                this.Terrasoft.createColumnFilterWithParameter(this.Terrasoft.ComparisonType.EQUAL, "UsrIsActive", "1"));

                filterGroup.add("performancePeriodEveryday",

                this.Terrasoft.createColumnFilterWithParameter(this.Terrasoft.ComparisonType.EQUAL,

                "UsrPerformancePeriod", "85A8C133-FF83-4290-9F69-B34EAF627F8C"));

                

                esq.filters = filterGroup;

                

                esq.getEntityCollection(function(result) {

                    if (result.success)

                    {

                        this.set("UsrActiveEveryday", result.collection.getCount());

                    }

                }, this);

            },

            maxEverydayActive: function() {

                var invalidMessage = "";

                var maxActiveEverydayConcertCount = 0;

                var activeEverydayConcertCount = this.get("UsrActiveEveryday");

                this.Terrasoft.SysSettings.querySysSettingsItem("UsrMaxEverydayActiveProgram", function(value) {

                    maxActiveEverydayConcertCount = value;

                }, this);

                

                if (this.get("UsrPerformancePeriod").value == "85A8C133-FF83-4290-9F69-B34EAF627F8C".toLowerCase() &&

                this.get("UsrIsActive") && (activeEverydayConcertCount > maxActiveEverydayConcertCount) && !this.isAddMode()) {

                    invalidMessage = "Допускается не более " + maxActiveEverydayConcertCount +

                    " активных ежедневных концертных программ.";

                }

                if(this.get("UsrPerformancePeriod").value == "85A8C133-FF83-4290-9F69-B34EAF627F8C".toLowerCase() &&

                this.get("UsrIsActive") && (activeEverydayConcertCount >= maxActiveEverydayConcertCount) && this.isAddMode()) {

                    invalidMessage = "Допускается не более " + maxActiveEverydayConcertCount +

                    " активных ежедневных концертных программ.";

                }

                return {

                    fullInvalidMessage: invalidMessage,

                    invalidMessage: invalidMessage

                };

            },

            setValidationConfig: function() {

                this.callParent(arguments);

                this.addColumnValidator("UsrIsActive", this.maxEverydayActive);

                this.addColumnValidator("UsrPerformancePeriod", this.maxEverydayActive);

            },

            onEntityInitialized: function() {

                this.callParent(arguments);

                this.getActiveEverydayConcerts();

            }

        },

        dataModels: /**SCHEMA_DATA_MODELS*/{}/**SCHEMA_DATA_MODELS*/,

        diff: /**SCHEMA_DIFF*/[

            {

                "operation": "insert",

                "name": "UsrName9ed0e254-4ab5-4862-9e79-b18e052d92ab",

                "values": {

                    "layout": {

                        "colSpan": 24,

                        "rowSpan": 1,

                        "column": 0,

                        "row": 0,

                        "layoutName": "ProfileContainer"

                    },

                    "bindTo": "UsrName"

                },

                "parentName": "ProfileContainer",

                "propertyName": "items",

                "index": 0

            },

            {

                "operation": "insert",

                "name": "STRING3bea7972-86d7-4d0e-b4d7-5731d5a6a6b6",

                "values": {

                    "layout": {

                        "colSpan": 24,

                        "rowSpan": 1,

                        "column": 0,

                        "row": 1,

                        "layoutName": "ProfileContainer"

                    },

                    "bindTo": "UsrConcertCode",

                    "enabled": true

                },

                "parentName": "ProfileContainer",

                "propertyName": "items",

                "index": 1

            },

            {

                "operation": "insert",

                "name": "LOOKUP2c6c3d90-34b5-4a43-9b28-26c5c29c6c48",

                "values": {

                    "layout": {

                        "colSpan": 24,

                        "rowSpan": 1,

                        "column": 0,

                        "row": 2,

                        "layoutName": "ProfileContainer"

                    },

                    "bindTo": "UsrOwner",

                    "enabled": true,

                    "contentType": 3

                },

                "parentName": "ProfileContainer",

                "propertyName": "items",

                "index": 2

            },

            {

                "operation": "insert",

                "name": "UsrIsActive3354c9f0-c35f-4c7c-85ec-0b3cc01376b8",

                "values": {

                    "layout": {

                        "colSpan": 12,

                        "rowSpan": 1,

                        "column": 0,

                        "row": 0,

                        "layoutName": "Header"

                    },

                    "bindTo": "UsrIsActive"

                },

                "parentName": "Header",

                "propertyName": "items",

                "index": 0

            },

            {

                "operation": "insert",

                "name": "CreatedOn770eb82e-0b06-4f93-be35-bdd0ddac28b8",

                "values": {

                    "layout": {

                        "colSpan": 12,

                        "rowSpan": 1,

                        "column": 12,

                        "row": 0,

                        "layoutName": "Header"

                    },

                    "bindTo": "CreatedOn"

                },

                "parentName": "Header",

                "propertyName": "items",

                "index": 1

            },

            {

                "operation": "insert",

                "name": "UsrActiveEveryday",

                "values": {

                    "bindTo": "getActiveEverydayConcerts",

                    "caption": "UsrActiveEveryday",

                    "layout": {

                        "colSpan": 12,

                        "rowSpan": 1,

                        "column": 0,

                        "row": 1

                    }

                },

                "parentName": "Header",

                "propertyName": "items",

                "index": 2

            },

            {

                "operation": "insert",

                "name": "Tab75eff25dTabLabel",

                "values": {

                    "caption": {

                        "bindTo": "Resources.Strings.Tab75eff25dTabLabelTabCaption"

                    },

                    "items": []

                },

                "parentName": "Tabs",

                "propertyName": "tabs",

                "index": 0

            },

            {

                "operation": "insert",

                "name": "Tab75eff25dTabLabelGroup46c8d52b",

                "values": {

                    "caption": {

                        "bindTo": "Resources.Strings.Tab75eff25dTabLabelGroup46c8d52bGroupCaption"

                    },

                    "itemType": 15,

                    "markerValue": "added-group",

                    "items": []

                },

                "parentName": "Tab75eff25dTabLabel",

                "propertyName": "items",

                "index": 0

            },

            {

                "operation": "insert",

                "name": "Tab75eff25dTabLabelGridLayoutd14f72b6",

                "values": {

                    "itemType": 0,

                    "items": []

                },

                "parentName": "Tab75eff25dTabLabelGroup46c8d52b",

                "propertyName": "items",

                "index": 0

            },

            {

                "operation": "insert",

                "name": "UsrTeama25e968a-f7f0-4c80-bde3-ed860af75538",

                "values": {

                    "layout": {

                        "colSpan": 12,

                        "rowSpan": 1,

                        "column": 0,

                        "row": 0,

                        "layoutName": "Tab75eff25dTabLabelGridLayoutd14f72b6"

                    },

                    "bindTo": "UsrTeam"

                },

                "parentName": "Tab75eff25dTabLabelGridLayoutd14f72b6",

                "propertyName": "items",

                "index": 0

            },

            {

                "operation": "insert",

                "name": "UsrComment8c10205e-2bf8-42d0-b7fa-605cc32a37af",

                "values": {

                    "layout": {

                        "colSpan": 12,

                        "rowSpan": 2,

                        "column": 12,

                        "row": 0,

                        "layoutName": "Tab75eff25dTabLabelGridLayoutd14f72b6"

                    },

                    "bindTo": "UsrComment",

                    "enabled": true,

                    "contentType": 0,

                    "labelConfig": {

                        "caption": {

                            "bindTo": "Resources.Strings.UsrComment8c10205e2bf842d0b7fa605cc32a37afLabelCaption"

                        }

                    }

                },

                "parentName": "Tab75eff25dTabLabelGridLayoutd14f72b6",

                "propertyName": "items",

                "index": 1

            },

            {

                "operation": "insert",

                "name": "UsrPerformancePeriod8fdfacd0-81ef-4bf3-9ccc-4cb9ab0f5b7b",

                "values": {

                    "layout": {

                        "colSpan": 12,

                        "rowSpan": 1,

                        "column": 0,

                        "row": 1,

                        "layoutName": "Tab75eff25dTabLabelGridLayoutd14f72b6"

                    },

                    "bindTo": "UsrPerformancePeriod",

                    "enabled": true,

                    "contentType": 5

                },

                "parentName": "Tab75eff25dTabLabelGridLayoutd14f72b6",

                "propertyName": "items",

                "index": 2

            },

            {

                "operation": "insert",

                "name": "UsrSchema1Detail660d66ee",

                "values": {

                    "itemType": 2,

                    "markerValue": "added-detail"

                },

                "parentName": "TabsContainer",

                "propertyName": "items",

                "index": 1

            },

            {

                "operation": "insert",

                "name": "NotesAndFilesTab",

                "values": {

                    "caption": {

                        "bindTo": "Resources.Strings.NotesAndFilesTabCaption"

                    },

                    "items": []

                },

                "parentName": "Tabs",

                "propertyName": "tabs",

                "index": 1

            },

            {

                "operation": "insert",

                "name": "Files",

                "values": {

                    "itemType": 2

                },

                "parentName": "NotesAndFilesTab",

                "propertyName": "items",

                "index": 0

            },

            {

                "operation": "insert",

                "name": "NotesControlGroup",

                "values": {

                    "itemType": 15,

                    "caption": {

                        "bindTo": "Resources.Strings.NotesGroupCaption"

                    },

                    "items": []

                },

                "parentName": "NotesAndFilesTab",

                "propertyName": "items",

                "index": 1

            },

            {

                "operation": "insert",

                "name": "Notes",

                "values": {

                    "bindTo": "UsrNotes",

                    "dataValueType": 1,

                    "contentType": 4,

                    "layout": {

                        "column": 0,

                        "row": 0,

                        "colSpan": 24

                    },

                    "labelConfig": {

                        "visible": false

                    },

                    "controlConfig": {

                        "imageLoaded": {

                            "bindTo": "insertImagesToNotes"

                        },

                        "images": {

                            "bindTo": "NotesImagesCollection"

                        }

                    }

                },

                "parentName": "NotesControlGroup",

                "propertyName": "items",

                "index": 0

            },

            {

                "operation": "insert",

                "name": "UsrPerformanceDetail",

                "values": {

                    "itemType": 2,

                    "markerValue": "added-detail"

                },

                //"parentName": "TabsContainer",

                "propertyName": "items",

                "index": 2

            }

        ]/**SCHEMA_DIFF*/

    };

});

 

Удаляю я все с деталью UsrPerformanceDetail

 

Можно подойти к решению с другой стороны: откатиться до стандартной страницы из «коробки» без обеих деталей, затем добавить вторую.

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