Sunteți pe pagina 1din 29

ALTER PROCEDURE [dbo].

[SP_TMDOCU_CLIE_Q60]
/*-------------------------------------------------------*/
/*---Empresa

: OFISIS S.A.

/*---Cliente

: OFISIS

/*---Sistema

: Tesoreria

--*/

/*---Mdulo

: Empresa

--*/

/*---Programa

: Registro de Ventas

/*---

--*/
--*/

--*/

--*/

/*---Script

: tmdocu_clie.sql

--*/

/*---Nombre SP

: SP_TMDOCU_CLIE_Q60

/*---Desarrollado por

: Alberto Escribano

/*---Fecha Creacin

: 18/07/2011

/*---Base Datos

: Microsoft Sql Server

--*/

/*---Versin

: 7.0

--*/

/*---Invoca a SP

--*/

--*/
--*/
--*/

/*-------------------------------------------------------*/
/*-------------------------------------------------------*/
/*-------------------------------------------------------*/
/* --EXEC SP_TMDOCU_CLIE_Q60 '01','SOL','DOL','C', 'V','O',
'And TMDOCU_CLIE.CO_CLIE >= "10412585343" And TMDOCU_CLIE.CO_CLIE <= "1041258534
3" ',' Order by 1 ','1','D' --*/
/*-------------------------------------------------------*/
/* -EXEC SP_TMDOCU_CLIE_Q60 '01',
" And TMDOCU_CLIE.FE_EMIS >= convert(datetime,'01/01/2010',103) And
TMDOCU_CLIE.FE_EMIS <= convert(datetime ,'31/03/2010',103) ",'4','1','M','T'
--*/
/*-------------------------------------------------------*/
@ISCO_EMPR

TD_VC_002,

@ISCA_WHER_LOCA
@ISTI_REP1
@ISTI_REPO
@ISTI_REPO_0002
@ISTI_REPO_0000
As

Varchar(8000),
TD_VC_001,
TD_VC_001,
TD_VC_001,
TD_VC_001

Declare
@VSOR_SELE
@VNIM_MAXI_NRET
@VSCO_MONE_NACI

Varchar(100),
TD_NU_016_004,
TD_VC_003,

@VSCO_MONE_EXTR

TD_VC_003,

@VSTI_CAMB_PANT

TD_VC_001,

@VSTI_ORIG_PANT

TD_VC_001,

@VSCO_TIAU_CLIE

TD_VC_001

create Table #TWDOCU_CLIE_FTEERFU

