i work in financial deparment of company , want extract data our server (sql) put reports board.
so have several excel file use excel query retreive data , make presentations.
i have been upgrading querys , hit obstacle one.
it working fine bit of code: select
internal_reference ref, cmp_code cmp_code, counterparty_code bank_code, transaction_code trans_code, cast(convert(varchar(10), amo_end_date, 110) datetime) date, sum([amortization]) amount [sage_mtc_frp].[dbo].[loan_schedule] inner join [sage_mtc_frp].[dbo]. [loans] on [sage_mtc_frp].[dbo].[loan_schedule].loan_id=[sage_mtc_frp].[dbo]. [loans].loan_id (amo_end_date>=?) , (book_date<?) , (transaction_code<>'cpca' , transaction_code<>'cpcf' , transaction_code<>'rent') , is_deleted=0 , version_number=1 , cmp_code='mtg' group internal_reference, cmp_code, counterparty_code, transaction_code, amo_end_date
but when put code union all, blows these 2x errors:
problem: invalid number of parameter
invalid descriptor index
code:
select * ( select internal_reference ref, cmp_code cmp_code, counterparty_code bank_code, transaction_code trans_code, cast(convert(varchar(10), amo_end_date, 110) datetime) date, sum([amortization]) amount [sage_mtc_frp].[dbo].[loan_schedule] inner join [sage_mtc_frp].[dbo]. [loans] on [sage_mtc_frp].[dbo].[loan_schedule].loan_id=[sage_mtc_frp].[dbo]. [loans].loan_id (amo_end_date>=?) , (book_date<?) , (transaction_code<>'cpca' , transaction_code<>'cpcf' , transaction_code<>'rent') , is_deleted=0 , version_number=1 , cmp_code='mtg' group internal_reference, cmp_code, counterparty_code, transaction_code, amo_end_date union select cl_code ref ,left([acc_code] , 3) cmp_code ,[counterparty_code] bank_code ,right([cl_description] , 3) trans_code ,cast(convert(varchar(10), [end_date], 110) datetime) date ,[cl_amount] amount [sage_mtc_frp].[dbo].[credit_lines] (end_date>?) , right([cl_description] , 3)='ppc' ) data order ref
if both queries run there self, use like:
declare @result table( [ref] nvarchar(50), [cmp_code] nvarchar(50), [bank_code] nvarchar(50), [trans_code] nvarchar(50), [date] date, [amount] decimal(10,2) ) insert @result ( ref , cmp_code , bank_code , trans_code , date , amount ) select internal_reference ref, cmp_code cmp_code, counterparty_code bank_code, transaction_code trans_code, cast(convert(varchar(10), amo_end_date, 110) datetime) date, sum([amortization]) amount [sage_mtc_frp].[dbo].[loan_schedule] inner join [sage_mtc_frp].[dbo]. [loans] on [sage_mtc_frp].[dbo].[loan_schedule].loan_id=[sage_mtc_frp].[dbo]. [loans].loan_id (amo_end_date>=?) , (book_date<?) , (transaction_code<>'cpca' , transaction_code<>'cpcf' , transaction_code<>'rent') , is_deleted=0 , version_number=1 , cmp_code='mtg' group internal_reference, cmp_code, counterparty_code, transaction_code, amo_end_date insert @result ( ref , cmp_code , bank_code , trans_code , date , amount ) select cl_code ref ,left([acc_code] , 3) cmp_code ,[counterparty_code] bank_code ,right([cl_description] , 3) trans_code ,cast(convert(varchar(10), [end_date], 110) datetime) date ,[cl_amount] amount [sage_mtc_frp].[dbo].[credit_lines] (end_date>?) , right([cl_description] , 3)='ppc' select * @result order ref
Comments
Post a Comment