![]() |
|
تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد (/showthread.php?tid=5978) |
تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - اشرف الاوجلي - 27-02-2014 مع العلم بان الرقم الكسري في تزايد يعني 1499.999 المراد تقريبها الى 1500 تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - Lam.Abdeldjalil - 03-03-2014 السلام عليكم ما محرك قاعدة البيانات المستعمل ؟ على ما أظن أغلب المحركات تدعم ROUND مثال كود : SELECT ROUND(FieldName,0) AS RoundedFieldName
FROM TableName;تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - اشرف الاوجلي - 04-03-2014 ولكن قد جربت هذا ولم ينجح فانا لدي منظومة ماليه تقوم بقسمة مثلا 1000 دينار على 4100 شخص كي تعطيني النتيجة قيمة سهم كل شخص ثم اقوم بضرب هذه الاسهم على كل قروب مقسم على 1000 فاتظهر لي النتيجة كما في الاله الحاسبة ولكن حين جمع القيم الاحظ بان المجموع ليس 1000 بل 999.128 فكيف اقرب هذا الرقم او ما يليه من عمليات حسابية كي يكون الناتج 100+500+2000 وهكذا دون نقص او كسور تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - makhlouf - 04-03-2014 أخي جرب استعمال الدالة FormatFloat مثال edit4.Text:=FormatFloat('0.00',strtofloat(edit3.text)); بالتوفيق تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - Lam.Abdeldjalil - 04-03-2014 السلام عليكم إقتباس : ولكن قد جربت هذا ولم ينجحضع المحاولة إذا أمكن تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - اشرف الاوجلي - 05-06-2014 كود : procedure TForm5.Button6Click(Sender: TObject);
begin
if (Edit7.Text <>'') and (Edit8 .Text <>'') then
Edit9 .Text:=Formatfloat('0.000', (strToFloat(Edit7 .Text)/strToFloat(Edit8 .Text)));
end;ثم ناخذ 0.125 ونضربها في 4000 شخص ولكن على مجموعات اي 50 سجل تكون الحلقة كود : procedure TForm5.BitBtn1Click(Sender: TObject);
var
sql1, i_not,count_hala:string;
begin
if (ComboBox3 .Text ='')then exit;
if (ComboBox3 .Text <>'')then
ProgressBar1 .Visible :=True ;
sql1:='';
sql1:='SELECT Count(fard.hala_fard) AS Count_hala_fard';
sql1:=sql1+' FROM fard';
sql1:=sql1+' WHERE (((fard.hala_fard)="م"))';
dm.q_colection.Close;
dm.q_colection.SQL.Clear;
dm.q_colection.SQL.Add(sql1);
dm.q_colection.Open;
count_hala:= dm.q_colection.fieldbyname('Count_hala_fard').AsString;
sql1:='';
sql1:='SELECT bet.name_bet,bet.id ,Count(fard.hala_fard) AS Count_hala_fard';
sql1:=sql1+' FROM bet INNER JOIN fard ON bet.id = fard.id';
sql1:=sql1+' WHERE (((fard.hala_fard)="م")) ';
sql1:=sql1+' GROUP BY bet.name_bet,bet.id';
dm.q_colection.Close;
dm.q_colection.SQL.Clear;
dm.q_colection.SQL.Add(sql1);
dm.q_colection.Open;
IF Edit3 .Text <>'' then
if not dm .hesbat .Locate('it',edit3.Text ,[])then
Begin
with dm do
begin
nots.Locate ('note',ComboBox3 .Text,[loPartialKey]);
i_not:= notsit.AsString;
q_colection.First;
while not q_colection.Eof do
Begin
ProgressBar1 .Position :=1;
hesbat.Append;
hesbatit.AsString:=i_not;
hesbatid.AsString:=q_colection.Fieldbyname('id').AsString;
hesbatno_fard.AsString:=q_colection.fieldbyname('Count_hala_fard').AsString;
hesbaton_sahm.Value:=strToFloat(Edit9 .Text);
hesbatno_sum.Value:=q_colection.fieldbyname('Count_hala_fard').Value*strToFloat(Edit9 .Text);
hesbatdate .Value :=DateTimePicker1.Date ;
hesbatkolea .Value :=(hesbatno_sum .Value )+(hesbatno_duon .Value )-(hesbatalmdfoa .Value );
hesbat.Post;
ProgressBar1 .Position :=100;
q_colection.Next;
end;// end while
end;// end with
ComboBox3 .Text :='';
Edit8 .Text :='';
Edit9 .Text :='';
Edit7 .Text :='';
Edit3 .Text :='';
ProgressBar1 .Visible :=False ;
ShowMessage('تمت اضافة الملاحظة على جميع البيوت');
end
else
ShowMessage('تم اضافة هده الملاحظة مسبقاً');
ComboBox3 .Text :='';
Edit8 .Text :='';
Edit9 .Text :='';
Edit7 .Text :='';
Edit3 .Text :='';
ProgressBar1 .Visible :=False ;
end;اي 500 تخرج 400 وكسور او 500 وكسور فكيف اجعلها تخرج مظبوطة تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - S.FATEH - 05-06-2014 السلام عليكم النمط Float ليس لديه القدرة على التقريب جرب استخدام StrToCurr/Currency/AsCurrency بدلا من ذلك و رد لنا الخبر تقريب العدد 999.999 الى 1000 عن طريق جمل sql مع العلم بان الرقم الكسري في تزايد - اشرف الاوجلي - 09-06-2014 شكرا لك على الاهتمام ولكن قد جربت ذلك ولم ينج الامر فانا عند عرض التقرير تخرج لي القيمة اما بزيادة كسر او نقص كسر وما ارغبه تخرج لي القيمة صحيحة |