(FE_EMIS
DateTime NULL,
NU_ASTO Varchar(10) NULL,
FE_OPVE DateTime NULL,
CO_SUNA Varchar(3) NULL,
NO_DOCU Varchar(60) NULL,
CO_TIPO_DOCU Varchar(3) NULL,
NU_DOCU_CLIE Varchar(30) NULL,
FA_TIPO_CAMB Numeric(15,6) NULL,
CO_RUCS Varchar(100) NULL,
CO_DOCU_SUNA Varchar(20) NULL,
NU_DOCU_SUNA Varchar(20) NULL,
NO_CORT_CLIE Varchar(200) NULL,
IM_BASE_IMPO Numeric(16,4) NULL,
IM_SELE_CONS Numeric(16,4) NULL,
IM_INAF_NACI Numeric(16,4) NULL,
IM_EXON_NACI Numeric(16,4) NULL,
IM_EXPO Numeric(16,4) NULL,
IM_IMP1 Numeric(16,4) NULL,
IM_IMP2 Numeric(16,4) NULL,
IM_TOTA_NACI Numeric(16,4) NULL,
ST_SIGN Varchar(1) NULL,
CO_ESTA_DOCU Varchar(3) NULL,
CO_SUNA_ORIG Varchar(2) NULL,
NU_DOCU_ORIG Varchar(100) NULL,
FE_DOCU_ORIG DateTime NULL,
CO_CLIE Varchar(30) NULL,
NO_AUXI Varchar(152) NULL,
DE_MONE Varchar(50) NULL,
IM_AFEC_CONT Numeric(16,4) NULL,
IM_INAF_CONT Numeric(16,4) NULL,
IM_IMP1_CONT Numeric(16,4) NULL,
IM_IMP2_CONT Numeric(16,4) NULL,
IM_TOTA_CONT Numeric(16,4) NULL,
IM_AFEC_CONT_PAR1 Numeric(16,4) NULL,
IM_INAF_CONT_PAR1 Numeric(16,4) NULL,

IM_IMP1_CONT_PAR1 Numeric(16,4)
IM_IMP2_CONT_PAR1 Numeric(16,4)
IM_TOTA_CONT_PAR1 Numeric(16,4)
IM_AFEC_CONT_FIN1 Numeric(16,4)
IM_INAF_CONT_FIN1 Numeric(16,4)
IM_IMP1_CONT_FIN1 Numeric(16,4)
IM_IMP2_CONT_FIN1 Numeric(16,4)
IM_TOTA_CONT_FIN1 Numeric(16,4)
CO_MONE Varchar(3) NULL,
CO_RUCC_0001

NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,

Varchar(200) NULL,

NO_CORT_CLIE_0001 Varchar(200) NULL,


IM_BASE_IMPO_PAR1 Numeric(16,4) NULL,
IM_SELE_CONS_PAR1 Numeric(16,4) NULL,
IM_INAF_NACI_PAR1 Numeric(16,4) NULL,
IM_EXON_NACI_PAR1 Numeric(16,4) NULL,
IM_EXPO_PAR1 Numeric(16,4) NULL,
IM_IMP1_PAR1 Numeric(16,4) NULL,
IM_IMP2_PAR1 Numeric(16,4) NULL,
IM_TOTA_NACI_PAR1 Numeric(16,4) NULL,
IM_BASE_IMPO_FIN1 Numeric(16,4) NULL,
IM_SELE_CONS_FIN1 Numeric(16,4) NULL,
IM_INAF_NACI_FIN1 Numeric(16,4) NULL,
IM_EXON_NACI_FIN1 Numeric(16,4) NULL,
IM_EXPO_FIN1 Numeric(16,4) NULL,
IM_IMP1_FIN1 Numeric(16,4) NULL,
IM_IMP2_FIN1 Numeric(16,4) NULL,
IM_TOTA_NACI_FIN1 Numeric(16,4) NULL,
DE_FINA_0001 Varchar(2000) NULL,
VA_ORDE_0001

Int NULL,

VA_ORDE_GENE
ST_FLAG_VISU
DE_FINN_REPO
ST_FLFI_REPO
ST_FLAG_VIFI

Int NULL,
Varchar(1) NULL,
Varchar(200) NULL,
Varchar(1) default 'N',
Varchar(1) default 'N'

If @ISCA_WHER_LOCA IS NULL
Begin
Select @ISCA_WHER_LOCA = ' '
End
If @ISTI_REPO IS NULL
Begin
Select @ISTI_REPO = ''
End
Select @VSTI_CAMB_PANT = TI_CAMB, @VSTI_ORIG_PANT = TI_ORIG From TTFACA_OPCI

Where CO_EMPR = @ISCO_EMPR


And CO_MODU = 'TEEM0001'
And CO_MENU = 'FTEEMBA'
If ( @VSTI_CAMB_PANT Is Null Or @VSTI_ORIG_PANT Is Null )
Select @VSTI_CAMB_PANT = TI_CAMB, @VSTI_ORIG_PANT = TI_ORIG,
@VSCO_MONE_NACI = CO_MONE_DEFA, @VSCO_MONE_EXTR = CO_MONE_EXTR,
@VSCO_TIAU_CLIE = CO_TIAU_CLIE,
@VNIM_MAXI_NRET = IM_MAXI_NRET
From TMPARA_TESO
Where CO_EMPR = @ISCO_EMPR
Else
Select @VSCO_MONE_NACI = CO_MONE_DEFA,
@VSCO_MONE_EXTR = CO_MONE_EXTR,
@VSCO_TIAU_CLIE = CO_TIAU_CLIE,
@VNIM_MAXI_NRET = IM_MAXI_NRET
From TMPARA_TESO
Where CO_EMPR = @ISCO_EMPR

If @ISTI_REPO_0002 = 'O'
Begin

-- ORDEN CASO OPCION OFICIAL


If @ISTI_REPO = '1'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 4,VA_ORDE_0001, FE_EMIS'
End
If @ISTI_REPO = '2'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 4,VA_ORDE_0001,6,7 '
End
-----cliente
If @ISTI_REPO = '3'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE,12,VA_ORDE_0001,1'
End

If @ISTI_REPO = '4'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 4,VA_ORDE_0001,1'
End
If @ISTI_REPO = '5'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 7,VA_ORDE_0001,3'
End
Exec('Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS,NU_ASTO,FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO
_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,
IM_INAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO
_SUNA_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,VA_ORDE_0001,ST_FLAG_VISU)
Select TMDOCU_CLIE.FE_EMIS AS FE_EMIS,TMDOCU_CLIE.NU_ASTO,DBO.FU_FECH_COBR
("' + @ISCO_EMPR + '",
TMDOCU_CLIE.CO_CLIE, TMDOCU_CLIE.CO_TIPO_DOCU, TMDOCU_CLIE.NU_DOCU_CLIE, TMD
OCU_CLIE.FE_VENC) AS FE_OPVE,
TTDOCU_CNTB.CO_SUNA,
TTDOCU_CNTB.NO_DOCU,
TMDOCU_CLIE.CO_TIPO_DOCU,
TMDOCU_CLIE.NU_DOCU_CLIE,

Case When TMDOCU_CLIE.CO_MONE = "' + @VSCO_MONE_NACI + '" Then Null Else


Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_N
ACI + '", TMDOCU_CLIE.FE_EMIS, "1","' + @VSTI_CAMB_PANT + '", "' + @VSTI_ORIG_PA
NT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '" , TMDOCU_CLIE.FA_TIPO_CAMB), 6) End As FA_TIPO_CA
MB ,
TMAUXI_EMPR.NU_RUCS,
TMAUXI_EMPR.CO_DOCU_SUNA,
TMAUXI_EMPR.NU_DOCU_SUNA,
CASE WHEN TMAUXI_EMPR.TI_PERS_SUNA = "N" THEN
TMAUXI_EMPR.AP_PATE_AUXI + " "+ TMAUXI_EMPR.AP_MATE_AUXI + " " + TMAUXI_EMP
R.NO_NATU_AUX1 + " "+ TMAUXI_EMPR.NO_NATU_AUX2
ELSE TMAUXI_EMPR.NO_AUXI END As NOMB_CLIE,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE WHEN NOT ( TMAUXI_EMPR.TI_PERS_SUNA = "03" And TMDOCU_CLIE.IM_IMP1 =
"0" )
THEN CASE TTDOCU_CNTB.ST_DOCU_0010

WHEN "N" THEN Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "'


+ @VSCO_MONE_NACI + '",
CASE WHEN (T6.CO_SUNA = "07" or T6.CO_SUNA = "08") THEN TMDOCU_CLIE.FE_DOC
U_ORIG ELSE TMDOCU_CLIE.FE_EMIS END, (TMDOCU_CLIE.IM_BRUT_AFEC + TMDOCU_CLIE.IM_
GAFI - TMDOCU_CLIE.IM_DCT1
- TMDOCU_CLIE.IM_DCT2),"' + @VSTI_CAMB_PANT + '", "' + @VSTI_ORIG_PANT +
'", "S", "' + @VSCO_MONE_NACI + '", "' + @VSCO_MONE_EXTR + '" , TMDOCU_CLIE.FA_T
IPO_CAMB), 2)
ELSE 0
END
ELSE 0.00
END
ELSE 0.00
END
AS BASE_IMPO,
0.00 AS IM_SELE_CONS,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE WHEN TMDOCU_CLIE.IM_BRUT_INAF != "0" AND TMDOCU_CLIE.IM_BRUT_EXON = "0"
THEN
CASE
WHEN NOT ( TMAUXI_EMPR.TI_PERS_SUNA = "03"
And TMDOCU_CLIE.IM_IMP1 = "0" )
THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE,
"' + @VSCO_MONE_NACI + '", CASE WHEN (T6.CO_SUNA = "07" or T6.CO_SUNA = "
08") THEN TMDOCU_CLIE.FE_DOCU_ORIG ELSE TMDOCU_CLIE.FE_EMIS END , TMDOCU_CLIE.IM
_BRUT_INAF,"' + @VSTI_CAMB_PANT + '",
"' + @VSTI_ORIG_PANT + '", "S",
"' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '" , TMDOCU_CLIE.FA_TIPO_CAMB), 2)
ELSE 0.00
END ELSE 0.00 END
ELSE 0.00
END
AS BASE_INAFE,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE WHEN TMDOCU_CLIE.IM_BRUT_INAF = "0" AND TMDOCU_CLIE.IM_BRUT_EXON != "0
" THEN
CASE
WHEN NOT ( TMAUXI_EMPR.TI_PERS_SUNA = "03"
And TMDOCU_CLIE.IM_IMP1 = "0" )
THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE,
"' + @VSCO_MONE_NACI + '", CASE WHEN (T6.CO_SUNA = "07" or T6.CO_SUNA = "
08") THEN TMDOCU_CLIE.FE_DOCU_ORIG ELSE TMDOCU_CLIE.FE_EMIS END, TMDOCU_CLIE.IM_
BRUT_EXON,"' + @VSTI_CAMB_PANT + '",
"' + @VSTI_ORIG_PANT + '", "S",

"' + @VSCO_MONE_NACI + '",


"' + @VSCO_MONE_EXTR + '" , TMDOCU_CLIE.FA_TIPO_CAMB), 2)
ELSE 0.00
END ELSE 0.00 END
ELSE 0.00
END
AS BASE_EXONE,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE WHEN ( TMAUXI_EMPR.TI_PERS_SUNA = "03"
And TMDOCU_CLIE.IM_IMP1 = "0" )
THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NA
CI + '",
CASE WHEN (T6.CO_SUNA = "07" or T6.CO_SUNA = "08") THEN TMDOCU_CLIE.FE_DOC
U_ORIG ELSE TMDOCU_CLIE.FE_EMIS END, (TMDOCU_CLIE.IM_BRUT_INAF + TMDOCU_CLIE.IM_
BRUT_AFEC + IM_BRUT_EXON),
"' + @VSTI_CAMB_PANT + '",
"' + @VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '" , TMDOCU_CLIE.FA_TIPO_CAMB), 2)
ELSE 0.00
END
ELSE 0.00
END
AS IM_EXPO,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE WHEN NOT ( TMAUXI_EMPR.TI_PERS_SUNA = "03" And TMDOCU_CLIE.IM_IMP1 = "0
" )
THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE,
"' + @VSCO_MONE_NACI + '", CASE WHEN (T6.CO_SUNA = "07" or T6.CO_SUNA = "0
8") THEN TMDOCU_CLIE.FE_DOCU_ORIG ELSE TMDOCU_CLIE.FE_EMIS END,
( ( TMDOCU_CLIE.IM_IMP1 * PATINDEX( SUBSTRING( ISNULL( TMDOCU_CLIE.CO_IMP1,
"0"), 1, 2), "IG" ) ) +
( TMDOCU_CLIE.IM_IMP2 * PATINDEX( SUBSTRING( ISNULL( TMDOCU_CLIE.CO_IMP2,
"0"), 1, 2), "IG" ) ) +
( TMDOCU_CLIE.IM_IMP3 * PATINDEX( SUBSTRING( ISNULL( TMDOCU_CLIE.CO_IMP3,
"0"), 1, 2), "IG" ) ) ) ,"' + @VSTI_CAMB_PANT + '", "' + @VSTI_ORIG_PANT + '", "
S", "' + @VSCO_MONE_NACI + '", "' + @VSCO_MONE_EXTR + '" ,

TMDOCU_CLIE.FA_TIPO_CAMB), 2)
ELSE 0.00

