Example #1
0
        public bool CheckSettings([NotNull] string connectionString)
        {
            ConnectionString = connectionString;
            if (!string.IsNullOrWhiteSpace(Database))
            {
                var fi = new FileInfo(Database);
                if (!fi.Exists)
                {
                    throw new LPGException("Database was not found.");
                }
                ConnectionString = "Data Source=" + Database;
            }
            if (CalcObjectNumber == null)
            {
                Logger.Error("No calc object number was set. Can't continue.");
                return(false);
            }
            if (StartDate == null)
            {
                StartDate = new DateTime(DateTime.Now.Year, 1, 1);
            }
            if (EndDate == null)
            {
                EndDate = new DateTime(DateTime.Now.Year, 12, 31);
            }
            if (OutputDirectory == null)
            {
                OutputDirectory = CalcObjectType + "_" + CalcObjectNumber;
            }
            if (TemperatureProfileIndex == null)
            {
                TemperatureProfileIndex = 0;
            }
            if (GeographicLocationIndex == null)
            {
                GeographicLocationIndex = 0;
            }
            Logger.Info("Output File Setting is: " + OutputFileDefault.ToString());
            Logger.Info("The used LoadTypePriority Default was: " + LoadTypePriority.ToString());
            if (LoadTypePriority == LoadTypePriority.Undefined)
            {
                Logger.Info("LoadTypePriority was not set. Determing setting...");
                if (CalcObjectType == CalcObjectType.ModularHousehold)
                {
                    LoadTypePriority = LoadTypePriority.RecommendedForHouseholds;
                    Logger.Info("LoadTypePriority for households was selected");
                }
                else
                {
                    LoadTypePriority = LoadTypePriority.RecommendedForHouses;
                    Logger.Info("LoadTypePriority for houses was selected");
                }
            }

            return(true);
        }
Example #2
0
        public static List <CalcOption> GetOptionsForDefault(OutputFileDefault selectedOptionDefault)
        {
            var l = new List <CalcOption>();

            switch (selectedOptionDefault)
            {
            case OutputFileDefault.All:
                return(Enum.GetValues(typeof(CalcOption)).Cast <CalcOption>().ToList());

            case OutputFileDefault.NoFiles:
                return(l);

            case OutputFileDefault.OnlyOverallSum:
                l.Add(CalcOption.OverallSum);
                break;

            case OutputFileDefault.OnlySums:
                l.Add(CalcOption.HouseSumProfilesFromDetailedDats);
                break;

            case OutputFileDefault.ReasonableWithCharts:
                l.AddRange(GetOptionsForDefault(OutputFileDefault.Reasonable));
                l.Add(CalcOption.MakeGraphics);
                break;

            case OutputFileDefault.Reasonable:
                l.Add(CalcOption.ActionCarpetPlot);
                l.Add(CalcOption.HouseSumProfilesFromDetailedDats);
                l.Add(CalcOption.EnergyCarpetPlot);
                l.Add(CalcOption.TimeOfUsePlot);
                l.Add(CalcOption.VariableLogFile);
                l.Add(CalcOption.ActivationsPerHour);
                l.Add(CalcOption.ActivationFrequencies);
                //l.Add(CalcOption.ActionsLogfile);
                l.Add(CalcOption.DeviceProfilesIndividualHouseholds);
                l.Add(CalcOption.TotalsPerLoadtype);
                l.Add(CalcOption.HouseholdContents);
                l.Add(CalcOption.TotalsPerDevice);
                l.Add(CalcOption.EnergyStorageFile);
                l.Add(CalcOption.DurationCurve);
                l.Add(CalcOption.SumProfileExternalEntireHouse);
                l.Add(CalcOption.SumProfileExternalIndividualHouseholds);
                l.Add(CalcOption.AffordanceEnergyUse);
                l.Add(CalcOption.TimeProfileFile);
                l.Add(CalcOption.LocationsFile);
                l.Add(CalcOption.HouseholdPlan);
                l.Add(CalcOption.DeviceProfileExternalEntireHouse);
                l.Add(CalcOption.DeviceProfileExternalIndividualHouseholds);
                l.Add(CalcOption.WeekdayProfiles);
                l.Add(CalcOption.LogErrorMessages);
                l.Add(CalcOption.LogAllMessages);
                l.Add(CalcOption.TransportationDeviceCarpetPlot);
                break;

            case OutputFileDefault.OnlyDeviceProfiles:
                l.Add(CalcOption.HouseSumProfilesFromDetailedDats);
                l.Add(CalcOption.SumProfileExternalEntireHouse);
                l.Add(CalcOption.SumProfileExternalIndividualHouseholds);
                l.Add(CalcOption.DeviceProfilesIndividualHouseholds);
                l.Add(CalcOption.DeviceProfileExternalEntireHouse);
                l.Add(CalcOption.DeviceProfileExternalIndividualHouseholds);
                l.Add(CalcOption.LogErrorMessages);
                l.Add(CalcOption.LogAllMessages);
                break;

            case OutputFileDefault.ReasonableWithChartsAndPDF:
                l.AddRange(GetOptionsForDefault(OutputFileDefault.Reasonable));
                l.Add(CalcOption.MakePDF);
                break;

            case OutputFileDefault.ForSettlementCalculations:
                l.Add(CalcOption.HouseSumProfilesFromDetailedDats);
                l.Add(CalcOption.TotalsPerLoadtype);
                l.Add(CalcOption.HouseholdContents);
                l.Add(CalcOption.TotalsPerDevice);
                l.Add(CalcOption.ActivationFrequencies);
                l.Add(CalcOption.DeviceProfilesIndividualHouseholds);
                l.Add(CalcOption.SumProfileExternalEntireHouse);
                l.Add(CalcOption.SumProfileExternalIndividualHouseholds);
                l.Add(CalcOption.LogErrorMessages);
                l.Add(CalcOption.LogAllMessages);
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(selectedOptionDefault), selectedOptionDefault, null);
            }
            return(l);
        }