var __extends = (this && this.__extends) || (function () {
    var extendStatics = Object.setPrototypeOf ||
        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
    return function (d, b) {
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var F01280;
(function (F01280) {
    var FDocument = (function (_super) {
        __extends(FDocument, _super);
        function FDocument(id, version, oldVersion) {
            var _this = _super.call(this, id, version, oldVersion) || this;
            _this._tableP1 = null;
            _this._tableP2Sp1Total = null;
            _this._tableP3Sp1Total = null;
            _this._tableP4Sp1Total = null;
            _this._tableP5Sp1Total = null;
            _this._tableP2Sp1 = null;
            _this._tableP3Sp1 = null;
            _this._tableP4Sp1 = null;
            _this._tableP5Sp1 = null;
            _this._tableP2Sp2 = null;
            _this._tableP3Sp2 = null;
            _this._tableP4Sp2 = null;
            _this._tableP5Sp2 = null;
            _this._tableP2SpInsurance = null;
            _this._tableP3SpInsurance = null;
            _this._tableP4SpInsurance = null;
            _this._tableP5SpInsurance = null;
            _this._tableP2SpIndexation = null;
            _this._tableP3SpIndexation = null;
            _this._tableP4SpIndexation = null;
            _this._tableP5SpIndexation = null;
            _this._tableP2UniqOrgs = null;
            _this._tableP3UniqOrgs = null;
            _this._tableP4UniqOrgs = null;
            _this._tableP5UniqOrgs = null;
            _this._tableP2YearUniqOrgs = null;
            _this._tableP3YearUniqOrgs = null;
            _this._tableP4YearUniqOrgs = null;
            _this._tableP5YearUniqOrgs = null;
            _this._tableP2SpExecWrits = null;
            _this._tableP3SpExecWrits = null;
            _this._tableP4SpExecWrits = null;
            _this._tableP5SpExecWrits = null;
            _this._tableP2Sp3 = null;
            _this._tableP3Sp3 = null;
            _this._tableP5Sp3 = null;
            _this._tableP4Sp3 = null;
            _this._tableP2Sp6 = null;
            _this._transTableP3Sp3 = null;
            _this._transTableP3Sp7 = null;
            _this._transTableP4Sp3 = null;
            _this._transTableP4Sp6 = null;
            _this._transTableP5Sp3 = null;
            _this._transTableP5Sp6 = null;
            _this._transTableP2Sp3 = null;
            _this._tableFormInsurValues = null;
            _this._canCalcIndexation = null;
            _this._rowPartsCount = null;
            _this._analyticsSheet = null;
            _this._positionsSpr0116 = null;
            _this._p1Sheet = null;
            _this._p2Sp1Sheet = null;
            _this._p3Sp1Sheet = null;
            _this._p4Sp1Sheet = null;
            _this._p5Sp1Sheet = null;
            _this._p2Sp6Sheet = null;
            _this._p2Sp9Sheet = null;
            _this._p3Sp11Sheet = null;
            _this._p4Sp9Sheet = null;
            _this._p5Sp10Sheet = null;
            _this._insuranceGroupSheet = null;
            _this._onlyInsuranceSheet = null;
            _this._analyticsDataTable = null;
            _this._analyticSheet = null;
            _this._countMonthForCalcTable = null;
            _this._p7Sp1Sheet = null;
            _this._p7UniqOrgs = null;
            _this._p7RefObjTable = null;
            _this._p7RefOkpdTable = null;
            _this._p7RefKosguTable = null;
            _this._p7RefObjDescTable = null;
            _this._p7RefObjDescNpaTable = null;
            _this._addDataYearsCount = 1;
            _this._mainDataYearsCount = ObasStageSettings.YearsCount;
            _this._tableRules = new F01280.TableRules(_this);
            _this._interfaceRules = new F01280.InterfaceRules(_this);
            _this._updateRules = new F01280.UpdateRules(_this);
            _this._exportRules = new F01280.ExportRules(_this);
            return _this;
        }
        Object.defineProperty(FDocument.prototype, "TotalTable", {
            get: function () {
                return this.TableP1;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "OnlyInsuranceSheet", {
            get: function () {
                if (this._onlyInsuranceSheet == null) {
                    this._onlyInsuranceSheet = new OnlyInsuranceSheet("SHT_F01_280_6", this);
                }
                return this._onlyInsuranceSheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "InsuranceGroupSheet", {
            get: function () {
                if (this._insuranceGroupSheet == null) {
                    this._insuranceGroupSheet = new F01280.InsuranceGroupSheet(this);
                }
                return this._insuranceGroupSheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P5Sp10Sheet", {
            get: function () {
                if (this._p5Sp10Sheet == null) {
                    this._p5Sp10Sheet = new F01280.ExecWritsSheet("SHT_F01_280_5_10", this);
                }
                return this._p5Sp10Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P4Sp9Sheet", {
            get: function () {
                if (this._p4Sp9Sheet == null) {
                    this._p4Sp9Sheet = new F01280.ExecWritsSheet("SHT_F01_280_4_9", this);
                }
                return this._p4Sp9Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P3Sp11Sheet", {
            get: function () {
                if (this._p3Sp11Sheet == null) {
                    this._p3Sp11Sheet = new F01280.ExecWritsSheet("SHT_F01_280_3_11", this);
                }
                return this._p3Sp11Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P2Sp9Sheet", {
            get: function () {
                if (this._p2Sp9Sheet == null) {
                    this._p2Sp9Sheet = new F01280.ExecWritsSheet("SHT_F01_280_2_9", this);
                }
                return this._p2Sp9Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P2Sp6Sheet", {
            get: function () {
                if (this._p2Sp6Sheet == null) {
                    this._p2Sp6Sheet = new F01280.P2Sp6Sheet(this);
                }
                return this._p2Sp6Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P5Sp1Sheet", {
            get: function () {
                if (this._p5Sp1Sheet == null) {
                    this._p5Sp1Sheet = new F01280.PxTotalSheet(this, !this.TableP5Sp1Total.IsCalcCorrection, 0, "P5Sp1Sheet");
                }
                return this._p5Sp1Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P4Sp1Sheet", {
            get: function () {
                if (this._p4Sp1Sheet == null) {
                    this._p4Sp1Sheet = new F01280.PxTotalSheet(this, !this.TableP4Sp1Total.IsCalcCorrection, 0, "P4Sp1Sheet");
                }
                return this._p4Sp1Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P3Sp1Sheet", {
            get: function () {
                if (this._p3Sp1Sheet == null) {
                    this._p3Sp1Sheet = new F01280.PxTotalSheet(this, !this.TableP3Sp1Total.IsCalcCorrection, 0, "P3Sp1Sheet");
                }
                return this._p3Sp1Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P2Sp1Sheet", {
            get: function () {
                if (this._p2Sp1Sheet == null) {
                    this._p2Sp1Sheet = new F01280.PxTotalSheet(this, !this.TableP2Sp1Total.IsCalcCorrection, 0, "P2Sp1Sheet");
                }
                return this._p2Sp1Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P1Sheet", {
            get: function () {
                if (this._p1Sheet == null) {
                    this._p1Sheet = new F01280.P1Sheet(this);
                }
                return this._p1Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "PositionsSpr0116", {
            get: function () {
                if (this._positionsSpr0116 == null) {
                    this._positionsSpr0116 = new F01280.PositionsSpr0116();
                }
                return this._positionsSpr0116;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "AddDataYearsCount", {
            get: function () {
                return this._addDataYearsCount;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "MainDataYearsCount", {
            get: function () {
                return this._mainDataYearsCount;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableRules", {
            get: function () {
                return this._tableRules;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "InterfaceRules", {
            get: function () {
                return this._interfaceRules;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "UpdateRules", {
            get: function () {
                return this._updateRules;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "ExportRules", {
            get: function () {
                return this._exportRules;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP1", {
            get: function () {
                if (this._tableP1 == null) {
                    this._tableP1 = new F01280.ObasTableP1("F01_280_R1_Values", this);
                }
                return this._tableP1;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2Sp1", {
            get: function () {
                if (this._tableP2Sp1 == null) {
                    this._tableP2Sp1 = new F01280.ObasTablePXSp1("F01_280_R2_1_OrgValues", this, this.TableP2Sp1Total, this.TableP2UniqOrgs);
                }
                return this._tableP2Sp1;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3Sp1", {
            get: function () {
                if (this._tableP3Sp1 == null) {
                    this._tableP3Sp1 = new F01280.ObasTablePXSp1("F01_280_R3_1_OrgValues", this, this.TableP3Sp1Total, this.TableP3UniqOrgs);
                }
                return this._tableP3Sp1;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4Sp1", {
            get: function () {
                if (this._tableP4Sp1 == null) {
                    this._tableP4Sp1 = new F01280.ObasTablePXSp1("F01_280_R4_1_OrgValues", this, this.TableP4Sp1Total, this.TableP4UniqOrgs);
                }
                return this._tableP4Sp1;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5Sp1", {
            get: function () {
                if (this._tableP5Sp1 == null) {
                    this._tableP5Sp1 = new F01280.ObasTablePXSp1("F01_280_R5_1_OrgValues", this, this.TableP5Sp1Total, this.TableP5UniqOrgs);
                }
                return this._tableP5Sp1;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2Sp1Total", {
            get: function () {
                if (this._tableP2Sp1Total == null) {
                    this
                        ._tableP2Sp1Total = new F01280.ObasTablePXSp1Total("F01_280_R2_1_TotalValues", this, F01280.StrKeysP1Total.P2, 0, true);
                }
                return this._tableP2Sp1Total;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3Sp1Total", {
            get: function () {
                if (this._tableP3Sp1Total == null) {
                    this
                        ._tableP3Sp1Total = new F01280.ObasTablePXSp1Total("F01_280_R3_1_TotalValues", this, F01280.StrKeysP1Total.P3, 0);
                }
                return this._tableP3Sp1Total;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4Sp1Total", {
            get: function () {
                if (this._tableP4Sp1Total == null) {
                    this
                        ._tableP4Sp1Total = new F01280.ObasTablePXSp1Total("F01_280_R4_1_TotalValues", this, F01280.StrKeysP1Total.P4, 0, true);
                }
                return this._tableP4Sp1Total;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5Sp1Total", {
            get: function () {
                if (this._tableP5Sp1Total == null) {
                    this
                        ._tableP5Sp1Total = new F01280.ObasTablePXSp1Total("F01_280_R5_1_TotalValues", this, F01280.StrKeysP1Total.P5, 0);
                }
                return this._tableP5Sp1Total;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2Sp2", {
            get: function () {
                if (this._tableP2Sp2 == null) {
                    this._tableP2Sp2 = new F01280.ObasTablePXSp2("F01_280_R2_1_SumValues", this, this.TableP2Sp1, this.TableP2UniqOrgs);
                }
                return this._tableP2Sp2;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3Sp2", {
            get: function () {
                if (this._tableP3Sp2 == null) {
                    this._tableP3Sp2 = new F01280.ObasTablePXSp2("F01_280_R3_1_SumValues", this, this.TableP3Sp1, this.TableP3UniqOrgs);
                }
                return this._tableP3Sp2;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4Sp2", {
            get: function () {
                if (this._tableP4Sp2 == null) {
                    this._tableP4Sp2 = new F01280.ObasTablePXSp2("F01_280_R4_1_SumValues", this, this.TableP4Sp1, this.TableP4UniqOrgs);
                }
                return this._tableP4Sp2;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5Sp2", {
            get: function () {
                if (this._tableP5Sp2 == null) {
                    this._tableP5Sp2 = new F01280.ObasTablePXSp2("F01_280_R5_1_SumValues", this, this.TableP5Sp1, this.TableP5UniqOrgs);
                }
                return this._tableP5Sp2;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5SpInsurance", {
            get: function () {
                if (this._tableP5SpInsurance == null) {
                    this
                        ._tableP5SpInsurance = new F01280.ObasTablePXIns("F01_280_r5_8_SumValues", this, this.TableP5Sp2, this.TableP5UniqOrgs);
                }
                return this._tableP5SpInsurance;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4SpInsurance", {
            get: function () {
                if (this._tableP4SpInsurance == null) {
                    this
                        ._tableP4SpInsurance = new F01280.ObasTablePXIns("F01_280_r4_6_SumValues", this, this.TableP4Sp2, this.TableP4UniqOrgs);
                }
                return this._tableP4SpInsurance;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3SpInsurance", {
            get: function () {
                if (this._tableP3SpInsurance == null) {
                    this
                        ._tableP3SpInsurance = new F01280.ObasTablePXIns("F01_280_r3_9_SumValues", this, this.TableP3Sp2, this.TableP3UniqOrgs);
                }
                return this._tableP3SpInsurance;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2SpInsurance", {
            get: function () {
                if (this._tableP2SpInsurance == null) {
                    this
                        ._tableP2SpInsurance = new F01280.ObasTablePXIns("F01_280_r2_7_SumValues", this, this.TableP2Sp2, this.TableP2UniqOrgs);
                }
                return this._tableP2SpInsurance;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5SpIndexation", {
            get: function () {
                if (this._tableP5SpIndexation == null) {
                    this
                        ._tableP5SpIndexation = new F01280.ObasTablePXIndex("F01_280_r5_4_SumValues", this, this.TableP5Sp2, this.TableP5SpInsurance, this.TableP5UniqOrgs);
                }
                return this._tableP5SpIndexation;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4SpIndexation", {
            get: function () {
                if (this._tableP4SpIndexation == null) {
                    this
                        ._tableP4SpIndexation = new F01280.ObasTableP4Index("F01_280_R4_5_OrgValues", this, this.TableP4Sp2, this.TableP4SpInsurance, this.TableP4UniqOrgs);
                }
                return this._tableP4SpIndexation;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3SpIndexation", {
            get: function () {
                if (this._tableP3SpIndexation == null) {
                    this
                        ._tableP3SpIndexation = new F01280.ObasTablePXIndex("F01_280_r3_5_SumValues", this, this.TableP3Sp2, this.TableP3SpInsurance, this.TableP3UniqOrgs);
                }
                return this._tableP3SpIndexation;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2SpIndexation", {
            get: function () {
                if (this._tableP2SpIndexation == null) {
                    this
                        ._tableP2SpIndexation = new F01280.ObasTablePXIndex("F01_280_r2_4_SumValues", this, this.TableP2Sp2, this.TableP2SpInsurance, this.TableP2UniqOrgs);
                }
                return this._tableP2SpIndexation;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5UniqOrgs", {
            get: function () {
                if (this._tableP5UniqOrgs == null) {
                    this._tableP5UniqOrgs = new F01280.PartUniqueOrgsObasTable("F01_280_r5_UniqueOrgs_V2", this);
                }
                return this._tableP5UniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4UniqOrgs", {
            get: function () {
                if (this._tableP4UniqOrgs == null) {
                    this._tableP4UniqOrgs = new F01280.PartUniqueOrgsObasTable("F01_280_r4_UniqueOrgs_V2", this);
                }
                return this._tableP4UniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3UniqOrgs", {
            get: function () {
                if (this._tableP3UniqOrgs == null) {
                    this._tableP3UniqOrgs = new F01280.PartUniqueOrgsObasTable("F01_280_r3_UniqueOrgs_V2", this);
                }
                return this._tableP3UniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2UniqOrgs", {
            get: function () {
                if (this._tableP2UniqOrgs == null) {
                    this._tableP2UniqOrgs = new F01280.PartUniqueOrgsObasTable("F01_280_r2_UniqueOrgs_V2", this);
                }
                return this._tableP2UniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5YearUniqOrgs", {
            get: function () {
                if (this._tableP5YearUniqOrgs == null) {
                    this.InitP5OrgTables();
                }
                return this._tableP5YearUniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4YearUniqOrgs", {
            get: function () {
                if (this._tableP4YearUniqOrgs == null) {
                    this.InitP4OrgTables();
                }
                return this._tableP4YearUniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3YearUniqOrgs", {
            get: function () {
                if (this._tableP3YearUniqOrgs == null) {
                    this.InitP3OrgTables();
                }
                return this._tableP3YearUniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2YearUniqOrgs", {
            get: function () {
                if (this._tableP2YearUniqOrgs == null) {
                    this.InitP2OrgTables();
                }
                return this._tableP2YearUniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2SpExecWrits", {
            get: function () {
                if (this._tableP2SpExecWrits == null) {
                    this.InitP2OrgTables();
                }
                return this._tableP2SpExecWrits;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3SpExecWrits", {
            get: function () {
                if (this._tableP3SpExecWrits == null) {
                    this.InitP3OrgTables();
                }
                return this._tableP3SpExecWrits;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4SpExecWrits", {
            get: function () {
                if (this._tableP4SpExecWrits == null) {
                    this.InitP4OrgTables();
                }
                return this._tableP4SpExecWrits;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5SpExecWrits", {
            get: function () {
                if (this._tableP5SpExecWrits == null) {
                    this.InitP5OrgTables();
                }
                return this._tableP5SpExecWrits;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2Sp6", {
            get: function () {
                if (this._tableP2Sp6 == null) {
                    this._tableP2Sp6 = new F01280.ObasTableP2Sp6(this.TableP2SpIndexation, this.TableP2SpInsurance);
                }
                return this._tableP2Sp6;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP4Sp3", {
            get: function () {
                if (this._tableP4Sp3 == null) {
                    this._tableP4Sp3 = new F01280.ObasTableP4Sp3("F01_280_r4_2_PosInfo_V2", this, this.TableP4YearUniqOrgs, this.TableP4Sp2, this.TableP4SpIndexation, this.TableP4SpInsurance);
                }
                return this._tableP4Sp3;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP5Sp3", {
            get: function () {
                if (this._tableP5Sp3 == null) {
                    this._tableP5Sp3 = new F01280.ObasTableP5Sp3("F01_280_r5_2_PosInfo_V2", this, this.TableP5YearUniqOrgs, this.TableP5Sp2, this.TableP5SpIndexation, this.TableP5SpInsurance);
                }
                return this._tableP5Sp3;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP3Sp3", {
            get: function () {
                if (this._tableP3Sp3 == null) {
                    this._tableP3Sp3 = new F01280.ObasTableP3Sp3("F01_280_r3_2_PosInfo_V2", this, this.TableP3YearUniqOrgs, this.TableP3Sp2, this.TableP3SpIndexation, this.TableP3SpInsurance);
                }
                return this._tableP3Sp3;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableP2Sp3", {
            get: function () {
                if (this._tableP2Sp3 == null) {
                    this._tableP2Sp3 = new F01280.ObasTableP2Sp3("F01_280_r2_2_PosInfo_V2", this, this.TableP2YearUniqOrgs, this.TableP2Sp2, this.TableP2SpIndexation, this.TableP2SpInsurance, this.TableP2Sp6);
                }
                return this._tableP2Sp3;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TransTableP5Sp6", {
            get: function () {
                if (this._transTableP5Sp6 == null) {
                    this
                        ._transTableP5Sp6 = new YearTransposedObasTable("tF01_280_R5_6", ["OKSM_ID", "Organization_ID", "Position_ID"]);
                }
                return this._transTableP5Sp6;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TransTableP5Sp3", {
            get: function () {
                if (this._transTableP5Sp3 == null) {
                    this
                        ._transTableP5Sp3 = new YearTransposedObasTable("tF01_280_r5_3", ["OKSM_ID", "Organization_ID", "Position_ID", "g6"]);
                }
                return this._transTableP5Sp3;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TransTableP4Sp6", {
            get: function () {
                if (this._transTableP4Sp6 == null) {
                    this
                        ._transTableP4Sp6 = new YearTransposedObasTable("tF01_280_R4_6", ["OKSM_ID", "Organization_ID", "Position_ID", "g5_4_6", "g6_4_6", "g7_4_6", "g8_4_6"]);
                }
                return this._transTableP4Sp6;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TransTableP4Sp3", {
            get: function () {
                if (this._transTableP4Sp3 == null) {
                    this
                        ._transTableP4Sp3 = new YearTransposedObasTable("tF01_280_r4_3", ["OKSM_ID", "Organization_ID", "Position_ID"]);
                }
                return this._transTableP4Sp3;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TransTableP3Sp3", {
            get: function () {
                if (this._transTableP3Sp3 == null) {
                    this
                        ._transTableP3Sp3 = new YearTransposedObasTable("tF01_280_r3_3", [
                        "OKSM_ID", "Organization_ID", "Position_ID", "g8",
                        "g11"
                    ]);
                }
                return this._transTableP3Sp3;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TransTableP3Sp7", {
            get: function () {
                if (this._transTableP3Sp7 == null) {
                    this._transTableP3Sp7 = new YearTransposedObasTable("tF01_280_r3_7", [
                        "OKSM_ID", "Organization_ID", "Position_ID", "g8_3_7"
                    ]);
                }
                return this._transTableP3Sp7;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TransTableP2Sp3", {
            get: function () {
                if (this._transTableP2Sp3 == null) {
                    this
                        ._transTableP2Sp3 = new YearTransposedObasTable("tF01_280_r2_2_PosInfo", ["OKSM_ID", "Organization_ID", "Position_ID", "g6"]);
                }
                return this._transTableP2Sp3;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "TableFormInsurValues", {
            get: function () {
                if (this._tableFormInsurValues == null) {
                    this
                        ._tableFormInsurValues = new F01280.ObasTableOnlyInsurance("F01_280_r6_SumValues", this, this.TableP1, F01280.StrKeysP1Total.OtherIns);
                }
                return this._tableFormInsurValues;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "CanCalcIndexation", {
            get: function () {
                if (this._canCalcIndexation == null) {
                    this.UpdateCanCalcIndexation();
                }
                return this._canCalcIndexation;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "RowPartsCount", {
            get: function () {
                if (this._rowPartsCount == null) {
                    this._rowPartsCount = this.Tables.getValue("F01_280_R2_1_SumTypes_V2").RowCount + 1;
                }
                return this._rowPartsCount;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "AnalyticsDataTable", {
            get: function () {
                if (this._analyticsDataTable == null) {
                    this._analyticsDataTable = new AnalyticsKosgu.AnalyticsDataTable("Analytics_Values", this);
                }
                return this._analyticsDataTable;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "AnalyticSheet", {
            get: function () {
                if (this._analyticSheet == null) {
                    this._analyticSheet = new F01280.AnalyticSheet("SHT_RA", this);
                }
                return this._analyticSheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "PurchaseObjectsSprTable", {
            get: function () {
                if (this._purchaseObjectsSprTable == null) {
                    this._purchaseObjectsSprTable = new F01280.PurchaseObjectsSprTable();
                }
                return this._purchaseObjectsSprTable;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P7UniqOrgs", {
            get: function () {
                if (this._p7UniqOrgs == null) {
                    this._p7UniqOrgs = new F01280.PartUniqueOrgsObasTable("F01_280_R7_UniqueOrgs", this);
                }
                return this._p7UniqOrgs;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P7RefObjTable", {
            get: function () {
                if (this._p7RefObjTable == null) {
                    this._p7RefObjTable = new F01280.PartObjectDataTable("F01_280_R7_Ref_Object", this, this.P7UniqOrgs, this.P7RefObjDescTable);
                }
                return this._p7RefObjTable;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P7RefOkpdTable", {
            get: function () {
                if (this._p7RefOkpdTable == null) {
                    this._p7RefOkpdTable = new F01280.PartOkpdTable("F01_280_R7_Ref_Okpd", this, this.P7RefObjTable);
                }
                return this._p7RefOkpdTable;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P7RefKosguTable", {
            get: function () {
                if (this._p7RefKosguTable == null) {
                    this._p7RefKosguTable = new F01280.UsdPartKosguTable("F01_280_R7_Ref_Kosgu", this, this.P7RefOkpdTable);
                }
                return this._p7RefKosguTable;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P7RefObjDescTable", {
            get: function () {
                if (this._p7RefObjDescTable == null) {
                    this._p7RefObjDescTable = new F01280.ObjectDescTable("F01_280_R7_Ref_ObjectDesc", this);
                }
                return this._p7RefObjDescTable;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P7RefObjDescNpaTable", {
            get: function () {
                if (this._p7RefObjDescNpaTable == null) {
                    this._p7RefObjDescNpaTable = new F01280.ObjectDescNpaTable("F01_280_R7_Ref_Npa", this, this.P7RefObjDescTable);
                }
                return this._p7RefObjDescNpaTable;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "P7Sp1Sheet", {
            get: function () {
                if (this._p7Sp1Sheet == null) {
                    this._p7Sp1Sheet = new F01280.PurchaseObjectUsdHierarchySheet(this);
                }
                return this._p7Sp1Sheet;
            },
            enumerable: true,
            configurable: true
        });
        Object.defineProperty(FDocument.prototype, "CountMonthForCalcTable", {
            get: function () {
                if (this._countMonthForCalcTable == null) {
                    this._countMonthForCalcTable = new F01280.CountMonthForCalcTable("CountMonthForCalc", this);
                }
                return this._countMonthForCalcTable;
            },
            enumerable: true,
            configurable: true
        });
        FDocument.prototype.InitP2OrgTables = function () {
            this
                ._tableP2SpExecWrits = new F01280.ObasTablePXExecWrits("F01_280_R2_9", this, this.TableP2UniqOrgs, this.TableP2Sp1);
            this
                ._tableP2YearUniqOrgs = new F01280.YearPartUniqueOrgsObasTable("F01_280_r2_2_V2", this, this.TableP2UniqOrgs);
            this._tableP2YearUniqOrgs.AddPartTable(this._tableP2SpExecWrits);
            this._tableP2SpExecWrits.AddPartTable(this._tableP2YearUniqOrgs);
        };
        FDocument.prototype.InitP3OrgTables = function () {
            this
                ._tableP3SpExecWrits = new F01280.ObasTablePXExecWrits("F01_280_R3_11", this, this.TableP3UniqOrgs, this.TableP3Sp1);
            this
                ._tableP3YearUniqOrgs = new F01280.YearPartUniqueOrgsObasTable("F01_280_r3_2_V2", this, this.TableP3UniqOrgs);
            this._tableP3YearUniqOrgs.AddPartTable(this._tableP3SpExecWrits);
            this._tableP3SpExecWrits.AddPartTable(this._tableP3YearUniqOrgs);
        };
        FDocument.prototype.InitP4OrgTables = function () {
            this
                ._tableP4SpExecWrits = new F01280.ObasTablePXExecWrits("F01_280_R4_9", this, this.TableP4UniqOrgs, this.TableP4Sp1);
            this
                ._tableP4YearUniqOrgs = new F01280.YearPartUniqueOrgsObasTable("F01_280_r4_2_V2", this, this.TableP4UniqOrgs);
            this._tableP4YearUniqOrgs.AddPartTable(this._tableP4SpExecWrits);
            this._tableP4SpExecWrits.AddPartTable(this._tableP4YearUniqOrgs);
        };
        FDocument.prototype.InitP5OrgTables = function () {
            this
                ._tableP5SpExecWrits = new F01280.ObasTablePXExecWrits("F01_280_R5_10", this, this.TableP5UniqOrgs, this.TableP5Sp1);
            this
                ._tableP5YearUniqOrgs = new F01280.YearPartUniqueOrgsObasTable("F01_280_r5_2_V2", this, this.TableP5UniqOrgs);
            this._tableP5YearUniqOrgs.AddPartTable(this._tableP5SpExecWrits);
            this._tableP5SpExecWrits.AddPartTable(this._tableP5YearUniqOrgs);
        };
        FDocument.prototype.UpdateCanCalcIndexation = function () {
            this._canCalcIndexation = true;
        };
        return FDocument;
    }(BaseDocumentObject));
    F01280.FDocument = FDocument;
})(F01280 || (F01280 = {}));
