예제 #1
0
        private static seriesCatalogTypeSeries row2Series(UsgsDbDailyValues.seriesCatalogRow aRow)
        {
            if (aRow.IsVariableCodeNull())
            {
                return(null);
            }

            string VariableCode = aRow.VariableCode;

            string      VariableName             = null;
            string      VariableUnitName         = null;
            string      VariableUnitAbrreviation = null;
            string      VariableUnitCode         = null;
            string      sampleMedium             = null;
            string      dataType = null;
            string      valueType = null;
            string      generalCategory = null;
            W3CDateTime?beginDateTime = null, endDateTime = null;
            int?        valueCount              = null;
            bool?       valueCountIsEstimated   = null;
            int?        TimeInterval            = null;
            string      TimeIntervalUnits       = null;
            bool        isRealTime              = false;
            string      QualityControlLevelTerm = null;
            string      methodName              = null;
            string      organization            = null;
            string      sourceDescription       = null;

            if (!aRow.IsVariableNameNull())
            {
                VariableName = aRow.VariableName;
            }

            if (!aRow.IsVariableUnitsAbbreviationNull())
            {
                VariableUnitAbrreviation = aRow.VariableUnitsAbbreviation;
            }
            if (!aRow.IsVariableUnitsNameNull())
            {
                VariableUnitName = aRow.VariableUnitsName;
            }

            if (!aRow.IsDataTypeNull())
            {
                dataType = aRow.DataType;
            }
            if (!aRow.IsValueTypeNull())
            {
                valueType = aRow.ValueType;
            }
            if (!aRow.IsGeneralCategoryNull())
            {
                generalCategory = aRow.GeneralCategory;
            }

            if (!aRow.IsSampleMediumNull())
            {
                sampleMedium = aRow.SampleMedium;
            }
            if (!aRow.IsMethodNameNull())
            {
                methodName = aRow.MethodName;
            }



            if (!aRow.IsSourceDescriptionNull())
            {
                sourceDescription = aRow.SourceDescription;
            }
            if (!aRow.IsOrganizationNull())
            {
                organization = aRow.Organization;
            }

            if (!aRow.IsValueCountNull())
            {
                int v;
                if (Int32.TryParse(aRow.ValueCount, out v))
                {
                    valueCount = v;
                }
            }


            if (!aRow.IsBeginDateTimeNull())
            {
                beginDateTime = new W3CDateTime(aRow.BeginDateTime);
            }
            if (!aRow.IsEndDateTimeNull())
            {
                endDateTime = new W3CDateTime(aRow.EndDateTime);
            }

            if (!aRow.IsTimeSupportNull())
            {
                TimeInterval = aRow.TimeSupport;
                if (!aRow.IsTimeUnitsNameNull())
                {
                    TimeIntervalUnits = aRow.TimeUnitsName;
                }
            }



// public static seriesCatalogTypeSeries CreateSeriesRecord(
//           string VariableCode,
//           string VariableName,
//           string VariableUnitName,
//           string VariableUnitAbrreviation,
//           string VariableUnitCode,
//           string sampleMedium,
//           string dataType,
//           string valueType,
//           string generalCategory,
//           W3CDateTime? beginDateTime, W3CDateTime? endDateTime,
//           int? valueCount,  bool? valueCountIsEstimated,
//           string TimeInterval,
//           string TimeIntervalUnits,
//           bool isRealTime,
//           string QualityControlLevelTerm,
//           string methodName,
//           string organization, string sourceDescription

//)
            seriesCatalogTypeSeries aSeries = CoreBuilder.CreateSeriesRecord(
                VariableCode,
                VariableName,
                VariableUnitName,
                VariableUnitAbrreviation,
                VariableUnitCode,
                sampleMedium,
                dataType,
                valueType,
                generalCategory,
                beginDateTime, endDateTime,
                valueCount, valueCountIsEstimated,
                TimeInterval,
                TimeIntervalUnits,
                isRealTime,
                QualityControlLevelTerm,
                methodName,
                organization,
                sourceDescription, "NWIS");

            // add usgs statistic code options
            if (!aRow.Isusgs_stat_cdNull())
            {
                List <option> opts = new List <option>(1);
                option        opt  = new option();
                opt.name       = "statistic";
                opt.optionCode = aRow.usgs_stat_cd;
                opts.Add(opt);
                aSeries.variable.options = opts.ToArray();
            }
            return(aSeries);
        }