[英]crystal reports month date range for earnings
我的客戶有一個接受日期范圍的報告,以獲取顯示預計收入的報告。 因此,用戶輸入的日期范圍為'2015年1月1日至2015年1/31 /,報表僅返回按周分組的范圍為'2015年1月1日至2015年1月31日的數據。 相反,我是2014年12月29日(2015年1月1日屬於)和2015年2月1日(2015年1月31日屬於)的一周。 該報告旨在按周進行分組,但我不希望報告中的日期早於開始日期參數或晚於結束日期參數。
此報告的sql語句為:
SELECT job.job, job.status, job.customer_po, job.part_number, job.unit_price,
job.price_uofm, delivery.promiseddate, delivery.remaining_quantity, job.build_to_stock, job.description, job.make_quantity, job.pick_quantity, job.shipped_quantity, job.lead_days
FROM dbo.delivery as delivery RIGHT OUTER JOIN db.job as job on delivery.job = job.job
WHERE job.build_to_stock = 0 AND (job.status = 'active' OR job.status = 'hold' OR job.status = 'pending')
日期范圍來自以下代碼和參數:
Max – Maximum(?Date Range)
Min – Minimun(?Date Range)
Date Range - "From " & {@Min} & " to " & {@Max}
這是團體表達
Group 2 Name - GroupName ({@Adj Date 2}, "weekly") & " thru " & cdate(GroupName ({@Adj Date 2}, "weekly"))+6
這是選擇表達式
{@Date} = {?Date Range} and
not {Job.Build_To_Stock} and
{Job.Status} in ["Active", "Hold", "Pending"]
您知道如何防止超出日期范圍的日期“溢出”嗎?
謝謝
只要您在記錄選擇公式中具有日期過濾功能,該范圍內就不會有任何“溢出”。 如果您的{Record.Date} in Minimum({?DateRange}) to Maximum({?DateRange})
聽起來像您一樣,那么無論您如何操作,報表都不會包含該參數之外的任何記錄分組。
您的問題可能是由於過於復雜或對分組的誤解所致。 您所需要做的就是按{Record.Date}
分組,然后在分組選項中選擇“按周分組” ...您不需要任何復雜的公式即可按周進行分組。 但是請注意,周數的指稱是按其開始日期。 例如,如果您有一個日期為2015年2月19日的記錄,則即使您的{?DateRange}參數為2月18日至2月15日,該記錄也將屬於“ 2015年2月15日”組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.