Hello thank you for your response I make first below query: ;with cte ( invId, uid, mark, counter_id, counter_vatNumber, counter_country, counter_branch, counter_name, counter_street, counter_number, counter_postalCode, counter_city, series, aa, issueDate, invoiceType, vatPaymentSuspension, currency, exchangeRate, selfPricing, dispatchDate, dispatchTime, vehicleNumber, movePurspose, totalNetValue, totalVatAmount, totalWithheldAmount, totalFeesAmount, totalStampDutyamount, totalOtherTaxesAmount, totalDeductionsAmount, totalGrossValue, ComId, BraId, unid, stId, xmlResult, invoicePer, IncOrExp, SOrR, iFromEfar, paymentType, unidCaller, correlatedInvoices, cancelledByMark ) AS ( SELECT invId, uid, mark, counter_id, counter_vatNumber, counter_country, counter_branch, counter_name, counter_street, counter_number, counter_postalCode, counter_city, series, aa, issueDate, invoiceType, vatPaymentSuspension, currency, exchangeRate, selfPricing, dispatchDate, dispatchTime, vehicleNumber, movePurspose, totalNetValue, totalVatAmount, totalWithheldAmount, totalFeesAmount, totalStampDutyamount, totalOtherTaxesAmount, totalDeductionsAmount, totalGrossValue, ComId, BraId, unid, stId, xmlResult, (SELECT TtdtD_Desc FROM DBCOMMON.dbo.TimTaxDocTypeD AS TTDT WHERE (TtdtD_Code = invoiceHeader.invoiceType)) AS invoicePer, IncOrExp, SOrR, iFromEfar, (SELECT TOP 1 type FROM invoicePayments WHERE ((invoiceHeader.ComId = 1) OR (invoiceHeader.ComId IS NULL)) AND ((invoicePayments.ComId = 1) OR (invoicePayments.ComId IS NULL)) AND (invoiceHeader.LgLRec = 1 AND invoiceHeader.LgLRec IS NOT NULL) AND (invoicePayments.LgLRec = 1 AND invoicePayments.LgLRec IS NOT NULL) AND invoicePayments.headid = invoiceHeader.unid ORDER BY invoicePayments.unid) AS paymentType, unidCaller, correlatedInvoices, cancelledByMark FROM invoiceHeader WHERE ((invoiceHeader.ComId = 1) OR (invoiceHeader.ComId IS NULL)) AND (invoiceHeader.LgLRec = 1 AND invoiceHeader.LgLRec IS NOT NULL) AND IncOrExp = 1 AND invoiceHeader.issueDate BETWEEN '2021/01/01' AND '2021/12/31' AND invoiceHeader.stId = 0 UNION ALL SELECT invId, [uid], mark, counter_id, counter_vatNumber, counter_country, counter_branch, counter_name, counter_street, counter_number, counter_postalCode, counter_city, series, aa, issueDate, invoiceType, vatPaymentSuspension, currency, exchangeRate, selfPricing, dispatchDate, dispatchTime, vehicleNumber, movePurspose, isnull([1] , 0) AS totalNetValue, isnull([2] , 0) AS totalVatAmount, isnull([3] , 0) AS totalWithheldAmount, isnull([4] , 0) AS totalFeesAmount, isnull([5] , 0) AS totalStampDutyamount, isnull([6] , 0) AS totalOtherTaxesAmount, isnull([7] , 0) AS totalDeductionsAmount, isnull([1] , 0) + isnull([2] , 0) - isnull([3] , 0) + isnull([4] , 0) + isnull([5] , 0) + isnull([6] , 0) - isnull([7] , 0) AS totalGrossValue, ComId , BraId, unid, stId, xmlResult, invoicePer, IncOrExp, SOrR, iFromEfar, paymentType, unidCaller, correlatedInvoices, cancelledByMark FROM ( SELECT Glh_Id AS invId, '' AS [uid], 0 AS mark, GelKinHeader.Glh_KvdPel AS counter_id, Pel_Afm AS counter_vatNumber, (SELECT CDescr FROM Xores INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PXor ON Xores.Xor_Country = PXor.Id WHERE Type = 200017 AND Xor_Id = PelMas.Pel_KvdXvra) AS counter_country, GelKinHeader.BraId AS counter_branch, PelMas.Pel_Onoma AS counter_name, PelMas.Pel_Odos AS counter_street, PelMas.Pel_Arith AS counter_number, PelMas.Pel_TK AS counter_postalCode, (SELECT GPar_Per FROM GenParam WHERE GPar_Typos = 'PERIOXES' AND GPar_Id = PelMas.Pel_Perioxh) AS counter_city, GelKinHeader.Glh_Seira AS series, CAST(GelKinHeader.Glh_ArParastatikou AS NVARCHAR(100)) AS aa, GelKinHeader.Glh_DateKin AS issueDate, TtdtD_Code AS invoiceType, 0 AS vatPaymentSuspension, (SELECT CDescr FROM PelNomBasic INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PNom ON PelNomBasic.PenB_currency = PNom.Id WHERE Type = 200018 AND PenB_Id = Glh_Nomisma) AS currency, Glh_Isotimia AS exchangeRate, GeaH_selfPricing AS selfPricing, null AS dispatchDate, null AS dispatchTime, null AS vehicleNumber, (SELECT GPar_movePurspose FROM GenParam WHERE GPar_Typos = 'SKOPOS' AND GPar_Id = Glh_IdSkopos) AS movePurspose, GLM_typeOfValue, CASE GLD_PosoPis WHEN 0 THEN GLD_PosoXr ELSE GLD_PosoPis END AS Poso, GelKinHeader.ComId AS [ComId], GelKinHeader.BraId AS [BraId], 0 AS [unid], -1 AS [stId], 0 AS [xmlResult], TtdtD_Desc AS invoicePer, 1 AS [IncOrExp], GeaH_SendType AS SOrR, 2 AS iFromEfar, (SELECT Code FROM GenParam INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS TrPlhr ON GenParam.GPar_paymentType = TrPlhr.Id WHERE GPar_Typos = 'TRPLHRVMHS' AND Type = 200019 AND GPar_Id = Glh_TrPlhr) AS paymentType, 0 AS unidCaller, Glh_correlatedInvoices AS correlatedInvoices, Glh_cancelledByMark AS cancelledByMark FROM GelKinHeader INNER JOIN GelKinDetail ON GelKinDetail.GLD_ArAruroy = GelKinHeader.GLH_Aruro AND GelKinDetail.Gld_ProtAr = GelKinHeader.Glh_ProtAr INNER JOIN GelMas ON GelKinDetail.GKD_KvdLog = GelMas.Glm_Kvd INNER JOIN GelEtAruraHeader ON GelKinHeader.Glh_ProtAr = GelEtAruraHeader.GeaH_Id INNER JOIN DBCOMMON.dbo.TimTaxDocTypeD AS TTDT ON TTDT.TtdtD_Id = GelEtAruraHeader.GeaH_TaxDocTypeD LEFT OUTER JOIN PelMas ON GelKinHeader.Glh_KvdPel = PelMas.Pel_Id WHERE ((GelKinHeader.ComId = 1) OR (GelKinHeader.ComId IS NULL)) AND ((GelEtAruraHeader.ComId = 1) OR (GelEtAruraHeader.ComId IS NULL)) AND ((GelMas.ComId = 1) OR (GelMas.ComId IS NULL)) AND ((GelMas.Glm_Elp = 0) OR (GelMas.Glm_Elp IS NULL)) AND ((PelMas.ComId = 1) OR (PelMas.ComId IS NULL)) AND GelKinHeader.Glh_KvdPel > 0 AND (GelKinHeader.Glh_Typos = 4) AND (GelKinHeader.Glh_TypeKin = 1) AND (GelEtAruraHeader.GeaH_SendType = 1) AND GelKinHeader.Glh_DateKin BETWEEN '2021/01/01' AND '2021/12/31' AND NOT EXISTS(SELECT unid FROM invoiceHeader WHERE ((invoiceHeader.ComId = 1) OR (invoiceHeader.ComId IS NULL)) AND (invoiceHeader.LgLRec = 1 AND invoiceHeader.LgLRec IS NOT NULL) AND IncOrExp = 1 AND invoiceHeader.iFromEfar = 2 AND invoiceHeader.invId = GelKinHeader.Glh_Id) UNION ALL SELECT Glh_Id AS invId, '' AS [uid], 0 AS mark, GelKinHeader.Glh_KvdPel AS counter_id, Kpb_Afm AS counter_vatNumber, (SELECT CDescr FROM Xores INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PXor ON Xores.Xor_Country = PXor.Id WHERE Type = 200017 AND Xor_Id = KepPvlBasic.Kpb_KvdXvra) AS counter_country, GelKinHeader.BraId AS counter_branch, KepPvlBasic.Kpb_Epvnymia AS counter_name, KepPvlBasic.Kpb_Address AS counter_street, KepPvlBasic.Kpb_Arith AS counter_number, KepPvlBasic.Kpb_Tk AS counter_postalCode, (SELECT GPar_Per FROM GenParam WHERE GPar_Typos = 'PERIOXES' AND GPar_Id = KepPvlBasic.Kpb_Perioxh) AS counter_city, GelKinHeader.Glh_Seira AS series, CAST(GelKinHeader.Glh_ArParastatikou AS NVARCHAR(100)) AS aa, GelKinHeader.Glh_DateKin AS issueDate, TtdtD_Code AS invoiceType, 0 AS vatPaymentSuspension, (SELECT CDescr FROM PelNomBasic INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PNom ON PelNomBasic.PenB_currency = PNom.Id WHERE Type = 200018 AND PenB_Id = Glh_Nomisma) AS currency, Glh_Isotimia AS exchangeRate, GeaH_selfPricing AS selfPricing, null AS dispatchDate, null AS dispatchTime, null AS vehicleNumber, (SELECT GPar_movePurspose FROM GenParam WHERE GPar_Typos = 'SKOPOS' AND GPar_Id = Glh_IdSkopos) AS movePurspose, GLM_typeOfValue, CASE GLD_PosoPis WHEN 0 THEN GLD_PosoXr ELSE GLD_PosoPis END AS Poso, GelKinHeader.ComId AS [ComId], GelKinHeader.BraId AS [BraId], 0 AS [unid], -1 AS [stId], 0 AS [xmlResult], TtdtD_Desc AS invoicePer, 1 AS [IncOrExp], GeaH_SendType AS SOrR, 2 AS iFromEfar, (SELECT Code FROM GenParam INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS TrPlhr ON GenParam.GPar_paymentType = TrPlhr.Id WHERE GPar_Typos = 'TRPLHRVMHS' AND Type = 200019 AND GPar_Id = Glh_TrPlhr) AS paymentType, 0 AS unidCaller, Glh_correlatedInvoices AS correlatedInvoices, Glh_cancelledByMark AS cancelledByMark FROM GelKinHeader INNER JOIN GelKinDetail ON GelKinDetail.GLD_ArAruroy = GelKinHeader.GLH_Aruro AND GelKinDetail.Gld_ProtAr = GelKinHeader.Glh_ProtAr INNER JOIN GelMas ON GelKinDetail.GKD_KvdLog = GelMas.Glm_Kvd INNER JOIN GelEtAruraHeader ON GelKinHeader.Glh_ProtAr = GelEtAruraHeader.GeaH_Id INNER JOIN DBCOMMON.dbo.TimTaxDocTypeD AS TTDT ON TTDT.TtdtD_Id = GelEtAruraHeader.GeaH_TaxDocTypeD INNER JOIN KepPvlBasic ON GelKinHeader.Glh_Afm = KepPvlBasic.Kpb_Afm WHERE ((GelKinHeader.ComId = 1) OR (GelKinHeader.ComId IS NULL)) AND ((GelEtAruraHeader.ComId = 1) OR (GelEtAruraHeader.ComId IS NULL)) AND ((GelMas.ComId = 1) OR (GelMas.ComId IS NULL)) AND ((GelMas.Glm_Elp = 0) OR (GelMas.Glm_Elp IS NULL)) AND ((KepPvlBasic.ComId = 1) OR (KepPvlBasic.ComId IS NULL)) AND GelKinHeader.Glh_KvdPel = 0 AND GelKinHeader.Glh_Typos = 2 AND GelKinHeader.Glh_Afm <> '' AND GelKinHeader.Glh_Afm IS NOT NULL AND Glh_TypeKin = 1 AND (GelEtAruraHeader.GeaH_SendType = 1) AND GelKinHeader.Glh_DateKin BETWEEN '2021/01/01' AND '2021/12/31' AND NOT EXISTS(SELECT unid FROM invoiceHeader WHERE ((invoiceHeader.ComId = 1) OR (invoiceHeader.ComId IS NULL)) AND (invoiceHeader.LgLRec = 1 AND invoiceHeader.LgLRec IS NOT NULL) AND IncOrExp = 1 AND invoiceHeader.iFromEfar = 2 AND invoiceHeader.invId = GelKinHeader.Glh_Id) ) AS SourceTable Pivot ( SUM (Poso) FOR GLM_typeOfValue IN ([1], [2], [3], [4], [5], [6], [7]) ) AS pivotTable UNION ALL SELECT TimHeader.Tih_AAEggrafhs AS invId, '' AS uid, 0 AS mark, TimHeader.Tih_KvdPelProm AS counter_id, Pel_Afm AS counter_vatNumber, (SELECT CDescr FROM Xores INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PXor ON Xores.Xor_Country = PXor.Id WHERE Type = 200017 AND Xor_Id = Pel_KvdXvra) AS counter_country, TimHeader.BraId AS counter_branch, PelMas.Pel_Onoma AS counter_name, PelMas.Pel_Odos AS counter_street, PelMas.Pel_Arith AS counter_number, PelMas.Pel_TK AS counter_postalCode, (SELECT GPar_Per FROM GenParam WHERE GPar_Typos = 'PERIOXES' AND GPar_Id = PelMas.Pel_Perioxh) AS counter_city, TimHeader.Tih_Seira AS series, CAST(TimHeader.Tih_ArParastatikou AS NVARCHAR(100)) AS aa, TimHeader.Tih_Date AS issueDate, TtdtD_Code AS invoiceType, 0 AS vatPaymentSuspension, (SELECT CDescr FROM PelNomBasic INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PNom ON PelNomBasic.PenB_currency = PNom.Id WHERE Type = 200018 AND PenB_Id = Tih_XN) AS currency, Tih_Isotimia AS exchangeRate, 0 AS selfPricing, Tih_Date AS dispatchDate, Tih_VraApostolhs AS dispatchTime, Tih_ArFortosevs AS vehicleNumber, (SELECT Code FROM GenParam INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS Skopos ON GenParam.GPar_movePurspose = Skopos.Id WHERE GPar_Typos = 'SKOPOS' AND Type = 200014 AND GPar_Id = Tih_IdSkopos) AS movePurspose, SUM(Tid_AxiaYpokFpa) AS [totalNetValue], SUM(Tid_AxiaFpa) AS [totalVatAmount], 0 AS totalWithheldAmount, 0 AS totalFeesAmount, 0 AS totalStampDutyamount, 0 AS totalOtherTaxesAmount, 0 AS totalDeductionsAmount, Tih_TelAxia AS totalGrossValue, TimHeader.ComId AS [ComId], TimHeader.BraId AS [BraId],0 AS [unid], -1 AS [stId], 0 AS [xmlResult], TtdtD_Desc AS invoicePer, Tip_TypeKin AS [IncOrExp], Tip_SendType AS SOrR, 101 AS iFromEfar, (SELECT Code FROM GenParam INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS TrPlhr ON GenParam.GPar_paymentType = TrPlhr.Id WHERE GPar_Typos = 'TRPLHRVMHS' AND Type = 200019 AND GPar_Id = Tih_TroposPlhrvmhs) AS paymentType, 0 AS unidCaller, Tih_correlatedInvoices AS correlatedInvoices, Tih_cancelledByMark AS cancelledByMark FROM TimHeader INNER JOIN TimParastatika ON TimParastatika.Tip_SId = TimHeader.Tih_SId AND TimParastatika.Tip_Seira = TimHeader.Tih_Seira AND TimParastatika.Tip_ArEntypou = TimHeader.Tih_SeiraEidosEntypou AND TimParastatika.Tip_ArParastatikou = TimHeader.Tih_EidosEntypou INNER JOIN DBCOMMON.dbo.TimTaxDocTypeD AS TTDT ON TTDT.TtdtD_Id = TimParastatika.Tip_TaxDocTypeD INNER JOIN PelMas ON TimHeader.Tih_KvdPelProm = PelMas.Pel_Id INNER JOIN TimDetail ON TimHeader.Tih_AAEggrafhs= TimDetail.Tid_HeadId WHERE ((TimHeader.ComId = 1) OR (TimHeader.ComId IS NULL)) AND ((PelMas.ComId = 1) OR (PelMas.ComId IS NULL)) AND (TimParastatika.Tip_SendType = 1) AND (TimParastatika.Tip_TypeKin = 1) AND TimHeader.Tih_Date BETWEEN '2021/01/01' AND '2021/12/31' AND NOT EXISTS(SELECT unid FROM invoiceHeader WHERE ((invoiceHeader.ComId = 1) OR (invoiceHeader.ComId IS NULL)) AND (invoiceHeader.LgLRec = 1 AND invoiceHeader.LgLRec IS NOT NULL) AND IncOrExp = 1 AND invoiceHeader.iFromEfar = 101 AND invoiceHeader.invId = TimHeader.Tih_AAEggrafhs) GROUP BY TimHeader.Tih_AAEggrafhs, TimHeader.Tih_KvdPelProm, Pel_Afm, Pel_KvdXvra, TimHeader.BraId, PelMas.Pel_Onoma, PelMas.Pel_Odos, PelMas.Pel_Arith, PelMas.Pel_TK, Pel_Perioxh, TimHeader.Tih_Seira, TimHeader.Tih_ArParastatikou, TimHeader.Tih_Date, TtdtD_Code, Tih_XN, Tih_Isotimia, Tih_VraApostolhs, Tih_ArFortosevs, TimHeader.Tih_IdSkopos, Tih_TelAxia, TimHeader.ComId, TtdtD_Desc, Tip_TypeKin, Tip_SendType, Tih_TroposPlhrvmhs, Tih_correlatedInvoices, Tih_cancelledByMark UNION ALL SELECT TimHeaderEx.Tih_AA AS invId, '' AS uid, 0 AS mark, TimHeaderEx.Tih_KvdPelProm AS counter_id, Pel_Afm AS counter_vatNumber, (SELECT CDescr FROM Xores INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PXor ON Xores.Xor_Country = PXor.Id WHERE Type = 200017 AND Xor_Id = Pel_KvdXvra) AS counter_country, TimHeaderEx.BraId AS counter_branch, PelMas.Pel_Onoma AS counter_name, PelMas.Pel_Odos AS counter_street, PelMas.Pel_Arith AS counter_number, PelMas.Pel_TK AS counter_postalCode, (SELECT GPar_Per FROM GenParam WHERE GPar_Typos = 'PERIOXES' AND GPar_Id = PelMas.Pel_Perioxh) AS counter_city, TimHeaderEx.Tih_Seira AS series, CAST(TimHeaderEx.Tih_Arithmos AS NVARCHAR(100)) AS aa, TimHeaderEx.Tih_DateKin AS issueDate, TtdtD_Code AS invoiceType, 0 AS vatPaymentSuspension, (SELECT CDescr FROM PelNomBasic INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PNom ON PelNomBasic.PenB_currency = PNom.Id WHERE Type = 200018 AND PenB_Id = Tih_Nomisma) AS currency, Tih_Isotimia AS exchangeRate, 0 AS selfPricing, Tih_DateKin AS dispatchDate, Tih_VraApostolhs AS dispatchTime, Tih_ArFortosevs AS vehicleNumber, (SELECT Code FROM GenParam INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS Skopos ON GenParam.GPar_movePurspose = Skopos.Id WHERE GPar_Typos = 'SKOPOS' AND Type = 200014 AND GPar_Id = Tih_IdSkopos) AS movePurspose, SUM(Tid_AxiaYpokFpa) AS [totalNetValue], SUM(Tid_AxiaFpa) AS [totalVatAmount], 0 AS totalWithheldAmount, 0 AS totalFeesAmount, 0 AS totalStampDutyamount, 0 AS totalOtherTaxesAmount, 0 AS totalDeductionsAmount, Tih_TelikhAxia AS totalGrossValue, TimHeaderEx.ComId AS [ComId], TimHeaderEx.BraId AS [BraId],0 AS [unid], -1 AS [stId], 0 AS [xmlResult], TtdtD_Desc AS invoicePer, Tip_TypeKin AS [IncOrExp], Tip_SendType AS SOrR, 102 AS iFromEfar, (SELECT Code FROM GenParam INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS TrPlhr ON GenParam.GPar_paymentType = TrPlhr.Id WHERE GPar_Typos = 'TRPLHRVMHS' AND Type = 200019 AND GPar_Id = Tih_TroposPlhr) AS paymentType, 0 AS unidCaller, Tih_correlatedInvoices AS correlatedInvoices, Tih_cancelledByMark AS cancelledByMark FROM TimHeaderEx INNER JOIN TimParastEx ON TimParastEx.Tip_ArParastatikou = TimHeaderEx.Tih_ArParastatikou INNER JOIN DBCOMMON.dbo.TimTaxDocTypeD AS TTDT ON TTDT.TtdtD_Id = TimParastEx.Tip_TaxDocTypeD INNER JOIN PelMas ON TimHeaderEx.Tih_KvdPelProm = PelMas.Pel_Id INNER JOIN TimDetailEx ON TimHeaderEx.Tih_AA = TimDetailEx.Tid_HeadId WHERE ((TimHeaderEx.ComId = 1) OR (TimHeaderEx.ComId IS NULL)) AND ((PelMas.ComId = 1) OR (PelMas.ComId IS NULL)) AND (TimParastEx.Tip_SendType = 1) AND (TimParastEx.Tip_TypeKin = 1) AND TimHeaderEx.Tih_DateKin BETWEEN '2021/01/01' AND '2021/12/31' AND NOT EXISTS(SELECT unid FROM invoiceHeader WHERE ((invoiceHeader.ComId = 1) OR (invoiceHeader.ComId IS NULL)) AND (invoiceHeader.LgLRec = 1 AND invoiceHeader.LgLRec IS NOT NULL) AND IncOrExp = 1 AND invoiceHeader.iFromEfar = 102 AND invoiceHeader.invId = TimHeaderEx.Tih_AA) GROUP BY TimHeaderEx.Tih_AA, TimHeaderEx.Tih_KvdPelProm, Pel_Afm, Pel_KvdXvra, TimHeaderEx.BraId, PelMas.Pel_Onoma, PelMas.Pel_Odos, PelMas.Pel_Arith, PelMas.Pel_TK, Pel_Perioxh, TimHeaderEx.Tih_Seira, TimHeaderEx.Tih_Arithmos, TimHeaderEx.Tih_DateKin, TtdtD_Code, Tih_Nomisma, Tih_Isotimia, Tih_VraApostolhs, Tih_ArFortosevs, TimHeaderEx.Tih_IdSkopos, Tih_TelikhAxia, TimHeaderEx.ComId, TtdtD_Desc, Tip_TypeKin, Tip_SendType, Tih_TroposPlhr, Tih_correlatedInvoices, Tih_cancelledByMark ) SELECT ROW_NUMBER() OVER(ORDER BY invId ASC) AS [a/a], 0 AS [select], uid, mark, invId, counter_id, counter_vatNumber, counter_country, counter_branch, counter_name, counter_street, counter_number, counter_postalCode, counter_city, series, aa, issueDate, invoiceType, vatPaymentSuspension, currency, exchangeRate, selfPricing, dispatchDate, dispatchTime, vehicleNumber, movePurspose, totalNetValue, totalVatAmount, totalWithheldAmount, totalFeesAmount, totalStampDutyamount, totalOtherTaxesAmount, totalDeductionsAmount, totalGrossValue, ComId, BraId, unid, null AS [status], stId, xmlResult, invoicePer, [IncOrExp], SOrR, iFromEfar, paymentType, unidCaller, correlatedInvoices, cancelledByMark FROM cte then for every row of this query, I make the second query: ;with cte (invId, lineNumber, measurementUnit, invoiceDetailType, netValue, vatCategory, vatAmount, vatExemptionCategory, discountOption, withheldAmount, withheldPercentCategory, stampDutyAmount, stampDutyPercentCategory, feesAmount, feesPercentCategory, otherTaxesPercentCategory, otherTaxesAmount, deductionsAmount, lineComments, ComId, BraId, recType, taxCategory, classificationType, classificationCategory, classificationVat ) AS ( SELECT invoiceDetails.invId, lineNumber, measurementUnit, invoiceDetailType, netValue, vatCategory, vatAmount, vatExemptionCategory, discountOption, withheldAmount, withheldPercentCategory, stampDutyAmount, stampDutyPercentCategory, feesAmount, feesPercentCategory, otherTaxesPercentCategory, otherTaxesAmount, deductionsAmount, lineComments, invoiceHeader.ComId , invoiceHeader.BraId, invoiceDetails.recType, invoiceDetails.taxCategory, CASE DBTAXPARAM.isVat WHEN 1 THEN '' ELSE invClassificationType.classificationType END AS classificationType, classificationCategory, CASE DBTAXPARAM.isVat WHEN 1 THEN invClassificationType.classificationType ELSE '' END AS classificationVat FROM invoiceDetails INNER JOIN invoiceHeader ON invoiceHeader.unid = invoiceDetails.headid INNER JOIN invClassificationType ON invoiceHeader.unid = invClassificationType.headid AND invoiceDetails.unid = invClassificationType.headidD INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS DBTAXPARAM ON DBTAXPARAM.Code = invClassificationType.classificationType WHERE ((invoiceHeader.ComId = 1) OR (invoiceHeader.ComId IS NULL)) AND ((invoiceDetails.ComId = 1) OR (invoiceDetails.ComId IS NULL)) AND (invoiceHeader.LgLRec = 1 AND invoiceHeader.LgLRec IS NOT NULL) AND (invoiceDetails.LgLRec = 1 AND invoiceDetails.LgLRec IS NOT NULL) AND invoiceHeader.invId = 3 UNION ALL SELECT Tih_AAEggrafhs AS invId, 0 AS lineNumber, ISNULL(invoiceDetailTypeCode.Code, 0) AS invoiceDetailType, 0 AS invoiceDetailType, SUM(Tid_AxiaYpokFpa) AS netValue, (SELECT PFpa.Code FROM TrnKvdFpa INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PFpa ON TrnKvdFpa.Kvd_vatCategory = PFpa.Id WHERE (PFpa.Type = 200003) AND (TimDetail.Tid_KvdFpa = TrnKvdFpa.Kvd_Poso)) AS vatCategory, SUM(Tid_AxiaFpa) AS vatAmount, ISNULL(vatExemptionCode.Code, 0) AS vatExemptionCategory, 0 AS discountOption, 0 AS withheldAmount, CASE recTypeCode.Code WHEN 1 THEN ISNULL(taxesCode.Code, 0) ELSE (SELECT DBCOMMON.dbo.DBTAXPARAM.Code FROM DBCOMMON.dbo.DBTAXPARAM WHERE taxesCode.Code = DBCOMMON.dbo.DBTAXPARAM.id AND [Type] = 200005) END AS withheldPercentCategory, 0 AS stampDutyAmount, CASE recTypeCode.Code WHEN 4 THEN ISNULL(taxesCode.Code, 0) ELSE (SELECT DBCOMMON.dbo.DBTAXPARAM.Code FROM DBCOMMON.dbo.DBTAXPARAM WHERE taxesCode.Code = DBCOMMON.dbo.DBTAXPARAM.id AND [Type] = 200007) END AS stampDutyPercentCategory, 0 AS feesAmount, CASE recTypeCode.Code WHEN 2 THEN ISNULL(taxesCode.Code, 0) ELSE (SELECT DBCOMMON.dbo.DBTAXPARAM.Code FROM DBCOMMON.dbo.DBTAXPARAM WHERE taxesCode.Code = DBCOMMON.dbo.DBTAXPARAM.id AND [Type] = 200008) END AS feesPercentCategory, CASE recTypeCode.Code WHEN 3 THEN ISNULL(taxesCode.Code, 0) ELSE (SELECT DBCOMMON.dbo.DBTAXPARAM.Code FROM DBCOMMON.dbo.DBTAXPARAM WHERE taxesCode.Code = DBCOMMON.dbo.DBTAXPARAM.id AND [Type] = 200006) END AS otherTaxesPercentCategory, 0 AS otherTaxesAmount, 0 AS deductionsAmount, '' AS lineComments, TimHeader.ComId AS [ComId], TimHeader.BraId AS [BraId], ISNULL(recTypeCode.Code, 0) AS recType, ISNULL(taxesCode.Code, 0) As taxCategory, ISNULL(classificationType.Code, 0) As classificationType, ISNULL(classificationCategory.Code, 0) As classificationCategory, ISNULL(classificationVat.Code, 0) As classificationVat FROM TimHeader INNER JOIN TimParastatika ON TimParastatika.Tip_SId = TimHeader.Tih_SId AND TimParastatika.Tip_Seira = TimHeader.Tih_Seira AND TimParastatika.Tip_ArEntypou = TimHeader.Tih_SeiraEidosEntypou AND TimParastatika.Tip_ArParastatikou = TimHeader.Tih_EidosEntypou INNER JOIN DBCOMMON.dbo.TimTaxDocTypeD AS TTDT ON TTDT.TtdtD_Id = TimParastatika.Tip_TaxDocTypeD INNER JOIN PelMas ON TimHeader.Tih_KvdPelProm = PelMas.Pel_Id INNER JOIN TimDetail ON TimHeader.Tih_AAEggrafhs= TimDetail.Tid_HeadId INNER JOIN ApoMas ON TimDetail.Tid_KvdEidous = ApoMas.Map_Kvdik LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS recTypeCode ON recTypeCode.Id = ApoMas.Map_recType LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS taxesCode ON taxesCode.Id = ApoMas.Map_taxCategory LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS vatExemptionCode ON vatExemptionCode.Id = PelMas.Pel_vatExemptionCategory LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS invoiceDetailTypeCode ON invoiceDetailTypeCode.Id = ApoMas.Map_invoiceDetailType LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS classificationCategory ON classificationCategory.Id = ApoMas.Map_classificationCategoryI LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS classificationType ON classificationType.Id = TimParastatika.Tip_classificationType LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS classificationVat ON classificationVat.Id = TimParastatika.Tip_classificationVat WHERE Tih_AAEggrafhs = 3 AND NOT EXISTS(SELECT unid FROM invClassificationType WHERE ((invClassificationType.ComId = 1) OR (invClassificationType.ComId IS NULL)) AND (invClassificationType.LgLRec = 1 AND invClassificationType.LgLRec IS NOT NULL) AND invClassificationType.invId = TimHeader.Tih_AAEggrafhs) GROUP BY Tih_AAEggrafhs, Tid_KvdFpa, TimHeader.ComId, TimHeader.BraId, taxesCode.Code, recTypeCode.Code, vatExemptionCode.Code, classificationType.Code, classificationCategory.Code, classificationVat.Code, invoiceDetailTypeCode.Code UNION ALL SELECT TiEA_TimId AS invId, 0 AS lineNumber, 0 measurementUnit, ISNULL(invoiceDetailTypeCode.Code, 0) AS invoiceDetailType, SUM(TiEA_Poso) AS netValue, (SELECT PFpa.Code FROM TrnKvdFpa INNER JOIN DBCOMMON.dbo.DBTAXPARAM AS PFpa ON TrnKvdFpa.Kvd_vatCategory = PFpa.Id WHERE (PFpa.Type = 200003) AND (TimXrevseis.Tix_PosostoFpa = TrnKvdFpa.Kvd_Poso)) AS vatCategory, SUM(TiEA_VatValue) AS vatAmount, ISNULL(vatExemptionCode.Code, 0) AS vatExemptionCategory, 0 AS discountOption, 0 AS withheldAmount, CASE recTypeCode.Code WHEN 1 THEN ISNULL(taxesCode.Code, 0) ELSE (SELECT DBCOMMON.dbo.DBTAXPARAM.Code FROM DBCOMMON.dbo.DBTAXPARAM WHERE taxesCode.Code = DBCOMMON.dbo.DBTAXPARAM.id AND [Type] = 200005) END AS withheldPercentCategory, 0 AS stampDutyAmount, CASE recTypeCode.Code WHEN 4 THEN ISNULL(taxesCode.Code, 0) ELSE (SELECT DBCOMMON.dbo.DBTAXPARAM.Code FROM DBCOMMON.dbo.DBTAXPARAM WHERE taxesCode.Code = DBCOMMON.dbo.DBTAXPARAM.id AND [Type] = 200007) END AS stampDutyPercentCategory, 0 AS feesAmount, CASE recTypeCode.Code WHEN 2 THEN ISNULL(taxesCode.Code, 0) ELSE (SELECT DBCOMMON.dbo.DBTAXPARAM.Code FROM DBCOMMON.dbo.DBTAXPARAM WHERE taxesCode.Code = DBCOMMON.dbo.DBTAXPARAM.id AND [Type] = 200008) END AS feesPercentCategory, CASE recTypeCode.Code WHEN 3 THEN ISNULL(taxesCode.Code, 0) ELSE (SELECT DBCOMMON.dbo.DBTAXPARAM.Code FROM DBCOMMON.dbo.DBTAXPARAM WHERE taxesCode.Code = DBCOMMON.dbo.DBTAXPARAM.id AND [Type] = 200006) END AS otherTaxesPercentCategory, 0 AS otherTaxesAmount, 0 AS deductionsAmount, '' AS lineComments, TimHeader.ComId AS [ComId], TimHeader.BraId AS [BraId], ISNULL(recTypeCode.Code, 0) AS recType, ISNULL(taxesCode.Code, 0) As taxCategory, ISNULL(classificationType.Code, 0) As classificationType, ISNULL(classificationCategory.Code, 0) As classificationCategory, ISNULL(classificationVat.Code, 0) As classificationVat FROM TimHeader INNER JOIN TimParastatika ON TimParastatika.Tip_SId = TimHeader.Tih_SId AND TimParastatika.Tip_Seira = TimHeader.Tih_Seira AND TimParastatika.Tip_ArEntypou = TimHeader.Tih_SeiraEidosEntypou AND TimParastatika.Tip_ArParastatikou = TimHeader.Tih_EidosEntypou INNER JOIN DBCOMMON.dbo.TimTaxDocTypeD AS TTDT ON TTDT.TtdtD_Id = TimParastatika.Tip_TaxDocTypeD INNER JOIN PelMas ON TimHeader.Tih_KvdPelProm = PelMas.Pel_Id INNER JOIN TimDetail ON TimHeader.Tih_AAEggrafhs= TimDetail.Tid_HeadId INNER JOIN TimEA ON TimDetail.Tid_AAEggrafhs = TimEA.TiEA_TimDetId AND TimDetail.Tid_subId = TimEA.TiEA_RowGrid AND TimDetail.Tid_HeadId = TimEA.TiEA_TimId INNER JOIN TimXrevseis ON TimEA.TiEA_IdExp = TimXrevseis.Tix_Id LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS recTypeCode ON recTypeCode.Id = TimXrevseis.Tix_recType LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS taxesCode ON taxesCode.Id = TimXrevseis.Tix_taxCategory LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS vatExemptionCode ON vatExemptionCode.Id = TimXrevseis.Tix_vatExemptionCategory LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS invoiceDetailTypeCode ON invoiceDetailTypeCode.Id = TimXrevseis.Tix_invoiceDetailType LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS classificationCategory ON classificationCategory.Id = TimXrevseis.Tix_classificationCategoryI LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS classificationType ON classificationType.Id = TimXrevseis.Tix_classificationTypeI LEFT OUTER JOIN (SELECT Id, Code, Descr FROM DBCOMMON.dbo.DBTAXPARAM) AS classificationVat ON classificationVat.Id = TimXrevseis.Tix_classificationVat WHERE Tih_AAEggrafhs = 3 AND (TiEA_Poso <> 0 OR TiEA_VatValue <> 0) AND (((TimXrevseis.Tix_typeOfValue = 1) AND (TimXrevseis.Tix_typeOfValue <> 2) AND (TimXrevseis.Tix_typeOfValue IS NOT NULL )) OR ( (TimXrevseis.Tix_typeOfValue >= 1) AND (Tix_recType > 0) AND (Tix_recType IS NOT NULL))) AND NOT EXISTS(SELECT unid FROM invClassificationType WHERE ((invClassificationType.ComId = 1) OR (invClassificationType.ComId IS NULL)) AND (invClassificationType.LgLRec = 1 AND invClassificationType.LgLRec IS NOT NULL) AND invClassificationType.invId = TimHeader.Tih_AAEggrafhs) GROUP BY TimEA.TiEA_TimId, Tix_PosostoFpa, TimHeader.ComId, TimHeader.BraId, vatExemptionCode.Code, Tix_typeOfValue, recTypeCode.Code, taxesCode.Code, classificationType.Code, classificationCategory.Code, classificationVat.Code, invoiceDetailTypeCode.Code ) SELECT invId, DENSE_RANK() OVER(PARTITION BY invId ORDER BY vatCategory ASC, recType ASC, invoiceDetailType ASC) AS lineNumber, measurementUnit, invoiceDetailType, SUM(netValue) AS netValue, vatCategory, SUM(vatAmount) AS vatAmount, vatExemptionCategory, discountOption, SUM(withheldAmount) AS withheldAmount, withheldPercentCategory, SUM(stampDutyAmount) AS stampDutyAmount, stampDutyPercentCategory, SUM(feesAmount) AS feesAmount, feesPercentCategory, otherTaxesPercentCategory, SUM(otherTaxesAmount) AS otherTaxesAmount, SUM(deductionsAmount) AS deductionsAmount, lineComments , ComId, BraId, recType, taxCategory, classificationType, classificationCategory , classificationVat FROM cte WHERE lineNumber = 0 GROUP BY invId, vatCategory, measurementUnit, invoiceDetailType, vatExemptionCategory, discountOption, withheldPercentCategory, stampDutyPercentCategory, feesPercentCategory, otherTaxesPercentCategory, lineComments, ComId, BraId, recType, taxCategory, classificationType, classificationCategory , classificationVat ORDER BY invId, lineNumber and from this query I write in threetables: invoiceHeader invoiceDetail invoiceClassification and I make an other query for inserting in table invoicePayments and another to insert in invoiceTaxes.