Select SubString(Cast(:AnoMes As varchar), 1, 4) As C1, SubString(Cast(:AnoMes As varchar), 5, 2) As C2, m.S_CODIBGE_MUN As C3, Upper(m.S_NOM_MUN) As C4, m.S_UF_EST As C5, '1' As C6, Case When PLANO.S_TIP_PLN = 'F' Then 2 When PLANO.S_TIP_PLN = 'P' Then 1 End As C7, SubString(o.S_CNPJ_ORG, 1, 2) + '.' + SubString(o.S_CNPJ_ORG, 3, 3) + '.' + SubString(o.S_CNPJ_ORG, 6, 3) + '/' + SubString(o.S_CNPJ_ORG, 9, 4) + '-' + SubString(o.S_CNPJ_ORG, 13, 2) As C8, o.S_DCR_ORG As C9, o.N_CODPODER_ORG As C10, Case When o.N_NATJUR_ORG = 1 Then '1' Else '2' End As C11, '1' As C12, Case When cop.S_MAGIST_CARGOORGPESSOA = 'S' Then 2 When cop.S_MRCESTRITPOLIC_CARGOORGPESSOA = 'S' Then 4 Else 7 End As C13, Case When cop.S_PERINV_CARGOORGPESSOA = 'S' Then 2 When cop.S_MAGIST_CARGOORGPESSOA = 'S' Then 3 When cop.S_MRCATVESPC_CARGOORGPESSOA = 'S' Then 5 Else 1 End As C14, op.N_CODORI_ORGPESSOA As C15, SubString(p.S_CPF_PESSOA, 1, 3) + '.' + SubString(p.S_CPF_PESSOA, 4, 3) + '.' + SubString(p.S_CPF_PESSOA, 7, 3) + '-' + SubString(p.S_CPF_PESSOA, 10, 2) As C16, SubString(p.S_PISPASEP_PESSOA, 1, 3) + '.' + SubString(p.S_PISPASEP_PESSOA, 4, 5) + '.' + SubString(p.S_PISPASEP_PESSOA, 9, 2) + '-' + SubString(p.S_PISPASEP_PESSOA, 11, 1) As C17, Case When p.S_SEXO_PESSOA = 'F' Then 1 When p.S_SEXO_PESSOA = 'M' Then 2 Else Null End As C18, Case When p.S_ESTCIVIL_PESSOA = 'S' Then 1 When p.S_ESTCIVIL_PESSOA = 'C' Then 2 When p.S_ESTCIVIL_PESSOA = 'V' Then 3 When p.S_ESTCIVIL_PESSOA = 'P' Then 4 When p.S_ESTCIVIL_PESSOA = 'D' Then 5 When p.S_ESTCIVIL_PESSOA = 'U' Then 6 Else 9 End As C19, Convert(VARCHAR,p.DT_NASC_PESSOA,103) As C20, (Select IsNull(Max(vtg.N_FIMFAIXA_VLRTABGEN), '1') From SITUACAOFUNCIONAL st Inner Join VALORTABELAGENERICA vtg On (st.N_SEQ_SITFUNC = vtg.N_INIFAIXA_VLRTABGEN) And (vtg.DT_FIMVIG_VLRTABGEN >= :DTbase) And (vtg.DT_INIVIG_VLRTABGEN <= :DTbase Or vtg.DT_INIVIG_VLRTABGEN Is Null) And (vtg.N_TABGEN_TABGEN = (Select PARAMETRO.N_VLR_PRM From PARAMETRO Where (PARAMETRO.N_PRM_PRM = 501) And (PARAMETRO.DT_FIMVIG_PRM Is Null))) Where (st.N_PESSOA_PESSOA = p.N_PESSOA_PESSOA) And (st.DT_INIVIG_SITFUNC <= :DTbase) And (st.DT_FIMVIG_SITFUNC >= :DTbase Or st.DT_FIMVIG_SITFUNC Is Null)) As C21, Case When cop.N_VINC_CARGOORGPESSOA = 2 Then 1 When cop.N_VINC_CARGOORGPESSOA = 4 Then 2 Else 4 End As C22, IsNull(Convert(VARCHAR,DBO.FN_CALCULA_DT_INI_SERVPUBLICO(p.N_PESSOA_PESSOA),103), Convert(VARCHAR,op.DT_ADM_ORGPESSOA,103)) As C23, Convert(VARCHAR,op.DT_ADM_ORGPESSOA,103) As C24, (Select (Min(Convert(VARCHAR,CARGOORGANIZACAOPESSOA.DT_INIVIG_CARGOORGPESSOA,103))) From CARGOORGANIZACAOPESSOA Where (CARGOORGANIZACAOPESSOA.N_CODORI_ORGPESSOA = cop.N_CODORI_ORGPESSOA) And (CARGOORGANIZACAOPESSOA.N_ORG_ORG = cop.N_ORG_ORG)) As C25, Case When (Select PARAMETRO.S_VLR_PRM From PARAMETRO Where PARAMETRO.N_PRM_PRM = 603) = 'S' Then IsNull(car.S_NOM_CARREIRA, c.S_DCR_CARGO) Else car.S_NOM_CARREIRA End As C26, Convert(VARCHAR,cop.DT_INIVIG_CARGOORGPESSOA,103) As C27, c.S_DCR_CARGO As C28, ((IsNull((Select Sum(Case When vo.S_NAT_VERBAORG = 'P' Then HS.N_VLR_HISTSAL Else HS.N_VLR_HISTSAL * -1 End) From HISTORICOSALARIO As HS Inner Join VERBAORGANIZACAO vo On (HS.N_ORG_VERBAORG = vo.N_ORG_ORG) And (HS.S_VERBA_VERBAORG = vo.S_VERBA_VERBAORG) Where (HS.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (HS.N_SEQ_CARGOORGPESSOA = cop.N_SEQ_CARGOORGPESSOA) And (HS.N_ORG_VERBAORG = cop.N_ORG_ORG) And (vo.N_TIP_VERBAORG = 3) And (HS.S_MRC13SAL_HISTSAL = 'N') And (HS.N_ANOMESREFER_HISTSAL = :AnoMes)), 0)) + (IsNull((Select Sum(HP.N_VLRPGTO_HISTPGTO + HP.N_VLRCORR_HISTPGTO) From HISTORICOPAGAMENTO HP Inner Join BENEFICIOPESSOA BP On HP.N_PROT_BNFPESSOA = BP.N_PROT_BNFPESSOA Inner Join ITEMBASECALCULO IC On (IC.N_PLN_PLN = BP.N_PLN_PLN) And (IC.N_RUB_RUB = HP.N_RUB_RUB) Inner Join PARAMETRO P On (P.N_VLR_PRM = IC.N_PLNBASCAL_PLNBASCAL) And (P.N_PRM_PRM = 473) Where (BP.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (BP.N_TIPBNF_TIPBNF In (Select TIPOBENEFICIO.N_TIPBNF_TIPBNF From TIPOBENEFICIO Where (TIPOBENEFICIO.N_TIPBNF_TIPBNF In (Select IsNull(PARAMETRO.N_VLR_PRM, 0) From PARAMETRO Where PARAMETRO.N_PRM_PRM In (19, 29, 30, 74))) Or (TIPOBENEFICIO.S_MRCATI_TIPBNF = 'S'))) And ((Year(HP.DT_REFER_HISTPGTO) * 100 + Month(HP.DT_REFER_HISTPGTO)) = :AnoMes) And (HP.S_MRCMENSAL_HISTPGTO <> 'T') And (HP.S_MRCABN_HISTPGTO = 'N')), 0))) As C29, ((IsNull((Select Sum(Case When vo.S_NAT_VERBAORG = 'P' Then HS.N_VLR_HISTSAL Else HS.N_VLR_HISTSAL * -1 End) From HISTORICOSALARIO As HS Inner Join VERBAORGANIZACAO vo On (HS.N_ORG_VERBAORG = vo.N_ORG_ORG) And (HS.S_VERBA_VERBAORG = vo.S_VERBA_VERBAORG) Where (HS.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (HS.N_SEQ_CARGOORGPESSOA = cop.N_SEQ_CARGOORGPESSOA) And (HS.N_ORG_VERBAORG = cop.N_ORG_ORG) And (vo.N_TIP_VERBAORG = 6) And (HS.S_MRC13SAL_HISTSAL = 'N') And (HS.N_ANOMESREFER_HISTSAL = :AnoMes)), (IsNull((Select Sum(HS.N_VLR_HISTSAL) From HISTORICOSALARIO As HS Where (HS.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (HS.N_SEQ_CARGOORGPESSOA = cop.N_SEQ_CARGOORGPESSOA) And (HS.N_ORG_VERBAORG = cop.N_ORG_ORG) And (HS.S_VERBA_VERBAORG In (Select VERBAORGANIZACAO.S_VERBA_VERBAORG From VERBAORGANIZACAO Where (VERBAORGANIZACAO.N_ORG_ORG = cop.N_ORG_ORG) And (VERBAORGANIZACAO.N_TIP_VERBAORG = 3))) And (HS.S_MRC13SAL_HISTSAL = 'N') And (HS.N_ANOMESREFER_HISTSAL = :AnoMes)), 0)))) + (IsNull((Select Sum(HP.N_VLRPGTO_HISTPGTO + HP.N_VLRCORR_HISTPGTO) From HISTORICOPAGAMENTO HP Inner Join BENEFICIOPESSOA BP On HP.N_PROT_BNFPESSOA = BP.N_PROT_BNFPESSOA Inner Join RUBRICA R On R.N_RUB_RUB = HP.N_RUB_RUB Where (BP.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (R.S_NAT_RUB = 'P') And (BP.N_TIPBNF_TIPBNF In ((Select TIPOBENEFICIO.N_TIPBNF_TIPBNF From TIPOBENEFICIO Where (TIPOBENEFICIO.N_TIPBNF_TIPBNF In (Select IsNull(PARAMETRO.N_VLR_PRM, 0) From PARAMETRO Where PARAMETRO.N_PRM_PRM In (19, 29, 30, 74))) Or (TIPOBENEFICIO.S_MRCATI_TIPBNF = 'S')))) And ((Year(HP.DT_REFER_HISTPGTO) * 100 + Month(HP.DT_REFER_HISTPGTO)) = :AnoMes) And (HP.S_MRCMENSAL_HISTPGTO <> 'T') And (HP.S_MRCABN_HISTPGTO = 'N')), 0))) As C30, ((IsNull((Select Sum(HS.N_VLR_HISTSAL) From HISTORICOSALARIO As HS Where (HS.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (HS.N_SEQ_CARGOORGPESSOA = cop.N_SEQ_CARGOORGPESSOA) And (HS.N_ORG_VERBAORG = cop.N_ORG_ORG) And (HS.S_VERBA_VERBAORG In (Select VERBAORGANIZACAO.S_VERBA_VERBAORG From VERBAORGANIZACAO Where (VERBAORGANIZACAO.N_ORG_ORG = cop.N_ORG_ORG) And (VERBAORGANIZACAO.N_TIP_VERBAORG = 1))) And (HS.S_MRC13SAL_HISTSAL = 'N') And (HS.N_ANOMESREFER_HISTSAL = :AnoMes)), 0)) + (IsNull((Select Sum(HP.N_VLRPGTO_HISTPGTO + HP.N_VLRCORR_HISTPGTO) From HISTORICOPAGAMENTO HP Inner Join BENEFICIOPESSOA BP On HP.N_PROT_BNFPESSOA = BP.N_PROT_BNFPESSOA Where (BP.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (BP.N_TIPBNF_TIPBNF In ((Select TIPOBENEFICIO.N_TIPBNF_TIPBNF From TIPOBENEFICIO Where (TIPOBENEFICIO.N_TIPBNF_TIPBNF In (Select IsNull(PARAMETRO.N_VLR_PRM, 0) From PARAMETRO Where PARAMETRO.N_PRM_PRM In (19, 29, 30, 74))) Or (TIPOBENEFICIO.S_MRCATI_TIPBNF = 'S')))) And ((Year(HP.DT_REFER_HISTPGTO) * 100 + Month(HP.DT_REFER_HISTPGTO)) = :AnoMes) And (HP.S_MRCMENSAL_HISTPGTO <> 'T') And (Exists(Select 1 From ITEMBASECALCULO IC Where (IC.N_PLN_PLN = BP.N_PLN_PLN) And (IC.N_PLNBASCAL_PLNBASCAL = :PARAM193) And (IC.N_RUB_RUB = HP.N_RUB_RUB))) And (HP.S_MRCABN_HISTPGTO = 'N')), 0))) As C31, Case When op.DT_ABN_ORGPESSOA Is Null Then '2' Else '1' End As C32, op.DT_ABN_ORGPESSOA As C33, '2' As C34, (Select Cast(COTACAO.N_VLR_COT As numeric(10,2)) From COTACAO Where (COTACAO.N_UM_UM = (Select PARAMETRO.N_VLR_PRM From PARAMETRO Where PARAMETRO.N_PRM_PRM = 304)) And (COTACAO.DT_DIA_COT = (Select Max(COTACAO.DT_DIA_COT) From COTACAO Where (COTACAO.N_UM_UM = (Select PARAMETRO.N_VLR_PRM From PARAMETRO Where PARAMETRO.N_PRM_PRM = 304)) And (COTACAO.DT_DIA_COT <= :DTbase)))) As C35, (Select Sum(DateDiff(DAY, COPT.DT_INIVIG_CARGOORGPESSOA, (IsNull(COPT.DT_FIMVIG_CARGOORGPESSOA, :DTbase)))) From CARGOORGANIZACAOPESSOA As COPT Where (COPT.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (COPT.S_MRCTEMPOCTB_CARGOORGPESSOA = 'S') And (COPT.S_REGIME_REGIMETRAB = 'G') And (COPT.DT_INIVIG_CARGOORGPESSOA < op.DT_ADM_ORGPESSOA)) As C36, (Select Sum(DateDiff(DAY, COPT.DT_INIVIG_CARGOORGPESSOA, (IsNull(COPT.DT_FIMVIG_CARGOORGPESSOA, :DTbase)))) From CARGOORGANIZACAOPESSOA As COPT Where (COPT.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (COPT.S_REGIME_REGIMETRAB = 'P') And (COPT.S_RESPTEMPO_CARGOORGPESSOA = 'I' Or COPT.S_RESPTEMPO_CARGOORGPESSOA = 'E') And (COPT.S_MRCTEMPOCTB_CARGOORGPESSOA = 'S') And (COPT.DT_INIVIG_CARGOORGPESSOA < op.DT_ADM_ORGPESSOA)) As C37, (Select Sum(DateDiff(DAY, COPT.DT_INIVIG_CARGOORGPESSOA, (IsNull(COPT.DT_FIMVIG_CARGOORGPESSOA, :DTbase)))) From CARGOORGANIZACAOPESSOA As COPT Where (COPT.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (COPT.S_MRCTEMPOCTB_CARGOORGPESSOA = 'S') And (COPT.S_REGIME_REGIMETRAB = 'P') And (COPT.S_RESPTEMPO_CARGOORGPESSOA = 'T') And (COPT.DT_INIVIG_CARGOORGPESSOA < op.DT_ADM_ORGPESSOA)) As C38, (Select Sum(DateDiff(DAY, COPT.DT_INIVIG_CARGOORGPESSOA, (IsNull(COPT.DT_FIMVIG_CARGOORGPESSOA, :DTbase)))) From CARGOORGANIZACAOPESSOA As COPT Where (COPT.N_PESSOA_PESSOA = cop.N_PESSOA_PESSOA) And (COPT.S_MRCTEMPOCTB_CARGOORGPESSOA = 'S') And (COPT.S_REGIME_REGIMETRAB = 'P') And (COPT.S_RESPTEMPO_CARGOORGPESSOA = 'U') And (COPT.DT_INIVIG_CARGOORGPESSOA < op.DT_ADM_ORGPESSOA)) As C39, (Select Count(1) From RELACAOPESSOA As RP Where (op.N_PESSOA_PESSOA = RP.N_PESSOA_PESSOA) And (IsNull(RP.DT_FIMVIG_RELACPESSOA, Convert(DATETIME,:DTbase,102)) >= Convert(DATETIME,:DTbase,102))) As C40, Convert(VARCHAR,DBO.FN_CALCULA_DT_PROV_APOSENT(p.N_PESSOA_PESSOA, op.N_CODORI_ORGPESSOA, op.N_ORG_ORG),103) As C41 From PESSOA p Inner Join ORGANIZACAOPESSOA op On p.N_PESSOA_PESSOA = op.N_PESSOA_PESSOA Inner Join ORGANIZACAO o On o.N_ORG_ORG = op.N_ORG_ORG Left Join MUNICIPIO m On o.N_COD_MUN = m.N_COD_MUN Inner Join CARGOORGANIZACAOPESSOA cop On (cop.N_PESSOA_PESSOA = p.N_PESSOA_PESSOA) And (cop.N_ORG_ORG = op.N_ORG_ORG) And (cop.N_CODORI_ORGPESSOA = op.N_CODORI_ORGPESSOA) And (cop.DT_INIVIG_CARGOORGPESSOA <= :DTbase) And (IsNull(cop.DT_FIMVIG_CARGOORGPESSOA, Convert(DATETIME,:DTbase,102)) >= Convert(DATETIME,:DTbase,102)) And (cop.S_MRCTEMPOCTB_CARGOORGPESSOA = 'S') Inner Join CARGO c On (c.N_ORG_ORG = cop.N_ORG_ORG) And (c.N_CARGO_CARGO = cop.N_CARGO_CARGO) Left Join CARREIRA car On car.N_COD_CARREIRA = c.N_COD_CARREIRA Inner Join PLANOORGANIZACAOPESSOA pop On (pop.N_ORG_ORG = op.N_ORG_ORG) And (pop.N_CODORI_ORGPESSOA = op.N_CODORI_ORGPESSOA) Inner Join PLANO On PLANO.N_PLN_PLN = pop.N_PLN_PLN Where (PLANO.S_TIP_PLN In ('P', 'F')) And (pop.DT_INIVIG_PLNORGPESSOA <= :DTbase) And (pop.DT_FIMVIG_PLNORGPESSOA >= :DTbase Or pop.DT_FIMVIG_PLNORGPESSOA Is Null) And (op.DT_DSL_ORGPESSOA Is Null Or op.DT_DSL_ORGPESSOA >= :DTbase) And (p.DT_FALEC_PESSOA Is Null Or p.DT_FALEC_PESSOA >= :DTbase) Order By 9, 15