END
ELSE 0.00
END
AS IMP1,
0.00 AS IMP2,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE,
"' + @VSCO_MONE_NACI + '", CASE WHEN (T6.CO_SUNA = "07" or T6.CO_SUNA =
"08") THEN TMDOCU_CLIE.FE_DOCU_ORIG ELSE TMDOCU_CLIE.FE_EMIS END,
TMDOCU_CLIE.IM_TOTA,"' + @VSTI_CAMB_PANT + '", "' + @VSTI_ORIG_PANT + '",
"S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '" , TMDOCU_CLIE.FA_TIPO_CAMB), 2) ELSE 0.000 END
AS TOTAL,
TTDOCU_CNTB.ST_SIGN AS SIGNO,
TMDOCU_CLIE.CO_ESTA_DOCU AS ESTADO,
T5.CO_SUNA AS CODIGO_SUNAT_ORIG,
TMDOCU_CLIE.NU_DOCU_ORIG AS DOCUMENTO_ORIG,
TMDOCU_CLIE.FE_DOCU_ORIG AS FE_DOCU_ORIG,
TMDOCU_CLIE.CO_CLIE AS CO_CLIE,2,"N"
From TMDOCU_CLIE
Left Outer join TTDOCU_CNTB T5
On TMDOCU_CLIE.TI_DOCU_ORIG = T5.TI_DOCU
Inner Join TTDOCU_CNTB T6
On TMDOCU_CLIE.CO_TIPO_DOCU = T6.TI_DOCU,
TMAUXI_EMPR, TTDOCU_CNTB, TMPARA_TESO
Where 1 = 1 ' + @ISCA_WHER_LOCA + '
And TMDOCU_CLIE.CO_EMPR = "' + @ISCO_EMPR + '"
And TMAUXI_EMPR.CO_EMPR = TMDOCU_CLIE.CO_EMPR
And TMAUXI_EMPR.TI_AUXI_EMPR = "' + @VSCO_TIAU_CLIE + '"
And TMAUXI_EMPR.CO_AUXI_EMPR = TMDOCU_CLIE.CO_CLIE
And TTDOCU_CNTB.TI_DOCU = TMDOCU_CLIE.CO_TIPO_DOCU
And TTDOCU_CNTB.ST_REGI_VENT = "S"
And TMPARA_TESO.CO_EMPR = TMDOCU_CLIE.CO_EMPR')
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------If @ISTI_REP1 = '1'
Begin
if @ISTI_REPO in ( '1','2','4')

Begin
if @ISTI_REPO_0000 = 'P'
Begin
if @ISTI_REPO <> '4'
begin
Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TI
PO_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,
IM_INAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO
_SUNA_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,VA_ORDE_0001,CO_RUCC_0001,NO_CORT_CLIE_0
001,ST_FLAG_VISU)
LL,

Select
NULL, CO_SUNA,MAX(NO_DOCU),NULL,NULL,NULL,
NULL,NULL,NULL,NULL,0,0,0,
0,0,0,0,0,NULL,NULL,NULL,
NULL,NULL,NULL,1,' ' + CO_SUNA,Max(NO_DOCU),'S'
from #TWDOCU_CLIE_FTEERFU
Group By CO_SUNA

NULL,

NU

--GRABA TOTALES QUIEBRES(EN LOS TOTALES DEBE VALIDAR EL SIGNO DEL DOC Y EL
ESTADO DEL MISMO)
Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TI
PO_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,
IM_INAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO
_SUNA_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_BASE_IMPO_PAR1,IM_SELE_CONS_PAR1,IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM
_EXPO_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,VA_ORDE_0001,ST_FLAG_VISU)
Select
NULL,

NULL,

NULL, CO_SUNA,MAX(NO_DOCU),NULL,NULL,NULL,

NULL,NULL,NULL,NULL,0,0,0,
0,0,0,0,0,NULL,NULL,NULL,
NULL,NULL,NULL,'TOTAL',Max(NO_DOCU),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_BASE_IMPO End),0
)*(Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_SELE_CONS End),0
)*(Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_NACI End),0
)*(Case When ST_SIGN = 'N' Then (-1) Else 1

End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXON_NACI End),0
)*(Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXPO End),0)*(Ca
se When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1 End),0)*(Ca
se When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2 End),0)*(Ca
se When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_NACI End),0
)*(Case When ST_SIGN = 'N' Then (-1) Else 1
End)),3,'S'
From #TWDOCU_CLIE_FTEERFU
Group By CO_SUNA
end
--If @ISTI_REPO = 1
--Begin
--GRABA TOTALES FINALES
Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_
CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS, IM_
INAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SU
NA_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_BASE_IMPO_PAR1,IM_SELE_CONS_PAR1,IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_EX
PO_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_BASE_IMPO_FIN1,IM_SELE_CONS_FIN1,IM_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_EX
PO_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,VA_ORDE_0001,DE_FINA_0001, VA_ORDE_GENE,ST_FLAG_VISU,ST_FLA
G_VIFI)
Select
NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
NULL,NULL,NULL,NULL,0,0,0,
0,0,0,0,0, NULL,NULL,NULL,
NULL,NULL,NULL,NULL,NULL,
0,0,0,0,0,0,0,
0,
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_BASE_IMPO End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_SELE_CONS End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1

