示例#1
0
 public bool Importar(DSImportacion DS_Importacion)
 {
     try
     {
         actualizarInformacionOrigen(DS_Importacion);
     }
     catch (Exception ex)
     {
         throw ex;
     }
     return(true);
 }
示例#2
0
        private void actualizarInformacionOrigen(DSImportacion DS_Importacion)
        {
            try
            {
                foreach (EDFConfiguracionConexion.DataComponent datos in conexiones.DataComponents)
                {
                    datos.DataComponentInstance.OpenConnection();
                    datos.DataComponentInstance.BeginTransaction();
                }

                foreach (EDFImportacion.DSImportacion.LecturaRow lecturaRow
                         in DS_Importacion.Lectura.Rows)
                {
                    SGDAC.DAC datos = conexiones.consultaDataObjectCorporativo(Convert.ToInt32(lecturaRow["Corporativo"])).DataComponentInstance;

                    actualizarLectura(datos,
                                      Convert.ToInt32(lecturaRow.Lectura),
                                      lecturaRow.FLecturaFinal,
                                      0,          //Descuento por cliente
                                      Convert.ToInt32(lecturaRow.PorcentajeTanque),
                                      lecturaRow.Imagen,
                                      lecturaRow.Observaciones,
                                      lecturaRow.Usuario);

                    foreach (EDFImportacion.DSImportacion.LecturaMedidorRow lecturaMedidorRow
                             in DS_Importacion.LecturaMedidor.Select("Corporativo = " + lecturaRow.Corporativo.ToString() +
                                                                     " AND Lectura = " + lecturaRow.Lectura))
                    {
                        actualizarLecturaMedidor(datos,
                                                 Convert.ToInt32(lecturaMedidorRow.Lectura),
                                                 Convert.ToInt32(lecturaMedidorRow.Consecutivo),
                                                 lecturaMedidorRow.LecturaFinal,
                                                 lecturaMedidorRow.DiferenciaLectura,
                                                 lecturaMedidorRow.ConsumoLitros,
                                                 lecturaMedidorRow.Importe,
                                                 lecturaMedidorRow.Impuesto,
                                                 lecturaMedidorRow.Total,
                                                 lecturaMedidorRow.Redondeo,
                                                 lecturaMedidorRow.Imagen,
                                                 Convert.ToByte(lecturaMedidorRow.MotivoNoLectura),
                                                 Convert.ToByte(lecturaMedidorRow.NumeroImpresion));
                    }
                }

                foreach (EDFConfiguracionConexion.DataComponent datos in conexiones.DataComponents)
                {
                    datos.DataComponentInstance.Transaction.Commit();
                }
            }
            catch (Exception ex)
            {
                foreach (EDFConfiguracionConexion.DataComponent datos in conexiones.DataComponents)
                {
                    datos.DataComponentInstance.Transaction.Rollback();
                }
                throw ex;
            }
            finally
            {
                foreach (EDFConfiguracionConexion.DataComponent datos in conexiones.DataComponents)
                {
                    datos.DataComponentInstance.CloseConnection();
                }
            }
        }