private bool LeerDatos(SqlDataReader reader)
        {
            try
            {
                IDEntidad              = SqlServerValues.GetInteger(reader, "IDEntidad");
                IDOrigenDestino        = SqlServerValues.GetShort(reader, "IDOrigenDestino");
                Nombre                 = SqlServerValues.GetString(reader, "Nombre");
                Direccion              = SqlServerValues.GetString(reader, "Direccion");
                IDLocalidad            = SqlServerValues.GetInteger(reader, "IDLocalidad");
                Kilometro              = SqlServerValues.GetShortSafeAsNull(reader, "Kilometro");
                ONCCA_Codigo           = SqlServerValues.GetIntegerSafeAsNull(reader, "ONCCA_Codigo");
                ControlaStock          = SqlServerValues.GetBoolean(reader, "ControlaStock");
                ConvierteEnSubProducto = SqlServerValues.GetBoolean(reader, "ConvierteEnSubProducto");
                RealizaAnalisisIPRO    = SqlServerValues.GetBoolean(reader, "RealizaAnalisisIPRO");
                Activo                 = SqlServerValues.GetBoolean(reader, "Activo");

                return(true);
            }
            catch (Exception ex)
            {
                Cursor.Current = Cursors.Default;
                MessageBox.Show($"Error al leer los datos del origen-destino desde la base de datos.\n\nError: {ex.Message}", "CS-Importador de cartas de porte", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }
Esempio n. 2
0
        internal bool ObtenerPorCuit(Database database, long cuit)
        {
            SqlDataReader reader = null;

            try
            {
                SqlCommand command = new SqlCommand
                {
                    CommandType = CommandType.StoredProcedure,
                    Connection  = database.Connection,
                    CommandText = "usp_Entidad_GetPorCuit"
                };
                command.Parameters.Add("Cuit", SqlDbType.BigInt).Value = cuit;
                reader = command.ExecuteReader();

                IsFound = false;
                if (reader.HasRows)
                {
                    reader.Read();
                    IDEntidad             = SqlServerValues.GetInteger(reader, "IDEntidad");
                    Nombre                = SqlServerValues.GetString(reader, "Nombre");
                    Cuit                  = SqlServerValues.GetLongSafeAsNull(reader, "CUIT");
                    EsTitular             = SqlServerValues.GetBoolean(reader, "EsTitular");
                    EsIntermediario       = SqlServerValues.GetBoolean(reader, "EsIntermediario");
                    EsRemitenteComercial  = SqlServerValues.GetBoolean(reader, "EsRemitenteComercial");
                    EsCorredor            = SqlServerValues.GetBoolean(reader, "EsCorredor");
                    EsEntregador          = SqlServerValues.GetBoolean(reader, "EsEntregador");
                    EsDestinatario        = SqlServerValues.GetBoolean(reader, "EsDestinatario");
                    EsDestino             = SqlServerValues.GetBoolean(reader, "EsDestino");
                    EsTransportista       = SqlServerValues.GetBoolean(reader, "EsTransportista");
                    EsChofer              = SqlServerValues.GetBoolean(reader, "EsChofer");
                    EsClienteSubProducto  = SqlServerValues.GetBoolean(reader, "EsClienteSubProducto");
                    Notas                 = SqlServerValues.GetStringSafeAsNull(reader, "Notas");
                    Activo                = SqlServerValues.GetBoolean(reader, "Activo");
                    IDUsuarioCreacion     = reader.GetByte(reader.GetOrdinal("IDUsuarioCreacion"));
                    FechaHoraCreacion     = reader.GetDateTime(reader.GetOrdinal("FechaHoraCreacion"));
                    IDUsuarioModificacion = reader.GetByte(reader.GetOrdinal("IDUsuarioModificacion"));
                    FechaHoraModificacion = reader.GetDateTime(reader.GetOrdinal("FechaHoraModificacion"));
                    IsFound               = true;
                    IsNew                 = false;
                }
                reader.Close();
                reader  = null;
                command = null;
                return(true);
            }
            catch (Exception ex)
            {
                if (reader != null)
                {
                    reader.Close();
                }
                Cursor.Current = Cursors.Default;
                MessageBox.Show($"Error al obtener la entidad desde la base de datos.\n\nError: {ex.Message}", "CS-Importador de cartas de porte", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }
Esempio n. 3
0
        internal bool ObtenerPorNombre(Database database, string nombre)
        {
            try
            {
                SqlCommand command = new SqlCommand
                {
                    CommandType = CommandType.StoredProcedure,
                    Connection  = database.Connection,
                    CommandText = "usp_Cereal_GetPorNombre"
                };
                command.Parameters.Add("Nombre", SqlDbType.VarChar).Value = nombre;
                SqlDataReader reader = command.ExecuteReader();

                IsFound = false;
                if (reader.HasRows)
                {
                    reader.Read();
                    IDCereal              = SqlServerValues.GetByte(reader, "IDCereal");
                    Nombre                = SqlServerValues.GetString(reader, "Nombre");
                    Tipo                  = SqlServerValues.GetString(reader, "Tipo");
                    MermaVolatil          = SqlServerValues.GetDecimalSafeAsNull(reader, "MermaVolatil");
                    MermaHumedadBase      = SqlServerValues.GetDecimalSafeAsNull(reader, "MermaHumedadBase");
                    MermaHumedadManipuleo = SqlServerValues.GetDecimalSafeAsNull(reader, "MermaHumedadManipuleo");
                    ONCCA_EspecieCodigo   = SqlServerValues.GetByteSafeAsNull(reader, "ONCCA_EspecieCodigo");
                    ONCCA_EspecieNombre   = SqlServerValues.GetStringSafeAsNull(reader, "ONCCA_EspecieNombre");
                    ONCCA_GranoTipoCodigo = SqlServerValues.GetByteSafeAsNull(reader, "ONCCA_GranoTipoCodigo");
                    ONCCA_GranoTipoNombre = SqlServerValues.GetStringSafeAsNull(reader, "ONCCA_GranoTipoNombre");
                    RealizaAnalisisIPRO   = SqlServerValues.GetBoolean(reader, "RealizaAnalisisIPRO");
                    Activo                = SqlServerValues.GetBoolean(reader, "Activo");
                    IsFound               = true;
                    IsNew                 = false;
                }
                reader.Close();
                reader  = null;
                command = null;
                return(true);
            }
            catch (Exception ex)
            {
                Cursor.Current = Cursors.Default;
                MessageBox.Show($"Error al obtener el cereal desde la base de datos.\n\nError: {ex.Message}", "CS-Importador de cartas de porte", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }
Esempio n. 4
0
        internal bool Actualizar(Database database)
        {
            try
            {
                SqlCommand command = new SqlCommand
                {
                    Connection  = database.Connection,
                    CommandType = CommandType.StoredProcedure
                };

                SqlParameter parameterIDMovimiento_Cereal = new SqlParameter("IDMovimiento_Cereal", SqlDbType.Int);
                if (IsNew)
                {
                    IsNew = true;
                    command.CommandText = "usp_Movimiento_Cereal_Add";
                    parameterIDMovimiento_Cereal.Direction = ParameterDirection.Output;
                    command.Parameters.Add(parameterIDMovimiento_Cereal);
                    command.Parameters.Add("Tipo", SqlDbType.Char).Value = Tipo;
                }
                else
                {
                    IsNew = false;
                    command.CommandText = "usp_Movimiento_Cereal_Update";
                    parameterIDMovimiento_Cereal.Value = IDMovimiento_Cereal;
                    command.Parameters.Add(parameterIDMovimiento_Cereal);
                }
                command.Parameters.Add("ComprobanteNumero", SqlDbType.Char).Value           = ComprobanteNumero;
                command.Parameters.Add("IDCartaPorte_Talonario", SqlDbType.Int).Value       = DBNull.Value;
                command.Parameters.Add("CTGNumero", SqlDbType.BigInt).Value                 = CTGNumero;
                command.Parameters.Add("FechaCarga", SqlDbType.Date).Value                  = FechaCarga;
                command.Parameters.Add("IDEntidad_Titular", SqlDbType.Int).Value            = IDEntidad_Titular;
                command.Parameters.Add("IDEntidad_Intermediario", SqlDbType.Int).Value      = SqlServerValues.SetValue(IDEntidad_Intermediario);
                command.Parameters.Add("IDEntidad_RemitenteComercial", SqlDbType.Int).Value = SqlServerValues.SetValue(IDEntidad_RemitenteComercial);
                command.Parameters.Add("IDEntidad_Corredor", SqlDbType.Int).Value           = SqlServerValues.SetValue(IDEntidad_Corredor);
                command.Parameters.Add("IDEntidad_Entregador", SqlDbType.Int).Value         = SqlServerValues.SetValue(IDEntidad_Entregador);
                command.Parameters.Add("IDEntidad_Destinatario", SqlDbType.Int).Value       = SqlServerValues.SetValue(IDEntidad_Destinatario);
                command.Parameters.Add("IDEntidad_Destino", SqlDbType.Int).Value            = SqlServerValues.SetValue(IDEntidad_Destino);
                command.Parameters.Add("IDEntidad_Transportista", SqlDbType.Int).Value      = SqlServerValues.SetValue(IDEntidad_Transportista);
                command.Parameters.Add("IDEntidad_Chofer", SqlDbType.Int).Value             = SqlServerValues.SetValue(IDEntidad_Chofer);
                command.Parameters.Add("IDCosecha", SqlDbType.TinyInt).Value                = IDCosecha;
                command.Parameters.Add("IDCereal", SqlDbType.TinyInt).Value                 = IDCereal;
                command.Parameters.Add("IDContrato", SqlDbType.Int).Value  = DBNull.Value;
                command.Parameters.Add("PesoBruto", SqlDbType.Int).Value   = PesoBruto;
                command.Parameters.Add("PesoTara", SqlDbType.Int).Value    = PesoTara;
                command.Parameters.Add("PesoNeto", SqlDbType.Int).Value    = PesoNeto;
                command.Parameters.Add("Volatil", SqlDbType.Decimal).Value = SqlServerValues.SetValue(Volatil);
                command.Parameters.Add("Humedad", SqlDbType.Decimal).Value = DBNull.Value;
                command.Parameters.Add("Zaranda", SqlDbType.Decimal).Value = DBNull.Value;
                command.Parameters.Add("IDOrigenDestino_Origen", SqlDbType.SmallInt).Value  = SqlServerValues.SetValue(IDOrigenDestino_Origen);
                command.Parameters.Add("IDOrigenDestino_Destino", SqlDbType.SmallInt).Value = SqlServerValues.SetValue(IDOrigenDestino_Destino);
                command.Parameters.Add("CTGCancelacion", SqlDbType.Int).Value = DBNull.Value;
                command.Parameters.Add("TransporteDominioCamion", SqlDbType.VarChar).Value   = SqlServerValues.SetValue(TransporteDominioCamion);
                command.Parameters.Add("TransporteDominioAcoplado", SqlDbType.VarChar).Value = SqlServerValues.SetValue(TransporteDominioAcoplado);
                command.Parameters.Add("TransporteKilometro", SqlDbType.SmallInt).Value      = SqlServerValues.SetValue(TransporteKilometro);
                command.Parameters.Add("TransporteTarifaReferencia", SqlDbType.Money).Value  = SqlServerValues.SetValue(TransporteTarifaReferencia);
                command.Parameters.Add("TransporteTarifa", SqlDbType.Money).Value            = SqlServerValues.SetValue(TransporteTarifa);
                command.Parameters.Add("FechaHoraArribo", SqlDbType.SmallDateTime).Value     = SqlServerValues.SetValue(FechaHoraArribo);
                command.Parameters.Add("FechaHoraDescarga", SqlDbType.SmallDateTime).Value   = SqlServerValues.SetValue(FechaHoraDescarga);
                command.Parameters.Add("DeclaraIPRO", SqlDbType.Bit).Value = false;
                command.Parameters.Add("IDCartaPorte_MotivoAnulacion", SqlDbType.TinyInt).Value = SqlServerValues.SetValue(IDCartaPorte_MotivoAnulacion);
                command.Parameters.Add("Notas", SqlDbType.VarChar).Value = SqlServerValues.SetValue(Notas);
                command.Parameters.Add("Calculo_TarifaIndice", SqlDbType.SmallInt).Value = DBNull.Value;
                command.Parameters.Add("IDUsuario", SqlDbType.TinyInt).Value             = Properties.Settings.Default.IdUsuarioImportador;
                if (Tipo == Constantes.MovimientoTipoEntrada)
                {
                    command.Parameters.Add("Certificado", SqlDbType.Bit).Value = SqlServerValues.SetValue(Certificado);
                }
                else
                {
                    command.Parameters.Add("Certificado", SqlDbType.Bit).Value = DBNull.Value;
                }
                command.Parameters.Add("StringListOfIDPesadaCompleta", SqlDbType.VarChar).Value = DBNull.Value;

                command.ExecuteNonQuery();
                if (IsNew)
                {
                    IDMovimiento_Cereal = (int)parameterIDMovimiento_Cereal.Value;
                }
                IsNew   = false;
                command = null;
                return(true);
            }
            catch (Exception ex)
            {
                Cursor.Current = Cursors.Default;
                if (ex.Message.Contains("FK__Entidad_OrigenDestino__Movimiento__Origen"))
                {
                    MessageBox.Show($"La entidad titular de la carta de porte no tiene especificado un origen. Carta de porte nº {ComprobanteNumero}.", "CS-Importador de cartas de porte", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    MessageBox.Show($"Error al actualizar los datos de la carta de porte nº {ComprobanteNumero} en la base de datos.\n\nError: {ex.Message}", "CS-Importador de cartas de porte", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                return(false);
            }
        }
Esempio n. 5
0
        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);
            }
        }