End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_NACI End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXON_NACI End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXPO End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1 End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2 End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_NACI End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End)),
4,'TOTAL FINAL --->' , 1,'X','S'
From #TWDOCU_CLIE_FTEERFU
Insert Into #TWDOCU_CLIE_FTEERFU(DE_FINN_REPO,VA_ORDE_GENE,ST_FLFI_REPO)
Select '*** Fin del Reporte *** ',2,'S'
Exec ('Select FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOC
U_CLIE,FA_TIPO_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS, I
M_INAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_
SUNA_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_BASE_IMPO_PAR1,IM_SELE_CONS_PAR1,IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_
EXPO_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_BASE_IMPO_FIN1,IM_SELE_CONS_FIN1,IM_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_
EXPO_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,DE_FINA_0001,DE_FINN_REPO,ST_FLFI_REPO,ST_FLAG_VISU,ST_FL
AG_VIFI
From #TWDOCU_CLIE_FTEERFU
Order By ' + @VSOR_SELE)
End
else
Begin
/*
Exec ('insert into #TWDOCU_CLIE_FTEERFU_0001 (FE_EMIS,
NU_ASTO,FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_CAMB,CO_RU
CS,CO_DOCU_SUNA,
NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,IM_INAF_NACI,IM_EXON_NAC

I,IM_EXPO,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,NU_DOCU_ORIG,
FE_DOCU_ORIG )
Select FE_EMIS,
NU_ASTO,FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_CAMB,CO_RU
CS,CO_DOCU_SUNA,
NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,IM_INAF_NACI,IM_EXON_NAC
I,IM_EXPO,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,NU_DOCU_ORIG,
FE_DOCU_ORIG
From #TWDOCU_CLIE_FTEERFU
Order By ' + @VSOR_SELE)
*/
/***************************************************************************
***********/
Exec ('
Select FE_EMIS,
NU_ASTO,FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_CAMB,CO_RU
CS,CO_DOCU_SUNA,
NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,IM_INAF_NACI,IM_EXON_NAC
I,IM_EXPO,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,NU_DOCU_ORIG,
FE_DOCU_ORIG,
CO_CLIE, CO_RUCC_0001, NO_CORT_CLIE_0001, IM_BASE_IMPO_PAR1,
IM_SELE_CONS_PAR1, IM_INAF_NACI_PAR1, IM_EXON_NACI_PAR1, IM_EXPO_PAR1,
IM_IMP1_PAR1,IM_IMP2_PAR1, IM_TOTA_NACI_PAR1, IM_BASE_IMPO_FIN1,
IM_SELE_CONS_FIN1, IM_INAF_NACI_FIN1, IM_EXON_NACI_FIN1, IM_EXPO_FIN1,
IM_IMP1_FIN1, IM_IMP2_FIN1, IM_TOTA_NACI_FIN1, DE_FINA_0001,
DE_FINN_REPO, ST_FLFI_REPO,ST_FLAG_VISU, ST_FLAG_VIFI
From #TWDOCU_CLIE_FTEERFU
Order By ' + @VSOR_SELE)
End
End
End
If @ISTI_REPO = '3'
Begin
if @ISTI_REPO_0000 = 'P'
Begin
Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_C
AMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS, IM_I
NAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUN
A_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,VA_ORDE_0001,CO_RUCC_0001,NO_CORT_CLIE_0001,
ST_FLAG_VISU)
Select
NULL,
NULL, NULL, NULL,NULL,NULL,NULL,NULL,
CO_RUCS,CO_RUCS,NULL,max(NO_CORT_CLIE),0,0,0,
0,0,0,0,0,NULL,NULL,NULL
, NULL,NULL,NULL,1,'CLIENTE : ',max(NO_CORT_CLIE),'S'
from #TWDOCU_CLIE_FTEERFU
Group By CO_RUCS

--GRABA TOTALES QUIEBRES(EN LOS TOTALES DEBE VALIDAR EL SIGNO DEL DOC Y EL ES
TADO DEL MISMO)
Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_C
AMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS, IM_I
NAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUN
A_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_BASE_IMPO_PAR1,IM_SELE_CONS_PAR1,IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_EXP
O_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,VA_ORDE_0001,ST_FLAG_VISU)
Select
NULL,
NULL, NULL, NULL,NULL,NULL,NULL,NULL,
CO_RUCS,NULL,NULL,MAX(NO_CORT_CLIE),0,0,0,
0,0,0,0,0,NULL,NULL,NULL,
NULL,NULL,NULL,'TOTAL',MAX(NO_CORT_CLIE),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_BASE_IMPO End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_SELE_CONS End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_NACI End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXON_NACI End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXPO End),0)*(Case W
hen ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1 End),0)*(Case W
hen ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2 End),0)*(Case W
hen ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_NACI End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End)),3,'S'
From #TWDOCU_CLIE_FTEERFU
Group By CO_RUCS
--graba totales

Insert Into #TWDOCU_CLIE_FTEERFU


(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_C
AMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS, IM_I
NAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUN
A_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_BASE_IMPO_PAR1,IM_SELE_CONS_PAR1,IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_EXP
O_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_BASE_IMPO_FIN1,IM_SELE_CONS_FIN1,IM_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_EXP
O_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,VA_ORDE_0001,DE_FINA_0001, VA_ORDE_GENE,ST_FLAG_VISU,ST_FLAG
_VIFI)
Select
NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
NULL,NULL,NULL,NULL,0,0,0,
0,0,0,0,0, NULL,NULL,NULL,
NULL,NULL,NULL,NULL,NULL,
0,0,0,0,0,0,0,
0,
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_BASE_IMPO End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_SELE_CONS End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_NACI End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXON_NACI End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXPO End),0)*(Case W
hen ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1 End),0)*(Case W
hen ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2 End),0)*(Case W
hen ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_NACI End),0)*(C
ase When ST_SIGN = 'N' Then (-1) Else 1
End)),
4,'TOTAL FINAL --->' , 1,'X','S'
From #TWDOCU_CLIE_FTEERFU

Insert Into #TWDOCU_CLIE_FTEERFU(DE_FINN_REPO,VA_ORDE_GENE,ST_FLFI_REPO)


Select '*** Fin del Reporte *** ',2,'S'

