PDA

View Full Version : آموزش: سورس تبدیل تاریخ شمسی به میلادی برای محاسبه مناسب ها و کار با تاریخ



davidrobert
پنج شنبه 29 مرداد 1394, 19:23 عصر
خیلی از دوستان که مشکل محاسبه تاریخ شمسی رو دارن این کد تاریخ شمسی هستش برای تبدیل تاریخ شمسی به میلادی. اول این سورس کمکی رو ببنید.
http://uplod.ir/5c8anf40yyq9/ConverteShamsiToMiladi.7z.htm
http://www.4shared.com/archive/bjefJqNYba/ConverteShamsiToMiladi.html (http://uplod.ir/5c8anf40yyq9/ConverteShamsiToMiladi.7z.htm)
http://s3.picofile.com/file/8207602484/ConverteShamsiToMiladi.7z.html
134485
نمونه کد برای سود و زیان کالا بر حسب تاریخ شمسی تبدیل شده به میلادی به همین راحتی با ای اف 6
این کد نمایش اطلاعات هستش به صورت جون و بررسی اطلاعات بر حسب تاریخ
try
{
//join tblfoctorforosh in db.Tbl_Foctor_Forosh_Kala.Where(x => x.FFK_Date_Miladi > min && x.FFK_Date_Miladi < max)
//DateTime max = DateTime.Parse(txtdate2miladi.Text);
//DateTime min = DateTime.Parse(txtdate1miladi.Text);
DateTime nowTime = DateTime.Parse(needCode.datemiladi(DateTime.Now));

var query = (from w in
(from q1 in db.Tbl_Anbar_Khered
join q2 in db.Tbl_Name_Kala on q1.AKH_KHKASH_CGHK_Code_Ya_BorCode_Ghemet_Kala equals q2.NK_CGHK_Code_Ya_BorCode_Ghemet_Kala
join q3 in db.Tbl_Foctor_Forosh_Kala.Where(x => x.FFK_Date_Miladi == nowTime)
on q1.AKH_KHKASH_CGHK_Code_Ya_BorCode_Ghemet_Kala equals q3.FFK_CGHK_Code_Ya_BorCode_Ghemet_Kala

select new { q1, q2, q3 })
group w by w.q1.AKH_KHKASH_CGHK_Code_Ya_BorCode_Ghemet_Kala
into grp

select new
{
f_borcode = grp.Key,
F_namekala = grp.Select(c => c.q2.NK_Name_Kala).FirstOrDefault(),
F_VahdKala = grp.Select(x => x.q2.NK_Vahd_Kala).FirstOrDefault(),
F_TedadForosh = grp.Sum(z => z.q3.FFK_Tedad_Forosh),
F_GhemetForosh = grp.Sum(b => b.q1.AKH_KHKASH_Ghemet_Forosh),
F_DersdTekhfef = grp.Sum(z => z.q3.FFK_Dersid_Tekhfef),
F_DersidMaleYat = grp.Sum(d => d.q3.FFK_Dersid_Maleyat),
//k_tedad = grp.Sum(k => k.q3.FFK_Tedad_Forosh),
//jamgimat = grp.Sum(v => v.q1.AKH_KHKASH_Ghemet_Forosh),
//vahed = grp.Select(w => w.q2.NK_Vahd_Kala).FirstOrDefault()
////fee=grp.Select(f=>f.price).FirstOrDefault(),
////jam_tedad_frosh=grp.Select(A=>A.sel_date).Count()

}).ToList();
decimal allsel = (int)db.Tbl_Foctor_Forosh_Kala.Sum(A => A.FFK_Tedad_Forosh);
//decimal Tekhfef = (int) db.Tbl_Foctor_Forosh_Kala.Sum(a => a.FFK_Dersid_Tekhfef);
var result = (from R in query
select new
{
borcode = R.f_borcode,
namekala = R.F_namekala,
vahdkala = R.F_VahdKala,
tedadforosh = R.F_TedadForosh,
GhemetFoforhs = R.F_GhemetForosh,
//DersidTekhfef=Math.Round((decimal)R.F_DersdTekhfef/Tekhfef*100,2),
DersidTekhfef = R.F_DersdTekhfef,
Tekhfef = Math.Round((decimal)R.F_DersdTekhfef.Value * R.F_GhemetForosh.Value) / 100,
DersidMaleYat = R.F_DersidMaleYat,
MaleYat = Math.Round((decimal)R.F_DersidMaleYat * R.F_GhemetForosh.Value) / 100 * R.F_DersidMaleYat,
GhemetKhales = Math.Round((decimal)R.F_TedadForosh * R.F_GhemetForosh.Value),
GhemeGabilPerdakht = Math.Round((decimal)(R.F_TedadForosh * R.F_GhemetForosh) - R.F_DersdTekhfef.Value * R.F_GhemetForosh.Value + R.F_DersidMaleYat.Value * R.F_GhemetForosh.Value),
darsad = Math.Round((int)R.F_TedadForosh / allsel * 100, 2)
// GhemeGabilPerdakht = Math.Round((decimal)(R.F_TedadForosh.Value * R.F_GhemetForosh.Value) - (R.F_DersdTekhfef.Value * R.F_GhemetForosh.Value)+(R.F_DersidMaleYat * R.F_GhemetForosh.Value) / 100 * R.F_DersidMaleYat.Value),
//tedad = R.k_tedad,
//jam_gimatha = R.jamgimat,
//vahedina = R.vahed,
////jamkol =(int)R.k_tedad * int.Parse(R.fee.ToString()),
//jamForosh = allsel,
//darsad = Math.Round((decimal)R.k_tedad / allsel * 100, 2)
}).ToList();
var showinfokala = (from sh in result
select new
{
sh.borcode,
kalaname = sh.namekala,
kalavahd = sh.vahdkala,
foroshtedad = sh.tedadforosh,
ghemetforoshkala = sh.GhemetFoforhs,
Dstekhfef = sh.DersidTekhfef,
tekhfefkala = sh.Tekhfef,
Dsmaleyat = sh.MaleYat,
maleyatkala = sh.MaleYat,
ghemetkhaleskala = sh.GhemetKhales,
ghemetghabelperdakht = (sh.tedadforosh * sh.GhemetFoforhs) - sh.Tekhfef + sh.MaleYat,
dersdsodvzeyan = Math.Round((int)sh.tedadforosh / allsel * 100, 2),
}).ToList();

dgv1.DataSource = showinfokala;