コード例 #1
0
ファイル: Remito.xaml.cs プロジェクト: ceibosoftware/WPF-FB
        private void btnAgregar_Click(object sender, RoutedEventArgs e)
        {
            var newW = new windowAgregarRemito();

            newW.ShowDialog();
            if (newW.DialogResult == true)
            {
                //DATOS REMITO.
                String   numeroRemito = newW.txtNroRemito.Text;
                DateTime fecha        = newW.dtRemito.SelectedDate.Value.Date;

                int    idOC     = (int)newW.cmbOrden.SelectedValue;
                string consulta = "insert into remito( numeroRemito, fecha, FK_idOC) values( '" + numeroRemito + "', '" + fecha.ToString("yyyy/MM/dd") + "','" + idOC + "')";
                conexion.operaciones(consulta);

                //PRODUCTOS REMITO
                string ultimoId = "Select last_insert_id()";

                String id = conexion.ValorEnVariable(ultimoId);
                foreach (var producto in newW.ProdRemito)
                {
                    String productos = "insert into productos_has_remitos(cantidad, CrNotaCredito,  FK_idProducto, FK_idRemito) values( '" + producto.cantidad + "', '" + producto.cantidad + "','" + producto.id + "','" + id + "' )";
                    conexion.operaciones(productos);
                }
                //ACTUALIZAR CANTITAD RESTANTE REMITO DE PRODUCTO OC
                int idOrden = (int)newW.cmbOrden.SelectedValue;
                foreach (var producto in newW.Productos)
                {
                    String sql = "UPDATE productos_has_ordencompra SET CrRemito = '" + producto.cantidad + "' where FK_idProducto = '" + producto.id + "' and FK_idOC = '" + idOrden + "'";
                    conexion.operaciones(sql);
                }
                //CARGAR STOCK EN PRODUCTO
                foreach (var producto in newW.ProdRemito)
                {
                    Console.WriteLine("id " + producto.id);
                    Console.WriteLine("id " + producto.cantidad);
                    String sql = "UPDATE productos SET stock = stock+'" + producto.cantidad + "', ume ='" + DateTime.Now.ToString("yyyy/MM/dd") + "' where idProductos = '" + producto.id + "' ";
                    conexion.operaciones(sql);
                }
                LoadListaComboProveedor();
                loadLtsRemitos();

                seleccioneParaFiltrar();
                ltsremitos.Items.MoveCurrentToLast();
                MessageBox.Show("Se agrego el remito correctamente", "Información", MessageBoxButton.OK, MessageBoxImage.Information);
            }
        }
コード例 #2
0
ファイル: Remito.xaml.cs プロジェクト: ceibosoftware/WPF-FB
        private void btnAceptar_Click(object sender, RoutedEventArgs e)
        {
            var newW = new windowAgregarRemito();

            newW.ShowDialog();
        }
コード例 #3
0
ファイル: Remito.xaml.cs プロジェクト: ceibosoftware/WPF-FB
        private void btnModificar_Copy_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                string consulta1 = "SELECT count(FK_idremitos) FROM notacreditosalida where FK_idremitos = " + ltsremitos.SelectedValue + "";

                if (conexion.ValorEnVariable(consulta1) == "0")
                {
                    string numeroR  = (((DataRowView)ltsremitos.SelectedItem).Row[1]).ToString();
                    string consulta = "select t2.FK_idProveedor from  ordencompra t2 where idOrdenCompra = @valor";
                    int.TryParse(txtOC.Text.ToString(), out int OC);
                    DataTable idprov = conexion.ConsultaParametrizada(consulta, OC);
                    int       index  = ltsremitos.SelectedIndex;
                    var       newW   = new windowAgregarRemito((int)idprov.Rows[0].ItemArray[0], OC, productosparametro, fecha, numeroR, (int)ltsremitos.SelectedValue);
                    Console.WriteLine(OC);

                    newW.ShowDialog();

                    if (newW.DialogResult == true)
                    {
                        //DATOS REMITO.

                        String   numeroRemito = newW.txtNroRemito.Text;
                        DateTime fecha        = newW.dtRemito.SelectedDate.Value.Date;
                        int      idOC         = (int)newW.cmbOrden.SelectedValue;
                        int      idRemito     = newW.idRemito;

                        string consultasql = "UPDATE  remito SET numeroRemito = '" + numeroRemito + "', fecha ='" + fecha.ToString("yyyy/MM/dd") + "', FK_idOC ='" + idOC + "' where idremitos ='" + idRemito + "' ";
                        conexion.operaciones(consultasql);

                        //ELIMINAR PRODUCTOS

                        String sqlElim = "delete from productos_has_remitos where FK_idRemito = '" + idRemito + "'";
                        conexion.operaciones(sqlElim);
                        //PRODUCTOS REMITO

                        foreach (var producto in newW.ProdRemito)
                        {
                            Console.Write("stock nuevo :" + producto.cantidad);
                            String productos = "insert into productos_has_remitos(cantidad,  FK_idProducto, FK_idRemito,CrNotaCredito) values( '" + producto.cantidad + "', '" + producto.id + "','" + idRemito + "','" + producto.cantidad + "' )";
                            conexion.operaciones(productos);
                        }
                        //ACTUALIZAR CANTITAD RESTANTE REMITO DE PRODUCTO OC
                        int idOrden = (int)newW.cmbOrden.SelectedValue;
                        foreach (var producto in newW.Productos)
                        {
                            String sql = "UPDATE productos_has_ordencompra SET CrRemito = '" + producto.cantidad + "' where FK_idProducto = '" + producto.id + "' and FK_idOC = '" + idOrden + "'";
                            conexion.operaciones(sql);
                        }
                        //RESTO CANTIDAD STOCK VIEJA
                        foreach (var producto in newW.ProdRemitoStock)
                        {
                            //MessageBox.Show("stock viejo :" + producto.cantidad);

                            String sql = "UPDATE productos SET stock = stock-'" + producto.cantidad + "' where idProductos = '" + producto.id + "' ";
                            conexion.operaciones(sql);
                        }
                        //SUMO CANTIDAD NUEVA STOCK EN PRODUCTO
                        foreach (var producto in newW.ProdRemito)
                        {
                            //MessageBox.Show("stock nuevo :" + producto.cantidad);
                            String sql = "UPDATE productos SET stock = stock+'" + producto.cantidad + "' where idProductos = '" + producto.id + "' ";
                            conexion.operaciones(sql);
                        }

                        loadLtsRemitos(index);
                    }
                }
                else
                {
                    MessageBox.Show("El remito no se puede modificar porque tiene notas de crédito", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            catch (NullReferenceException)
            {
                MessageBox.Show("Seleccione un remito a modificar", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }