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


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

- ID (شناسه یکتا، کلید اصلی)

- Name (نام کالا)

- Category (دسته‌بندی کالا)

- Price (قیمت واحد)

- Quantity (موجودی فعلی)
در کنار این جدول، ممکن است جداول مربوط به تراکنش‌ها مانند "ورود کالاها" و "خروج کالاها" نیز ایجاد شوند، اما در این نمونه، تمرکز بر روی مدیریت ساده موجودی است.
کدنویسی در زبان C#
در توسعه برنامه، از ویندوز فرم (Windows Forms) یا WPF استفاده می‌شود که رابط کاربری کاربر پسند و قابل فهمی را فراهم می‌کند. در این مثال، فرض بر این است که از ویندوز فرم بهره گرفته شده است.
در قسمت کد، ابتدا باید اتصال به پایگاه داده MS Access برقرار شود. برای این کار، از کلاس OleDbConnection استفاده می‌شود. نمونه کد برای اتصال به پایگاه داده به شکل زیر است:
csharp  

string connectionString = @"Provider=Microsoft.ACE.OLEDB.
  1. 0;Data Source=|DataDirectory|\InventoryDB.accdb;";

OleDbConnection connection = new OleDbConnection(connectionString);


پس از اتصال، عملیات‌های مختلف مانند افزودن، ویرایش، حذف و نمایش کالاها انجام می‌شود. برای مثال، در عملیات افزودن کالا، از دستور SQL INSERT INTO بهره برده می‌شود:
csharp  

string insertQuery = "INSERT INTO Products (Name, Category, Price, Quantity) VALUES (@Name, @Category, @Price, @Quantity)";

OleDbCommand cmd = new OleDbCommand(insertQuery, connection);

cmd.Parameters.AddWithValue("@Name", txtName.Text);

cmd.Paramete... ← ادامه مطلب در magicfile.ir