与CRM相比,MSReport显示有效期为1天?

时间:2017-06-19 14:14:54

标签: mysql sql dynamics-crm crm ms-reports

目前,当我在MSReport Builder上查看保险的到期日期部分时,它是2017年4月3日,但我在CRM中保险的到期日期部分是04/04/2017,这是正确的,但是在报告中它落后了一天,因此我想知道为什么以及可能解决这个问题的原因是什么?因为我希望它显示与CRM 04/04/2017相同,我一直在研究,一些文章说使用UTC一个不开始23小时,不完全确定如何把它放在我的查询中,我是在英国,已经为英国设置了CRM选项,因为我已经检查了它。请再说一下这个问题吗?

SELECT 'PAS ' + 

SectionName AS SectionName, 
SectionKey, 
FormName,
ItemName, 
ImportSequenceNumber, 
ExpiryDate, 
ExpiresOn, 
@Param_MonthlyStatement_EntityRecordId AS AccountId

FROM            
(SELECT 
sect.mm_name AS SectionName, 
sect.mm_key AS SectionKey, 
frm.mm_name AS FormName, 
frm.mm_name AS ItemName, 
frm.mm_importsequencenumber AS ImportSequenceNumber, 
MAX(frmans.mm_expires) AS ExpiryDate, 
DATEADD(m, 2, GETDATE()) AS ExpiresOn

FROM Filteredmm_section AS sect INNER JOIN

mm_form AS frm ON sect.mm_sectionid = frm.mm_section INNER JOIN
mm_formanswer AS frmans ON frmans.mm_form = frm.mm_formId INNER JOIN
Account AS acc ON frmans.mm_AccountID = acc.AccountId 
WHERE (sect.mm_name LIKE '%-%') 
AND (sect.mm_parentsection IS NULL) 
AND (CONVERT(NVARCHAR(250), frmans.mm_AccountID) 
= @Param_MonthlyStatement_EntityRecordId)
AND ( acc.mm_supplier = 1)

GROUP BY sect.mm_name, sect.mm_key, frm.mm_name, frm.mm_importsequencenumber
HAVING (MAX(frmans.mm_expires) BETWEEN GETDATE() AND DATEADD(m, 2, GETDATE()))) AS t1
WHERE (NOT EXISTS (SELECT TOP (1) mm_accountid FROM Filteredmm_formanswer
WHERE (mm_formname = t1.FormName) AND (mm_accountid = @Param_MonthlyStatement_EntityRecordId) AND (mm_statusname = 'Awaiting Verification')))
ORDER BY SectionName, FormName, ImportSequenceNumber

1 个答案:

答案 0 :(得分:0)

您可能希望从过滤后的表中获取到期日期,因为我可以看到使用了过滤,也许可以尝试

INNER JOIN Filteredmm_formanswer AS frmans ON frmans.mm_form = frm.mm_formId