24-11-2008, 05:47 PM
عند العمل على الشبكة هناك خيارات البروتوكولات التالية tcp/ip netbeui spx فهل هناك فرق في استخدام كل برتوكول اي هل يستخدم الاول مثل في حالات معينة مثل عدد مستخدمين معين او مسافات معينة والاخر لحالات اخرى ام ان الامر يعود لتفضيل المستخدم وفي حالى لم انجح في العمل على برتوكول tcp/ip حيث يتاخر كثير في محاولة تسجيل سيرفر وعند تسجيله لايمكن فتح قاعدة البيانات حيث تحدث مشكلة في كلمة السر لااذكر الرسالة بالضبط ونجحت مع بروتوكول netbeui
ثانيا حدث لي المشكلة التالية وهي ظهور الرسالة
update conflicts with concurrent update
وقد حللتها بازالة الكود التالي من الحدث onactivate بالنسبة للفورم الرئيسي
ثالثا وبما ان البرنامج عبارة عن برنامج مبيعات اي يقوم بعمل فواتير بيع وعندما يكون البرنامجين على كلا الجهازين يعملان وبتجربة عملية في الشاشة على الجهاز الاول رقم الفاتورة الحالية هو 70 وقمت بملء بيانات الفاتورة وترحيلها وتغير الرقم امامي الى الرقم 71 وطبعا لم يتغير الرقم في الجهاز رقم 2 وقمت بملء الفاتورة في الجهاز رقم 2 وعند الترحيل تصدر رسالة الخطا والتى سببها ان الرقم موجود والحقل مفتاح وحاولت ان اتغلب على المشكلة بان وضعت كود قبل عملية ترحيل البيانات يقوم بالبحث عن اكبر قيمة للرقم max"invoiceno" واضافة 1 الى القيمة فلم تنجح ان ان عملية البحث لم تر الفاتورة التى ادخلها الجهاز الاول فما هو المتبع لحل هذه المشكلة
واخير في رد الاخ عبدالعزير على سؤال سابق لي عن استخدام الانتربيز عبر الشبكة
ولم افهم استخدام اتصال واحد في البرنامج فانا استخدم مكون قاعدة واحد في كل البرنامج على الفورم الرئيسي
واخير مبروك عودة المنتدى
ثانيا حدث لي المشكلة التالية وهي ظهور الرسالة
update conflicts with concurrent update
وقد حللتها بازالة الكود التالي من الحدث onactivate بالنسبة للفورم الرئيسي
PHP كود :
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 تختفي
ايضا حاول استخدام اتصال واحد في البرنامج
ولم افهم استخدام اتصال واحد في البرنامج فانا استخدم مكون قاعدة واحد في كل البرنامج على الفورم الرئيسي
واخير مبروك عودة المنتدى

