2012-03-24 71 views
1

我正在使用水晶報表生成器,我需要通過Crystal報表參數傳遞給具有日期限制的查詢的SQL Server查詢。水晶報表SQL查詢命令參數與公式編輯器值

我的SQL表將datetime存儲爲bigint(UTC TICKS)。

用戶通過日曆選擇工具發送報告選擇參數,因此接收到的參數是晶體報告的日期時間。

我可以在更改參數值/類型後在SQL命令(Crystal Report - 命令)中執行查詢嗎? 在命令中使用它之前,我可以使用公式來更改參數嗎?

例如: ShiftDateTime({@}創建時間, 「UTC,0」, 「」)

謝謝!

+0

你能給出幾個整數值(UTC ticks)及其對應的UTC日期時間。我想我有一個解決方案,我會很快發佈。 – 2012-03-24 19:30:05

+0

其實我有點疑惑。我明白'DateDiff('s',CurrentDateTime,DateTime(1,1,1,0,0,0))'應該將當前日期時間轉換爲utc ticks(乘以10,000,000)。但然後當我嘗試並扭轉數字'DateAdd('s',956121718,DateTime(1,1,1,0,0,0))'我得到一個完全不同的結果: - / – 2012-03-24 19:39:24

回答

1

我找到了答案:

BIGINT最新: 選擇DATEADD(分鐘,投((60分之8123371500)爲BIGINT),演員( '1753年1月1日' 的日期時間))

date to bigint: select cast(DateDiff(分鐘,'1753-01-01','2010-06-03 12:05:33')as bigint)* 60

無論如何。

Shai。