private ResourceDescription CreateAnalogResourceDescription(Outage.Analog cimAnalog)
        {
            ResourceDescription rd = null;

            if (cimAnalog != null)
            {
                long gid = ModelCodeHelper.CreateGlobalId(0, (short)DMSType.ANALOG, importHelper.CheckOutIndexForDMSType(DMSType.ANALOG));
                rd = new ResourceDescription(gid);
                importHelper.DefineIDMapping(cimAnalog.ID, gid);

                OutageConverter.PopulateAnalogProperties(cimAnalog, rd, importHelper, report);
            }

            return(rd);
        }
Exemplo n.º 2
0
        public static void PopulateAnalogProperties(Outage.Analog cimAnalog, ResourceDescription rd, ImportHelper importHelper, TransformAndLoadReport report)
        {
            if ((cimAnalog != null) && (rd != null))
            {
                OutageConverter.PopulateMeasurementProperties(cimAnalog, rd, importHelper, report);

                if (cimAnalog.CurrentValueHasValue)
                {
                    rd.AddProperty(new Property(ModelCode.ANALOG_CURRENTVALUE, cimAnalog.CurrentValue));
                }

                if (cimAnalog.MaxValueHasValue)
                {
                    rd.AddProperty(new Property(ModelCode.ANALOG_MAXVALUE, cimAnalog.MaxValue));
                }

                if (cimAnalog.MeasurementTypeHasValue)
                {
                    rd.AddProperty(new Property(ModelCode.ANALOG_SIGNALTYPE, (short)GetAnalogMeasurementType(cimAnalog.MeasurementType)));
                }

                if (cimAnalog.MinValueHasValue)
                {
                    rd.AddProperty(new Property(ModelCode.ANALOG_MINVALUE, cimAnalog.MinValue));
                }

                if (cimAnalog.NormalValueHasValue)
                {
                    rd.AddProperty(new Property(ModelCode.ANALOG_NORMALVALUE, cimAnalog.NormalValue));
                }

                if (cimAnalog.DeviationHasValue)
                {
                    rd.AddProperty(new Property(ModelCode.ANALOG_DEVIATION, cimAnalog.Deviation));
                }

                if (cimAnalog.ScalingFactorHasValue)
                {
                    rd.AddProperty(new Property(ModelCode.ANALOG_SCALINGFACTOR, cimAnalog.ScalingFactor));
                }
            }
        }
        private void ImportAnalogs()
        {
            SortedDictionary <string, object> cimAnalogs = concreteModel.GetAllObjectsOfType("Outage.Analog");

            if (cimAnalogs != null)
            {
                foreach (KeyValuePair <string, object> cimAnalogPair in cimAnalogs)
                {
                    Outage.Analog       cimAnalog = cimAnalogPair.Value as Outage.Analog;
                    ResourceDescription rd        = CreateAnalogResourceDescription(cimAnalog);
                    if (rd != null)
                    {
                        string mrid = cimAnalog.MRID;
                        CreateAndInsertDeltaOperation(mrid, rd);

                        report.Report.Append("Analog ID: ").Append(cimAnalog.ID).Append(" SUCCESSFULLY converted to GID: ").AppendLine($"0x{rd.Id:X16}");
                    }
                    else
                    {
                        report.Report.Append("Analog ID: ").Append(cimAnalog.ID).AppendLine(" FAILED to be converted");
                    }
                }
            }
        }