public ExpressionContext(ExpressionType expressionType, DataType constantType, AspNetCore.ReportingServices.ReportPublishing.LocationFlags location, ObjectType objectType, string objectName, string propertyName, string dataSetName, int maxExpressionLength, PublishingContextBase publishingContext)
 {
     this.m_expressionType      = expressionType;
     this.m_constantType        = constantType;
     this.m_location            = location;
     this.m_objectType          = objectType;
     this.m_objectName          = objectName;
     this.m_propertyName        = propertyName;
     this.m_dataSetName         = dataSetName;
     this.m_inPrevious          = false;
     this.m_inLookup            = false;
     this.m_maxExpressionLength = maxExpressionLength;
     this.m_outerAggregate      = null;
     this.m_publishingContext   = publishingContext;
 }
示例#2
0
 public override bool Initialize(InitializationContext context)
 {
     this.m_location    = context.Location;
     context.ObjectType = this.ObjectType;
     context.ObjectName = base.m_name;
     if (this.InDataRegion)
     {
         context.SetDataSetHasSubReports();
         if ((context.Location & AspNetCore.ReportingServices.ReportPublishing.LocationFlags.InDataRegionCellTopLevelItem) != 0)
         {
             this.m_isTablixCellScope = context.IsDataRegionScopedCell;
         }
         if ((AspNetCore.ReportingServices.ReportPublishing.LocationFlags) 0 < (context.Location & AspNetCore.ReportingServices.ReportPublishing.LocationFlags.InDetail))
         {
             this.m_isDetailScope = true;
             context.SetDataSetDetailUserSortFilter();
         }
     }
     context.SetIndexInCollection(this);
     context.ExprHostBuilder.SubreportStart(base.m_name);
     base.Initialize(context);
     if (base.m_visibility != null)
     {
         base.m_visibility.Initialize(context);
     }
     if (this.m_parameters != null)
     {
         for (int i = 0; i < this.m_parameters.Count; i++)
         {
             ParameterValue parameterValue = this.m_parameters[i];
             context.ExprHostBuilder.SubreportParameterStart();
             parameterValue.Initialize("SubreportParameter(" + parameterValue.Name + ")", context, false);
             parameterValue.ExprHostID = context.ExprHostBuilder.SubreportParameterEnd();
         }
     }
     if (this.m_noRowsMessage != null)
     {
         this.m_noRowsMessage.Initialize("NoRows", context);
         context.ExprHostBuilder.GenericNoRows(this.m_noRowsMessage);
     }
     base.ExprHostID = context.ExprHostBuilder.SubreportEnd();
     return(false);
 }
示例#3
0
        public override void Deserialize(IntermediateFormatReader reader)
        {
            base.Deserialize(reader);
            reader.RegisterDeclaration(SubReport.m_Declaration);
            while (reader.NextMember())
            {
                switch (reader.CurrentMember.MemberName)
                {
                case MemberName.Parameters:
                    this.m_parameters = reader.ReadGenericListOfRIFObjects <ParameterValue>();
                    break;

                case MemberName.NoRowsMessage:
                    this.m_noRowsMessage = (ExpressionInfo)reader.ReadRIFObject();
                    break;

                case MemberName.MergeTransactions:
                    this.m_mergeTransactions = reader.ReadBoolean();
                    break;

                case MemberName.ContainingScopes:
                    if (reader.ReadListOfReferencesNoResolution(this) == 0)
                    {
                        this.m_containingScopes = new GroupingList();
                    }
                    break;

                case MemberName.IsTablixCellScope:
                    this.m_isTablixCellScope = reader.ReadBoolean();
                    break;

                case MemberName.ReportName:
                    this.m_reportName = reader.ReadString();
                    break;

                case MemberName.OmitBorderOnPageBreak:
                    this.m_omitBorderOnPageBreak = reader.ReadBoolean();
                    break;

                case MemberName.KeepTogether:
                    this.m_keepTogether = reader.ReadBoolean();
                    break;

                case MemberName.Location:
                    this.m_location = (AspNetCore.ReportingServices.ReportPublishing.LocationFlags)reader.ReadEnum();
                    break;

                case MemberName.IndexInCollection:
                    this.m_indexInCollection = reader.ReadInt32();
                    break;

                case MemberName.ContainingSection:
                    this.m_containingSection = reader.ReadReference <ReportSection>(this);
                    break;

                default:
                    Global.Tracer.Assert(false);
                    break;
                }
            }
        }