المشروع ده عبارة عن **نظام إدارة حسابات بنكية (Banking System Desktop Application)** معمول باستخدام:
**C# (Windows Forms)**
**SQL Server Database**
وبيهدف لإدارة عمليات العملاء البنكية بشكل بسيط وسريع من خلال واجهة رسومية.
---
## فكرة المشروع
تطبيق سطح مكتب (Desktop Application) بيتيح إدارة حسابات العملاء وتنفيذ العمليات الأساسية زي:
* إضافة عميل جديد
* عرض بيانات العملاء
* إيداع وسحب
* البحث عن حساب
* حذف حساب
---
## التقنيات المستخدمة
## C#
تم استخدام لغة **C#** لبناء منطق البرنامج (Business Logic) وربط الواجهة بقاعدة البيانات.
## Windows Forms
تم تصميم الواجهة باستخدام **Windows Forms** لإنشاء:
* Buttons (Show – Add – Deposit – Withdraw – Search – Delete)
* TextBoxes لإدخال البيانات
* DateTimePicker للتاريخ
* PictureBox كخلفية تصميم
## SQL Server
تم استخدام **Microsoft SQL Server** لتخزين:
* بيانات العملاء
* رقم الحساب
* الرصيد
* العمليات
* التاريخ
---
## مكونات الواجهة
## الأزرار:
* **Show** → عرض جميع العملاء
* **Add** → إضافة عميل جديد
* **Deposit** → إيداع مبلغ
* **Withdraw** → سحب مبلغ
* **Search** → البحث عن عميل باستخدام رقم الحساب
* **Delete** → حذف حساب
---
## الحقول:
* Full Name → اسم العميل
* Client Acc ID → رقم الحساب
* Deposit / Withdraw → قيمة العملية
* Balance → الرصيد
* Date Time → تاريخ العملية
---
## آلية العمل (Workflow)
1. المستخدم يدخل البيانات في TextBoxes.
2. عند الضغط على زر (مثلاً Deposit):
* يتم تنفيذ Query في SQL لتحديث الرصيد.
* يتم التحقق من الرصيد قبل السحب.
3. يتم عرض النتائج أو رسالة نجاح / خطأ.
---
## المفاهيم البرمجية المستخدمة
* ADO.NET للاتصال بقاعدة البيانات
* SQL Queries (INSERT – UPDATE – DELETE – SELECT)
* Event Handling في C#
* Validation للتحقق من صحة الإدخال
* Layered Architecture (لو مطبق فصل بين UI و Database)
---
## الهدف من المشروع
* تطبيق عملي على ربط C# بـ SQL Server
* فهم CRUD Operations
* التعامل مع قواعد البيانات في تطبيقات سطح المكتب
* محاكاة نظام بنكي مصغر
---