0% found this document useful (0 votes)
88 views5 pages

View

The document defines views for different types of sales and purchase documents in SQL. It selects fields from various tables and unions them to create views for sales books, invoices, debit notes, honorariums, and purchase books. Fields like document number, date, customer, net amount, taxes, and classifications are selected and calculated.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
88 views5 pages

View

The document defines views for different types of sales and purchase documents in SQL. It selects fields from various tables and unions them to create views for sales books, invoices, debit notes, honorariums, and purchase books. Fields like document number, date, customer, net amount, taxes, and classifications are selected and calculated.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 5

CREATE VIEW [dbo].[SCSBO_Libro_Ventas] AS SELECT TOP 100 PERCENT * FROM (SELECT A.

* FROM (SELECT CASE WHEN docsubtype = 'DN' AND (INdicator IS NULL or INdicator <> (Select top 1 U_Ind_NDE FROM [@ZCON1])) THEN '3' ELSE CASE WHEN Indicator = (Select top 1 U_Ind_BRV FROM [@ZCON1]) THEN '6' ELSE CASE WHEN docsubtype = 'DN' AND INdicator = (Select top 1 U_Ind_NDE FROM [@ZCON1]) THEN '9' ELSE CASE WHEN docsubtype = 'IE' THEN '4' ELSE CASE WHEN docsubtype = 'IX' THEN '5' ELSE CASE W HEN docsubtype = 'IB' THEN '6' ELSE CASE WHEN docsubtype = 'EB' THEN '7' ELSE '1 ' END END END END END END END AS TIPO, docnum AS DOCUM, CASE WHEN folionum IS NU LL THEN docnum ELSE folionum END AS NUMERO, taxdate AS FECHA, Lictradnum AS RUT, CASE WHEN (docsubtype = 'IB' OR docsubtype = 'EB') AND (NumAtCard IS NOT NULL AND ISNUMERIC(NumAtCard) = 0) THEN NumATCard ELSE Cardname END AS DESCRIPCION, C ASE WHEN vatsum + wtsum = 0 THEN 0 ELSE (doctotal - vatsum + wtsum) END AS NETO, CASE WHEN (vatsum + wtsum = 0) THEN Doctotal - vatsum ELSE (CASE WHEN (SELEC T SUM(basesum) FROM INV4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 13) IS NULL THEN 0 ELSE (SELECT SUM(b asesum) FROM INV4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND st acode = 'IVA_Exe' AND OBJECTTYPE = 13) END) END AS [NO_AFECTO], (CASE WHEN (SE LECT SUM(taxsum) FROM INV4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 13) IS NULL THEN 0 ELSE (SELECT SUM(taxsu m) FROM INV4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 13) END) AS [IVA], (CASE WHEN (SELECT SUM(basesum) FRO M INV4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA _Exe' AND OBJECTTYPE = 13) IS NULL THEN 0 ELSE (SELECT SUM(basesum) FROM INV4 WH ERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 13) END) AS [IVA_Exe], Doctotal AS TOTAL, FolioPref AS FOLIO, Ind icator AS CLASIF, docdate AS FECHACON FROM OINV UNION SELECT CASE WHEN docsubty pe = 'DN' AND (INdicator IS NULL or INdicator <> (Select top 1 U_Ind_NDE FROM [@ ZCON1])) THEN '3' ELSE CASE WHEN docsubtype = 'DN' AND INdicator = (Select top 1 U_Ind_NDE FROM [@ZCON1]) THEN '9' ELSE CASE WHEN docsubtype = 'IE' THEN '4' ELS E CASE WHEN docsubtype = 'IX' THEN '5' ELSE CASE WHEN docsubtype = 'IB' THEN '6' ELSE CASE WHEN docsubtype = 'EB' THEN '7' ELSE '8' END END END END END END AS T IPO, docnum AS DOCUM, CASE WHEN folionum IS NULL THEN docnum ELSE folionum END A S NUMERO,taxdate AS FECHA, Lictradnum AS RUT, CASE WHEN (docsubtype = 'IB' OR do csubtype = 'EB') AND (NumAtCard IS NOT NULL AND ISNUMERIC(NumAtCard) = 0) THEN NumATCard ELSE Cardname END AS DESCRIPCION, CASE WHEN vatsum + wtsum = 0 THEN 0 ELSE (doctotal - vatsum + wtsum) END AS NETO, CASE WHEN (vatsum + wtsum = 0) THEN Doctotal - vatsum ELSE 0 END AS [NO_AFECTO], (CASE WHEN (SELECT SUM(taxsu m) FROM DPI4 WHERE ODPI.docentry = DPI4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 203) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM DPI4 WHERE ODPI.docentry = DPI4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND O BJECTTYPE = 203) END) AS [IVA], (CASE WHEN (SELECT SUM(taxsum) FROM DPI4 WHERE ODPI.docentry = DPI4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJ ECTTYPE = 203) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM DPI4 WHERE ODPI.doce ntry = DPI4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 203) END) AS [IVA_Exe], Doctotal AS TOTAL, FolioPref AS FOLIO, Indicator AS CL ASIF, docdate AS FECHACON FROM ODPI WHERE ODPI.Posted = 'Y' UNION SELECT CASE WHEN (DOCTYPE = 'I' OR DOCTYPE = 'S') AND (INdicator IS NULL or INdicator <> (Se lect top 1 U_Ind_NCE FROM [@ZCON1])) THEN '2' ELSE CASE WHEN (DOCTYPE = 'I' OR D OCTYPE = 'S') AND (INdicator = (Select top 1 U_Ind_NCE FROM [@ZCON1]))THEN 'A' ELSE '4' END END AS TIPO, docnum AS DOCUM, CASE WHEN folionum IS NULL THEN docnu m ELSE folionum END AS NUMERO, Taxdate AS FECHA, Lictradnum AS RUT, Cardname AS DESCRIPCION, CASE WHEN vatsum = 0 then 0 ELSE ((doctotal - vatsum + wtsum) * - 1 ) END AS NETO, CASE WHEN vatsum = 0 THEN Doctotal * - 1 ELSE 0 END AS [NO_AFECT O], (CASE WHEN (SELECT SUM(taxsum) FROM RIN4 WHERE ORIN.docentry = RIN4.docent ry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 14) IS NULL THEN 0 EL SE (SELECT SUM(taxsum) FROM RIN4 WHERE ORIN.docentry = RIN4.docentry AND loginst anc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 14) END) * - 1 AS [IVA], (CASE WHEN (SELECT SUM(taxsum) FROM RIN4 WHERE ORIN.docentry = RIN4.docentry AND loginstan c = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 14) IS NULL THEN 0 ELSE (SELECT S UM(taxsum) FROM RIN4 WHERE ORIN.docentry = RIN4.docentry AND loginstanc = 0 AND

stacode = 'IVA_Exe' AND OBJECTTYPE = 14) END) * - 1 AS [IVA_Exe], (doctotal * 1) AS TOTAL,FolioPref AS FOLIO, Indicator AS CLASIF, docdate AS FECHACON FROM OR IN) AS a LEFT JOIN [@ZNUL1] AS Z ON A.TIPO = Z.U_TIPO AND A.NUMERO = Z.U_NUMERO AND A.FOLIO = Z.U_FOLIO WHERE Z.U_NUMERO IS NULL UNION SELECT U_TIPO AS TIPO, U _DOCUM AS DOCUM, U_NUMERO AS NUMERO, U_FECHA AS FECHA, U_RUT AS RUT, U_DESCRIP A S DESCRIPCION, 0, 0,0,0,0,U_FOLIO as FOLIO, U_INDIC AS CLASIF , U_FECHA AS FECHA CON FROM [@ZNUL1] WHERE (U_ORIG_DOC <> 'C' )) AS FIN ORDER BY TIPO,FECHA,NUMERO GO CREATE VIEW [dbo].[SCSBO_Libro_Honorarios] as SELECT TOP 100 PERCENT * FROM (SEL ECT CASE WHEN OPCH.docsubtype = 'DN' THEN '3' ELSE '1' END AS TIPO, OPCH.docnum AS DOCUM,CASE WHEN folionum IS NULL THEN OPCH.docnum ELSE folionum END AS NUMERO ,OPCH.taxdate AS FECHA, OPCH.Lictradnum AS RUT, OPCH.Cardname AS DESCRIPCION, OP CH.BaseAmnt AS BRUTO, ((CASE WHEN PCH5.WTcode = 'W1' THEN sum(PCH5.WTAmnt) ELSE 0 END)) AS [W1], (OPCH.BaseAmnt - OPCH.WTsum) AS TOTAL, Indicator AS CLASIF, ca se when (select OWHT.Category FROM OWHT WHERE WtCode = 'W1') = 'P' THEN ISNULL( OVPM.DocDate, {d'2000-01-01'}) ELSE ISNULL(OPCH.DocDate,{d'2000-01-01'}) END AS FECHACON FROM OPCH JOIN PCH5 ON OPCH.DocEntry = PCH5.AbsEntry AND PCH5.logins tanc = 0 AND OPCH.OBJTYPE = 18 LEFT JOIN OVPM ON OVPM.DocEntry = OPCH.ReceiptNu m WHERE PCH5.WTcode IN ('W1') AND PCH5.BASEABSENT = -1 AND PCH5.ABSENTRY NOT I N(SELECT A1.ABSENTRY FROM PCH5 A1 JOIN RPC5 A2 ON A1.ABSENTRY = A2.BASEABSENT OR A2.ABSENTRY = A1.BASEABSENT ) AND (OPCH.BaseAmnt - OPCH.WTsum) <> 0 GROUP BY OP CH.DocSubType, OPCH.DocEntry, OPCH.ReceiptNum, OPCH.DocNum, OPCH.FolioNum, OPCH .taxDate, OVPM.DocDate, OPCH.Lictradnum, OPCH.CardName, OPCH.BaseAmnt, OPCH.WTsu m, PCH5.WTCode, OPCH.Indicator,OPCH.Docdate) AS a ORDER BY TIPO, FECHA, NUMERO GO CREATE VIEW [dbo].[SCSBO_Libro_Compras] as SELECT TOP 100 PERCENT *, case when t ipo=5 then NUMERO else 0 end as DUMMY FROM ( SELECT A.*FROM ( /* FACTURAS */ SEL ECT CASE WHEN Indicator = (SELECT TOP 1 ISNULL(U_Ind_Ndeb,' ') FROM [@ZCON1]) TH EN '3' ELSE CASE WHEN Indicator = (SELECT TOP 1 ISNULL(U_Ind_Fcom,' ') FROM [@ZC ON1]) THEN '5' ELSE '1' END END AS TIPO, docnum AS DOCUM, CASE WHEN folionum IS NULL THEN docnum ELSE folionum END AS NUMERO, Taxdate AS FECHA, Lictradnum AS RU T, Cardname AS DESCRIPCION, (doctotal - vatsum + wtsum ) AS NETO, (CASE WHEN vat sum = 0 THEN doctotal ELSE CASE WHEN (SELECT SUM(PCH4.Basesum) FROM PCH4 WHERE P CH4.docentry = OPCH.docentry AND loginstanc = 0 AND OBJECTTYPE = 18 and taxsum = 0 GROUP BY docentry,loginstanc,OBJECTTYPE) IS NULL THEN OPCH.RoundDif ELSE (SE LECT SUM(PCH4.Basesum) FROM PCH4 WHERE PCH4.docentry = OPCH.docentry AND logins tanc = 0 AND OBJECTTYPE = 18 and taxsum = 0 GROUP BY docentry,loginstanc,OBJECT TYPE) END END) AS [NO_AFECTO], (CASE WHEN (SELECT SUM(taxsum) FROM PCH4 WHERE O PCH.docentry = PCH4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTY PE = 18) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = PCH4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 18) END ) AS [IVA], (CASE WHEN (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = PCH4 .docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 18) IS NUL L THEN 0 ELSE (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = PCH4.docentr y AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 18) END) AS [IVA_E xe], Doctotal AS TOTAL, docdate AS FECHACON, Indicator AS CLASIF FROM OPCH where OPCH.docentry in (SELECT DISTINCT docENTRY FROM PCH4 left join PCH5 on absentr y = docentry where DocSubType <> 'DM' and PCH4.stacode IN ('IVA','IVA_Exe') AND (PCH5.absentry IS NULL OR (PCH5.absentry IS NOT NULL AND PCH5.TaxbleAmnt = 0)))/ * FIN FACTURAS */ /* NOTA DEBITO */ UNION SELECT '3' AS TIPO, docnum AS DOCUM, CASE WHEN folionum IS NULL THEN docnum ELSE folionum END AS NUMERO, Taxdate AS F ECHA, Lictradnum AS RUT, Cardname AS DESCRIPCION, (doctotal - vatsum + wtsum ) A S NETO, (CASE WHEN vatsum = 0 THEN doctotal ELSE CASE WHEN (SELECT SUM(PCH4.Base sum) FROM PCH4 WHERE PCH4.docentry = OPCH.docentry AND loginstanc = 0 AND OBJECT TYPE = 18 and taxsum = 0 GROUP BY docentry,loginstanc,OBJECTTYPE) IS NULL THEN OPCH.RoundDif ELSE (SELECT SUM(PCH4.Basesum) FROM PCH4 WHERE PCH4.docentry = OPC H.docentry AND loginstanc = 0 AND OBJECTTYPE = 18 and taxsum = 0 GROUP BY docen try,loginstanc,OBJECTTYPE) END END) AS [NO_AFECTO], (CASE WHEN (SELECT SUM(taxsu

m) FROM PCH4 WHERE OPCH.docentry = PCH4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 18) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = PCH4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 18) END) AS [IVA], (CASE WHEN (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = PCH4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OB JECTTYPE = 18) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.do centry = PCH4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 18) END) AS [IVA_Exe],Doctotal AS TOTAL, docdate AS FECHACON, Indicator AS CL ASIF FROM OPCH where DocSubType = 'DM' AND OPCH.docentry in (SELECT DISTINCT doc ENTRY FROM PCH4 left join PCH5 on absentry = docentry where PCH4.stacode IN (' IVA','IVA_Exe') AND (PCH5.absentry IS NULL OR (PCH5.absentry IS NOT NULL AND PCH 5.TaxbleAmnt = 0)))/* FIN NDEBITOS */ UNION SELECT CASE WHEN docsubtype = 'DN' THEN '3' ELSE '6' END AS TIPO, docnum AS DOCUM, CASE WHEN folionum IS NULL THEN docnum ELSE folionum END AS NUMERO, Taxdate AS FECHA, Lictradnum AS RUT, Cardnam e AS DESCRIPCION, (doctotal - vatsum + wtsum) AS NETO, (CASE WHEN vatsum = 0 THE N doctotal ELSE CASE WHEN (SELECT SUM(DPO4.Basesum) FROM DPO4 WHERE DPO4.docentr y = ODPO.docentry AND loginstanc = 0 AND OBJECTTYPE = 204 AND taxsum = 0 GROUP B Y docentry, loginstanc, OBJECTTYPE) IS NULL THEN 0 ELSE (SELECT SUM(DPO4.Basesum ) FROM DPO4 WHERE DPO4.docentry = ODPO.docentry AND loginstanc = 0 AND OBJECTTYP E = 204 AND taxsum = 0 GROUP BY docentry, loginstanc, OBJECTTYPE) END END) AS [N O_AFECTO], (CASE WHEN(SELECT SUM(taxsum) FROM DPO4 WHERE ODPO.docentry = DPO4.d ocentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 204) IS NULL THE N 0 ELSE (SELECT SUM(taxsum) FROM DPO4 WHERE ODPO.docentry = DPO4.docentry AND l oginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 204) END) AS [IVA], (CASE WH EN(SELECT SUM(taxsum) FROM DPO4 WHERE ODPO.docentry = DPO4.docentry AND loginsta nc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 204) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM DPO4 WHERE ODPO.docentry = DPO4.docentry AND loginstanc = 0 AN D stacode = 'IVA_Exe' AND OBJECTTYPE = 204) END) AS [IVA_Exe], doctotal AS TOTA L, docdate AS FECHACON, Indicator AS CLASIF FROM ODPO WHERE ODPO.Posted = 'Y' AN D ODPO.docentry IN (SELECT DISTINCT docENTRY FROM DPO4 LEFT JOIN DPO5 ON absentr y = docentry WHERE DPO4.stacode IN ('IVA','IVA_Exe') AND (DPO5.absentry IS NULL OR (DPO5.absentry IS NOT NULL AND DPO5.TaxbleAmnt = 0))) UNION /* NOTAS DE CRED ITO */ SELECT CASE WHEN DOCTYPE = 'I' OR DOCTYPE = 'S' THEN '2' ELSE '4' END AS TIPO, docnum AS DOCUM, CASE WHEN folionum IS NULL THEN docnum ELSE folionum END AS NUMERO, Taxdate AS FECHA, Lictradnum AS RUT, Cardname AS DESCRIPCION, ((doct otal - vatsum + wtsum) * - 1) AS NETO, CASE WHEN vatsum = 0 THEN doctotal ELSE C ASE WHEN (SELECT SUM(RPC4.Basesum) FROM RPC4 WHERE RPC4.docentry = ORPC.docentry AND loginstanc = 0 AND OBJECTTYPE = 19 and taxsum = 0 GROUP BY docentry,logins tanc,OBJECTTYPE) IS NULL THEN 0 ELSE (SELECT SUM(RPC4.Basesum) FROM RPC4 WHERE R PC4.docentry = ORPC.docentry AND loginstanc = 0 AND OBJECTTYPE = 19 and taxsum = 0 GROUP BY docentry,loginstanc,OBJECTTYPE) END END * -1 AS [NO_AFECTO], (CASE WHEN(SELECT SUM(taxsum)FROM RPC4 WHERE ORPC.docentry = RPC4.docentry AND login stanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 19) IS NULL THEN 0 ELSE (SELECT SUM(taxsum)FROM RPC4 WHERE ORPC.docentry = RPC4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 19) END) * - 1 AS [IVA], (CASE WHEN(SELECT SU M(taxsum)FROM RPC4 WHERE ORPC.docentry = RPC4.docentry AND loginstanc = 0 AND st acode = 'IVA_Exe' AND OBJECTTYPE = 19) IS NULL THEN 0 ELSE (SELECT SUM(taxsum)F ROM RPC4 WHERE ORPC.docentry = RPC4.docentry AND loginstanc = 0 AND stacode = 'I VA_Exe' AND OBJECTTYPE = 19) END) * - 1 AS [IVA_Exe], (doctotal * - 1) AS TOTAL , docdate AS FECHACON, Indicator AS CLASIF FROM ORPC where ORPC.docentry in (SEL ECT DISTINCT docENTRY FROM RPC4 left join RPC5 on absentry = docentry where (R PC4.stacode IN ('IVA','IVA_Exe') AND RPC5.wtcode IN ('IVA','IVA_Exe')) OR (RPC5 .AbsEntry IS NULL OR (RPC5.Absentry IS NOT NULL AND RPC5.TaxbleAmnt = 0))) /* FI N NOTAS DE CREDITO */ UNION SELECT '5' AS TIPO, docnum AS DOCUM, CASE WHEN folio num IS NULL THEN docnum ELSE folionum END AS NUMERO, Taxdate AS FECHA, Lictradnu m AS RUT, Cardname AS DESCRIPCION, (doctotal - vatsum + wtsum) AS NETO, (CASE WH EN vatsum = 0 THEN doctotal ELSE CASE WHEN (SELECT SUM(DPO4.Basesum) FROM DPO4 W HERE DPO4.docentry = ODPO.docentry AND loginstanc = 0 AND OBJECTTYPE = 204 AND t axsum = 0 GROUP BY docentry, loginstanc, OBJECTTYPE) IS NULL THEN 0 ELSE (SELECT SUM(DPO4.Basesum) FROM DPO4 WHERE DPO4.docentry = ODPO.docentry AND loginstanc

= 0 AND OBJECTTYPE = 204 AND taxsum = 0 GROUP BY docentry, loginstanc, OBJECTTYP E) END END) AS [NO_AFECTO], (CASE WHEN(SELECT SUM(taxsum) FROM DPO4 WHERE ODPO. docentry = DPO4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 204) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM DPO4 WHERE ODPO.docentry = DP O4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 204) END) AS [IVA], (CASE WHEN(SELECT SUM(taxsum) FROM DPO4 WHERE ODPO.docentry = DPO4.doce ntry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 204) IS NULL TH EN 0 ELSE (SELECT SUM(taxsum) FROM DPO4 WHERE ODPO.docentry = DPO4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 204) END) AS [IVA_Exe], doctotal AS TOTAL, docdate AS FECHACON, Indicator AS CLASIF FROM ODPO LEFT JOI N [@ZNUL1] AS Z ON Z.U_ORIG_DOC = 'C' AND Z.U_TIPO = '1' AND folionum = Z.U_NUME RO WHERE (Z.U_NUMERO IS NULL) AND ODPO.Posted = 'Y' AND ODPO.docentry IN (SELECT DISTINCT docENTRY FROM DPO4 LEFT JOIN DPO5 ON absentry = docentry WHERE DPO4.st acode IN ('IVA','IVA_Exe') AND DPO5.Wtcode IN ('IVA','IVA_Exe')) UNION /* FACTU RAS A TERCEROS */ SELECT '5' AS TIPO, docnum AS DOCUM, CASE WHEN folionum IS NUL L THEN docnum ELSE folionum END AS NUMERO, Taxdate AS FECHA, Lictradnum AS RUT, Cardname AS DESCRIPCION, (doctotal - vatsum + wtsum) AS NETO, (CASE WHEN vatsum = 0 THEN doctotal ELSE CASE WHEN (SELECT SUM(PCH4.Basesum) FROM PCH4 WHERE PCH4. docentry = OPCH.docentry AND loginstanc = 0 AND OBJECTTYPE = 18 and taxsum = 0 GROUP BY docentry,loginstanc,OBJECTTYPE) IS NULL THEN 0 ELSE (SELECT SUM(PCH4.Ba sesum) FROM PCH4 WHERE PCH4.docentry = OPCH.docentry AND loginstanc = 0 AND OBJE CTTYPE = 18 and taxsum = 0 GROUP BY docentry,loginstanc,OBJECTTYPE) END END) AS [NO_AFECTO], (CASE WHEN (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = P CH4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 18) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = PCH4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 18) END) AS [IVA], (CAS E WHEN (SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = PCH4.docentry AND l oginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 18) IS NULL THEN 0 ELSE ( SELECT SUM(taxsum) FROM PCH4 WHERE OPCH.docentry = PCH4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 18) END) AS [IVA_Exe], doctotal A S TOTAL, docdate AS FECHACON, Indicator AS CLASIF FROM OPCH LEFT JOIN [@ZNUL1] A S Z ON Z.U_ORIG_DOC = 'C' AND Z.U_TIPO = '1' AND folionum = Z.U_NUMERO WHERE ( Z.U_NUMERO IS NULL) AND opch.docentry in (SELECT DISTINCT docENTRY FROM PCH4 left join PCH5 on absentry = docentry where PCH4.stacode IN ('IVA','IVA_Exe') AND PCH5.wtcode IN ('IVA','IVA_Exe'))/* FIN FACTURAS A TERCEROS */) AS a UNION SELECT '5' AS TIPO, U_DOCUM AS DOCUM, U_NUMERO AS NUMERO, U_FECHA AS FECHA, U_R UT AS RUT, U_DESCRIP AS DESCRIPCION, 0 as NETO, 0 AS NO_AFECTO, 0,0,0, U_FECHA A S FECHACON, U_INDIC AS CLASIF from [@ZNUL1] where U_ORIG_DOC = 'C') AS FIN ORDER BY TIPO, DUMMY, FECHA, NUMERO GO CREATE view [dbo].[SCSBO_Libro_Boletas] as SELECT TOP 100 PERCENT * FROM (SELECT A.* FROM (SELECT CASE WHEN docsubtype = 'IB' THEN '6' else '7' END AS TIPO, doc num AS DOCUM, CASE WHEN folionum IS NULL THEN docnum ELSE folionum END AS NUMERO , CASE WHEN (Select top 1 U_Ubc_Bol FROM [@ZCON1]) = '0' AND NumAtCard IS NOT NU LL THEN (CONVERT(INT,LEFT(REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ',''),'.',' '),PATINDEX('%-%',REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ',''),'.',''))-1))) ELSE CASE WHEN (Select top 1 U_Ubc_Bol FROM [@ZCON1]) = '1' AND (U_Bol_Ini IS NO T NULL AND U_Bol_Ini <> 0) THEN CONVERT(INT,U_Bol_Ini) ELSE CONVERT(INT, FOLIONU M) End END AS RANGO_DESDE, CASE WHEN (Select top 1 U_Ubc_Bol FROM [@ZCON1]) = '0 ' AND NumAtCard IS NOT NULL THEN CONVERT(INT,RIGHT(REPLACE(REPLACE(LTRIM(RTRIM( NumAtCard)),' ',''),'.',''),LEN(REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ',''), '.','')) - PATINDEX('%-%',REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ',''),'.','' )))) ELSE CASE WHEN (Select top 1 U_Ubc_Bol FROM [@ZCON1]) = '1' AND (U_Bol_Fin IS NOT NULL AND U_Bol_Fin <> 0) THEN CONVERT(INT,U_Bol_Fin) ELSE CONVERT(INT, FO LIONUM) End END AS RANGO_HASTA, Taxdate AS FECHA, Lictradnum AS RUT, Cardname AS DESCRIPCION, doctotal - vatsum AS NETO, CASE WHEN docsubtype = 'EB' THEN doctot al - vatsum ELSE 0 END AS [NO_AFECTO], (CASE WHEN (SELECT SUM(taxsum) FROM INV4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 13) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM INV4 WHERE OINV.do

centry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA' AND OBJECTTYPE = 1 3) END) AS [IVA], (CASE WHEN (SELECT SUM(taxsum) FROM INV4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 13) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM INV4 WHERE OINV.docentry = INV4.doc entry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 13) END) AS [I VA_Exe], doctotal AS TOTAL, FolioPref AS FOLIO, Indicator as CLASIF, Series as SERIES FROM OINV WHERE docsubtype = 'IB' OR docsubtype = 'EB') AS a LEFT JOIN [@ ZNUL1] AS Z ON A.TIPO = Z.U_TIPO AND A.NUMERO = Z.U_NUMERO AND A.FOLIO = Z.U_FOL IO WHERE Z.U_NUMERO IS NULL UNION SELECT U_TIPO AS TIPO, U_DOCUM AS DOCUM, U_NUM ERO AS NUMERO, CONVERT(INT, U_NUMERO) AS RANGO_DESDE, convert(INT,U_numero) as R ANGO_HASTA, U_FECHA AS FECHA, U_RUT AS RUT, U_DESCRIP AS DESCRIPCION, 0, 0,0,0, 0, U_FOLIO AS FOLIO, U_INDIC AS CLASIF,'' FROM [@ZNUL1] WHERE ( U_TIPO = '6' OR U_TIPO = '7') AND (U_ORIG_DOC <> (Select top 1 U_Ind_Fcom FROM [@ZCON1])) UNION SELECT A.* FROM (SELECT CASE WHEN Indicator = 'BH' THEN '6' else '7' END AS TIP O, docnum AS DOCUM, CASE WHEN folionum IS NULL THEN docnum ELSE folionum END AS NUMERO, CASE WHEN (Select top 1 U_Ubc_Bol FROM [@ZCON1]) = '0' AND NumAtCard IS NOT NULL THEN (CONVERT(INT,LEFT(REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ','' ),'.',''),PATINDEX('%-%',REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ',''),'.','') )-1))) ELSE CASE WHEN (Select top 1 U_Ubc_Bol FROM [@ZCON1]) = '1'AND U_Bol_Ini IS NOT NULL THEN CONVERT(INT,U_Bol_Ini) ELSE CONVERT(INT,docnum) End END AS RAN GO_DESDE, CASE WHEN (Select top 1 U_Ubc_Bol FROM [@ZCON1]) = '0' AND NumAtCard I S NOT NULL THEN CONVERT(INT,RIGHT(REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ','' ),'.',''),LEN(REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ',''),'.','')) - PATINDE X('%-%',REPLACE(REPLACE(LTRIM(RTRIM(NumAtCard)),' ',''),'.','')))) ELSE CASE WHE N (Select top 1 U_Ubc_Bol FROM [@ZCON1]) = '1' AND U_Bol_Fin IS NOT NULL THEN CO NVERT(INT,U_Bol_Fin) ELSE CONVERT(INT,docnum) End END AS RANGO_HASTA, Taxdate AS FECHA, Lictradnum AS RUT, Cardname AS DESCRIPCION, CASE WHEN vatsum + wtsum = 0 THEN 0 ELSE (doctotal - vatsum + wtsum) END AS NETO, CASE WHEN (vatsum + wtsum = 0) THEN Doctotal - vatsum ELSE 0 END AS [NO_AFECTO], (CASE WHEN (SELECT SUM(t axsum) FROM INV4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stac ode = 'IVA' AND OBJECTTYPE = 13) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM IN V4 WHERE OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA' AN D OBJECTTYPE = 13) END) AS [IVA], (CASE WHEN (SELECT SUM(taxsum) FROM INV4 WHER E OINV.docentry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND O BJECTTYPE = 13) IS NULL THEN 0 ELSE (SELECT SUM(taxsum) FROM INV4 WHERE OINV.doc entry = INV4.docentry AND loginstanc = 0 AND stacode = 'IVA_Exe' AND OBJECTTYPE = 13) END) AS [IVA_Exe], doctotal AS TOTAL, FolioPref AS FOLIO, Indicator as CL ASIF, Series as SERIES FROM OINV WHERE Indicator = 'BH' AND FolioPref IS NOT N ULL ) AS a LEFT JOIN [@ZNUL1] AS Z ON A.TIPO = Z.U_TIPO AND A.NUMERO = Z.U_NUMER O AND A.FOLIO = Z.U_FOLIO WHERE Z.U_NUMERO IS NULL UNION SELECT U_TIPO AS TIPO, U_DOCUM AS DOCUM, U_NUMERO AS NUMERO, CONVERT(INT, U_NUMERO) AS RANGO_DESDE, con vert(INT,U_numero) as RANGO_HASTA, U_FECHA AS FECHA, U_RUT AS RUT, U_DESCRIP AS DESCRIPCION, 0, 0,0,0, 0, U_FOLIO AS FOLIO, U_INDIC AS CLASIF, '' FROM [@ZNUL1] WHERE (U_TIPO = '6' OR U_TIPO = '7') AND (U_ORIG_DOC <> 'C')) AS FIN ORDER BY F ECHA, TIPO, NUMERO GO

You might also like