SSRS 中的多视图加入

Multiple view join in SSRS

我有一个从存储过程中提取的 SSRS 报告。没什么问题,它在 Visual Studio(右键单击数据集,select 查询)和在 SSMS 中执行时工作得很好:

SELECT 
    asset as add_asset
    ,[desc] as add_desc
    ,start_dt as add_start_dt
    ,est_life as add_est_life
    ,acq_cost as add_acq_cost
    ,acc_depr as add_acc_depr
    ,lst_depr_yr as add_lst_depr_yr
    ,new_bk_val as add_new_bk_val
    ,[function_code] as add_function
    ,function_rollup as add_function_rollup
    ,fama_status as add_fama_status
    ,fama_fisc_yr as add_fama_fisc_yr
    ,fama_fst_yr as add_fama_fst_yr
    ,disp_fy as add_disp_fy
    ,spma_old as prev_book
    --,fahs_amt
FROM
    vw_Fixed_Asset_Audit_Sheet AS faas

INNER JOIN mu_live.dbo.spmaudit
ON spma_key = faas.asset

--INNER JOIN mu_live.dbo.fa_history
--ON a_asset_number = faas.asset

WHERE (
        (fama_status LIKE @acctstatus) 
        AND (function_rollup BETWEEN @frstart AND @frend)
    )
    AND (
        fama_fst_yr = @year
    )
    AND (
        spma_field = 'fama_cur_val'
        AND spma_action = 'P'
        AND YEAR(spma_date) = @year
    )
    /*AND (
        fahs_reason = 'DE'
        AND fahd_dr_cr = 'D'
        AND YEAR(fahs_eff_date) = @year
    )*/
ORDER BY asset ASC

注意注释代码,这是从另一个 table 中提取相关字段的部分。当我取消注释该代码时,它会在 SSMS 中正确提取字段和数据。但是在 Visual Studio 中,我没有得到任何数据。没有错误,它甚至用新字段 (fahs_amt) 更新了 "Report Data" 窗格中数据集中的字段列表,但没有记录。我完全不知道为什么这个查询会像这样失败而没有错误。有人见过这种行为吗?

想通了。看起来 SSRS 在加入时不喜欢视图。我直接在 fa_history 视图中加入了基础 table 并且它工作得很好。