delphi4arab منتديات دلفي للعرب
مشكلة مع حقل من نوع Time - نسخة قابلة للطباعة

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



مشكلة مع حقل من نوع Time - medreg - 24-02-2009

السلام عليكم
كيف يمكنني إظهار محتوى الحقل في كويكربوبور فارغاً
بالنسبة للتاريخ فهو عندما يكون الحقل فارغ يظهر في QRLABEL1
31/12/1899
فوضعت له الكود الذي يحمل اللون الأحمر حتى يظهر مكانه فارغ في QRLABEL1
ونجحت العملية
وبالنسبة للساعة فحاولت بكل الطرق التي خطرت لي على بالي ولم اجد لها حل
فماذا يجب علي فعله لحقل الساعة حتى لا يطهر في qrlabel2 بهذا الشكل 00:00
أنظر إلى الكود

كود :
procedure TForm10.DetailBand2BeforePrint(Sender: TQRCustomBand; var PrintBand: Boolean); var d1,h1:TDateTime; begin with DM_1 do begin Table1.First; while not Table1.Eof do begin if (Table1NU.Value=1) then h1:=Table1DT_DEP.Value; if (Table1NU.value=1) then d1:=Table1HR_DEP.Value; QRLABEL1.Caption:=formatDateTime('yyyy/mm/dd',h1); [color=Red] if h1=00 then QRLABEL1.Caption:='';[/color] QRLABEL2.Caption:=formatDateTime('HH:MM',d1); Table1.Next; end; end; end;



مشكلة مع حقل من نوع Time - محمد عبد العزيز - 03-03-2009


هل تقصد : كيف اخفاء الساعة في التقرير ان كانت 00:00 ؟



مشكلة مع حقل من نوع Time - medreg - 05-03-2009

deltaaziz كتب :
هل تقصد : كيف اخفاء الساعة في التقرير ان كانت 00:00 ؟

السلام عليكم
نعم أقصد إخفاءها في التقرير
ملاحظة :
إخفاءها في التقرير إذا كلن الحقل فارغ أي مجهول
أما إذا كان الحقل ممتليء فلا تخفى لأنه هناك في بعض الأحيان الحقل تكون به الساع 00:00
ولهذا أقصد أخفاءها إذا كان الحقل فارغ أي مجهول الساعة وكذلك التاريخ
وشكرًا جزيلاً


مشكلة مع حقل من نوع Time - محمد عبد العزيز - 06-03-2009

إقتباس :إخفاءها في التقرير إذا كلن الحقل فارغ أي مجهول
أما إذا كان الحقل ممتليء فلا تخفى لأنه هناك في بعض الأحيان الحقل تكون به الساع 00:00

يعني لديك حالتين
1- حالة الحقل فارغ 00:00
2- حالة كانت الساعة 00:00
هنا لا يمكن التمييز بين الحالتين الا باضافة حقل اخر منطقي Boolean
بحيث ان كان True تظهر الساعة
وان كان False تخفيها
والسلام عليكم



مشكلة مع حقل من نوع Time - medreg - 11-03-2009

DeltaAziz كتب :
يعني لديك حالتين
1- حالة الحقل فارغ 00:00
2- حالة كانت الساعة 00:00
هنا لا يمكن التمييز بين الحالتين الا باضافة حقل اخر منطقي Boolean
بحيث ان كان True تظهر الساعة
وان كان False تخفيها
والسلام عليكم

جزاكم الله عنا كل خير
يا سيدي الفاضل لق اضفت الحقل المنطقي وسميته mode
وادرجته في شرط لإخفاء التاريخ والساعة لكن لم يخفيها وأشك أن الخطأ في الكود ولهذا أنظر إالى هذا الكود ووضح لي الخطأ من فضلكم
كود :
procedure TForm10.DetailBand2BeforePrint(Sender: TQRCustomBand; var PrintBand: Boolean); var d1,h1:TDateTime; begin with DM_1 do begin Table1.First; while not Table1.Eof do begin if (Table1NU.Value=1) then h1:=Table1DT_DEP.Value; if (Table1NU.value=1) then d1:=Table1HR_DEP.Value; QRLABEL1.Caption:=formatDateTime('yyyy/mm/dd',h1); // if h1=00 then QRLABEL1.Caption:=''; [color=red]if (Table1NU.value=1)and(Table1Mode.value=false) then QRLable1.Caption:='';[/color] {هذا هو الكود الذي اضفته} QRLABEL2.Caption:=formatDateTime('HH:MM',d1); [color=Red] if (Table1NU.value=1)and(Table1Mode.value=false) then QRLable2.Caption:=''; [/color] {هذا هو الكود الذي اضفته} Table1.Next; end; end; end;



مشكلة مع حقل من نوع Time - محمد عبد العزيز - 11-03-2009


احذف السطر الاحمر وغيره بشيئ مثل

PHP كود :
QRLable1.enabled := Table1Mode.value;