private void ImportGenerator() { SortedDictionary <string, object> cimBaseVoltages = concreteModel.GetAllObjectsOfType("FTN.Generator"); if (cimBaseVoltages != null) { foreach (KeyValuePair <string, object> cimBaseVoltagePair in cimBaseVoltages) { FTN.Generator cimBaseVoltage = cimBaseVoltagePair.Value as FTN.Generator; ResourceDescription rd = CreateGeneratorResourceDescription(cimBaseVoltage); if (rd != null) { if (ModelCodeHelper.ExtractEntityIdFromGlobalId(rd.Id) > 0) { delta.AddDeltaOperation(DeltaOpType.Update, rd, true); report.Report.Append("Generator ID = ").Append(cimBaseVoltage.ID).Append(" SUCCESSFULLY converted to GID = ").AppendLine(rd.Id.ToString()); } else { delta.AddDeltaOperation(DeltaOpType.Insert, rd, true); report.Report.Append("Generator ID = ").Append(cimBaseVoltage.ID).Append(" SUCCESSFULLY converted to GID = ").AppendLine(rd.Id.ToString()); } } else { report.Report.Append("Generator ID = ").Append(cimBaseVoltage.ID).AppendLine(" FAILED to be converted"); } } report.Report.AppendLine(); } }
private ResourceDescription CreateGeneratorResourceDescription(FTN.Generator generator) { ResourceDescription rd = null; if (generator != null) { long gid = 0; int iteratorId = 0; int resourcesLeft = 0; int numberOfResources = 2; string message = string.Empty; bool contains = false; ModelCode modelCodeGenerator = ModelCode.GENERATOR; List <ModelCode> properties = new List <ModelCode>(); ModelResourcesDesc modelResourcesDesc = new ModelResourcesDesc(); List <ResourceDescription> retList = new List <ResourceDescription>(); properties = modelResourcesDesc.GetAllPropertyIds(modelCodeGenerator); iteratorId = NetworkModelGDAProxy.Instance.GetExtentValues(modelCodeGenerator, properties); resourcesLeft = NetworkModelGDAProxy.Instance.IteratorResourcesLeft(iteratorId); while (resourcesLeft > 0) { List <ResourceDescription> rds = NetworkModelGDAProxy.Instance.IteratorNext(numberOfResources, iteratorId); retList.AddRange(rds); resourcesLeft = NetworkModelGDAProxy.Instance.IteratorResourcesLeft(iteratorId); } NetworkModelGDAProxy.Instance.IteratorClose(iteratorId); foreach (ResourceDescription res in retList) { foreach (Property pr in res.Properties) { if (pr.PropertyValue.StringValue.Equals(generator.MRID)) { contains = true; gid = res.Id; } } } if (!contains) { gid = ModelCodeHelper.CreateGlobalId(0, (short)DMSType.GENERATOR, importHelper.CheckOutIndexForDMSType(DMSType.GENERATOR)); } rd = new ResourceDescription(gid); importHelper.DefineIDMapping(generator.ID, gid); PowerTransformerConverter.PopulateGeneratorProperties(generator, rd, importHelper, report); } return(rd); }
public static void PopulateGeneratorProperties(FTN.Generator cimIdentifiedObject, ResourceDescription rd, ImportHelper importHelper, TransformAndLoadReport report) { if ((cimIdentifiedObject != null) && (rd != null)) { PowerTransformerConverter.PopulateRotatingMachineProperties(cimIdentifiedObject, rd, importHelper, report); if (cimIdentifiedObject.MaxQHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_MAX_Q, cimIdentifiedObject.MaxQ)); } if (cimIdentifiedObject.MinQHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_MIN_Q, cimIdentifiedObject.MinQ)); } if (cimIdentifiedObject.GeneratorTypeHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_TYPE, (short)GetDMSGeneratorType(cimIdentifiedObject.GeneratorType))); } } }
public static void PopulateGeneratorProperties(FTN.Generator cimGenerator, ResourceDescription rd, ImportHelper importHelper, TransformAndLoadReport report) { if ((cimGenerator != null) && (rd != null)) { PowerTransformerConverter.PopulateRegulatingCondEqProperties(cimGenerator, rd, importHelper, report); if (cimGenerator.GeneratorTypeHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_GENERATORTYPE, (short)GetDMSGeneratorType(cimGenerator.GeneratorType))); } if (cimGenerator.MaxFlexibilityHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_MAXFLEX, cimGenerator.MaxFlexibility)); } if (cimGenerator.MinFlexibilityHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_MINFLEX, cimGenerator.MinFlexibility)); } if (cimGenerator.FlexibilityHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_FLEXIBILITY, cimGenerator.Flexibility)); } if (cimGenerator.MaxQHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_MAXQ, cimGenerator.MaxQ)); } if (cimGenerator.MinQHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_MINQ, cimGenerator.MinQ)); } if (cimGenerator.CondenserPHasValue) { rd.AddProperty(new Property(ModelCode.GENERATOR_CONSIDERP, cimGenerator.CondenserP)); } if (cimGenerator.EquipmentContainerHasValue) { long gid = importHelper.GetMappedGID(cimGenerator.EquipmentContainer.ID); if (gid < 0) { report.Report.Append("WARNING: Convert ").Append(cimGenerator.GetType().ToString()).Append(" rdfID = \"").Append(cimGenerator.ID); report.Report.Append("\" - Failed to set reference to EquipmentContainer: rdfID \"").Append(cimGenerator.EquipmentContainer.ID).AppendLine(" \" is not mapped to GID!"); } rd.AddProperty(new Property(ModelCode.EQUIPMENT_CONTAINER, gid)); } if (cimGenerator.BreakerHasValue) { long gid = importHelper.GetMappedGID(cimGenerator.Breaker.ID); if (gid < 0) { report.Report.Append("WARNING: Convert ").Append(cimGenerator.GetType().ToString()).Append(" rdfID = \"").Append(cimGenerator.ID); report.Report.Append("\" - Failed to set reference to Breaker: rdfID \"").Append(cimGenerator.Breaker.ID).AppendLine(" \" is not mapped to GID!"); } rd.AddProperty(new Property(ModelCode.GENERATOR_BREAKER, gid)); } } }