Exec ('Select FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU


_CLIE,FA_TIPO_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS, IM
_INAF_NACI,
IM_EXON_NACI,IM_EXPO, IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_S
UNA_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_BASE_IMPO_PAR1,IM_SELE_CONS_PAR1,IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_E
XPO_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_BASE_IMPO_FIN1,IM_SELE_CONS_FIN1,IM
_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_EXPO_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,DE_FINA_0001,DE_FINN_REPO,ST_FLFI_REPO,ST_FLAG_VISU,ST_FLA
G_VIFI
From #TWDOCU_CLIE_FTEERFU
order by' + @VSOR_SELE)
End
else
Begin
/*
Exec ('insert into #TWDOCU_CLIE_FTEERFU_0001 (FE_EMIS,
NU_ASTO,FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_CAMB,CO_RUCS
,CO_DOCU_SUNA,
NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,IM_INAF_NACI,IM_EXON_NACI,
IM_EXPO,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,NU_DOCU_ORIG,FE
_DOCU_ORIG )
Select FE_EMIS,
NU_ASTO,FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_CAMB,CO_RUCS
,CO_DOCU_SUNA,
NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,IM_INAF_NACI,IM_EXON_NACI,
IM_EXPO,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,NU_DOCU_ORIG,FE
_DOCU_ORIG
From #TWDOCU_CLIE_FTEERFU
Order By ' + @VSOR_SELE) */
/*------------------------------------------------------------------------------------------------*/
Exec ('
Select FE_EMIS,
NU_ASTO,FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,FA_TIPO_CAMB,CO_RUCS
,CO_DOCU_SUNA,
NU_DOCU_SUNA,NO_CORT_CLIE,IM_BASE_IMPO,IM_SELE_CONS,IM_INAF_NACI,IM_EXON_NACI,
IM_EXPO,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,NU_DOCU_ORIG,FE
_DOCU_ORIG,
CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_BASE_IMPO_PAR1,IM_SELE_CONS_PAR1,IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_EXP
O_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,

IM_BASE_IMPO_FIN1,IM_SELE_CONS_FIN1,IM_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_EXP
O_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,DE_FINA_0001,DE_FINN_REPO,ST_FLFI_REPO,ST_FLAG_VISU,ST_FLAG_
VIFI
From #TWDOCU_CLIE_FTEERFU
Order By ' + @VSOR_SELE)
End
End
End
If @ISTI_REP1 = '2'
Begin

if @ISTI_REPO_0000 ='P'
Begin
Exec('Select MAX(CO_SUNA),NO_DOCU,SUM(IM_BASE_IMPO),
SUM(IM_SELE_CONS),SUM(IM_INAF_NACI),SUM(IM_EXON_NACI),SUM(IM_EXPO),SUM(IM_IMP1
),SUM(IM_IMP2),SUM(IM_TOTA_NACI),MAX(ST_SIGN)
from #TWDOCU_CLIE_FTEERFU
where CO_ESTA_DOCU != "ANU"
group by NO_DOCU order by 1')
End
Else
Begin
/* Exec('insert into #TWDOCU_CLIE_FTEERFU_0001 (CO_SUNA,NO_DOCU,IM_BASE_IMPO,
IM_SELE_CONS,IM_INAF_NACI,IM_EXON_NACI,IM_EXPO,IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST
_SIGN)
Select MAX(CO_SUNA),NO_DOCU,SUM(IM_BASE_IMPO),
SUM(IM_SELE_CONS),SUM(IM_INAF_NACI),SUM(IM_EXON_NACI),SUM(IM_EXPO),SUM(IM_IMP1
),SUM(IM_IMP2),SUM(IM_TOTA_NACI),MAX(ST_SIGN)
from #TWDOCU_CLIE_FTEERFU
where CO_ESTA_DOCU != "ANU"
group by NO_DOCU order by 1')
*/
Exec('
Select MAX(CO_SUNA),NO_DOCU,SUM(IM_BASE_IMPO),
SUM(IM_SELE_CONS),SUM(IM_INAF_NACI),SUM(IM_EXON_NACI),SUM(IM_EXPO),SUM(IM_IMP1
),SUM(IM_IMP2),SUM(IM_TOTA_NACI),MAX(ST_SIGN)
from #TWDOCU_CLIE_FTEERFU
where CO_ESTA_DOCU != "ANU"
group by NO_DOCU order by 1')
End
End

--------------------------------------------------------------------------------

----------------------

------------------------------------------------------------------------------------------------------------If @ISTI_REPO_0002 = 'M'


Begin
-- ORDEN CASO OPCION MONEDA
If @ISTI_REPO = '1'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 6,VA_ORDE_0001,3,1'
End
If @ISTI_REPO = '2'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 6,VA_ORDE_0001,3,4 '
End
-----cliente
If @ISTI_REPO = '3'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE,5,VA_ORDE_0001,6,1'
End
If @ISTI_REPO = '4'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 6,VA_ORDE_0001,1,3'
End
If @ISTI_REPO = '5'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 7,VA_ORDE_0001,3 '
End
/*
-- ORDEN CASO OPCION OFICIAL / MONEDA
If @ISTI_REPO = '1'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 3, 4,VA_ORDE_0001, FE_EMIS'
End
If @ISTI_REPO = '4'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 1,VA_ORDE_0001,3'
End

-----cliente
If @ISTI_REPO = '3'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE,8,VA_ORDE_0001,1'
End
If @ISTI_REPO = '2'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 4,VA_ORDE_0001, FE_EMIS'
End
If @ISTI_REPO = '5'
Begin
Select @VSOR_SELE = ' VA_ORDE_GENE, 7,VA_ORDE_0001,3 '
End
*/
Exec('Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS,CO_TIPO_DOCU,NO_DOCU,NU_DOCU_CLIE,CO_RUCS,NO_AUXI,CO_MONE,FA_TIPO_CAM
B,IM_INAF_NACI,IM_EXON_NACI,IM_IMP1,IM_IMP2,IM_TOTA_NACI,
IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CONT,CO_ESTA_DOCU,
DE_MONE,VA_ORDE_0001,ST_FLAG_VISU)
Select
TMDOCU_CLIE.FE_EMIS,TMDOCU_CLIE.CO_TIPO_DOCU,TTDOCU_CNTB.NO_DOCU,
TMDOCU_CLIE.NU_DOCU_CLIE,TMAUXI_EMPR.NU_RUCS,TMAUXI_EMPR.NO_AUXI,
TMDOCU_CLIE.CO_MONE,
Case When TMDOCU_CLIE.CO_MONE = "' + @VSCO_MONE_NACI + '" Then
0.00
Else
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, "1","' + @VSTI_CAMB_PANT + '", "' + @VSTI_ORIG_PANT
+ '", "S", "' + @VSCO_MONE_NACI + '", "' + @VSCO_MONE_EXTR + '",
TMDOCU_CLIE.FA_TIPO_CAMB), 6 )
End,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S" THEN
TMDOCU_CLIE.IM_BRUT_AFEC - (PatIndex(TMDOCU_CLIE.ST_DCT1_BRAF, "S") * TMDOCU_C
LIE.IM_DCT1) - (PatIndex(TMDOCU_CLIE.ST_DCT2_BRAF, "S") * TMDOCU_CLIE.IM_DCT2)
ELSE
(TMDOCU_CLIE.IM_BRUT_AFEC - (PatIndex(TMDOCU_CLIE.ST_DCT1_BRAF, "S") * TMDOCU_
CLIE.IM_DCT1) - (PatIndex(TMDOCU_CLIE.ST_DCT2_BRAF, "S") * TMDOCU_CLIE.IM_DCT2)
)*-1
END
ELSE 0.00
END,

CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN


CASE TTDOCU_CNTB.ST_SIGN WHEN "S" THEN
TMDOCU_CLIE.IM_BRUT_INAF+TMDOCU_CLIE.IM_BRUT_EXON
ELSE
TMDOCU_CLIE.IM_BRUT_INAF*-1+TMDOCU_CLIE.IM_BRUT_EXON
END
ELSE 0.00
END
,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S" THEN
TMDOCU_CLIE.IM_IMP1
ELSE
TMDOCU_CLIE.IM_IMP1 * -1
END
ELSE 0.00
END
,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S" THEN
TMDOCU_CLIE.IM_IMP2
ELSE
TMDOCU_CLIE.IM_IMP2 * -1
END
ELSE 0.00
END
,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S" THEN
TMDOCU_CLIE.IM_TOTA
ELSE
TMDOCU_CLIE.IM_TOTA * -1
END
ELSE 0.00
END
,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S" THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, (TMDOCU_CLIE.IM_BRUT_AFEC - (PatIndex(TMDOCU_CLIE.ST
_DCT1_BRAF, "S") * TMDOCU_CLIE.IM_DCT1) (PatIndex(TMDOCU_CLIE.ST_DCT2_BRAF, "S") * TMDOCU_CLIE.IM_DCT2)),"' + @VSTI_CA
MB_PANT + '", "' + @VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2)
Else
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI

