// Cria string com o arquivo DSS na memoria private bool CarregaArquivoDSSemMemoria() { _lstCommandsDSS = new List <string> { "clear" // limpa circuito de objeto recem criado }; // nome arquivo dss completo string nomeArqDSScomp = _paramGerais.GetNomeArquivoAlimentadorDSS(); //Verifica existencia do arquivo DSS if (File.Exists(nomeArqDSScomp)) { // Obtem linhas do arquivo cabecalho string[] lines = System.IO.File.ReadAllLines(nomeArqDSScomp); // TODO refactory. Da pau caso tenha so uma linha. _lstCommandsDSS.Add(lines[1]); } else { _janela.ExibeMsgDisplayMW(_nomeAlim + ": Arquivos *.dss não encontrados"); return(false); } // Redirect arquivo Curva de Carga, OBS: de acordo com o TIPO do dia if (File.Exists(_paramGerais.GetNomeEPathCurvasTxtCompleto(_tipoDia))) { _lstCommandsDSS.Add("Redirect " + _paramGerais.GetNomeEPathCurvasTxtCompleto(_tipoDia)); } // condutores { _lstCommandsDSS.Add("Redirect " + _paramGerais.GetNomeArqCondutor()); } string dir = _paramGerais.GetDiretorioAlim(); // SegmentosMT string nArqSegmentosMT = _nomeAlim + "SegmentosMT.dss"; if (File.Exists(dir + nArqSegmentosMT)) { _lstCommandsDSS.Add("Redirect " + nArqSegmentosMT); } // ChavesMT string nArqChavesMT = _nomeAlim + "ChavesMT.dss"; if (File.Exists(dir + nArqChavesMT)) { _lstCommandsDSS.Add("Redirect " + nArqChavesMT); } // Reguladores.dss string nArqRTs = _nomeAlim + "Reguladores.dss"; if (File.Exists(dir + nArqRTs)) { _lstCommandsDSS.Add("Redirect " + nArqRTs); } // Transformadores string nArqTrafo = _nomeAlim + "Transformadores.dss"; if (File.Exists(dir + nArqTrafo)) { _lstCommandsDSS.Add("Redirect " + nArqTrafo); } // SegmentosBT string nArqSegmentosBT = _nomeAlim + "SegmentosBT.dss"; if (File.Exists(dir + nArqSegmentosBT)) { _lstCommandsDSS.Add("Redirect " + nArqSegmentosBT); } // Ramais string nArqRamais = _nomeAlim + "Ramais.dss"; if (File.Exists(dir + nArqRamais)) { _lstCommandsDSS.Add("Redirect " + nArqRamais); } // redirect arquivo CargaMT if (File.Exists(dir + _paramGerais.GetNomeCargaMT_mes())) { _lstCommandsDSS.Add("Redirect " + _paramGerais.GetNomeCargaMT_mes()); } // se modelo carga Cemig if (_paramGerais._parAvan._modeloCargaCemig) { // redirect arquivo CargaBT if (File.Exists(dir + _paramGerais.GetNomeCargaBTCemig_mes())) { // armazena indice do modelo de Carga _lstOfIndexModeloDeCarga.Add(_lstCommandsDSS.Count); // adiciona comando de definicao do MOdelo de Carga. Defaul 50% Z _lstCommandsDSS.Add("new load.M2constZ pf = 0.92,Vminpu = 0.92,Vmaxpu = 1.5,model = 2,status = variable"); // armazena indice do modelo de Carga _lstOfIndexModeloDeCarga.Add(_lstCommandsDSS.Count); // adiciona comando de definicao do MOdelo de Carga. Defaul 50% Z _lstCommandsDSS.Add("new load.M3constPsqQ pf = 0.92,Vminpu = 0.92,Vmaxpu = 1.5,model = 3,status = variable"); _lstCommandsDSS.Add("Redirect " + _paramGerais.GetNomeCargaBTCemig_mes()); } } else //MODELO antigo { // redirect arquivo CargaBT if (File.Exists(dir + _paramGerais.GetNomeCargaBT_mes())) { _lstCommandsDSS.Add("Redirect " + _paramGerais.GetNomeCargaBT_mes()); } } // redirect arquivo GeradorMT if (File.Exists(dir + _paramGerais.GetNomeGeradorMT_mes())) { _lstCommandsDSS.Add("Redirect " + _paramGerais.GetNomeGeradorMT_mes()); } // redirect arquivo Capacitor if (_paramGerais._parAvan._incluirCapMT && File.Exists(dir + _paramGerais.GetNomeCapacitorMT())) { _lstCommandsDSS.Add("Redirect " + _paramGerais.GetNomeCapacitorMT()); } // nome arquivo dss completo string nomeArqBcomp = _paramGerais.GetNomeArquivoB(); // adiciona comandos secundários if (File.Exists(dir + nomeArqBcomp)) { // le linhas do arquivo "B" e adiciona na lista de comandos string[] tmp2 = System.IO.File.ReadAllLines(dir + nomeArqBcomp); // for (int i = 0; i < tmp2.Length; i++) { string tmp = tmp2[i]; // skipa linhas vazias if (tmp.Equals("")) { continue; } // skipa linhas de comentario if (tmp.StartsWith("!")) { continue; } // adiciona na lista de comandos _lstCommandsDSS.Add(tmp); } } else { _janela.ExibeMsgDisplayMW("Arquivo " + nomeArqBcomp + " não encontrado"); return(false); } // BatchEdit if (!_paramGerais._parAvan._strBatchEdit.Equals("")) { // adiciona na lista de comandos _lstCommandsDSS.Add(_paramGerais._parAvan._strBatchEdit); } return(true); }