تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] كيفية التعامل مع عدة قواعد بيانات
#1
كيف اجعل البرنامج يتعامل مع عدة قواعد بيانات حيث كل قاعدة بيانات تمثل شركة
بحيث يكون هناك فورم في البرنامج استطيع من خلاله عمل فصل لقاعدة بيانات وربط مع قاعدة بيانات اخرى للخروج من حسابات شركة والدخول على حسابات الشركة الثانية
سورس كود برنامج مبيعات
الرد
تم الشكر بواسطة:
#2
السلام عليكم
مجرد اقتراح :
1- اجعل كود الاتصال بقاعدة البيانات بموديل مستقل واجعل اسم قاعدة البيانات بارمتر داخل هذا الموديل 
2- قم باستدعائه ومرر اليه اسم قاعدة البيانات التي تريد الاتصال بها 
ولكن هذا يتوقف علي كون الجداول بقواعد البيانات تحمل نفس الاسم بكل منها ونفس الأعمدة حتي لا تضطر الي تغير كل الأكواد المتعلقة بالاضافة والتعديل والحذف. مع كل عملية اتصال بقاعدة بيانات مختلفة.

الاقتراح الثاني:
لماذا لا تفكر في ضم البيانات الموجودة بكل القواعد لقاعدة بيانات واحدة وتجعل وتجعل المستخدم يري البيانات الخاصة بشركته فقط من خلال كود الشركة الذي تربطه ببيانات المستخدم بجدول المستخدمين.
وهذا سيوفر عناء التخزين لقواعد بيانات كثيرة والاتصال و اخذ نسخ احتياطية مختلفة وو ...