+ '", TMDOCU_CLIE.FE_EMIS, (TMDOCU_CLIE.IM_BRUT_AFEC - (PatIndex(TMDOCU_CLIE.ST


_DCT1_BRAF, "S") * TMDOCU_CLIE.IM_DCT1) (PatIndex(TMDOCU_CLIE.ST_DCT2_BRAF, "S") * TMDOCU_CLIE.IM_DCT2)),"' + @VSTI_CA
MB_PANT + '", "' + @VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2) * -1 END
ELSE 0.00
END AS IM_AFEC_CONT,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S" Then
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, TMDOCU_CLIE.IM_BRUT_INAF,"' + @VSTI_CAMB_PANT + '",
"' + @VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",

"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2)


Else
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, TMDOCU_CLIE.IM_BRUT_INAF,"' + @VSTI_CAMB_PANT + '",
"' + @VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",

"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2) * -1


END
ELSE 0.00 END AS IM_INAF_CONT,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S"
THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, TMDOCU_CLIE.IM_IMP1,"' + @VSTI_CAMB_PANT + '", "' +
@VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2)
Else
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, TMDOCU_CLIE.IM_IMP1,"' + @VSTI_CAMB_PANT + '", "' +
@VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2) * -1 END
ELSE 0.00 END AS IM_IMP1_CONT,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S" THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, TMDOCU_CLIE.IM_IMP2,"' + @VSTI_CAMB_PANT + '", "' +
@VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2)

Else
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, TMDOCU_CLIE.IM_IMP2,"' + @VSTI_CAMB_PANT + '", "' +
@VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2) * -1 END
ELSE 0.00 END AS IM_IMP2_CONT,
CASE WHEN TMDOCU_CLIE.CO_ESTA_DOCU != "ANU" THEN
CASE TTDOCU_CNTB.ST_SIGN WHEN "S" THEN
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, TMDOCU_CLIE.IM_TOTA,"' + @VSTI_CAMB_PANT + '", "' +
@VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '","' + @VSCO_MONE_EXTR + '",

TMDOCU_CLIE.FA_TIPO_CAMB), 2)
Else
Round(OFITESO.dbo.FN_TCFACT_CAMB_Q02(TMDOCU_CLIE.CO_MONE, "' + @VSCO_MONE_NACI
+ '", TMDOCU_CLIE.FE_EMIS, TMDOCU_CLIE.IM_TOTA,"' + @VSTI_CAMB_PANT + '", "' +
@VSTI_ORIG_PANT + '", "S", "' + @VSCO_MONE_NACI + '",
"' + @VSCO_MONE_EXTR + '", TMDOCU_CLIE.FA_TIPO_CAMB), 2) * -1 END
ELSE 0.00 END AS IM_TOTA_CONT,
TMDOCU_CLIE.CO_ESTA_DOCU,
TTMONE.DE_MONE,2,"N"
From TMDOCU_CLIE , TMAUXI_EMPR , TTDOCU_CNTB ,
TMPARA_TESO, TTMONE
Where 1 = 1 ' + @ISCA_WHER_LOCA + '
And TMDOCU_CLIE.CO_EMPR = "' + @ISCO_EMPR + '"
And TMAUXI_EMPR.CO_EMPR = TMDOCU_CLIE.CO_EMPR
And TMAUXI_EMPR.TI_AUXI_EMPR = "' + @VSCO_TIAU_CLIE + '"
And TMAUXI_EMPR.CO_AUXI_EMPR = TMDOCU_CLIE.CO_CLIE
And TTDOCU_CNTB.TI_DOCU = TMDOCU_CLIE.CO_TIPO_DOCU
And TTDOCU_CNTB.ST_REGI_VENT = "S"
And TMPARA_TESO.CO_EMPR = TMDOCU_CLIE.CO_EMPR
AND TTMONE.CO_MONE = TMDOCU_CLIE.CO_MONE ')

If @ISTI_REP1 = '3'
Begin
if @ISTI_REPO_0000 = 'P'
Begin

If @ISTI_REPO in ( '1','2','4')
Begin

--GRABA TOTALES FINALES


Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,
CO_MONE,FA_TIPO_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_INAF_NACI,IM_EXON_NACI,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,
IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CONT,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_AFEC_CONT_PAR1,IM_INAF_CONT_PAR1,IM_IMP1_CONT_PAR1,IM_IMP2_CONT_PAR1,
IM_TOTA_CONT_PAR1,
IM_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,
IM_AFEC_CONT_FIN1,IM_INAF_CONT_FIN1,IM_IMP1_CONT_FIN1,IM_IMP2_CONT_FIN1,IM_TO
TA_CONT_FIN1,
VA_ORDE_0001,DE_FINA_0001,VA_ORDE_GENE,ST_FLAG_VISU,ST_FLAG_VIFI)
Select
NULL,

NULL,

NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,

