2017-09-01 8 views
2

取引日の後の暦年の日付範囲を取得しようとしています。日付が今年の場合は、2010年1月1日〜2018年12月31日である必要があります。翌年の書式設定の日付範囲

私はこの構文を使用していますが、最初の行の後のすべてが数式の一部ではないというエラーが発生しています。何か案は?

Local DateVar d := CDate cstr(year({TransDate})); 
Local DateVar Range dr := DateSerial (Year(d)+ 1, Month(d) - 1, 1) To 
          DateSerial (Year(d)+ 1, Month(d) - 1, 1); 

答えて

2

最初の行にCDateの括弧がありません。正しい構文は次のようになります。

Local DateVar d := CDate(cstr(year({?Start Date}))); 

ただし、数式の結果は日付範囲にはならないため、これは機能しません。代わりに、範囲をStartDateフィールドとEndDateフィールドに分けて、計算に使用してください。


開始日:DateSerial(Year({?Date}) + 1, 1, 1)

終了日:DateSerial(Year({?Date}) + 1, 12, 31)

+0

ように、2つの式フィールドを使用できますか? – user1327418

+1

@ user1327418かなり。私は日付範囲で多くのレポートを行い、いつも '{Date}> = {StartDate} AND {Date} <= {EndDate}'を使用しています。 – 4444

+0

しかし、もしあなたの日付があれば、来年の最初の年? – user1327418