delphi4arab منتديات دلفي للعرب
كيفية الاعتراض على القيم الخالية عند الحفظ - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيفية الاعتراض على القيم الخالية عند الحفظ (/showthread.php?tid=4084)



كيفية الاعتراض على القيم الخالية عند الحفظ - ابومهند - 09-04-2012

الاخوة الكرام
السلام عليكم ورحمة الله

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

وفي الفورم رابط هذه الحقول بمجموعة مختلفه من الادوات مثل Edit و DBedit و DBLookupComboBox و DBComboBox

والمطلوب ان المستخدم لما يقو بعملية الحفظ وعند وجود اي حقل فاضي يعطية رسالة ولا يتم علمية الحفظ حتى يتم ادخال القيمة سواء بالكتابة أو بالاختيار من DBLookupComboBox .

وهل بالامكان ان تكون الرسالة باسم الحقل الفاضي.

تحياتي وتقديري


كيفية الاعتراض على القيم الخالية عند الحفظ - CMT-10 - 09-04-2012

السلام عليكم


بسيطة اختبر الادوات قبل عملية الحفظ مثل


If Trim(Edit1.text) =EmptyString Then Showmwssage


أو قم بجعل الحقل بقاعدة البيانات لا يقبل قيمة فارغة فيحدث خطاء تقوم باقتناصه واظهار الرسالة المناسبة


كيفية الاعتراض على القيم الخالية عند الحفظ - أبو معاذ - 09-04-2012

[INDENT]
وعليكم السلام ورحمة الله وبركاته ،
في الحدث BeforePost تحقق من قيمة Edit أنها ليس خالية .


كود :
If Edit1.txt <> '' then

[/INDENT]


كيفية الاعتراض على القيم الخالية عند الحفظ - kachwahed - 09-04-2012

وعليكم السلام ورحمة الله وبركاته
البيانات ليست دائما نصية، وإلا لكفى شيء كهذا:
كود :
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
بالتوفيق.



كيفية الاعتراض على القيم الخالية عند الحفظ - ابومهند - 14-04-2012

بارك الله فيكم جميعا تم الاستفادة من توجيهاتكم ، وقد ارفقت مثال لمن يحتاجه.
كود :
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;