الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

توزيع قاعدة بيانات فوكس برو على شبكة حسابات

بدأه moh_ali_abd في 30 نوفمبر 2008 · 13 رد · 5,077 مشاهدة · في قواعد بيانات Visual FoxPro
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اولا انا لست ملم بالفوكس برو واعرف القليل عنه لكن ارجو مساعدتكم فلدي قاعدة بيانات طبعا بالاضافة الى واجهة للمستخدم معمولة بالفيجوال فوكس برو واريد ان اضع قاعدة البيانات في حاسبة مركزية واربط معها بقية الحاسبات الموجودة في الشبكة اي انه لدي شبكة محلية متكونه من 11 حسابة واريد ان اجعل قاعدة البيانات في حاسبة واحده فقط ويمكن العمل على هذه القاعدة من بقية الحاسبات من تعديل او اضافة قيود او طبع التقارير شكرا واسف اذا كان كلامي غير مفهوم

#2

21 مشاهدة ولا يوجد ولا رد واحد

#3

السلام عليكــم ورحمـة الله وبركاتــه

اخى العزيز

تستطيع دائما استخدام الامر Set Path

فمن خلاله تقوم بتحديد موقع الجدول او قاعدة البيانات المراد استخدامها

Set Path To c:\MyFolder\MyData

اما بالنسبة لوجود قاعدة البيانات على جهاز آخر فبامكانك عمل Map Network Drive

او تستطيع استخدام ال IP Address الخاص بالجهاز الذي سيحتوي على قاعدة البيانات وعلى سبيل المثال

 set path to  \\ 192 . 168 . 1 . 5 \ MyFolder\MyDataBase

طبعا ويبقى الجواب لديك : هل تم تنفيذ البرنامج اساسا ليعمل في بيئة متعددة المستخدمين؟؟؟

تم تعديل هذه المشاركة بواسطة a.jallad في 2 ديسمبر 2008 في 03:52

أستغفر الله العظيم و أتوب إليه

#4

السلام عليكــم ورحمـة الله وبركاتــه ،،

بســم الله الـرحمــن الرحيــم

موضوع جدير بالاهتمام

هل يمكن لكل المستخدمين ان يدخلو الى الجدول نفسه في نفس الوقت؟؟؟؟؟؟؟؟؟؟

افيدونا في هذه النقطة وشكرا

<<--DON CORLEONNE-->>

#5

السلام عليكــم ورحمـة الله وبركاتــه ،،

نعم يمكن لعدد غير محدد من المستخدمين استخدام نفس الجدول في نفس الوقت

والاوامر التالية هي الاساس في تكوين بيئة عمل متعددة مستخدمين بسيطة

Set exclusive off
Open DataBase MyDataBase Shared
use MyTable Shared
Set refresh to .1
Lock + UnLock + RLock

جرب فتح برنامج الفوكس برو أكثر من مرة من خلال نفس الجهاز، وجرب فتح نفس الجدول في كل مرة فسترى امكانية استخدام الجدول بدون أية مشاكل

وطبعا يتبقى عمل الية Lock للجداول او لسجل معين عند عملية اضافة / تعديل / حذف البيانات

والموضوع يتشعب ويطول شرحه أكثر من هذا

أستغفر الله العظيم و أتوب إليه

#6

السلام عليكــم ورحمـة الله وبركاتــه ،،

كيف استطيع عمل list لاسماء الاصناف و list لاسماء العملاء ثم يتم ارسال البيانات بعد الانتهاء الى ملف الفواتير

افادكم الله

#7

السلام عليكــم ورحمـة الله وبركاتــه ،،

أخي الكريم،،

قبل الخوض في آلية تخزين أصناف الفاتورة وأسماء العملاء لملف الفواتير سواء أكان مصدرها Listbox أو ComboBox أو أي كان

يجب مراعاة الامور التالية من ناحية توزيع الجداول ( فمن وجهة نظري ) فعليك لتنظيم الفاتورة استخدام جدولين على الاقل هما جدول الترويسة وجدول التفاصيل

فبجدول الترويسة نقوم بتخزين البيانات الغير متكررة للفاتورة مثل رقمها وتاريخها ورقم العميل ورقم البائع...وأي بيانات أخرى حسب الوضع

أما بجدول التفاصيل فنقوم بتخزين رقم الفاتورة ( وطبعا سيكون نفس رقمها في الترويسة ليشكل الرابط بين الجدولين )، رقم الصنف و قيمته والكمية الواردة أو الصادرة...واي تفاصيل أخرى

وبطبيعة الحال لابد من وجود جدول للعملاء وآخر للأصناف

بعد تنظيم الجداول، سيتم تخزين رقم العميل ( في جدول الترويسة ) ورقم الصنف ( في جدول التفاصيل )، دون أن نقوم بتخزين اسم العميل او وصف الصنف،

والفائدة من ذلك عدم تخزين أسماء العملاء ووصف الاصناف أكثر من مرة واحدة وذلك لتفادي تضخيم حجم الجداول بلا فائدة...هذا من ناحية، ومن ناحية اخرى

