PDA

View Full Version : سوال: چالش ساخت دفتر معین در سی شارپ



mehdinoorani
چهارشنبه 14 آذر 1397, 12:34 عصر
باسلام خدمت دوستان محترم
سه تا جدول دارم
1- جدول مشتری (IDMoshtati, ShomareHesab, NameMoshtari, FamilyMoshtari, KodeMeli, TarikhEftetahHesab, Tozih)
2- جدول سرمایه (IDSarmaee, IDMoshtati, Mablagh, Tarikh, NooDaryaft, Tozih)
3- جدول برداشت سرمایه (IDBardashtSarmaee, IDMoshtati, Mablagh, Tarikh, NooBardasht, Tozih)

جدول 1 با جدول 2 رابطه یک به چند داره
جدول 1 با جدول 3 رابطه یک به چند داره

چطور می تونم داخل سی شارپ با انتخاب شماره مشتری در دیتا گرید ویو جدولی شبیه به جدول دفتر معین درست کنم
یعنی می خوام شامل ستون های


ردیف
تاریخ سرمایه/برداشت سرمایه
IDسرمایه/ID برداشت
شرح
مبلغ بدهکار
مبلغ بستانکار
مانده



1
1397/01/02
10001
واریز ماهیانه
0
10000
10000



2
1397/01/15
10002
واریز ماهیانه
0
5000
15000



3
1397/02/02
20001
برداشت ماهیانه
3000
0
12000




جمع کل




3000
15000
12000




اگر هم بشه بعد بفرستم داخل استیمول سافت برا چاپ

mehdinoorani
جمعه 16 آذر 1397, 14:01 عصر
دوستان هر پیشنهادی دارید مطرحش کنید تا به یه نتیجه ای برسیم
تشکر

mrbm_2007
یک شنبه 18 آذر 1397, 20:40 عصر
سلام
آخه این الان سوال بود یا سفارش کار؟؟؟؟
سوال یعنی اینکه شما یا در مورد معماری کلی یا استراتژی برنامه سوالی بپرسید یا اینکه خودتون کدی نوشتی و حالا یه قسمت مشخص مشکل دارید و می پرسید:متفکر::متفکر::متفکر::م فکر::متفکر::متفکر::متفکر:
نه اینکه بگید من فلان پروژه رو می خوام انجام بدم چیکار کنم!!!!

اینجوری جواب درستی هم نخواهید گرفت

mehdinoorani
سه شنبه 20 آذر 1397, 11:10 صبح
سلام
آخه این الان سوال بود یا سفارش کار؟؟؟؟
سوال یعنی اینکه شما یا در مورد معماری کلی یا استراتژی برنامه سوالی بپرسید یا اینکه خودتون کدی نوشتی و حالا یه قسمت مشخص مشکل دارید و می پرسید:متفکر::متفکر::متفکر::م فکر::متفکر::متفکر::متفکر:
نه اینکه بگید من فلان پروژه رو می خوام انجام بدم چیکار کنم!!!!

اینجوری جواب درستی هم نخواهید گرفت






با سلام خدمت دوست گرامی
از اینکه نظرتون رو گذاشتید تشکر میکنم

ولی چند نکته کوچیک
درمورد اینکه سوال مشکل داره عنوان تاپیک چالش هست نه سوال!!!
حالا با وجود این ها طبق فرضیه گفته شده ببین میتونی راهی پیدا کنی تا جدول بالا را درست کنی؟

اصولا موقعی که میخان دیتا بیس را طراحی کنن مقدار بدهکار و بستانکار را در یک جدول میگذارن.
ولی من کمی متفاوت کردم و یکم به قول معروف لقمه را دور چرخوندم.
ولی اینم یه جورش هست
برنامه نویس باید بتون حل بکنه یا نه

خودم به این نتیجه رسیدم که باید دو جدول سرمایه و برداشت سرمایه را باهم جمع کنم تا یه جدول به وجود بیاد
یعنی چی
یعنی از جدول سرمایه همه ستون ها را انتخاب میکنم و یه ستون دیگه هم با عنوان ستون بستانکار در نظر میگیرم حالا مقدارش چی میشه؟؟؟ مقدارش مقدار ستون بدهکار منهای ستون بدهکار تا صفر در ستون جدید که خودمون درست کردیمثبت بشه.

دقیقا برای جدول برداشت سرمایه هم همین طور
یعنی چی
یعنی این بار همه ستون ها ولی ستون مربوط به مبلغ این جدول را زود تر صفر میکنیم بعد مقدار مبلغ را در ستون بعدی که جدید هست وارد می کنیم.


(SELECT M.ShomareHesab, P.IDTakhsisVam, P.sahrh, P.Tarikh, P.MablagGhest AS [بستانکار],P.MablagGhest-P.MablagGhest As[بدهکار]
FROM dbo.tbl_Moshtari AS M INNER JOIN
dbo.tbl_Pardakhtghst AS P ON M.IDMoshtati = P.IDMoshtati
where M.ShomareHesab=123
GROUP BY M.ShomareHesab, P.IDTakhsisVam, P.MablagGhest, P.Tarikh, P.sahrh)


union(


SELECT M.ShomareHesab, V.IDMoshtati, V.Shrh, V.Tarikf, V.MablghVariz,V.MablghBardasht
FROM dbo.tbl_FrmVaAndBar AS V INNER JOIN
dbo.tbl_Moshtari AS M ON V.IDMoshtati = M.IDMoshtati
where M.ShomareHesab=123 )
union
(SELECT M.ShomareHesab, TSV.IDTakhsisVam, TV.NameVam, TSV.TarikhDaryaftVam, TV.MablghKol-TV.MablghKol,TV.MablghKol
FROM dbo.tbl_TakhsisVam AS TSV INNER JOIN
dbo.tbl_TarifVam AS TV ON TSV.IDVam = TV.IDVam INNER JOIN
dbo.tbl_Moshtari AS M ON TSV.IDMoshtati = M.IDMoshtati
where M.ShomareHesab=123 )



حالا شما فک کنید که چطوری میشه این پروسیجری که ساختیم را بیارم داخل سی شارپ و ازش استفاده کنم و اونجا ستون مانده برا هر ستون را بهش اضافه کنم و این مانده تاثیر بزاری بر ستون بعدی برا مانده گیری و در نهایت هم جمع کل