NULL,NULL,NULL,NULL,0,0,
0,0,0,NULL,NULL,NULL,
0,0,0,0,0,
NULL,NULL,NULL,NULL,NULL,
0,0,0,0,0,
0,0,0,0,0,
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_NACI End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXON_NACI End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1 End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2 End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_NACI End),0)*(

Case When ST_SIGN = 'N' Then (-1) Else 1


End)),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_AFEC_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End)),4,'TOTAL FINAL --->' , 1,'X','S'
From #TWDOCU_CLIE_FTEERFU
Insert Into #TWDOCU_CLIE_FTEERFU(DE_FINN_REPO,VA_ORDE_GENE,ST_FLFI_REPO)
Select '*** Fin del Reporte *** ',2,'S'

Exec ('Select FE_EMIS,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,CO_MONE,FA_T


IPO_CAMB,
CO_RUCS,IM_INAF_NACI,IM_EXON_NACI,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,
IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CONT,
CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_AFEC_CONT_PAR1,IM_INAF_CONT_PAR1,IM_IMP1_CONT_PAR1,IM_IMP2_CONT_PAR1,
IM_TOTA_CONT_PAR1,
IM_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,
IM_AFEC_CONT_FIN1,IM_INAF_CONT_FIN1,IM_IMP1_CONT_FIN1,IM_IMP2_CONT_FIN1,IM_T
OTA_CONT_FIN1,
DE_FINA_0001,DE_FINN_REPO,ST_FLFI_REPO,ST_FLAG_VISU,ST_FLAG_VIFI
From #TWDOCU_CLIE_FTEERFU
Order By'+@VSOR_SELE)
End
End
else

Begin
/*
Exec ('insert into #TWDOCU_CLIE_FTEERFU_0001 (FE_EMIS,
NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,CO_MONE,FA_TIPO_CAMB,CO_RUCS,IM_
INAF_NACI,IM_EXON_NACI,IM_IMP1,IM_IMP2,
IM_TOTA_NACI,IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_C
ONT,CO_ESTA_DOCU, ST_SIGN)
Select FE_EMIS,
NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,CO_MONE,FA_TIPO_CAMB,CO_RUCS,IM_
INAF_NACI,IM_EXON_NACI,IM_IMP1,IM_IMP2,
IM_TOTA_NACI,IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_C
ONT,CO_ESTA_DOCU, ST_SIGN
From #TWDOCU_CLIE_FTEERFU
Order By ' +@VSOR_SELE) */
Exec('Select FE_EMIS,
NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,CO_MONE,FA_TIPO_CAMB,CO_RUCS,IM_I
NAF_NACI,IM_EXON_NACI,IM_IMP1,IM_IMP2,
IM_TOTA_NACI,IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CO
NT,CO_ESTA_DOCU, ST_SIGN,
CO_SUNA_ORIG, CO_RUCC_0001, NO_CORT_CLIE_0001, IM_INAF_NACI_PAR1,
IM_EXON_NACI_PAR1, IM_IMP1_PAR1, IM_IMP2_PAR1, IM_TOTA_NACI_PAR1,
IM_AFEC_CONT_PAR1, IM_INAF_CONT_PAR1, IM_IMP1_CONT_PAR1, IM_IMP2_CONT_PAR1,
IM_TOTA_CONT_PAR1, IM_INAF_NACI_FIN1, IM_EXON_NACI_FIN1, IM_IMP1_FIN1,
IM_IMP2_FIN1, IM_TOTA_NACI_FIN1, IM_AFEC_CONT_FIN1, IM_INAF_CONT_FIN1,
IM_IMP1_CONT_FIN1, IM_IMP2_CONT_FIN1, IM_TOTA_CONT_FIN1, DE_FINA_0001,
DE_FINN_REPO, ST_FLFI_REPO, ST_FLAG_VISU, ST_FLAG_VIFI
From #TWDOCU_CLIE_FTEERFU
Order By'+@VSOR_SELE)
End

If @ISTI_REPO = '3' ----moneda detallado


Begin
if @ISTI_REPO_0000 = 'P'
Begin
---cliente MONEDA
Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,CO_MONE,
FA_TIPO_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_AUXI, IM_INAF_NACI,IM_EXON_NACI,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,VA_ORDE_0001,CO_RUCC_0001,NO_CORT_CLIE_0001
,ST_FLAG_VISU,
IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CONT)

Select
NULL,

NULL,

NULL, NULL,NULL,NULL,NULL,NULL,NULL,

CO_RUCS,CO_RUCS,NULL,max(NO_AUXI),0,0,
0,0,0,NULL,NULL,NULL,
NULL,NULL,NULL,1,'CLIENTE : '+CO_RUCS,max(NO_AUXI),'S',

0,0,0,0,0
from #TWDOCU_CLIE_FTEERFU
Group By CO_RUCS
--GRABA TOTALES QUIEBRES(EN LOS TOTALES DEBE VALIDAR EL SIGNO DEL DOC Y EL ES
TADO DEL MISMO)
Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,CO_MONE,
FA_TIPO_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_AUXI,IM_INAF_NACI, IM_EXON_NACI,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,
IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CONT,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_AFEC_CONT_PAR1,IM_INAF_CONT_PAR1,IM_IMP1_CONT_PAR1,IM_IMP2_CONT_PAR1,IM_TO
TA_CONT_PAR1,
VA_ORDE_0001,ST_FLAG_VISU)
Select
NULL,
NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,
CO_RUCS,NULL,NULL,MAX(NO_AUXI),0,0,
0,0,0,NULL,NULL,NULL,
0,0,0,0,0,
NULL,NULL,NULL,'TOTAL :

'+CO_RUCS,MAX(NO_AUXI),

Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_NACI End),0)*(


Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXON_NACI End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1 End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2 End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case
Case When ST_SIGN =
End)),
Sum(IsNull((Case
Case When ST_SIGN =

When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_NACI End),0)*(


'N' Then (-1) Else 1
When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_AFEC_CONT End),0)*(
'N' Then (-1) Else 1

End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_CONT End),0)*(

Case When ST_SIGN = 'N' Then (-1) Else 1


End) ),
Sum(IsNull((Case
Case When ST_SIGN =
End) ),
Sum(IsNull((Case
Case When ST_SIGN =

When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1_CONT End),0)*(


'N' Then (-1) Else 1
When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2_CONT End),0)*(
'N' Then (-1) Else 1

End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End)),3,'S'
From #TWDOCU_CLIE_FTEERFU
Group By CO_RUCS
--GRABA TOTALES FINALES MONEDA CLIENTE
Insert Into #TWDOCU_CLIE_FTEERFU
(FE_EMIS, NU_ASTO, FE_OPVE,CO_SUNA,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,
CO_MONE,FA_TIPO_CAMB,
CO_RUCS,CO_DOCU_SUNA,NU_DOCU_SUNA,NO_CORT_CLIE,IM_INAF_NACI,IM_EXON_NACI,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,
IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CONT,
NU_DOCU_ORIG,FE_DOCU_ORIG,CO_CLIE,CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_AFEC_CONT_PAR1,IM_INAF_CONT_PAR1,IM_IMP1_CONT_PAR1,IM_IMP2_CONT_PAR1,
IM_TOTA_CONT_PAR1,
IM_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,
IM_AFEC_CONT_FIN1,IM_INAF_CONT_FIN1,IM_IMP1_CONT_FIN1,IM_IMP2_CONT_FIN1,IM_TO
TA_CONT_FIN1,
VA_ORDE_0001,DE_FINA_0001,VA_ORDE_GENE,ST_FLAG_VISU,ST_FLAG_VIFI)
Select
NULL,

