internal TBand(TFlexCelDataSource aDataSource, TBand aMasterBand, TXlsCellRange aCellRange, string aName, TBandType aBandType, bool aDeleteLastRow, string aDataSourceName) : this(aDataSource, aMasterBand, aMasterBand, aCellRange, aName, aBandType, aDeleteLastRow, aDataSourceName) { //On an normal band, Searchband=Masterband. The only case this doesn't happen is on Sheet bands, //where we search on all other sheets but they are not in master/detail relationship. }
internal TRangeWaitingRange(TOneCellValue aRange, TBandType aBandType) : base(aBandType, 0, 0) { if (aRange != null) { if (aRange.Count == 1 && aRange[0].ValueType == TValueType.Const) //optimize most common case { CalcBounds(aRange); } else { Range = aRange; } } }
internal TBand(TFlexCelDataSource aDataSource, TBand aMasterBand, TBand aSearchBand, TXlsCellRange aCellRange, string aName, TBandType aBandType, bool aDeleteLastRow, string aDataSourceName) { FDataSource = aDataSource; FMasterBand = aMasterBand; FSearchBand = aSearchBand; FDetailBands = new TBandList(); if (aCellRange != null) { FCellRange = (TXlsCellRange)aCellRange.Clone(); } else { FCellRange = null; } FBandType = aBandType; FName = aName; FDataSourceName = aDataSourceName; FDeleteLastRow = aDeleteLastRow; }
internal TInclude(byte[] aData, string aRange, TBandType aBandType, TBand aParentBand, string aTagText, int aNestedLevel, TDataSourceInfoList aDsInfoList, string aFileName, bool aStaticInclude, FlexCelReport aParentReport) { try { FData = new byte[aData.Length]; Array.Copy(aData, 0, FData, 0, FData.Length); FBandType = aBandType; FTagText = aTagText; StaticInclude = aStaticInclude; //Preloading at read time has the advantage of fully checking the template on load, //so errors will be detected sooner. (If an include is conditional, might not be detected until much later) //For this same reason it is a little slower than preloading on demand, but it is worth. Preload(aParentBand, aRange, aFileName, aDsInfoList, aNestedLevel, aParentReport); } catch { Dispose(); throw; } }
internal TWaitingRange(TBandType aBandType, int aTop, int aLeft) { BandType = aBandType; FTop = aTop; FLeft = aLeft; }
internal TDeleteRangeWaitingRange(TOneCellValue aRange, TBandType aBandType) : base(aRange, aBandType) { }