المشاركات : 38
المواضيع 9
:
: 0
الإنتساب : Feb 2008
الاخوة الكرام
السلام عليكم ورحمة الله
عندي مجموعة حقول في قاعدة البيانات وهذه الحقول اجبارية وعلى المستخدم ان يدخل فيها قيمة.
وفي الفورم رابط هذه الحقول بمجموعة مختلفه من الادوات مثل Edit و DBedit و DBLookupComboBox و DBComboBox
والمطلوب ان المستخدم لما يقو بعملية الحفظ وعند وجود اي حقل فاضي يعطية رسالة ولا يتم علمية الحفظ حتى يتم ادخال القيمة سواء بالكتابة أو بالاختيار من DBLookupComboBox .
وهل بالامكان ان تكون الرسالة باسم الحقل الفاضي.
تحياتي وتقديري
المشاركات : 214
المواضيع 38
:
: 0
الإنتساب : Sep 2010
السلام عليكم
بسيطة اختبر الادوات قبل عملية الحفظ مثل
If Trim(Edit1.text) =EmptyString Then Showmwssage
أو قم بجعل الحقل بقاعدة البيانات لا يقبل قيمة فارغة فيحدث خطاء تقوم باقتناصه واظهار الرسالة المناسبة
بين الانسان والكفر ترك الصلاة فمن تركها فقد كفر .
المشاركات : 1,252
المواضيع 170
:
: 1,500
الإنتساب : Jul 2009
[INDENT]
وعليكم السلام ورحمة الله وبركاته ،
في الحدث BeforePost تحقق من قيمة Edit أنها ليس خالية .
كود :
If Edit1.txt <> '' then
[/INDENT]
اللهم اجعلني من أهل القرآن ، الذين هم أهلك و خاصتك.
تذكر بأن الوقت الذي تلهو فيه ، غيرك يبني مجده فيه.
المشاركات : 2,293
المواضيع 157
:
: 81
الإنتساب : Dec 2008
09-04-2012, 07:16 PM
(آخر تعديل لهذه المشاركة: 15-04-2012, 12:58 AM بواسطة kachwahed.)
وعليكم السلام ورحمة الله وبركاته
البيانات ليست دائما نصية، وإلا لكفى شيء كهذا:
كود :
Trim(FieldName.AsString) <> ''
لذلك قد لا تفي الحلول السابقة بالغرض (حالة عدم إمكانية التحويل مثلا)
يتم التعامل مع البيانات في الجدوال عادة على أساس أنها Variant
ثم تقوم مكتبات مخصصة باكتشاف نمط البيانات ونقله من/إلى الحقل الموافق في الجدول
لذلك يفضل فحصها على هيئتها Variant قبل أي تحويل من شأنه إثارة استثناء
قبل التحقق من أي Variant أنه فارغ ينبغي أولا التحقق منه أنه غير معدوم:
PHP كود :
function AssignedVar(AVar: Variant): Boolean;
begin
Result := (not VarIsNull(AVar)) and (not VarIsEmpty(AVar));
end;
قد يمكن أيضا الفحص بـ VarIsClear، كذلك في Variants.pas
يمكن جعل الحقل Required خلال التصميم في أي T*Table/*Query
بالتوفيق.
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...
المشاركات : 38
المواضيع 9
:
: 0
الإنتساب : Feb 2008
14-04-2012, 07:55 PM
(آخر تعديل لهذه المشاركة: 15-04-2012, 12:57 AM بواسطة kachwahed.)
بارك الله فيكم جميعا تم الاستفادة من توجيهاتكم ، وقد ارفقت مثال لمن يحتاجه.
كود :
procedure TForm1.Button1Click(Sender: TObject);
begin
if (Edit1.text <> '') and
(Edit2.text <> '') and
(Edit3.text <> '') and
(ComboBox1.text <> '') and
(ComboBox2.text <> '')
then
begin
Label1.Caption := 'احفظ';
end
else
begin
Label1.Caption := 'لا تحفظ لوجود حقول فارغة';
end;
end;