فعند الاعتماد على الرقم في حفظ البيانات سيكون بامكانك تعديل الاسماء أو الاصناف لمرة واحدة فقط من بطاقة العميل أو الصنف لينعكس بشكل مباشر على كل السجلات المخزنة

وأما فيما يتعلق باظهار اسم العميل أو وصف الاصناف على الفاتورة فقد يتم ذلك بواسطة استعلام بسيط

واليك هذا المثال ( طبعا وضعت الفكرة بشكل بسيط والباقي عليك )

Lst.rar

مع التحية

ملاحظة: حاول عند طرح استفسار فتح موضوع جديد خاص به ان لم تجد موضوعا مرتبطا به، وذلك لتعم الفائدة

أستغفر الله العظيم و أتوب إليه

#8

السلام عليكــم ورحمـة الله وبركاتــه ،،

اشكرك من كل قلبى على سرعة الاستجابة

نفرض ان عندى ملف لاسماء العملاء

وملف لاسماء الاصناف

وملف للفواتير

عملية انتقال البيانات من اسم العميل وكل صنف على الشاشة بنفس الطريقة اللى انت عملتها فى المثال كيف تتم؟

شكراً لك اخي الكريم

hema.rar

#9

اخي الكريم

العملية بسيطة وكانت في المثال على النحو التالي:

بمجرد الضغط مرتين على الماوس يتم اضافة رقم الصنف الذي تم اختياره لجدول الفاتورة ثم يتم عمل تحديث للـ Grid

وبذلك يظهر الصنف الجديد في الفاتورة

وكل هذا يتم بشكل بسيط بواسطة Sql Insert

local lnItemID
lnItemID=Items.itemid
insert into InvDetails (itemid) values (lnItemID)
thisform.grid1.refresh

اتمنى ان تكون الصورة واضحة....وان ترفق جدول الـ Stock الذي تستخدمه مع المثال حتى أتمكن من مساعدتك أكثر

مع التحية

أستغفر الله العظيم و أتوب إليه

#10

السلام عليكــم ورحمـة الله وبركاتــه ،،

السيد الاخ العزيز

اولا اشكرك جدا على روحك الجميلة فى مساعدة الراغبين فى العلم

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

بالتالى الملف المطلوب

واكرر شكرى لك

شكراً لك اخي الكريم

Stock.rar

#11

السلام عليكــم ورحمـة الله وبركاتــه ،،

اخي الكريم

حاول التركيز على فكرة الاستغناء عن المتغيرات التي تعودنا عليها في الـ FoxPro قبل الـ Visual... وكذلك عن تعريفات الـ Public ، فبدلا من تخزين قيمة الاسم مثلا في المتغير m.Name

فلك التعامل مع قيمته الموجودة اساسا في الـ Grid، أو في الجدول مباشرة، أو أي عنصر آخر قد يحمل نفس القيمة مثل TextBox أو List ...

اليك المثال بعد التعدبل، والتالي أهم ما غيرت فيه :

  • - تم الاستغناء عن المتغيرات .m وأخواتها
    - تم تعديل كل من عملية الاضافة والتعديل ليصبح التعامل مع نفس الجداول بدلا من المتغيرات، فلماذا نخزن القيمة في متغير ثم نعيد تخزين قيمة هذا المتغير في جدول الفواتير، يعني من جدول لجدول وانتهى الموضوع
    - تم تغيير خاصية الـ AllowCellSelection لكل من Grid1 و Grid2 لتصبح .F. وذلك حتى يتم اختيار السجل كاملا في كل منهما بدل من اختيار خانة معينة
    - عمل تحديث لـ Grid3 بعد كل عملية اضافة أو تعديل
    - تعديل طريقة احتساب المجموع عند تغيير السعر أو العدد

مع التحية

hema.rar

أستغفر الله العظيم و أتوب إليه

#12

السلام عليكــم ورحمـة الله وبركاتــه ،،

الاخ العزيز Shadowz

سبق ان ذكرت لك اننى اتعامل مع برامج الفوكس بعقلية واوامر الفوكس برو 2.6 ومرسل لكم مثال عن طريقة تعاملى مع الاوامر الداخلية بنفس العقلية والاسلوب واننى اجد اننى فى حاجة الى مرجع لتطوير حزمة الاوامر التى تقابل تلك الاوامر الموجودة بذهنى وتستطيع من النموذج المرفق معرفة طريقة حلى لمثل هذه الامور

اشكرك جدا

iswaha.rar

#13

السلام عليكــم ورحمـة الله وبركاتــه ،،

الان انت عرفت المشكلة عندى وطريقة التصرف والمطلوب فعلا لمثل الحالة يتاعتى ان يكون لدى مرجع بحيث ان استبدل كل اللى عندى بالامكانات الحديثه

اشكرك من كل قلبى ويشرفنى تواصلك

م علاء قاسم

alaaqasem@yahoo.com

#14

اهلا وسهلا بك اخي علاء، ولي الشرف

أستغفر الله العظيم و أتوب إليه

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…