user8205502
user8205502

Reputation: 90

error in ssrs . An item with the same key has already been added

i am making a report in SSRS in which an error is coming. this is i think related to my data set .i want to make multi-option parameter report.so my query is.

 IF @QueryParameterType=1
  (
     SELECT
              cast(fddateofissue as date) As IssueDate
            , cast(fddateofcash as  date) as CashDate
            , Substring(fsreckey,1,3)[DIVISION]
            , FNGROUP-100[GROUP]
            , FNCYCLE[CYCLE]
            , SUBSTRING(FSRECKEY,4,4)[LEDGER]
            , FNACCNO[ACCNO]
            , FSNAME[NAME]
            , FSADDRESS[ADDRESS]
            , fsVillage [VILLAGE]
            , fsFeederCode [CIN DATA]
            , fnSecurityAmount [ACD AMOUNT]
            , fnConnLoad[LOAD]
            , fnMtrMultiplier[MTR MULTIPLIER]
            , fnMtrPhase [MTR PHASE]
            , fnCurrReading[CURRENT READING]
            , fnPrevReading[PREVIOUS READING]
            , fnBillUnits[UNIT BILLED]
            , fnAvgUnits [AVERAGE UNIT]
            , fnBillPeriod [BILL PERIOD]
            , fnArrSOP +fnArrFSA +fnArrED +fnArrMCT +fnArrSURC[ARREAR        TOTAL]
            , fnPaidTotal[PAID TOTAL]
            , fdPaidDate
            , fnCurrSOP[CURRENT SOP]
            , fnCurrFSA[CURRENT FSA]
            , fnCurrED[CURRENT ED]
            , fnCurrMCT[CURRENT MCT]
            , fnNetCapPenalty[CAP PENALTY]
            , fnNetMdiPenalty[MDI]
            , fnFixcharges[FIXED CHARGES]
            , fnChrSOP +fnChrFSA +fnChrED +fnChrMCT[CHARGES]
            , fsChrBNO[BNO]
            , fnChrPNO [PNO]
            , fnAlwSOP+fnAlwFSA +fnAlwED +fnAlwMCT[ALLOWANCE]
            , fsAlwBNO [BNO]
            , fnAlwPNO [PNO]
            , fnNetMtrRent[MTR RENT]
            , fnNetTotal[NET TOTAL]
            , fnNetSURC[NET SURCHARGE]
            , fnNetGross[GROSS TOTAL]
            , CASE
                       WHEN fnflgPDCO>2
                                THEN 'PDCO'
                                ELSE 'LIVE'
              END 'STATUS'
            , fsCurrMtrStatus
            , fnMdiReading
            , fnNetMdiPenalty


          FROM
              (


                     SELECT *
                          , NULL AS FDBACKUPDATE
                          , 109  AS FANSESSIONCODE
                     FROM
                            tblLedger
                     UNION ALL
                     SELECT *
                          , NULL AS FDBACKUPDATE
                          , 109  AS FANSESSIONCODE
                     FROM
                            tblPREVIOUSLEDGER
                     UNION ALL
                     SELECT *
                     FROM
                            UH_BACKUP..tblbackupledger

              )
              AS T
              --WHERE T.FSSUBDIV=102 AND T.FNGROUP=102 AND T.FNCATEGORY=6                        and fsledger=2829  and fnaccno =2
     WHERE
              T.FSSUBDIV      =@subdiv
              AND T.FNGROUP   =@group
              AND T.FNCATEGORY=@category
              and t.fsledger  =@ledger
              and t.fnaccno   =@accno
              and t.fddateofissue between @issueDate1 and @issueDate2




            )

             else
         if @QueryParameterType=2
          (
           SELECT
              cast(fddateofissue as date) As IssueDate
            , cast(fddateofcash as  date) as CashDate
            , Substring(fsreckey,1,3)[DIVISION]
            , FNGROUP-100[GROUP]
            , FNCYCLE[CYCLE]
            , SUBSTRING(FSRECKEY,4,4)[LEDGER]
            , FNACCNO[ACCNO]
            , FSNAME[NAME]
            , FSADDRESS[ADDRESS]
            , fsVillage [VILLAGE]
            , fsFeederCode [CIN DATA]
            , fnSecurityAmount [ACD AMOUNT]
            , fnConnLoad[LOAD]
            , fnMtrMultiplier[MTR MULTIPLIER]
            , fnMtrPhase [MTR PHASE]
            , fnCurrReading[CURRENT READING]
            , fnPrevReading[PREVIOUS READING]
            , fnBillUnits[UNIT BILLED]
            , fnAvgUnits [AVERAGE UNIT]
            , fnBillPeriod [BILL PERIOD]
            , fnArrSOP +fnArrFSA +fnArrED +fnArrMCT +fnArrSURC[ARREAR TOTAL]
            , fnPaidTotal[PAID TOTAL]
            , fdPaidDate
            , fnCurrSOP[CURRENT SOP]
            , fnCurrFSA[CURRENT FSA]
            , fnCurrED[CURRENT ED]
            , fnCurrMCT[CURRENT MCT]
            , fnNetCapPenalty[CAP PENALTY]
            , fnNetMdiPenalty[MDI]
            , fnFixcharges[FIXED CHARGES]
            , fnChrSOP +fnChrFSA +fnChrED +fnChrMCT[CHARGES]
            , fsChrBNO[BNO]
            , fnChrPNO [PNO]
            , fnAlwSOP+fnAlwFSA +fnAlwED +fnAlwMCT[ALLOWANCE]
            , fsAlwBNO [BNO]
            , fnAlwPNO [PNO]
            , fnNetMtrRent[MTR RENT]
            , fnNetTotal[NET TOTAL]
            , fnNetSURC[NET SURCHARGE]
            , fnNetGross[GROSS TOTAL]
            , CASE
                       WHEN fnflgPDCO>2
                                THEN 'PDCO'
                                ELSE 'LIVE'
              END 'STATUS'
            , fsCurrMtrStatus
            , fnMdiReading
            , fnNetMdiPenalty


     FROM
              (


                     SELECT *
                          , NULL AS FDBACKUPDATE
                          , 109  AS FANSESSIONCODE
                     FROM
                            tblLedger
                     UNION ALL
                     SELECT *
                          , NULL AS FDBACKUPDATE
                          , 109  AS FANSESSIONCODE
                     FROM
                            tblPREVIOUSLEDGER
                     UNION ALL
                     SELECT *
                     FROM
                            UH_BACKUP..tblbackupledger

              )
              AS T
              --WHERE T.FSSUBDIV=102 AND T.FNGROUP=102 AND T.FNCATEGORY=6 and fsledger=2829  and fnaccno =2
     WHERE
              T.FSSUBDIV      =@subdiv
              AND T.FNGROUP   =@group
              AND T.FNCATEGORY=@category
              and t.fsledger  =@ledger
              and t.fnaccno   =@accno




           )

it works fine in query designer but when i save this data set it gives

An item with the same key has already been added.

i want to know is there any problem with query.

Upvotes: 2

Views: 4148

Answers (1)

Jayvee
Jayvee

Reputation: 10875

This error is normally due to fields with the same alias, in your query it seems that there are 2 BNO and 2 PNO columns. There might be others, check all the columns and make sure they all have distinct aliases.

Upvotes: 5

Related Questions