private void btnAgregar_Click(object sender, RoutedEventArgs e) { var newW = new windowAgregarRemito(1); newW.ShowDialog(); if (newW.DialogResult == true) { //DATOS REMITO. int numeroRemito = int.Parse(newW.txtNroRemito.Text); DateTime fecha = newW.dtRemito.SelectedDate.Value.Date; int idOC = (int)newW.cmbOrden.SelectedValue; string consulta = "insert into remitosalidas( numeroRemito, fecha, FK_idOrdenCompra) 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_remitossalida(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_ordencomprasalida SET CrRemito = '" + producto.cantidad + "' where FK_idProducto = '" + producto.id + "' and FK_idOrdenCompra = '" + 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 + "', ums = '" + DateTime.Now.ToString("yyyy/MM/dd") + "' where idProductos = '" + producto.id + "' "; conexion.operaciones(sql); } LoadListaComboProveedor(); seleccioneParaFiltrar(); loadLtsRemitos(); ltsremitos.Items.MoveCurrentToLast(); MessageBox.Show("Se agregó correctamente el Remito", "Información", MessageBoxButton.OK, MessageBoxImage.Information); } }
private void btnAceptar_Click(object sender, RoutedEventArgs e) { var newW = new windowAgregarRemito(); newW.ShowDialog(); }
private void btnModificar_Copy_Click(object sender, RoutedEventArgs e) { int tipocliente; 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(); DataTable idprov; int OC; int index; if (RbInterno.IsChecked == true) { string consulta = "select t2.FK_idClientemi from ordencomprasalida t2 where idOrdenCompra = @valor"; int.TryParse(txtOC.Text.ToString(), out OC); idprov = conexion.ConsultaParametrizada(consulta, OC); index = ltsremitos.SelectedIndex; tipocliente = 1; } else { string consulta = "select t2.FK_idClienteme from ordencomprasalida t2 where idOrdenCompra = @valor"; int.TryParse(txtOC.Text.ToString(), out OC); idprov = conexion.ConsultaParametrizada(consulta, OC); index = ltsremitos.SelectedIndex; tipocliente = 2; } var newW = new windowAgregarRemito((int)idprov.Rows[0].ItemArray[0], OC, productosparametro, fecha, numeroR, (int)ltsremitos.SelectedValue, tipocliente); newW.ShowDialog(); if (newW.DialogResult == true) { //DATOS REMITO. int numeroRemito = int.Parse(newW.txtNroRemito.Text); DateTime fecha = newW.dtRemito.SelectedDate.Value.Date; int idOC = (int)newW.cmbOrden.SelectedValue; int idRemito = newW.idRemito; string consultasql = "UPDATE remitosalidas SET numeroRemito = '" + numeroRemito + "', fecha ='" + fecha.ToString("yyyy/MM/dd") + "', FK_idOrdenCompra ='" + idOC + "' where idremitos ='" + idRemito + "' "; conexion.operaciones(consultasql); //ELIMINAR PRODUCTOS String sqlElim = "delete from productos_has_remitossalida 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_remitossalida(cantidad, FK_idProducto, FK_idRemito) values( '" + producto.cantidad + "', '" + producto.id + "','" + idRemito + "' )"; 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_ordencomprasalida SET CrRemito = '" + producto.cantidad + "' where FK_idProducto = '" + producto.id + "' and FK_idOrdenCompra = '" + 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); MessageBox.Show("Se modificó correctamente el Remito", "Información", MessageBoxButton.OK, MessageBoxImage.Information); } } 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"); } }