تمنياتي بالتوفيق
الرد
#3
وعليكم السلام
شكراا على ردك
سورس كود برنامج مبيعات
الرد
تم الشكر بواسطة:
#4
ارجو أن أكون أفدتك 
أما عن المقترح الأول فهذا كود للتجربة
الشروط: أن تكون قواعد البيانات بمجلد واحد بجوار البرنامج (يمكنك التعديل علي الكود لتجاوز هذا الشرط بالكيفية التي تريد)
PHP كود :
public sub conns (dbName as stringdbPass as string)
 
   Dim ConStr As String = ("Provider=Microsoft.ACE.OLEDB.12.0;data source=" Application.StartupPath "\" & dbName & ";user id=admin;jet oledb:database password=" & dbpass)
 Dim Conn As New OleDbConnection(ConStr)
End sub 
ملاحظة: لم أجرب الكود - أرجو الافادة ان كان هناك خطأ ما!
تمنياتي بالتوفيق
الرد
#5
اشكرك على ردك
في الحقيقة انا لم اجرب المقترح الاول اما الثاني فهو مختلف عن طلبي
ما فعلناه انا قمنا باضافة اكواد وداتا جريد فيو ومجموعة ادوات ازرار وتيكست بوكس وهذا
يكتب الزبون اسم قاعادة البيانات الجديدة ويكتب اسم الشركة الجديد التي يريد التعامل معها فيقوم فيجوال بيسك بانشاء قاعدة البيانات ويقوم بتخزين اسم قاعدة البيانات واسم الشركة وجملة الاتصال بقاعدة البيانات في جدول معين خارجي
وفي الداتا جريد فيو يظهر جميع اسماء الشركات وبجانب كل شركة اسم قاعدة البينات وعند النقر المزدوج على اسم اي شركة يقوم البرنامج بفصل الاتصال بقاعدة البيانات الحالة والربط مع قاعدة البينات الجديدة الموافقة لاسم الشركة
حتى الان الامور طيبة
ولكن المشكلة انه عند انشاء قاعدة بينات باسم محدد ينجح الامر اما عند جلب البيانات من ملف سكربت موجود مسبقا يفشل بسبب تضارب الاسم
والسؤال عند انشاء ملف سكربت لقاعدة بيانات كيف احذف اسم قاعدة البيانات من داخلة بحيث اعند استيراد البيانات التي فيه لا يتم استيراد اسم قاعدة البيانات
سورس كود برنامج مبيعات
الرد
#6
مافهمته من سؤال حضرتك أولا أن قواعد البيانات موجودة بالفعل ثم تريد التبديل بين الاتصال بأحدها 
أما الآن فصار الأمر أنه يتم انشاء القاعدة جديدة حسب رغبة العميل 
إقتباس :فيقوم فيجوال بيسك بانشاء قاعدة البيانات ويقوم بتخزين اسم قاعدة البيانات واسم الشركة وجملة الاتصال بقاعدة البيانات في جدول معين خارجي
ولكن السؤال ما الفائدة من انشاء قاعدة بيانات جيدة بكل مرة؟!! فإن الأصل بقواعد البيانات أن تكون ثابتة تتجدد بها اضافة البيانات لتحتفظ بالبيانات لفترات طويلة 
- أما ان كنت تعني أنه يتم انشاء قاعدة بيانات لأول مرة برمجيا من خلال الاسكربت المعد مسبقا لتبقي بعد علي السرفر ليتصل بها باقي الأفرع - فربما هذا أقرب للفهم 
أما عن طريقة تغير اسم قاعدة البيانات داخل الاسكربت الخاص بانشاء قاعدة البيانات فهذا سيحتاج الي ان يكون يخذن الاسكربت بمتغير نصي يتم التحكم فيه من خلال الكود لتغير اسم قاعدة البيانات وفقا لادخال المستخدم لها 
أو يخزن الاسكربت بملف نصي txt  يتم قراءته من خلال الكود وتغير اسم قاعدة البيانات كذلك برمجيا اليه ثم تمريره الي الsql server 

اليك هذا الرابط لمزيد من الاستفادة فكان النقاش به علي مضمون سؤالك
http://vb4arb.com/vb/showthread.php?tid=26302&page=2

تمنايتي بالتوفيق
الرد
#7
أبو عبد الله الحلواني اشكرك كثيرا على اهتمامك
بالحقيقة لدينا بالفعل برنامج حسابات كامل قمنا بتصميمه انا وشركائي وقد نال رضا العملاء وبالطبع عند التشغيل الاول يعمل اتاش لقاعدة البيانات المرفقة معه
ولكن انا اقوم بالتعديل والتحديث له باستمرار وفق ما يطلب مني
الان مطلوب مني اضافة بعض ميزات منها ان يكون البرنامج قادر على التعامل مع عدة قواعد بيانات بحيث يعمل المحاسب عند محلين تجاريين ويجري الحسابات على نفس البرنامج لكلا المحلين
منذ ساعات قليلة تم المطلوب ولكن مع بعض المشاكل التي دائما ما تواجهني عندما اتعامل مع ملفات سكربت بينما لا تواجهي عند التعامل مع ملفات من نوع mdf و ldf
المشكلة انه عند حذف قاعدة البيانات ( على فرض ان كمبيوتر العميل تم عمل فورمات له مثلا) لا يمكن استرجاع النسخة الاحتياطية من نوع bak حتى لو قمنا بعمل قاعدة بيانات بنفس الاسم ** تظهر رسالة مفادها ان هذه النسخة الاحتياطية غير مناسبة لقاعدة البيانات**
بينما لا تواجهني هذه المشكلة بالتعامل مع ملفات mdf و ldf فلذلك ساجرب تطبيق نفس الاكواد معها


اشكرك مجددا على اهتمامك وردودك
اعرف ان الموضوع انحرف عن مساره وذلك بسبب التغيرات السريعة ... ارجو ان تسامحوني..
سورس كود برنامج مبيعات
الرد


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] كيفية جلب مدة تشغيل عدة ملفات صوتية قبل تشغيلها asmarsou 3 311 منذ 4 ساعة مضت
آخر رد: alfaiz678
  كيفية اضافة فيديو لمشروع ابو نور الهدى 3 67 , 02:44 AM
آخر رد: أسعد
  البحث في بيانات الجريد عن نص مكتوب في RichTextBox aftfm 5 134 09-04-21, 08:07 PM
آخر رد: messry
  [سؤال] كيفية تغير الكلام في البوتون عند الضغط bilqees36 2 108 08-04-21, 05:02 PM
آخر رد: bilqees36
  كيفية وضع تقارير فرعية داخل التقرير الأساسي كريستال ريبورت saud4001 0 128 26-03-21, 07:31 AM
آخر رد: saud4001
Rainbow [سؤال] سؤال عن طريقة توصيل كامبرا الموبايل بقاعدة بيانات خالد دياب 0 160 25-03-21, 07:13 PM
آخر رد: خالد دياب
  [سؤال] كيفية تصدير اعمدة محددة من الداتا قريد الي الاكسل عبدالكريم برشدان 2 184 20-03-21, 09:48 PM
آخر رد: عبدالكريم برشدان
  [سؤال] سؤال كيفية عمل طرق الدفع عن طريق الفيز ا عاصم النجار 0 137 15-03-21, 06:52 AM
آخر رد: عاصم النجار
  [سؤال] ممكن فكرة حفظ عدد غير معلوم من الصور بقاعدة بيانات سيكوال ahmedramzyaish 1 274 12-03-21, 09:34 PM
آخر رد: محمد فوزى محمد
  كيفية إضافة لوجو الي كريستال ريبورت Lathe1 2 242 02-03-21, 01:24 AM
آخر رد: Lathe1

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم