Afinando ventana progresos!!
parent
00182b5260
commit
d9e0cc8a1d
|
|
@ -900,7 +900,7 @@ namespace OliviaAddInPro.Helper
|
||||||
var av = (int)o;
|
var av = (int)o;
|
||||||
if (av > 0)
|
if (av > 0)
|
||||||
{
|
{
|
||||||
cps.SetProgress( cps.GetProgress()+ ((double)av/100*Math.Min(incmax, 100-valini)));
|
cps.SetProgress(valini + (Math.Min((double)av/100.0, 100.0)*Math.Min(incmax, 100-valini)));
|
||||||
}
|
}
|
||||||
// if ((int)o < 0)
|
// if ((int)o < 0)
|
||||||
//System.Windows.MessageBox.Show(msg2);
|
//System.Windows.MessageBox.Show(msg2);
|
||||||
|
|
|
||||||
|
|
@ -63,6 +63,8 @@ namespace OliviaAddInPro.Model
|
||||||
{
|
{
|
||||||
ProceSrv.ConfigConex();
|
ProceSrv.ConfigConex();
|
||||||
res2 = ProceSrv.start(LanzaSrv.str_cfg, ProgrSrc._ProgrSrc);
|
res2 = ProceSrv.start(LanzaSrv.str_cfg, ProgrSrc._ProgrSrc);
|
||||||
|
if(!LanzaSrv.EsperaProcess(GeneralDef.NombOlvTasks))
|
||||||
|
res2.Error.Add("No se ha podido cerrar oliviaTask.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (res.HasError)
|
if (res.HasError)
|
||||||
|
|
|
||||||
|
|
@ -89,6 +89,8 @@ namespace OliviaAddInPro.Model
|
||||||
{
|
{
|
||||||
ProceSrv.ConfigConex();
|
ProceSrv.ConfigConex();
|
||||||
res2 = ProceSrv.start(LanzaSrv.str_cfg, ProgrSrc._ProgrSrc);
|
res2 = ProceSrv.start(LanzaSrv.str_cfg, ProgrSrc._ProgrSrc);
|
||||||
|
if (!LanzaSrv.EsperaProcess(GeneralDef.NombOlvTasks))
|
||||||
|
res2.Error.Add("No se ha podido cerrar oliviaTask.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (res.HasError)
|
if (res.HasError)
|
||||||
|
|
|
||||||
|
|
@ -101,7 +101,7 @@ namespace OliviaAddInPro.Services
|
||||||
//Guarda el nombre
|
//Guarda el nombre
|
||||||
OliviaGlob.Paths.PathData = OliviaGlob.Paths.DirData + com.NombreShpExport;
|
OliviaGlob.Paths.PathData = OliviaGlob.Paths.DirData + com.NombreShpExport;
|
||||||
|
|
||||||
com.ProgrSrc.IncMessage(50, "Preparando exportación de red navegable");
|
com.ProgrSrc.IncMessage(10, "Preparando exportación de red navegable");//50%
|
||||||
|
|
||||||
//hace intersecciones espaciales en caso de ámbitos lineales para quitar los que tienen más parte fuera de la zona que dentro
|
//hace intersecciones espaciales en caso de ámbitos lineales para quitar los que tienen más parte fuera de la zona que dentro
|
||||||
//REVISAR
|
//REVISAR
|
||||||
|
|
@ -199,12 +199,12 @@ namespace OliviaAddInPro.Services
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
com.ProgrSrc.IncMessage(60, "Exportando red navegable");
|
com.ProgrSrc.IncMessage(10, "Exportando red navegable");//60%
|
||||||
|
|
||||||
//Prepara nombre de exportación
|
//Prepara nombre de exportación
|
||||||
com.NombreShpExportNw = prefNameExportNw + fechaHora + extShp;
|
com.NombreShpExportNw = prefNameExportNw + fechaHora + extShp;
|
||||||
//exporta los datos de entrada
|
//exporta los datos de entrada
|
||||||
if (!HelperGdb.ExportShp2(OliviaGlob.Paths.PathGdbNw, filtroEspacial, com.NombreShpExportNw, OliviaGlob.Paths.DirData, com.ProgrSrc._ProgrSrc,40))
|
if (!HelperGdb.ExportShp2(OliviaGlob.Paths.PathGdbNw, filtroEspacial, com.NombreShpExportNw, OliviaGlob.Paths.DirData, com.ProgrSrc._ProgrSrc,100))
|
||||||
{
|
{
|
||||||
ErrStr = "Error al exportar la red navegable: " + HelperGdb.OutStr;
|
ErrStr = "Error al exportar la red navegable: " + HelperGdb.OutStr;
|
||||||
return false;
|
return false;
|
||||||
|
|
|
||||||
|
|
@ -184,13 +184,13 @@ namespace OliviaAddInPro.Services.LanzaSrv
|
||||||
* Comprueba si OliviaTask ha salido y le espera durante T seg. Si no, para la tarea
|
* Comprueba si OliviaTask ha salido y le espera durante T seg. Si no, para la tarea
|
||||||
* return true si ha terminado, false si no
|
* return true si ha terminado, false si no
|
||||||
*/
|
*/
|
||||||
private bool EsperaProcess(string nombproc)
|
public bool EsperaProcess(string nombproc)
|
||||||
{
|
{
|
||||||
bool esta_geo = true;
|
bool esta_geo = true;
|
||||||
Process[] pg;
|
Process[] pg;
|
||||||
|
|
||||||
//le da 3 seg de margen para que se cierre
|
//le da 5 seg de margen para que se cierre
|
||||||
pg = Is_process(nombproc, 1, false);
|
pg = Is_process(nombproc, 5, false);
|
||||||
esta_geo = (pg != null);
|
esta_geo = (pg != null);
|
||||||
|
|
||||||
if (esta_geo)
|
if (esta_geo)
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,18 @@ namespace OliviaAddInPro.Services
|
||||||
public Respuesta<TiposEjecucion> start(string cfg, IprocessManager cps)
|
public Respuesta<TiposEjecucion> start(string cfg, IprocessManager cps)
|
||||||
{
|
{
|
||||||
this.cps = cps;
|
this.cps = cps;
|
||||||
soc = new Cstr_socket();
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
soc = new Cstr_socket();
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
|
||||||
|
{
|
||||||
|
var resp = new Respuesta<TiposEjecucion>() { Value = TiposEjecucion.FinEjecNOk };
|
||||||
|
resp.Error.Add("Error al crear conexión con olivia task (no se pudo crear socket)");
|
||||||
|
return resp;
|
||||||
|
}
|
||||||
|
|
||||||
str_cfg = cfg;
|
str_cfg = cfg;
|
||||||
/*
|
/*
|
||||||
|
|
@ -62,7 +73,16 @@ namespace OliviaAddInPro.Services
|
||||||
{
|
{
|
||||||
run();
|
run();
|
||||||
};*/
|
};*/
|
||||||
return run();
|
var res = run();
|
||||||
|
try
|
||||||
|
{
|
||||||
|
soc.termina();
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
res.Error.Add("Error al cerrar la conexion con olivia task (no se pudo cerrar el socket)");
|
||||||
|
}
|
||||||
|
return res;
|
||||||
}
|
}
|
||||||
private Respuesta<TiposEjecucion> run()
|
private Respuesta<TiposEjecucion> run()
|
||||||
{
|
{
|
||||||
|
|
@ -74,6 +94,7 @@ namespace OliviaAddInPro.Services
|
||||||
int lastprog = 0;
|
int lastprog = 0;
|
||||||
var res = new Respuesta<TiposEjecucion>() { Value = TiposEjecucion.FinEjecNOk };
|
var res = new Respuesta<TiposEjecucion>() { Value = TiposEjecucion.FinEjecNOk };
|
||||||
cps.SetProceso("Procesando Datos");
|
cps.SetProceso("Procesando Datos");
|
||||||
|
cps.SetProgress(0);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
do
|
do
|
||||||
|
|
@ -113,6 +134,7 @@ namespace OliviaAddInPro.Services
|
||||||
{
|
{
|
||||||
cancela_permu = false;
|
cancela_permu = false;
|
||||||
}
|
}
|
||||||
|
res.Error.Add("Proceso Cancelado por el usuario");
|
||||||
}
|
}
|
||||||
else if (!first_send_cfg && ((Math.Abs(Environment.TickCount) - lastprog) >= m_tm_progr) && !fin) //en caso normal, todo va bien, pide el progreso y la tarea
|
else if (!first_send_cfg && ((Math.Abs(Environment.TickCount) - lastprog) >= m_tm_progr) && !fin) //en caso normal, todo va bien, pide el progreso y la tarea
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue