Professional Documents
Culture Documents
Pagos
Pagos
"U_SYP_ESTADO" FROM
"@SYP_FACTLOG" T0 */
DECLARE FechaIni timestamp;
DECLARE FechaFin timestamp;
DECLARE Estado nvarchar(30);
FechaIni := /* T0."U_SYP_FECFACT" */ '[%0]';
FechaFin := /* T0."U_SYP_FECFACT" */ '[%1]';
Estado := /* T0."U_SYP_ESTADO" */ '[%2]';
TABLA_PAGOS=
SELECT
BB."DocEntry",
STRING_AGG(BB."Numero Pago",', ') AS "Numero Pago",
BB."Soles",
BB."Dolares",
STRING_AGG(BB."TaxDate",', ') AS "Fecha Pago",
STRING_AGG(BB."JrnlMemo",', ') AS "Comentarios",
STRING_AGG(BB."Tipo Pago",', ') AS "Tipo Pago"
FROM(
SELECT
AA."DocEntry",
SUM(AA."Soles") OVER(PARTITION BY AA."DocEntry") AS
"Soles",
SUM(AA."Dolares") OVER(PARTITION BY AA."DocEntry") AS
"Dolares",
AA."Numero Pago",
AA."TaxDate",
AA."JrnlMemo",
AA."Tipo Pago"
FROM(
SELECT T0."DocNum" AS "Numero Pago",
T1."DocEntry",
T2."DocNum",
--T0."DocDueDate",
TO_NVARCHAR(T0."TaxDate", 'DD/MM/YYYY')
as "TaxDate",
(CASE WHEN T0."U_SYP_MPAGO"='PM' OR
T0."U_SYP_MPAGO"='PPM' THEN 'MASIVO' ELSE 'INDIVIDUAL' END) AS "Tipo Pago",
UPPER(T0."JrnlMemo") AS "JrnlMemo",
T1."SumApplied" AS "Soles",
T1."AppliedSys" AS "Dolares"
FROM OVPM T0
INNER JOIN VPM2 T1 ON T0."DocEntry"=T1."DocNum" AND
T1."InvType"=18
INNER JOIN OPCH T2 ON T2."DocEntry"=T1."DocEntry"
WHERE T0."Canceled"='N'
--AND T2."DocEntry"='15420'
ORDER BY T2."DocNum",T0."DocDueDate"
)AA
)BB
GROUP BY BB."DocEntry",BB."Soles",BB."Dolares";
TABLA_NC=
SELECT BB."BaseEntry",
STRING_AGG(BB."Numero NC",', ') AS "Numero NC",
STRING_AGG(BB."Correlativo NC",', ') AS "Correlativo NC",
BB."Soles",
BB."Dolares",
BB."Retencion",
STRING_AGG(BB."Fecha NC",', ') AS "Fecha NC"
FROM(
SELECT AA."BaseEntry",
AA."Numero NC",
AA."Fecha NC",
AA."Correlativo NC",
SUM(AA."Soles") OVER(PARTITION BY
AA."BaseEntry") AS "Soles",
SUM(AA."Dolares") OVER(PARTITION BY
AA."BaseEntry") AS "Dolares",
SUM(AA."Retencion") OVER(PARTITION BY
AA."BaseEntry") AS "Retencion"
FROM(
SELECT T1."BaseEntry",
T0."DocNum" AS "Numero NC",
(T0."U_SYP_MDTD"||'-'||
T0."U_SYP_MDSD"||'-'||T0."U_SYP_MDCD") AS "Correlativo NC",
TO_NVARCHAR(T0."TaxDate", 'DD/MM/YYYY')
AS "Fecha NC",
T0."DocTotal" AS "Soles",
T0."DocTotalSy" AS "Dolares",
(SELECT (CASE WHEN T0."DocCur"='S/' THEN
XX."WTAmnt" ELSE XX."WTAmntSC" END) FROM RPC5 XX
INNER JOIN OWHT YY ON
XX."WTCode"=YY."WTCode"
WHERE XX."AbsEntry"=T0."DocEntry" AND
YY."U_SYP_TIDE"='N') AS "Retencion"
FROM ORPC T0
INNER JOIN RPC1 T1 ON T0."DocEntry"=T1."DocEntry"
WHERE --T0."DocEntry"=3186
--AND
T1."BaseType"=18
)AA
)BB
GROUP BY BB."BaseEntry",BB."Soles",BB."Dolares",BB."Retencion";
TABLA_ANTICIPOS=
SELECT BB."DocEntry",
STRING_AGG(BB."Numero Anticipo",', ') AS "Numero
Anticipo",
BB."Soles",
BB."Dolares",
STRING_AGG(BB."Fecha Anticipo",', ') AS "Fecha Anticipo"
FROM(
SELECT AA."DocEntry",
AA."Numero Anticipo",
AA."Fecha Anticipo",
SUM(AA."Soles") OVER(PARTITION BY
AA."DocEntry") AS "Soles",
SUM(AA."Dolares") OVER(PARTITION BY
AA."DocEntry") AS "Dolares"
FROM(
SELECT T0."DocEntry",
T0."DrawnSum" AS "Soles",
T0."DrawnSumSc" AS "Dolares",
T1."DocNum" AS "Numero
Anticipo",
TO_NVARCHAR(T1."TaxDate",
'DD/MM/YYYY') AS "Fecha Anticipo"
FROM PCH9 T0
INNER JOIN ODPO T1 ON
T0."BaseAbs"=T1."DocEntry"
--WHERE T0."DocEntry"=16070
)AA
)BB
GROUP BY BB."DocEntry",BB."Soles",BB."Dolares";
TABLA_RECONCILIACION=
SELECT BB."TransId",
BB."TransType",
STRING_AGG(BB."ReconNum",', ') AS "ReconNum",
BB."Importe en Moneda Reconciliación",
BB."Importe Reconciliación ML",
BB."Importe Reconciliación ME",
BB."Importe Reconciliación MS",
BB."Moneda Extranjera",
BB."Código SN"
FROM(
SELECT
AA."TransId",
AA."TransType",
AA."ReconNum",
SUM(AA."Importe en Moneda Reconciliación") OVER (PARTITION
BY AA."TransId", AA."TransType", AA."Moneda Extranjera", AA."Código SN" ) AS
"Importe en Moneda Reconciliación",
SUM(AA."Importe Reconciliación ML") OVER (PARTITION BY
AA."TransId", AA."TransType", AA."Moneda Extranjera", AA."Código SN") AS "Importe
Reconciliación ML",
SUM(AA."Importe Reconciliación ME") OVER (PARTITION BY
AA."TransId", AA."TransType", AA."Moneda Extranjera", AA."Código SN") AS "Importe
Reconciliación ME",
SUM(AA."Importe Reconciliación MS") OVER (PARTITION BY
AA."TransId", AA."TransType", AA."Moneda Extranjera", AA."Código SN")AS "Importe
Reconciliación MS",
AA."Moneda Extranjera",
AA."Código SN"
FROM(
SELECT
CAST(T0."ReconNum" AS NVARCHAR(50)) AS "ReconNum",
T1."TransId" AS "TransId", --- 1
T1."TransType" AS "TransType", --- 2
T0."SumMthCurr" AS "Importe en Moneda
Reconciliación", --- 3
T0."ReconSum" AS "Importe Reconciliación ML", ---- 4
(CASE WHEN IFNULL(T0."FrgnCurr",'')='' THEN
T0."ReconSumSC" ELSE T0."ReconSumFC" END) AS "Importe Reconciliación ME", --- 5
T0."ReconSumSC" AS "Importe Reconciliación MS", --- 6
T0."ShortName" AS "Código SN", --- 8
T0."FrgnCurr" AS "Moneda Extranjera" --- 7
FROM "ITR1" T0
INNER JOIN "JDT1" T1 ON T1."TransId" =
T0."TransId" AND T1."Line_ID" = T0."TransRowId"
INNER JOIN "OCRD" T2 ON T2."CardCode" =
T0."ShortName"
INNER JOIN "OITR" T3 ON
T0."ReconNum"=T3."ReconNum"
WHERE T1."TransType"=18
AND T3."ReconType" IN (0,7)
AND T3."CancelAbs" = 0
--AND T3."ReconDate" <= '20211119'
ORDER BY T1."TransId",T0."ReconNum",T3."ReconDate"
)AA
--GROUP BY AA."TransId",AA."TransType",AA."Moneda
Extranjera",AA."Código SN",AA."ReconNum"
ORDER BY 1,8
)BB
GROUP BY BB."TransId",BB."TransType",BB."Importe en Moneda
Reconciliación",BB."Importe Reconciliación ML",BB."Importe Reconciliación
ME",BB."Importe Reconciliación MS", BB."Moneda Extranjera",BB."Código SN";
SELECT * FROM(
SELECT
T1."CardCode" AS "Código SN",
T1."CardName" AS "Nombre SN",
--T1."BankCode",
UPPER(T2."BankName") AS "Nombre Banco",
T3."AcctName" AS "Banco",
T3."Account" AS "Cuenta Corriente",
CASE WHEN T1."U_SYP_SNBUEN"='Y' THEN 'SI' ELSE 'NO' END AS "Buen Contribuyente",
CASE WHEN T1."U_SYP_AGENRE"='Y' THEN 'SI' ELSE 'NO' END AS "Agente Retencion",
CASE WHEN T1."U_SYP_TPER"='Y' THEN 'SI' ELSE 'NO' END AS "Agente Percepcion",
T0."U_RNT_FREC" AS "Fecha Recepcion",
T0."CreateDate" AS "Fecha Creacion",
T0."DocDate" AS "Fecha Contabilizacion",
T0."TaxDate" AS "Fecha Emision",
T0."DocDueDate" AS "Fecha Vencimiento",
DAYS_BETWEEN(T0."DocDueDate",IFNULL(:FechaFin,CURRENT_DATE)) AS "Dias de Atraso",
T4."PymntGroup" AS "Condicion de Pago",
T0."PeyMethod" AS "Forma de Pago",
(CASE WHEN T0."isIns"='Y' THEN 'FACTURA DE RESERVA' ELSE 'FACTURA DE PROVEEDORES'
END) AS "Tipo",
T0."DocNum" AS "N° Documento",
T0."NumAtCard" AS "Numero Factura",
UPPER(T0."JrnlMemo") AS "Entrada en el Diario",
T0."CtlAccount" AS "Cuenta Mayor",
UPPER(T5."AcctName") AS "Nombre de Cuenta",
T0."DocCur" AS "Moneda",
(CASE WHEN T0."DocCur"='S/' THEN T0."DocTotal"+T0."DpmAmnt" ELSE
T0."DocTotalFC"+T0."DpmAmntFC" END) AS "Importe Original",
(CASE WHEN T0."DocCur"='S/' THEN T0."DocTotal" ELSE T0."DocTotalFC" END) AS
"Importe Factura",
(CASE WHEN T0."DocCur"='S/' THEN (T0."DocTotal"-IFNULL(T0."PaidToDate",0)) ELSE
(T0."DocTotalFC"-IFNULL(T0."PaidFC",0)) END) AS "Saldo Vencido",
(SELECT (CASE WHEN T0."DocCur"='S/' THEN XX."WTAmnt" ELSE XX."WTAmntSC" END)
FROM PCH5 XX
INNER JOIN OWHT YY ON XX."WTCode"=YY."WTCode"
WHERE XX."AbsEntry"=T0."DocEntry"
AND YY."U_SYP_TIDE"='N'
) AS "Retencion",
FROM OPCH T0
INNER JOIN OCRD T1 ON T0."CardCode"=T1."CardCode"
LEFT JOIN ODSC T2 ON T1."BankCode"=T2."BankCode"
LEFT JOIN OCRB T3 ON T1."DflAccount"=T3."Account"
INNER JOIN OCTG T4 ON T0."GroupNum"=T4."GroupNum"
LEFT JOIN OACT T5 ON T0."CtlAccount"=T5."AcctCode"
WHERE --T0."CardCode"='P20543103820'
--AND
T0."CANCELED"='N'
AND T0."CardCode" = CASE WHEN IFNULL(:Codigo,'')='' THEN T0."CardCode"
ELSE :Codigo END
AND T0."DocDate" BETWEEN (CASE WHEN IFNULL(:FechaIni,'')='' THEN T0."DocDate" ELSE
:FechaIni END) AND (CASE WHEN IFNULL(:FechaFin,'')='' THEN T0."DocDate"
ELSE :FechaFin END)
AND T0."DocStatus" = CASE WHEN IFNULL(:Estado,'')='' THEN T0."DocStatus"
ELSE :Estado END
UNION ALL
SELECT
T1."CardCode" AS "Código SN",
T1."CardName" AS "Nombre SN",
--T1."BankCode",
UPPER(T2."BankName") AS "Nombre Banco",
T3."AcctName" AS "Banco",
T3."Account" AS "Cuenta Corriente",
CASE WHEN T1."U_SYP_SNBUEN"='Y' THEN 'SI' ELSE 'NO' END AS "Buen Contribuyente",
CASE WHEN T1."U_SYP_AGENRE"='Y' THEN 'SI' ELSE 'NO' END AS "Agente Retencion",
CASE WHEN T1."U_SYP_TPER"='Y' THEN 'SI' ELSE 'NO' END AS "Agente Percepcion",
T0."U_RNT_FREC" AS "Fecha Recepcion",
T0."CreateDate" AS "Fecha Creacion",
T0."DocDate" AS "Fecha Contabilizacion",
T0."TaxDate" AS "Fecha Emision",
T0."DocDueDate" AS "Fecha Vencimiento",
DAYS_BETWEEN(T0."DocDueDate",IFNULL(:FechaFin,CURRENT_DATE)) AS "Dias de Atraso",
T4."PymntGroup" AS "Condicion de Pago",
T0."PeyMethod" AS "Forma de Pago",
'NOTA DE CREDITOS PROVEEDORES' AS "Tipo",
T0."DocNum" AS "N° Documento",
T0."NumAtCard" AS "Numero Factura",
UPPER(T0."JrnlMemo") AS "Entrada en el Diario",
T0."CtlAccount" AS "Cuenta Mayor",
UPPER(T5."AcctName") AS "Nombre de Cuenta",
T0."DocCur" AS "Moneda",
((CASE WHEN T0."DocCur"='S/' THEN T0."DocTotal"+T0."DpmAmnt" ELSE
T0."DocTotalFC"+T0."DpmAmntFC" END)*-1) AS "Importe Original",
((CASE WHEN T0."DocCur"='S/' THEN T0."DocTotal" ELSE T0."DocTotalFC" END)*-1) AS
"Importe Factura",
((CASE WHEN T0."DocCur"='S/' THEN (T0."DocTotal"-IFNULL(T0."PaidToDate",0)) ELSE
(T0."DocTotalFC"-IFNULL(T0."PaidFC",0)) END)*-1) AS "Saldo Vencido",
((SELECT (CASE WHEN T0."DocCur"='S/' THEN XX."WTAmnt" ELSE XX."WTAmntSC" END)
FROM PCH5 XX
INNER JOIN OWHT YY ON XX."WTCode"=YY."WTCode"
WHERE XX."AbsEntry"=T0."DocEntry"
AND YY."U_SYP_TIDE"='N'
)*-1) AS "Retencion",
FROM ORPC T0
INNER JOIN OCRD T1 ON T0."CardCode"=T1."CardCode"
LEFT JOIN ODSC T2 ON T1."BankCode"=T2."BankCode"
LEFT JOIN OCRB T3 ON T1."DflAccount"=T3."Account"
INNER JOIN OCTG T4 ON T0."GroupNum"=T4."GroupNum"
LEFT JOIN OACT T5 ON T0."CtlAccount"=T5."AcctCode"
WHERE --T0."CardCode"='P20543103820'
--AND
T0."CANCELED"='N'
AND T0."CardCode" = CASE WHEN IFNULL(:Codigo,'')='' THEN T0."CardCode"
ELSE :Codigo END
AND T0."DocDate" BETWEEN (CASE WHEN IFNULL(:FechaIni,'')='' THEN T0."DocDate" ELSE
:FechaIni END) AND (CASE WHEN IFNULL(:FechaFin,'')='' THEN T0."DocDate"
ELSE :FechaFin END)
AND T0."DocStatus" = 'O'
)AA
ORDER BY AA."Código SN",AA."N° Documento";