PDA

View Full Version : ایجاد گزارش



DJ2008
پنج شنبه 21 اسفند 1393, 13:26 عصر
سلام
بعد از کلی شب بیداری و کمک اساتید ورودی های برنامم (صندوق - فاکتور - پیش فاکتور-سند حسابداری)نوشتم منتها برای گزارشگیری موندم:افسرده:
یکیشو کمک کنید فکر کنم بقیه مثل هم باشن.مثلاً برای گرفتن گزارش موجودی صندوق ( گزارش یه جدول است نه یه عدد) داده ها رو باید از جدول های (فیلدهای تاثیرگذار) زیر استخراج کنم



Coffer : RemainedTot,RemainedType_ID
Cash : Coffer_ID,CashType_ID,Tot
CofferToCoffer : Coffer_ID_From,Coffer_ID_To,Tot
ChequeRecD : ChequeRecAction_ID,Coffer_ID

فیلدهای دیگه هم هستن ولی تاثیرگذارشون اینا بودن
فقط احساس میکنم باید از inner join استفاده کنم ولی فعلاً کلاً هنگ کردم.

یوسف زالی
پنج شنبه 21 اسفند 1393, 14:13 عصر
سلام.
خب سوالتون؟؟

DJ2008
پنج شنبه 21 اسفند 1393, 14:28 عصر
یعنی یادم رفت سوالمو بپرسم !:اشتباه:
نمیدونم چجوری جدول گزارشو رو از دل این چند تا جدول دربیارم.فقط فکر میکنم باید از inner injoin استفاده کرده چجوریشو نمیدونم.
ممنون اگه راهنمایی کنید.

یوسف زالی
پنج شنبه 21 اسفند 1393, 15:30 عصر
اگر منظورتون چگونگی کوئری گرفتن از این جداوله، باید در تالار اس کیو ال مطلب رو دنبال کنید.

DJ2008
یک شنبه 16 فروردین 1394, 00:55 صبح
آقا در برنامه حسابداری خزانه داری شما برای ورود اطلاعات دریافت و پرداخت ، احتیاج دارین مثل کامنت اول.این جداولبنا به نیاز است مثلاً برای نقد یک جدول - چک چندین جدول- حواله و ....حالا برای گزارشگیری (موجودی صندوق -موجودی حساب و ...)از این تعداد جدول بالا تنها کافیه از دستور UNION ALL بدرستی استفاده کنیم.یک مثال براتون میزنم



select FDate,cast(DocNo as nvarchar),
case
when TR_Fix_CashType_ID=1 then (select Caption from Accounts.dbo.TR_Fix_AffectedInCofferCategory where RowID=1)
when TR_Fix_CashType_ID=2 then (select Caption from Accounts.dbo.TR_Fix_AffectedInCofferCategory where RowID=2)
end
as caption,
case
when TR_Fix_CashType_ID=1 then (select Caption from Accounts.dbo.TR_Fix_AffectedInCofferType where RowID=101)
when TR_Fix_CashType_ID=2 then (select Caption from Accounts.dbo.TR_Fix_AffectedInCofferType where RowID=200)
end
as Affected,
RowDesc,
case
when TR_Fix_CashType_ID=1 then Tot end
as bes,
case
when TR_Fix_CashType_ID=2 then Tot end
as bed
from Accounts.dbo.TR_Cash
WHERE TR_Coffer_ID=25

UNION ALL
select FDate,cast(DocNo as nvarchar),
case
when TR_Coffer_ID_From=25 then (select Caption from Accounts.dbo.TR_Fix_AffectedInCofferCategory where RowID=1)
when TR_Coffer_ID_To=25 then (select Caption from Accounts.dbo.TR_Fix_AffectedInCofferCategory where RowID=2)
end
as caption,
case
when TR_Coffer_ID_To=25 then (select Caption from Accounts.dbo.TR_Fix_AffectedInCofferType where RowID=202)
when TR_Coffer_ID_From=25 then (select Caption from Accounts.dbo.TR_Fix_AffectedInCofferType where RowID=103)
end
as Affected,
RowDesc,
case
when TR_Coffer_ID_To=25 then Tot end
as bes,
case
when TR_Coffer_ID_From=25 then Tot end
as bed
from Accounts.dbo.TR_CofferToCoffer
WHERE (TR_Coffer_ID_From=25) or (TR_Coffer_ID_To=25)