Beispiel #1
0
        public int GetChunkNameModifierForParamValues(ParametersImpl parameterValues, bool addEntry, ref bool?isShared, out ParametersImpl fullParameterValues)
        {
            if (parameterValues == null)
            {
                parameterValues = new ParametersImpl();
            }
            if (this.m_parameterValuesToInfoIndexMap == null)
            {
                this.m_instanceParameterValues       = new List <ParametersImplWrapper>();
                this.m_parameterValuesToInfoIndexMap = new Dictionary <ParametersImplWrapper, int>(ParametersImplValuesComparer.Instance);
            }
            ParametersImplWrapper parametersImplWrapper = new ParametersImplWrapper(parameterValues);
            int count = default(int);

            if (this.m_parameterValuesToInfoIndexMap.TryGetValue(parametersImplWrapper, out count))
            {
                fullParameterValues = this.m_instanceParameterValues[count].WrappedParametersImpl;
                if (!isShared.HasValue)
                {
                    isShared = true;
                }
            }
            else
            {
                isShared            = false;
                fullParameterValues = parameterValues;
                if (addEntry)
                {
                    count = this.m_instanceParameterValues.Count;
                    this.m_instanceParameterValues.Add(parametersImplWrapper);
                    this.m_parameterValuesToInfoIndexMap.Add(parametersImplWrapper, count);
                }
            }
            return(count);
        }
Beispiel #2
0
        internal int GetChunkNameModifierForParamValues(ParametersImpl parameterValues, bool addEntry, ref bool?isShared, out ParametersImpl fullParameterValues)
        {
            if (parameterValues == null)
            {
                parameterValues = new ParametersImpl();
            }
            if (m_parameterValuesToInfoIndexMap == null)
            {
                m_instanceParameterValues       = new List <ParametersImplWrapper>();
                m_parameterValuesToInfoIndexMap = new Dictionary <ParametersImplWrapper, int>(ParametersImplValuesComparer.Instance);
            }
            ParametersImplWrapper parametersImplWrapper = new ParametersImplWrapper(parameterValues);

            if (m_parameterValuesToInfoIndexMap.TryGetValue(parametersImplWrapper, out int value))
            {
                fullParameterValues = m_instanceParameterValues[value].WrappedParametersImpl;
                if (!isShared.HasValue)
                {
                    isShared = true;
                }
            }
            else
            {
                isShared            = false;
                fullParameterValues = parameterValues;
                if (addEntry)
                {
                    value = m_instanceParameterValues.Count;
                    m_instanceParameterValues.Add(parametersImplWrapper);
                    m_parameterValuesToInfoIndexMap.Add(parametersImplWrapper, value);
                }
            }
            return(value);
        }
 private static void TraceParameters(ParametersImpl parameters, int level)
 {
     if (parameters != null)
     {
         for (int i = 0; i < parameters.Count; i++)
         {
             Global.Tracer.Trace("{0}Parameter{1}: MV={2}, {3} values: [{4}] labels: [{5}]", GetEmptyString(level), i, parameters.Collection[i].IsMultiValue, parameters.Collection[i].Count, FlattenParameterArray(parameters.Collection[i].Value), FlattenParameterArray(parameters.Collection[i].Label));
         }
     }
 }
Beispiel #4
0
        public override void Deserialize(IntermediateFormatReader reader)
        {
            reader.RegisterDeclaration(m_Declaration);
            while (reader.NextMember())
            {
                switch (reader.CurrentMember.MemberName)
                {
                case MemberName.SubReport:
                    m_subReportDef = reader.ReadGlobalReference <SubReport>();
                    break;

                case MemberName.Parameters:
                {
                    ParametersImplWrapper parametersImplWrapper = (ParametersImplWrapper)reader.ReadRIFObject();
                    if (parametersImplWrapper != null)
                    {
                        m_parameters = parametersImplWrapper.WrappedParametersImpl;
                    }
                    break;
                }

                case MemberName.ReportInstance:
                    m_reportInstance = (IReference <ReportInstance>)reader.ReadRIFObject();
                    break;

                case MemberName.DataSetUniqueName:
                    m_instanceUniqueName = reader.ReadString();
                    break;

                case MemberName.ThreadCulture:
                    m_threadCulture = reader.ReadCultureInfo();
                    break;

                case MemberName.Status:
                    m_status = (SubReport.Status)reader.ReadEnum();
                    break;

                case MemberName.ProcessedWithError:
                    m_processedWithError = reader.ReadBoolean();
                    break;

                case MemberName.IsInstanceShared:
                {
                    object obj2 = reader.ReadVariant();
                    if (obj2 != null)
                    {
                        m_isInstanceShared = (bool)obj2;
                    }
                    break;
                }

                case MemberName.DataChunkNameModifier:
                {
                    object obj = reader.ReadVariant();
                    if (obj != null)
                    {
                        m_dataChunkNameModifier = (int)obj;
                    }
                    break;
                }

                default:
                    Global.Tracer.Assert(condition: false);
                    break;
                }
            }
        }
Beispiel #5
0
 public ParametersImplWrapper(ParametersImpl odpParameters)
 {
     this.m_opdParameters = odpParameters;
 }
Beispiel #6
0
 public ParametersImplWrapper()
 {
     this.m_opdParameters = new ParametersImpl();
 }
Beispiel #7
0
 internal ParametersImplWrapper(ParametersImpl odpParameters)
 {
     m_opdParameters = odpParameters;
 }
Beispiel #8
0
 internal ParametersImplWrapper()
 {
     m_opdParameters = new ParametersImpl();
 }