public static EVentaEspecial InstanciarDesde(DataRow registro, EClientes clientes) { //log.Info("[InstanciarDesde] Parametros "+registro.Field<string>("id_cliente")); Respuesta respuesta = new Respuesta(); if (registro == null) { respuesta.Valida = false; respuesta.Mensaje = "Registro nulo o contiene campos nulos."; return(null); //throw new ApplicationException("Registro nulo o contiene campos nulos."); } EVentaEspecial a; if (Convert.ToBoolean((byte)registro["registra_cliente"])) { EClientesVentaEspecial clientesVenta; if (Convert.ToBoolean((byte)registro["especifica_clientes"])) { string clientid = ((string)registro["id_cliente"]).Trim(); var c = clientes.Cliente(clientid, out respuesta); clientesVenta = new EClientesVentaEspecial( Convert.ToBoolean((byte)registro["diligencia_tipo_identificacion"]), Convert.ToBoolean((byte)registro["diligencia_identificacion"]), Convert.ToBoolean((byte)registro["diligencia_primer_nombre"]), Convert.ToBoolean((byte)registro["diligencia_segundo_nombre"]), Convert.ToBoolean((byte)registro["diligencia_primer_apellido"]), Convert.ToBoolean((byte)registro["diligencia_segundo_apellido"]), Convert.ToBoolean((byte)registro["diligencia_tipo_cliente"]), Convert.ToBoolean((byte)registro["diligencia_ciudad"]), Convert.ToBoolean((byte)registro["diligencia_pais"]), Convert.ToBoolean((byte)registro["diligencia_celular"]), Convert.ToBoolean((byte)registro["diligencia_telefono"]), Convert.ToBoolean((byte)registro["diligencia_correo"]), Convert.ToBoolean((byte)registro["diligencia_direccion"]) ); } else { clientesVenta = new EClientesVentaEspecial( Convert.ToBoolean((byte)registro["diligencia_tipo_identificacion"]), Convert.ToBoolean((byte)registro["diligencia_identificacion"]), Convert.ToBoolean((byte)registro["diligencia_primer_nombre"]), Convert.ToBoolean((byte)registro["diligencia_segundo_nombre"]), Convert.ToBoolean((byte)registro["diligencia_primer_apellido"]), Convert.ToBoolean((byte)registro["diligencia_segundo_apellido"]), Convert.ToBoolean((byte)registro["diligencia_tipo_cliente"]), Convert.ToBoolean((byte)registro["diligencia_ciudad"]), Convert.ToBoolean((byte)registro["diligencia_pais"]), Convert.ToBoolean((byte)registro["diligencia_celular"]), Convert.ToBoolean((byte)registro["diligencia_telefono"]), Convert.ToBoolean((byte)registro["diligencia_correo"]), Convert.ToBoolean((byte)registro["diligencia_direccion"]) ); } a = new EVentaEspecial( (string)registro["id_tipo_venta"], (string)registro["descripcion"], Convert.ToBoolean((byte)registro["impto1"]), Convert.ToBoolean((byte)registro["impto2"]), Convert.ToBoolean((byte)registro["impto3"]), Convert.ToBoolean((byte)registro["impto4"]), (string)registro["mensaje"], Convert.ToBoolean((byte)registro["registra_pago"]), Convert.ToBoolean((byte)registro["registra_cliente"]), clientesVenta ); } else { a = new EVentaEspecial( (string)registro["id_tipo_venta"], (string)registro["descripcion"], Convert.ToBoolean((byte)registro["impto1"]), Convert.ToBoolean((byte)registro["impto2"]), Convert.ToBoolean((byte)registro["impto3"]), Convert.ToBoolean((byte)registro["impto4"]), (string)registro["mensaje"], Convert.ToBoolean((byte)registro["registra_pago"]), Convert.ToBoolean((byte)registro["registra_cliente"]) ); } return(a); }