Python3
200 subscribers
100 photos
6 videos
26 files
518 links
🎓 آموزش و پروژه‌های Python
آموزش‌های کاربردی و پروژه‌های عملی Python برای همه سطوح. 🚀
Download Telegram
📦 پروژه انبارداری با پایتون، Tkinter و MySQL 🐍

در این آموزش یاد می‌گیریم که چگونه یک پروژه انبارداری ساده با استفاده از پایتون و کتابخانه‌های Tkinter و MySQL ایجاد کنیم. این پروژه شامل افزودن ورودی، خروجی، نمایش موجودی و گزارش‌گیری است. 💻🔒

۱. نصب کتابخانه‌های مورد نیاز 📦

ابتدا باید برخی کتابخانه‌ها را نصب کنیم. برای این کار از دستور زیر استفاده کنید:

pip install tkinter mysql-connector-python

۲. ایجاد و تنظیم دیتابیس MySQL 🗄️

ابتدا وارد MySQL شوید و دیتابیس و جدول مورد نیاز را ایجاد کنید:

CREATE DATABASE warehouse;
USE warehouse;

CREATE TABLE inventory (
id INT AUTO_INCREMENT PRIMARY KEY,
item_name VARCHAR(255) NOT NULL,
quantity INT NOT NULL,
date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

۳. کدنویسی برنامه اصلی 🌐

یک فایل پایتون جدید بسازید و کد زیر را داخل آن قرار دهید:

import tkinter as tk
from tkinter import messagebox
import mysql.connector

# اتصال به دیتابیس
conn = mysql.connector.connect(
host='localhost',
user='yourusername',
password='yourpassword',
database='warehouse'
)
cursor = conn.cursor()

# تابع افزودن موجودی
def add_item():
item_name = item_name_entry.get()
quantity = int(quantity_entry.get())

cursor.execute("INSERT INTO inventory (item_name, quantity) VALUES (%s, %s)", (item_name, quantity))
conn.commit()
messagebox.showinfo("موفقیت", "آیتم با موفقیت اضافه شد!")
item_name_entry.delete(0, tk.END)
quantity_entry.delete(0, tk.END)

# تابع حذف موجودی
def remove_item():
item_name = item_name_entry.get()
quantity = int(quantity_entry.get())

cursor.execute("UPDATE inventory SET quantity = quantity - %s WHERE item_name = %s", (quantity, item_name))
conn.commit()
messagebox.showinfo("موفقیت", "آیتم با موفقیت حذف شد!")
item_name_entry.delete(0, tk.END)
quantity_entry.delete(0, tk.END)

# تابع نمایش موجودی
def show_inventory():
cursor.execute("SELECT item_name, SUM(quantity) FROM inventory GROUP BY item_name")
records = cursor.fetchall()
inventory_window = tk.Toplevel(root)
inventory_window.title("موجودی انبار")

for idx, (item_name, quantity) in enumerate(records):
tk.Label(inventory_window, text=f"{item_name}: {quantity}").grid(row=idx, column=0)

# ایجاد رابط کاربری با Tkinter
root = tk.Tk()
root.title("سیستم انبارداری")

# منو
menu = tk.Menu(root)
root.config(menu=menu)
inventory_menu = tk.Menu(menu)
menu.add_cascade(label="موجودی", menu=inventory_menu)
inventory_menu.add_command(label="نمایش موجودی", command=show_inventory)

# برچسب‌ها و ورودی‌ها
tk.Label(root, text="نام آیتم").grid(row=0, column=0)
tk.Label(root, text="تعداد").grid(row=1, column=0)

item_name_entry = tk.Entry(root)
item_name_entry.grid(row=0, column=1)

quantity_entry = tk.Entry(root)
quantity_entry.grid(row=1, column=1)

# دکمه‌ها
tk.Button(root, text="افزودن", command=add_item).grid(row=2, column=0)
tk.Button(root, text="حذف", command=remove_item).grid(row=2, column=1)

root.mainloop()

# بستن اتصال به دیتابیس
conn.close()

۴. اجرای برنامه 🌍

برنامه را اجرا کنید:

python your_file_name.py

۵. نکات پایانی برای بهبود پروژه 📝

1. اعتبارسنجی ورودی‌ها: از اعتبارسنجی ورودی‌ها برای جلوگیری از وارد کردن داده‌های نادرست استفاده کنید.
2. بهبود رابط کاربری: رابط کاربری را با افزودن عناصر گرافیکی بیشتر بهبود دهید.
3. گزارش‌گیری پیشرفته: گزارش‌های پیشرفته‌تری با فیلترها و نمودارها ایجاد کنید.



با استفاده از این پروژه ساده می‌توانید یک سیستم انبارداری ساده با استفاده از پایتون، Tkinter و MySQL ایجاد کنید و امنیت کاربران خود را افزایش دهید. موفق باشید! 🌟

🔗https://t.iss.one/hamidpython123


#انبارداری #پایتون #Tkinter #MySQL #برنامه‌نویسی #آموزش
🔥2👍1