private bool LeerDatos(SqlDataReader reader) { try { IDMovimiento_Cereal = SqlServerValues.GetInteger(reader, "IDMovimiento_Cereal"); Tipo = SqlServerValues.GetString(reader, "Tipo"); // Encabezado ComprobanteNumero = SqlServerValues.GetLong(reader, "ComprobanteNumero"); ComprobanteNumeroConFormato = SqlServerValues.GetStringSafeAsEmpty(reader, "ComprobanteNumeroConFormato"); IDCartaPorte_Talonario = SqlServerValues.GetIntegerSafeAsNull(reader, "IDCartaPorte_Talonario"); CTGNumero = SqlServerValues.GetLongSafeAsNull(reader, "CTGNumero"); FechaCarga = SqlServerValues.GetDateTime(reader, "FechaCarga"); // Sección A - Intervinientes IDEntidad_Titular = SqlServerValues.GetInteger(reader, "IDEntidad_Titular"); IDEntidad_Intermediario = SqlServerValues.GetIntegerSafeAsNull(reader, "IDEntidad_Intermediario"); IDEntidad_RemitenteComercial = SqlServerValues.GetIntegerSafeAsNull(reader, "IDEntidad_RemitenteComercial"); IDEntidad_Corredor = SqlServerValues.GetIntegerSafeAsNull(reader, "IDEntidad_Corredor"); IDEntidad_Entregador = SqlServerValues.GetIntegerSafeAsNull(reader, "IDEntidad_Entregador"); IDEntidad_Destinatario = SqlServerValues.GetIntegerSafeAsNull(reader, "IDEntidad_Destinatario"); IDEntidad_Destino = SqlServerValues.GetIntegerSafeAsNull(reader, "IDEntidad_Destino"); IDEntidad_Transportista = SqlServerValues.GetIntegerSafeAsNull(reader, "IDEntidad_Transportista"); IDEntidad_Chofer = SqlServerValues.GetIntegerSafeAsNull(reader, "IDEntidad_Chofer"); // Sección B - Grano / Especie IDCosecha = SqlServerValues.GetByte(reader, "IDCosecha"); IDCereal = SqlServerValues.GetByte(reader, "IDCereal"); IDContrato = SqlServerValues.GetIntegerSafeAsNull(reader, "IDContrato"); PesoBruto = SqlServerValues.GetInteger(reader, "PesoBruto"); PesoTara = SqlServerValues.GetInteger(reader, "PesoTara"); PesoNeto = SqlServerValues.GetInteger(reader, "PesoNeto"); // Datos para mermas if (Tipo == Constantes.MovimientoTipoEntrada) { Volatil = SqlServerValues.GetDecimalSafeAsNull(reader, "Volatil"); Humedad = SqlServerValues.GetDecimalSafeAsNull(reader, "Humedad"); Zaranda = SqlServerValues.GetDecimalSafeAsNull(reader, "Zaranda"); MermaVolatilKilogramo = SqlServerValues.GetInteger(reader, "MermaVolatilKilogramo"); MermaHumedadPorcentaje = SqlServerValues.GetDecimalSafeAsNull(reader, "MermaHumedadPorcentaje"); MermaHumedadKilogramo = SqlServerValues.GetIntegerSafeAsNull(reader, "MermaHumedadKilogramo"); MermaZarandaKilogramo = SqlServerValues.GetIntegerSafeAsNull(reader, "MermaZarandaKilogramo"); } else { Volatil = null; Humedad = null; Zaranda = null; MermaVolatilKilogramo = null; MermaHumedadPorcentaje = null; MermaHumedadKilogramo = null; MermaZarandaKilogramo = null; } PesoFinal = SqlServerValues.GetIntegerSafeAsNull(reader, "PesoFinal"); // Sección C - Procedencia IDOrigenDestino_Origen = SqlServerValues.GetShortSafeAsNull(reader, "IDOrigenDestino_Origen"); // Sección D - Destino de la mercadería IDOrigenDestino_Destino = SqlServerValues.GetShortSafeAsNull(reader, "IDOrigenDestino_Destino"); // Sección E - Datos del transporte CTGCancelacion = SqlServerValues.GetIntegerSafeAsNull(reader, "CTGCancelacion"); TransporteDominioCamion = SqlServerValues.GetStringSafeAsEmpty(reader, "TransporteDominioCamion").Trim(); TransporteDominioAcoplado = SqlServerValues.GetStringSafeAsEmpty(reader, "TransporteDominioAcoplado").Trim(); TransporteKilometro = SqlServerValues.GetShortSafeAsNull(reader, "TransporteKilometro"); TransporteTarifaReferencia = SqlServerValues.GetDecimalSafeAsNull(reader, "TransporteTarifaReferencia"); TransporteTarifa = SqlServerValues.GetDecimalSafeAsNull(reader, "TransporteTarifa"); // Sección G - Descarga if (Tipo == Constantes.MovimientoTipoEntrada) { FechaHoraArribo = SqlServerValues.GetDateTimeSafeAsNull(reader, "FechaHoraArribo"); FechaHoraDescarga = SqlServerValues.GetDateTimeSafeAsNull(reader, "FechaHoraDescarga"); } else { FechaHoraArribo = null; FechaHoraDescarga = null; } // Datos extras DeclaraIPRO = SqlServerValues.GetBoolean(reader, "DeclaraIPRO"); IDCartaPorte_MotivoAnulacion = SqlServerValues.GetByteSafeAsNull(reader, "IDCartaPorte_MotivoAnulacion"); Notas = SqlServerValues.GetStringSafeAsNull(reader, "Notas"); Calculo_TarifaIndice = SqlServerValues.GetShortSafeAsNull(reader, "Calculo_TarifaIndice"); // Datos del registro IDUsuarioCreacion = SqlServerValues.GetByte(reader, "IDUsuarioCreacion"); FechaHoraCreacion = SqlServerValues.GetDateTime(reader, "FechaHoraCreacion"); IDUsuarioModificacion = SqlServerValues.GetByte(reader, "IDUsuarioModificacion"); FechaHoraModificacion = SqlServerValues.GetDateTime(reader, "FechaHoraModificacion"); FechaHoraLiquidacionServicio = SqlServerValues.GetDateTimeSafeAsNull(reader, "FechaHoraLiquidacionServicio"); FechaHoraEnvioBolsaTech = SqlServerValues.GetDateTimeSafeAsNull(reader, "FechaHoraEnvioBolsaTech"); if (Tipo == Constantes.MovimientoTipoEntrada) { Certificado = SqlServerValues.GetBooleanSafeAsNull(reader, "Certificado"); } else { Certificado = null; } KilogramoAplicado = SqlServerValues.GetIntegerSafeAsNull(reader, "KilogramoAplicado"); return(true); } catch (Exception ex) { Cursor.Current = Cursors.Default; MessageBox.Show($"Error al leer los datos de la carta de porte desde la base de datos.\n\nError: {ex.Message}", "CS-Importador de cartas de porte", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } }