المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : اسئلة عن الانتربيز


معمر محسن
24-11-2008, 04:47 PM
عند العمل على الشبكة هناك خيارات البروتوكولات التالية tcp/ip netbeui spx فهل هناك فرق في استخدام كل برتوكول اي هل يستخدم الاول مثل في حالات معينة مثل عدد مستخدمين معين او مسافات معينة والاخر لحالات اخرى ام ان الامر يعود لتفضيل المستخدم وفي حالى لم انجح في العمل على برتوكول tcp/ip حيث يتاخر كثير في محاولة تسجيل سيرفر وعند تسجيله لايمكن فتح قاعدة البيانات حيث تحدث مشكلة في كلمة السر لااذكر الرسالة بالضبط ونجحت مع بروتوكول netbeui

ثانيا حدث لي المشكلة التالية وهي ظهور الرسالة
update conflicts with concurrent update
وقد حللتها بازالة الكود التالي من الحدث onactivate بالنسبة للفورم الرئيسي
IBTable1.Active:=true;
IBTable1.First;
while not IBTable1.Eof do
begin
if ibtable1['costprice']=0 then
begin
IBTable1.Edit;
IBTable1['costprice']:=IBTable1['soldprice']*100/110;

IBTable1.Post;
end;


ثالثا وبما ان البرنامج عبارة عن برنامج مبيعات اي يقوم بعمل فواتير بيع وعندما يكون البرنامجين على كلا الجهازين يعملان وبتجربة عملية في الشاشة على الجهاز الاول رقم الفاتورة الحالية هو 70 وقمت بملء بيانات الفاتورة وترحيلها وتغير الرقم امامي الى الرقم 71 وطبعا لم يتغير الرقم في الجهاز رقم 2 وقمت بملء الفاتورة في الجهاز رقم 2 وعند الترحيل تصدر رسالة الخطا والتى سببها ان الرقم موجود والحقل مفتاح وحاولت ان اتغلب على المشكلة بان وضعت كود قبل عملية ترحيل البيانات يقوم بالبحث عن اكبر قيمة للرقم max"invoiceno" واضافة 1 الى القيمة فلم تنجح ان ان عملية البحث لم تر الفاتورة التى ادخلها الجهاز الاول فما هو المتبع لحل هذه المشكلة

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

ايضا حاول استخدام اتصال واحد في البرنامج
فهمت من قطع الاتصال ان ان اغير خاصية connected لمكون قاعدة البيانات الى false ولكن هذا يجعل البيانات الموجودة في dbgrid تختفي

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

واخير مبروك عودة المنتدى

B.M.AbdelAziZ
24-11-2008, 07:15 PM
1-
Interbase يمكنه العمل على بروتوكولات TCP/IP, NetBEUI و IPX/SPX
من الاحسن ان تستخدم TCP/IP اسرع واحسن كما يمكنك استخدام NetBEUI ان كانت الشبكة صغيرة وقليلة الازدحام ان صح التعبير
2-
فلسفة التعامل مع قاعدة عبر شبكة تختف عن التعامل مع قاعدة بسطح المكتب حيث كثير من الاشياء التي ربما انت معتاد عليها تتغير
ملاحظة: حاول الاطلاع اكثر في هذا المجال و قراءة كتب
3-
استخدم Stored Procedures أو generator لتوليد رقم الفاتورة حتى يكون فريد ولا تحصل مشاكل، نفس ملاحظة النقطة 2
4-
نعم/ استخدام مكون واحد للقاعدة هو ماكنت اقصده باتصال واحد

والسلام عليكم