NULL,

NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,

NULL,NULL,NULL,NULL,0,0,
0,0,0,NULL,NULL,NULL,
0,0,0,0,0,
NULL,NULL,NULL,NULL,NULL,
0,0,0,0,0,
0,0,0,0,0,
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_NACI End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),

Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_EXON_NACI End),0)*(


Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1 End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2 End),0)*(Case
When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_NACI End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End)),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_AFEC_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_INAF_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP1_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_IMP2_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End) ),
Sum(IsNull((Case When CO_ESTA_DOCU = 'ANU' Then 0 Else IM_TOTA_CONT End),0)*(
Case When ST_SIGN = 'N' Then (-1) Else 1
End)),4,'TOTAL FINAL --->' , 1,'X','S'
From #TWDOCU_CLIE_FTEERFU
Insert Into #TWDOCU_CLIE_FTEERFU(DE_FINN_REPO,VA_ORDE_GENE,ST_FLFI_REPO)
Select '*** Fin del Reporte *** ',2,'S'
------------Moneda detallado / cliente
Exec ('Select FE_EMIS,NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,CO_MONE,FA_T
IPO_CAMB,
CO_RUCS,IM_INAF_NACI,IM_EXON_NACI,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,ST_SIGN,CO_ESTA_DOCU,CO_SUNA_ORIG,
IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CONT,
CO_RUCC_0001,NO_CORT_CLIE_0001,
IM_INAF_NACI_PAR1,IM_EXON_NACI_PAR1,IM_IMP1_PAR1,IM_IMP2_PAR1,
IM_TOTA_NACI_PAR1,
IM_AFEC_CONT_PAR1,IM_INAF_CONT_PAR1,IM_IMP1_CONT_PAR1,IM_IMP2_CONT_PAR1,

IM_TOTA_CONT_PAR1,
IM_INAF_NACI_FIN1,IM_EXON_NACI_FIN1,IM_IMP1_FIN1,IM_IMP2_FIN1,
IM_TOTA_NACI_FIN1,
IM_AFEC_CONT_FIN1,IM_INAF_CONT_FIN1,IM_IMP1_CONT_FIN1,IM_IMP2_CONT_FIN1,IM_T
OTA_CONT_FIN1,
DE_FINA_0001,DE_FINN_REPO,ST_FLFI_REPO,ST_FLAG_VISU,ST_FLAG_VIFI
From #TWDOCU_CLIE_FTEERFU
Order By'+@VSOR_SELE)
End
End
else
Begin
/* Exec ('insert into #TWDOCU_CLIE_FTEERFU_0001 (FE_EMIS,
NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,CO_MONE,FA_TIPO_CAMB,CO_RUCS,IM_I
NAF_NACI,IM_EXON_NACI,IM_IMP1,IM_IMP2,
IM_TOTA_NACI,IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CO
NT,CO_ESTA_DOCU, ST_SIGN)
Select FE_EMIS,
NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,CO_MONE,FA_TIPO_CAMB,CO_RUCS,IM_I
NAF_NACI,IM_EXON_NACI,IM_IMP1,IM_IMP2,
IM_TOTA_NACI,IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CO
NT,CO_ESTA_DOCU, ST_SIGN
From #TWDOCU_CLIE_FTEERFU
Order By'+@VSOR_SELE) */
Exec ('
Select FE_EMIS,
NO_DOCU,CO_TIPO_DOCU,NU_DOCU_CLIE,NO_AUXI,CO_MONE,FA_TIPO_CAMB,CO_RUCS,IM_I
NAF_NACI,IM_EXON_NACI,IM_IMP1,IM_IMP2,
IM_TOTA_NACI,IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2_CONT,IM_TOTA_CO
NT,CO_ESTA_DOCU, ST_SIGN
From #TWDOCU_CLIE_FTEERFU
Order By'+@VSOR_SELE)
End
End
If @ISTI_REP1
Begin

= '4'

if @ISTI_REPO_0000 ='P'
Begin
If @ISTI_REPO in ( '1','2','3','4')
Begin

Exec('Select CO_TIPO_DOCU,MAX(NO_DOCU),CO_MONE,max(FA_TIPO_CAMB),SUM(IM_INA
F_NACI),SUM(IM_EXON_NACI),
SUM(IM_IMP1),SUM(IM_IMP2),SUM(IM_TOTA_NACI),SUM(IM_AFEC_CONT),SUM(IM_INAF_C
ONT),SUM(IM_IMP1_CONT),SUM(IM_IMP2_CONT),SUM(IM_TOTA_CONT)

from #TWDOCU_CLIE_FTEERFU
group by CO_TIPO_DOCU,CO_MONE Order By 1')
End
End
Else
Begin
/* Exec('insert into #TWDOCU_CLIE_FTEERFU_0001 (CO_TIPO_DOCU,NO_DOCU,CO_MON
E,FA_TIPO_CAMB,IM_INAF_NACI,IM_EXON_NACI,
IM_IMP1,IM_IMP2,IM_TOTA_NACI,IM_AFEC_CONT,IM_INAF_CONT,IM_IMP1_CONT,IM_IMP2
_CONT,IM_TOTA_CONT)
Select CO_TIPO_DOCU,MAX(NO_DOCU),CO_MONE,max(FA_TIPO_CAMB),SUM(IM_INAF_NACI
),SUM(IM_EXON_NACI),
SUM(IM_IMP1),SUM(IM_IMP2),SUM(IM_TOTA_NACI),SUM(IM_AFEC_CONT),SUM(IM_INAF_C
ONT),SUM(IM_IMP1_CONT),SUM(IM_IMP2_CONT),SUM(IM_TOTA_CONT)
from #TWDOCU_CLIE_FTEERFU
group by CO_TIPO_DOCU,CO_MONE Order By 1') */
Exec('
Select CO_TIPO_DOCU,MAX(NO_DOCU),CO_MONE,max(FA_TIPO_CAMB),SUM(IM_INAF_NACI
),SUM(IM_EXON_NACI),
SUM(IM_IMP1),SUM(IM_IMP2),SUM(IM_TOTA_NACI),SUM(IM_AFEC_CONT),SUM(IM_INAF_C
ONT),SUM(IM_IMP1_CONT),SUM(IM_IMP2_CONT),SUM(IM_TOTA_CONT)
from #TWDOCU_CLIE_FTEERFU
group by CO_TIPO_DOCU,CO_MONE Order By 1')
End
End
End

S-ar putea să vă placă și