سیستم مدیریت موجودی با استفاده از زبان برنامه‌نویسی C# و پایگاه‌داده MS Access، یک ابزار قدرتمند و در عین حال ساده است که برای کنترل، نظارت و مدیریت کالاها و مواد موجود در انبارها طراحی شده است. این سیستم، نقش حیاتی در کسب‌وکارهای مختلف ایفا می‌کند، به‌خصوص در شرکت‌هایی که نیازمند ردیابی سریع و دقیق موجودی‌های خود هستند. در این مقاله، قصد دارم به صورت جامع و کامل، نمونه سورس کد یک سیستم موجودی را با جزئیات کامل توضیح دهم، از ساختار پایه گرفته تا عملیات‌های مختلفی که می‌توان در آن پیاده‌سازی کرد.


در ابتدا، باید گفت که طراحی چنین سیستمی نیازمند درک عمیق از مفاهیم پایه‌ای برنامه‌نویسی و ساختار پایگاه‌داده است. در این نمونه، از زبان برنامه‌نویسی C# بهره گرفته شده است، زیرا این زبان قدرتمند و کاربردی در توسعه برنامه‌های دسکتاپ و وب است و به خوبی با پایگاه‌داده‌های مختلف مانند MS Access سازگار است. در کنار این، MS Access به عنوان یک پایگاه‌داده سبک و کم‌حجم، گزینه‌ای مناسب برای پروژه‌های کوچک و متوسط است که نیازمند مدیریت داده‌های ساده و سریع هستند.

ساختار پایگاه‌داده MS Access




در ابتدای کار، باید ساختار پایگاه‌داده را طراحی کنیم. معمولاً، در سیستم موجودی، جدول‌های اصلی شامل کالاها، انبارها، و تراکنش‌های مربوط به ورود و خروج کالاها هستند. فرض کنید جدول‌های زیر را تعریف کرده‌ایم:
- tblProducts: شامل اطلاعات کالاها، مانند شناسه کالا (ProductID)، نام کالا (ProductName)، دسته‌بندی، قیمت و موجودی فعلی.

- tblWarehouses: شامل اطلاعات انبارها، مثل شناسه انبار (WarehouseID)، نام انبار و مکان.

- tblTransactions: ثبت عملیات ورود و خروج کالا، شامل شناسه تراکنش (TransactionID)، نوع تراکنش (ورود یا خروج)، تاریخ، شناسه کالا و تعداد.
این ساختار، امکان پیگیری کامل هر کالا و هر عملیات را فراهم می‌کند و پایه‌ای مستحکم برای توسعه برنامه است.

برنامه‌نویسی با C#




در برنامه‌نویسی C#، برای ارتباط با پایگاه‌داده MS Access، از کلاس‌های مختلفی مانند `OleDbConnection`، `OleDbCommand` و `OleDbDataReader` بهره‌گیری می‌شود. این کلاس‌ها ساختار پایه برای اجرای دستورهای SQL و مدیریت داده‌ها هستند. در نمونه سورس کد، ابتدا اتصال به پایگاه‌داده برقرار می‌شود، سپس عملیات‌های مختلفی مانند افزودن کالا، ثبت تراکنش، و مشاهده موجودی‌ها پیاده‌سازی می‌شود.
در ادامه، چند نمونه عملیات مهم در این سیستم را شرح می‌دهیم:

۱. افزودن کالا جدید




برای افزودن یک کالا جدید، ابتدا باید اطلاعات مربوطه را از کاربر دریافت کنیم، سپس یک دستور SQL `INSERT` برای ثبت این داده‌ها در جدول `tblProducts` اجرا کنیم. به عنوان مثال، کد زیر این عملیات را انجام می‌دهد:
csharp  

string query = "INSERT INTO tblProducts (ProductName, Category, Price, Quantity) VALUES (@name, @category, @price, @quantity)";

using (OleDbCommand cmd = new OleDbCommand(query, connection))

{

cmd.Parameters.AddWithValue("@name", productName);

cmd.Parameters.AddWithValue("@category", category);

cmd.Parameters.AddWithValue("@price", price);

cmd.Parameters.AddWithValue("@quantity", quantity);

cmd.ExecuteNonQuery();

}


این کد، یک رکورد جدید در جدول کالاها ایجاد می‌کند. توجه داشته باشید که استفاده از پارامترهای `@name`، `@category` و غیره، به جلوگیری از حملات SQL Injection کمک می‌کند و امنیت برنامه را افزایش می‌دهد.

۲. ثبت عملیات ورود و خروج کالا




برای ثبت عملیات، باید نوع تراکنش (ورود یا خروج)، تعداد، و تاریخ آن را مشخص کنیم. فرض کنید کا... ← ادامه مطلب در magicfile.ir