![]() |
|
كيف برمجة "ترقسم تلقائي" في الدلفي - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : كيف برمجة "ترقسم تلقائي" في الدلفي (/showthread.php?tid=4956) الصفحات:
1
2
|
كيف برمجة "ترقسم تلقائي" في الدلفي - youcefcripcho - 28-02-2013 السلام عليكم ![]() اقوم ببرمجة برنامج بسيط بواسطة دلفي لعميلة تسجيل مترشحين السؤال هو كيفية تخزين رقم التسجيل بطريقة اوتوماتيكية بحيث تكون تركيبة الرقم بهذا الشكل As130000 بحيث الارقام الاربعة على اليسار موجودة دائما التغيير يكون في اربع ارقام على اليمين فقط مثلا لما اضغط على زر تسجيل يسجل مترشح واحد رقمهAs130001 ولا يجب تكرار الرقم نفسه ، الرقم الثاني سيكون As130002 وهكذا كيف برمجة "ترقسم تلقائي" في الدلفي - M_Mori2010 - 01-03-2013 أخي الكريم لدي طريقة لك قد تعجبك لكن السؤال اين ستقوم بحفظ الملفات ؟ ثانياً كود : PHP كود : Var Fi : String;حيث ان SS // رقم السجل Edit1 // اخر رقم وصلنا اليه اذا كان عملك جدول Listview او جدول من قاعدة بيانات فقم بعمل معرفة العدد واختر الحقل المطلوب وضعه مكان Edit وستكون النتيجة واحدة كيف برمجة "ترقسم تلقائي" في الدلفي - youcefcripcho - 01-03-2013 حلك صحيح لكن هذه الطريقة هنا يجب على المستعمل ان يدخل الرقم وانا لاارغب بذلك ارغب ان تتم العملية اليا مثلا اكتب كود في حدث الضغط على الزر بحيث انه يتحقق من حقل الذي يحتوي كود التسجيل فيقارن ان وجد مثلا في السجل الاول الارقام الاربعة الاولى 0000 سيضيف اليها 1 ويضع القيمة 0001 في السجل الثاني مع اضافة as13 على اليسار. كيف برمجة "ترقسم تلقائي" في الدلفي - makhlouf - 03-03-2013 M_Mori2010 كتب :ثانياً كود :أخي إذا كنت تستخدم جدول من قاعدة البيانات يمكن إضافة أمر بسيط جدا PHP كود : Var Fi : String;كيف برمجة "ترقسم تلقائي" في الدلفي - M_Mori2010 - 03-03-2013 إقتباس :حلك صحيح لكن هذه الطريقة هنا يجب على المستعمل ان يدخل الرقم وانا لاارغب بذلك طيب اخي الكريم طلبك سهل كثيراً حيث اننا لو عرفنا الاتي PHP كود : Var I,n:Integer;كيف برمجة "ترقسم تلقائي" في الدلفي - youcefcripcho - 03-03-2013 M_Mori2010 احسنت اخي فكرة رائعة جدا شكرا لك. makhlouf شكرا جزيلا اخي العزيز بوركت. كيف برمجة "ترقسم تلقائي" في الدلفي - m.rabee - 07-04-2013 السلام عليكم أنت تقوم بتغيير القيمة وفق لعدد السجلات ماذا لو قام المستخدم بحذف احد السجلات؟؟؟ سوف تحدث مشكلة وغالباً سوف يكون هناك تكرار لنفس الرقم !!! كيف برمجة "ترقسم تلقائي" في الدلفي - makhlouf - 10-04-2013 m.rabee كتب :أنت تقوم بتغيير القيمة وفق لعدد السجلاتو عليكم السلام و رحمة الله تعالى و بركاته: أخي معك حق و لكن يمكن حل الاشكال بطريقتين: 1- إما وضع دالة تقوم بإعادة ترتيب السجلات. مثال: لدينا 4 سجلات و المستخدم حذف السجل رقم 2 في الحدث الحذف نضع الدالة التي تقوم بإعادة الترتيب أي رقم 3 يصبح 2 و 4 يصبح 3 و يحذف الرقم 4. 2- نقوم بمسح قيم الحقول فقط و نحذف السجل و عند الادراج يقوم بالبحث عن وجود سجل فارغ فيأخذ الرقم الفارغ في هذه الحالة الرقم 2 فارغ فالسجل الجديد يكون بالرقم 2. و في الاخير أظن انه من غير الطبيعي أن يحذف الرقم 2 و قد سجل الرقم 3 و 4 مثلا برنامج فواتير من المستبعد ان يحذف الفاتورة 2 بعد ان سجل الفاتورتين 3 و 4 و لهذا يجب عدم تمكين المستخدم من حذف سجل سجل بعده سجلات. مجرد فكرة في انتظار النقد شكرا كيف برمجة "ترقسم تلقائي" في الدلفي - m.rabee - 10-04-2013 السلام عليكم إقتباس :مثال: لدينا 4 سجلات و المستخدم حذف السجل رقم 2 في الحدث الحذف نضع الدالة التي تقوم بإعادة الترتيب أي رقم 3 يصبح 2 و 4 يصبح 3 و يحذف الرقم 4.هذا خطأ والله أعلم فكيف تقوم بتغيير رقم الفاتورة وهي مرجع اساسي للبائع وللعميل؟؟ إقتباس :و في الاخير أظن انه من غير الطبيعي أن يحذف الرقم 2 و قد سجل الرقم 3 و 4 مثلا برنامج فواتير من المستبعد ان يحذف الفاتورة 2 بعد ان سجل الفاتورتين 3 و 4 و لهذا يجب عدم تمكين المستخدم من حذف سجل سجل بعده سجلات.بل هو احتمال وارد جداً وامكانية الحذف بعد تسجيل الفاتورة يجب ان تكون موجودة وهي كذلك فعلاً في أشهر البرامج!! بالطبع يجب ان تكون هناك صلاحيات للمستخدمين فليس من الطبيعي ان كل المستخدمين لديهم صلاحية حذف أي فاتورة يمكنك استخدام AUTO INCREMENT Field ولزيادة عدد الاصفار استخدم كود : function AddLeadingZeroes(const aNumber, Length : integer) : string;
begin
result := SysUtils.Format('%.*d', [Length, aNumber]) ;
end;كود : Usage:
AddLeadingZeroes(2005, 10) ;كود : result in a '0000002005' string value.كيف برمجة "ترقسم تلقائي" في الدلفي - عبد الهادي - 11-04-2013 هل يمكن استعمال دالة تكرار ربيت repeat |