PDA

View Full Version : نمایش جمع مقادیر یک فیلد در دلفی



MOHSEN731
جمعه 30 آبان 1382, 23:35 عصر
با عرض سلام خدمت دوستان :
من می خواهم برنامه ای را بنویسم تا کاربر بتواند جمع یک فیلد عددی را در پایین جدول خود ببیند و با تغییر مقدار آن فیلد جمع آن هم پایین صفحه تغییر کند لطفا کد برنامه آن را تحت دلفی یا sql برایم توضیح دهید.

مثلا جمع فیلد دستمزد یک کارمند را در پایین جدول با label نمایش دهد و وقتی که کاربر مقدار یکی از فیلدهای دستمزد را تغییر داد جمع آن هم تغییر کند

(البته با دستور sum از sql باید قبل از آن بانک را بست و دوباره باز کرد تا کار کند در صورتیکه من می خواهم بدون بستن هر بار جدول با تغییر هر فیلد دستمزد جمع آن را ببیند )

-- ممنون از راهنمایتان--

Kambiz
جمعه 30 آبان 1382, 23:43 عصر
برای بار اول مجموع تمام فیلدها رو حساب می‌کنی
هر فیلدی که تغییر کرد مقدار قدیم اون رو از مجموع کم و مقدار جدید رو بهش اضافه می‌کنی

Gladiator
جمعه 30 آبان 1382, 23:46 عصر
با سلام


var X:integer;
begin
table1.first;
x:=0;
while not table1.eof do begin
x:=x+table1.fieldbyname('dastmozd').asinteger;
end;
table1.next;
end;

حالا مقدار متغییر X برابر با جمع کل رکوردها در فیلد Dastmozd هستش .

موفق باشی .

MOHSEN731
شنبه 01 آذر 1382, 02:10 صبح
با تشکر از جواب دوستان :
من دو روش بالا را به کار بردم و جواب داد ولی می خواستم بدانم مثل دستورTable1.RecordCount که تعداد رکوردها را بر میگرداند آیا تابعی
یا روندی وجود دارد تا جمع مقادیر یک فیلد را بدون انجام کارهای بالا بر گرداند

Kambiz
شنبه 01 آذر 1382, 02:32 صبح
تنها راه دیگه استفاده از Query هست.

SReza1
شنبه 01 آذر 1382, 05:44 صبح
اگر تغیییرات در سطح یک فیلد بار بود میشد از فیلدهای محاسباتی استفاده کرد ولی چون میخواهی روی چندین رکورد است باید یا از حلقه داخل دلفی و یاQuery استفاده کنی

MOHSEN731
شنبه 01 آذر 1382, 20:15 عصر
اگر می شود لطف کنید نحوه استفاده query را برای این کار توضیح بدهید چون من می خواهم از query استفاده کنم .ممنون

JavanSoft
شنبه 01 آذر 1382, 23:36 عصر
Select Sum(Field ) As Result From Table Where Condition

این هم یک مقاله در مورد Sql

http://www.javansoft.com/learning1112.htm