private void BtnCrearFactura_Click(object sender, EventArgs e) { try { Constructor_Facturacion fact = new Constructor_Facturacion(); fact.id_usuario = Convert.ToInt16(txtIdusuario.Text); DateTime now = DateTime.Today; fact.fecha_factura = now.ToString("yyyy-MM-dd"); fact.id_estado = 1; int resultado = ControlFacturacion.Crear_Factura(fact); if (resultado >= 1) { txtIdFactura.Text = fact.id_factura.ToString(); BtnCrearFactura.Enabled = false; txtCodigoProducto.Enabled = true; BtnAnularFactura.Enabled = true; } else { DeshabilitarBotones(); } } catch (Exception) { throw; } }
public static int Crear_Factura(Constructor_Facturacion fa) { int retorno = 0; try { MySqlCommand cmdinsert = new MySqlCommand(string.Format("INSERT INTO tbfactura (id_usuario,fecha_factura,id_estado) VALUES ('" + fa.id_usuario + "','" + fa.fecha_factura + "','" + fa.id_estado + "')"), Conexion_Config.ObtenerConexion()); retorno = Convert.ToInt16(cmdinsert.ExecuteNonQuery()); if (retorno < 1) { MessageBox.Show("La factura no pudo ser creada.", "Error de facturación", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { string query = "SELECT MAX(id_factura) FROM tbfactura WHERE id_usuario = ?param1 AND fecha_factura = ?param2"; MySqlCommand cmdselect = new MySqlCommand(query, Conexion_Config.ObtenerConexion()); cmdselect.Parameters.Add(new MySqlParameter("param1", fa.id_usuario)); cmdselect.Parameters.Add(new MySqlParameter("param2", fa.fecha_factura)); MySqlDataReader reader = cmdselect.ExecuteReader(); while (reader.Read()) { fa.id_factura = reader.GetInt16(0); } } return(retorno); } catch (Exception) { MessageBox.Show("Oops!, ocurrio un error al generar la factura, consulte con el administrador. ", "Error de conexión", MessageBoxButtons.OK, MessageBoxIcon.Error); return(retorno); } }
void Calcular_Pago() { ControlFacturacion.Calcular_Pago(Convert.ToInt16(txtIdFactura.Text)); Constructor_Facturacion pago = new Constructor_Facturacion(); //Se coloca la N para permitir unicamente dos decimales. txtPago.Text = Constructor_Facturacion.total_pago.ToString("N"); txtpagoparcial.Text = Constructor_Facturacion.total_pago.ToString("N"); }