Tutorial sistema de ventas con Python Tkinter - Parte #8
HTML-код
- Опубликовано: 9 сен 2024
- 🌎Si deseas apoyar el canal puedes hacer tus donaciones regalandome un café en el siguiente link buymeacoffee.c..., no olvides dejar tu like, compartir y suscribirte al canal!
✅Si deseas adquirir el codigo fuente realiza tu compra en el siguiente enlace, tiene un costo de $5 USD! buymeacoffee.c...
🔴Hola a todos! en este video continuamos con la creación de una aplicación de escritorio de un sistema de ventas con inventario basico desde cero, utilizaremos el lenguaje de programación Python con su librería por defecto Tkinter y base de datos SQlite3.
⬇️ Tambien puedes adquirir los siguientes codigos:
• Sistema punto de ventas: • Punto de venta | Pytho...
• Sistema de inventarios: • Sistema de inventarios...
• Sistema de farmacias: • Sistema de farmacias |...
🎓 Tambien puedes acceder al tutorial totalmente gratuito en donde aprenderas a realizar un sistema de ventas:
🎥 • Tutorial sistema de ve...
Muchas gracias profe, vamos al pie de la letra con todo, se merece miles de cosas buenas por brindarnos sus conocimientos!!
Gracias! Voy haciendo el video contigo, estaba esperando este video, eres muy bueno explicando 🤩
Muchas gracias por el apoyo! Que bueno que te gusten los videos! Saludos!
Menos mal, casi nadie lo hace en python eres grande.!
Muchas gracias por el apoyo! Se vienen mas proyectos próximamente!
Excelente!!
Al momento de generar la factura no se le podría colocar un botón que la genere a un PDF.?
Claro, se puede generar una función que exporte la factura en PDF con todos los datos de la venta, probablemente lo adiciones una vez termine el tutorial! Saludos!
@@kevinarboleda7597 Gracias!!
La esperamos.
una consulta dijiste que en el minuto 33.53 es sin decimales como lo hago para que sea con decimales
por favor me podrías ayudar
por favor te pido la ayuda por yo soy de
Perú y si usamos decimales
Hola Grone, para utilizar decimales reemplaza el .0f por .2f si en tu país utilizan 2 decimales, tendrás que revisar en toda la lógica del proyecto para implementarla, saludos!
@@kevinarboleda7597 gracias
Perfecto!!! Voy bien hasta ahora!!!
Ahora a esperar el siguiente video.
Una consulta... cuando sale un cartel ya sea cualquiera, como podes evitar que se mezclen las ventanas?
Por ejemplo: cuando le das a pagar la ventana del menu principal se posiciona adelante y ventas se va para atras, ocurre con cualquier tipo de mensaje ya sea de aviso o error
Hola Daniel, muchas gracias por la sugerencia, prueba agregar estas ultimas 4 lineas de codigo en el archivo container.py funcion show frames y me cuentas como te va!
def show_frames(self, container):
top_level = tk.Toplevel(self)
frame = container(top_level)
frame.config(bg="#C6D9E3")
frame.pack(fill="both", expand=True)
top_level.geometry("1100x650+120+20")
top_level.resizable(False, False)
top_level.transient(self.master)
top_level.grab_set()
top_level.focus_set()
top_level.lift()
@@kevinarboleda7597 Si muy bueno Gracias!
Se lo agregue a todas las ventanas.
Tambien le hice una logica de centrado automatico de ventanas!
window_width = 800
window_height = 500
screen_width = self.winfo_screenwidth()
screen_height = self.winfo_screenheight()
x = (screen_width - window_width) // 2
y = (screen_height - window_height) // 2
ventana_factura.geometry(f"{window_width}x{window_height}+{x}+{y}")
agregado a todas las ventanas tambien!
Ahora solo me queda limpiar la base por que me arrojaba un error en el numerador de factura y guarde varias facturas con el mismo numero de factura pero ya lo solucione 😄
gracias eres un crack una consulta como puedo hacer para se elimine todo el registro del programa de fracturas registradas y que empiece desde cero también prácticamente también el numero de boleta que se reinicie
Hola cesar buen día! gracias por tus comentarios, claro que puedes eliminar todos los registros de la base de datos, utiliza el programa DB Browser y abre la base de datos, ubica las tablas y desde ahi eliminar todos los registros que quieras, si vas a la tabla ventas y eliminas todos los registros las facturas iniciaran desde cero! saludos!
gracias por la respuesta yo me refería como hacerlo con un botón dentro del mismo programa
Buenos días!!
Una pregunta, estuve intentando colocar en la ventana ventas qué cuando seleccione un producto me aparezca la cantidad de productos que hay en el inventario, pero no me funcionó lo que hice.
Como lo podría hacer?
Gracias.
Hola Padilla, bueno en ese caso deberias modificar varias cosas, empezando por que debes crear un label para el stock, ejemplo:
self.label_stock = tk.Label(labelframe, text="Stock:", font="sans 14 bold", bg="#dddddd")
self.label_stock.place(x=400, y=70) no olvides cambiar la posición y si esta dentro de algun frame
def actualizar_stock(self, event=None):
producto_seleccionado = self.entry_nombre.get()
try:
conn = sqlite3.connect(self.db_name)
c = conn.cursor()
c.execute("SELECT stock FROM inventario WHERE nombre=?", (producto_seleccionado,))
stock = c.fetchone()[0]
conn.close()
self.label_stock.config(text=f"Stock: {stock}")
except sqlite3.Error as e:
print("Error al obtener el stock del producto:", e)
self.entry_nombre.bind("", self.actualizar_stock) # Llamar a actualizar_stock cuando se seleccione un producto
este podria ser un ejemplo de como adaptar la función al codigo, Saludos!
@@kevinarboleda7597 Muchas gracias amigo!
Lo realizare tal cual.
como se llama la extension?
Hola Geral buen día, podrias especificarme más a que extensión haces referencia?
@@kevinarboleda7597 profe la extension de sqlite3, ya que al buscarla no la encuentro en VS