DIgSILENT Editor Print

April 6, 2018 | Author: Daniel DelaFuente | Category: N/A
Share Embed Donate


Short Description

Download DIgSILENT Editor Print...

Description

!ESTE ARCHIVO PERMITE EJECUTAR FLUJOS DE CARGA !Y DEPOSITA LOS RESULTADOS EN LA HOJA1 DE EXCEL, !ADEMAS EJECUTA MACROS DE EXCEL DESDE EL DIGSILENT object O,C,flujos; set S; int i,n,a,iTmp; string nombre, acell,s2,s3; flujos = GetCaseObject('Balanced.ComLdf'); ClearOutput(); C = ActiveProject(); flujos.Execute(); if (iExcel) { iTmp = ddeOpen('', 'Excel', 'Hoja1'); if (.not.iTmp) { ! excel can be opened. Now close and connect to a specific sheet ddeClose(); iTmp = ddeOpen('', 'Excel', 'Hoja1'); if (iTmp) { Info('No Sheet1 yet, creating one...'); iTmp = ddeOpen('', 'Excel', 'System'); if (iTmp) { printf('Cannot open DDE to Excel'); } else { ! create a nueva hoja Hoja1 ddeExe('[New(1)]'); ddeClose(); iTmp = ddeOpen('', 'Excel', 'Macro1'); } } } if (iTmp) { Error('Could not open DDE connection'); exit(); } } printf('%s ','Ha finalizado la apertura del Excel'); ddeExe('[Run("Limpia")]'); ! ClearOutput(); !Lectura de datos en lineas S = AllRelevant(); O = S.Firstmatch('ElmLne'); i = 3; while (O) { nombre = O:loc_name; s3 =O:cpZone; a = O:outserv; O.ShowFullName(); if (a = 0){ i+=1; acell = sprintf('F%dC1',i); ddePoke(acell,nombre); acell = sprintf('F%dC21',i); ddePoke(acell,nombre); s2 = sprintf('%f',O:c:loading); acell= sprintf('F%dC2',i); ddePoke(acell,s2); !Perdidas en lineas s2 = sprintf('%f',O:c:Losses); acell= sprintf('F%dC3',i); ddePoke(acell,s2); !Perdidas en lines s2 = sprintf('%f',O:m:Ploss:bus1); acell= sprintf('F%dC22',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:Qloss:bus1); acell= sprintf('F%dC23',i); ddePoke(acell,s2); !Flujo en lines s2 = sprintf('%f',O:m:P:bus1);

acell= sprintf('F%dC24',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:Q:bus1); acell= sprintf('F%dC25',i); ddePoke(acell,s2); } O = S.Nextmatch(); }

!Lectura de datos en Autotransformadores S = AllRelevant(); O = S.Firstmatch('ElmTr3'); i = 3; while (O) { nombre = O:loc_name; s3 = O:cpZone; a = O:outserv; if (a = 0){ i+=1; acell = sprintf('F%dC4',i); ddePoke(acell,nombre); printf('%s %s',acell,nombre); acell = sprintf('F%dC32',i); ddePoke(acell,nombre); s2 = sprintf('%f',O:c:loading); acell= sprintf('F%dC5',i); ddePoke(acell,s2); !RESULTADOS DE FLUJOS Y PERDIDAS acell = sprintf('F%dC37',i); ddePoke(acell,nombre); s2 = sprintf('%f',O:m:Ploss:bushv); acell= sprintf('F%dC38',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:Qloss:bushv); acell= sprintf('F%dC39',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:P:bushv); acell= sprintf('F%dC40',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:Q:bushv); acell= sprintf('F%dC41',i); ddePoke(acell,s2); s2 = sprintf('%f',O:n:Ul:bushv); acell= sprintf('F%dC42',i); ddePoke(acell,s2); s2 = sprintf('%f',O:n:Ul:buslv); acell= sprintf('F%dC43',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:cosphisum:bushv); acell= sprintf('F%dC44',i); ddePoke(acell,s2); } O = S.Nextmatch(); }

!Lectura de datos en Nodos S = AllRelevant(); O = S.Firstmatch('ElmTerm'); i = 3; while (O) { nombre = O:loc_name; s3 =O:cpZone; a = O:outserv; if (a = 0){ i+=1; acell= sprintf('F%dC7',i); ddePoke(acell,nombre);

printf('%s %s',acell,nombre); s2 = sprintf('%f',O:m:u); acell= sprintf('F%dC8',i); ddePoke(acell,s2); } O = S.Nextmatch(); } !Lectura de datos en Transformadores S = AllRelevant(); O = S.Firstmatch('ElmTr2'); i = 3; while (O) { nombre = O:loc_name; s3 =O:cpZone; a = O:outserv; if (a = 0){ i+=1; acell = sprintf('F%dC10',i); ddePoke(acell,nombre); acell = sprintf('F%dC28',i); ddePoke(acell,nombre); s2 = sprintf('%f',O:c:loading); acell= sprintf('F%dC11',i); ddePoke(acell,s2); !RESULTADOS DE FLUJOS Y PERDIDAS acell = sprintf('F%dC28',i); ddePoke(acell,nombre); s2 = sprintf('%f',O:m:Ploss:bushv); acell= sprintf('F%dC29',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:Qloss:bushv); acell= sprintf('F%dC30',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:P:bushv); acell= sprintf('F%dC31',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:Q:bushv); acell= sprintf('F%dC32',i); ddePoke(acell,s2); s2 = sprintf('%f',O:n:Ul:bushv); acell= sprintf('F%dC33',i); ddePoke(acell,s2); s2 = sprintf('%f',O:n:Ul:buslv); acell= sprintf('F%dC34',i); ddePoke(acell,s2); s2 = sprintf('%f',O:m:cosphisum:bushv); acell= sprintf('F%dC35',i); ddePoke(acell,s2); } O = S.Nextmatch(); } !Lectura de datos en Zonas S = AllRelevant(); O = S.Firstmatch('ElmZone'); i = 3; while (O) { nombre = O:loc_name; i+=1; acell= sprintf('F%dC13',i); ddePoke(acell,nombre); s2 = sprintf('%f',O:c:GenP); acell= sprintf('F%dC14',i); ddePoke(acell,s2); s2 = sprintf('%f',O:c:GenQ); acell= sprintf('F%dC15',i); ddePoke(acell,s2); s2 = sprintf('%f',O:c:TotLoadP); acell= sprintf('F%dC16',i); ddePoke(acell,s2); s2 = sprintf('%f',O:c:TotLoadQ); acell= sprintf('F%dC17',i); ddePoke(acell,s2); s2 = sprintf('%f',O:c:LossP); acell= sprintf('F%dC18',i); ddePoke(acell,s2);

s2 = sprintf('%f',O:c:LossQ); acell= sprintf('F%dC19',i); ddePoke(acell,s2); O = S.Nextmatch(); printf('%s ',nombre); } ddeExe('[Run("Copia")]');

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF