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

سؤال محير في السيريال

مغلق
بدأه اشرف في 30 نوفمبر 2002 · 9 رد · 808 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الاخوة الاعزاء

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

if not t.eof then

t.movelast

text1.text = t!srl +1

else

text1.text =1

end if

وفي الحقيقة هذا الطريقة تتم بنجاح حتي رقم معين وليكن 19 وبعدها كلما اضغط زر اضافة بدل ما يظهر رقم 20 يظهر رقم 19 مرة اخري وهكذا .....

ارجو من الاخوة ادراج مثال فيه السيريال حيث ان احد الاعضاء ذكر لي كود لم افهم منه اي شيئ وهو كالتالي:

لعمل serial

select max(fieldname) as dd from tabelname

وعند الاضافة

recordset!fieldname=dd!recordset

وبعد اضافة هذا الكود يظهر الجزء الاول بالكود باللون الاحمر

عموما ارجو المساعدة في عمل سيريال

وشكرا

#2

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

تحية طيبة و بعد

الأخ أشرف

يوجد لدي طريقة ممتازة لعمل السيرل ولكن قبل أن أشرحها أرجو منك أن تخبرني بماهية srl و ما نوع البيانات المخزنة به حتى تحصل على مثال يغطي طلبك تحديدا

و الله الموفق

#3

السلام عليكم .....

يمكنك عمل كونتر وطريقته

counter=counter+1

او اذ كنت تستخدم الاكسيس

يمكنك اختيار رقم وجعله اوتو ..... ازديلد

هذا اذا كنت تريد فقط سريال برقم اما اذا شيء ثاني خل طريقتك

ونحن ان شاء الله ان ساعدك

والله الموفق

#4

الاخوة الاعزاء

اولا اشكركم جدا علي سرعة الاستجابة

اما بالنسبة للسيريال فهو سيريال لرقم ايصال استلام بضاعة وارغب الا يكون للمستخدم اي تدخل فيه

وبالسبة لقاعدة البيانات فـ srl هو عبارة عن اسم الحقل (رقم ايصال الاستلام) ونوع البيانات (رقم)

ارجو الافادة السريعة

#5

الاخوة الاعزاء

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

عندما اعمل قيد يتكون من عدة سجلات فان الحقل الذي يحتوي علي رقم القيد يكون متشابة طالما لم نتحول من قيد الي القيد الذي يليه وعليه عندما نتحول الي قيد جديد ارغب من البرنامج قراءة حقل رقم القيد في اخر سجل ثم يضيف الي (1) وللتوضيح :

رقم القيد اسم الحساب المدين اسم الحساب الدائن المبلغ المدين المبلغ الدائن البيان

----- ----------- ---------- ------- ----- -------

1 اسم العميل الاول 0 100 0 الالالالالا

1 اسم العميل الثاني 0 200 0 الالالالالال

1 اسم العميل الثالث 0 300 0 الالالالالال

1 0 المبيعات 0 600 الالالالالال

2 الصندوق 0 500 0 الالالالالال

2 0 اسم العميل الاول 0 500 الالالالالا

وهكذا اريد البرنامج ان يقرا اخر رقم في القيد وليكن 2 ثم يكتب في التكست رقم 3 عن الضغط علي زر اضافة

وكما قلت في مشاركة سابقة ان طريقة text1.text = t!srl +1 لم تفلح حيث انه يصل الي رقم معين ثم يتكرر هذا الرقم كلما ضغطت زر اضافة

ارجو العون والمشورة

وشكرا

#6

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

عندما اعمل قيد يتكون من عدة سجلات فان الحقل الذي يحتوي علي رقم القيد يكون متشابة طالما لم نتحول من قيد الي القيد الذي يليه وعليه عندما نتحول الي قيد جديد ارغب من البرنامج قراءة حقل رقم القيد في اخر سجل ثم يضيف الي (1) وللتوضيح :

رقم القيد اسم الحساب المدين اسم الحساب الدائن المبلغ المدين المبلغ الدائن البيان

---------------------------------------------------- ----------- ---------- ------- ----- -------

1 ----------اسم العميل الاول---------0 ----- 100 -------0 ------ الالالالالا

1-----------اسم العميل الثاني------ 0 -----200 --------0 -------الالالالالال

1---------- اسم العميل الثالث------- 0 ----300 --------0 -------الالالالالال

1------------------ 0 ------------المبيعات ----0------- 600 ------الالالالالال

2 -------------الصندوق------------- 0 -------500 --------0 ------الالالالالال

2----------------- 0 --------اسم العميل الاول -0 -------500 -------الالالالالا

وهكذا اريد البرنامج ان يقرا اخر رقم في القيد وليكن 2 ثم يكتب في التكست رقم 3 عن الضغط علي زر اضافة

وكما قلت في مشاركة سابقة ان طريقة text1.text = t!srl +1 لم تفلح حيث انه يصل الي رقم معين ثم يتكرر هذا الرقم كلما ضغطت زر اضافة

ارجو العون والمشورة

وشكرا

#8

الاخ العزيز

هذا الكود كنت فعلا استخدمه ولكن كانت نفس المشكلة ويظهر هذا في اول مشاركة في هذا الموضوع

هل تعتقد ان المشكلة في قاعدة بيانات الاكسيس نفسه

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

ولك الشكر الجزيل

#9

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

الأخ العزيز أشرف

كل عام و أنت بخير

بنظري أن أفضل طريقة هي التي تكون من خلالها أنت سيد الموقف و هي تتلخص بتسجيل رقم السيريال - ابتداءا من صفر - في منطقة خارج الجدول - كأن تعمل جدول أو ملف تسجل به كل متغيرات و ثوابت الجداول الأخرى - و عند بدئ تشغيل النظام تحصل على آخر قيمة موجودة للسيريال و تضعها في متغير و تقوم بزيدتها بعد كل عملية إضافة و تخزين قيمتها في مكانها المخصص و هذا برأيي سيخلصك من العديد من المشاكل أو يمكنك استخدام Schema للحصول على مرادك عن طريق OpenSchema()

إن شاء الله تكون الصورة وضحت و لو احتاج الأمر لمثال فلا مانع

و الله الموفق

#10

الاخ العزيز pcbat

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

واشكر لك سعة صدرك

هذا الموضوع مغلق.

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