PDA

View Full Version : انجام محاسبات بر روی بانک اطلاعاتی sql در هر بار اجرا



fool66
جمعه 31 خرداد 1392, 11:01 صبح
سلام من برناممو با Entity Framework نوشتم حالا می خوام هر با که برنامه اجار میشه موجودی انبار رو محاسبه کنه بهم بده
موجودی رو می خوام اینطور حساب کنه کنه مثلا در جدولم 100 رکورد از یه قلم جنس هست مثلا خود کار هر رکورد یه تعداد بسته درج شده رو داره اینا رو جمع کنه و ضرب در تعداد در هر بسته در جدول دیگه کنه و در یه دیتا گرید نمایش بده

نمی خوام اگه 10 تا رکورد خودکار وجود داره نشون بده فقط یه رکورد خودکار نشون بده که جمع همه رکورد های خودکار ها ضرب در تعداد در هر بسته رو نشون بده

ممنون میشم تا جایی که می تونید راهنمایی هایی کنید ( خونه نیستم که دسترسی به اینترنت داشته باشم چند وقتی یه بار میام چک می کنم ممنون )
105897


105896

Mahmoud.Afrad
جمعه 31 خرداد 1392, 15:07 عصر
فرض کنید دو جدول به صورت زیر هستند:
tbl1 --> kala , countOfBox
tbl2 --> kala , countInBox
ستون مشترک هم kala هست که میتونه شماره شناسایی کالا باشه.
ابتدا باید دو جدول رو جوین کنید البته در همین مرحله ستون تعداد بسته رو در تعداد محتویات هر بسته ضرب میکنید. حاصل جوین را براساس نام کالا(یا شناسه کالا) گروهبندی می کنید و در نهایت برای هر گروه مجموع کالا رو بدست میارید:

var query = from t1 in db.tbl1
join t2 in db.tbl2 on t1.kala equals t2.kala
let j = new { t1.kala, Count = t1.countOfBox * t2.countInBox }
group j by new { j.kala } into g
select new { g.Key.kala, totalcount = g.Sum(i => i.Count) };