Buen día Compañeros.
Tengo el siguiente requerimiento: actualmente estoy llevando el control de los presupuestos, pero no de manera nativa de SAP 9.23 Pl. 12. Comento el escenario. Existe una tabla de usuario llamada Presupuestos donde están las cuentas contables y a nivel columna los presupuestos por cada centro de costo a evaluar.
La intención es que cuando se realice una entrada de mercancía de proveedores se evalúen las cuentas contables involucradas en ese documento a generar, considerando los centros de costos y obtener la sumatoria de esa cuenta...
La fórmula debería ser (A + B) <= C
A= Suma de la Cuenta Contable del Documento en Pantalla por Centro de Costo
B= Suma de la Cuenta Contable de JDT1 del Mes en Curso por Centro de Costo
C= Presupuesto de la Cuenta Contable de la Tabla de Usuario por Centro de Costo.
Para el punto B, ya dispongo de una Query:
(Select ifnull(sum(b1."Credit"-b1."Debit"*-1),0) as "Saldo"
from "LAMODERNA"."JDT1" b1
Where b1."Account" = T0."Code" and b1."ProfitCode" = 'G-VER-C' and month(b1."RefDate") = month(now()) and year(b1."RefDate") = year(now())) as "A_VerCentro",
Tengo noción pero no ubico cómo hacer la comparación, con la siguiente query obtengo las cuentas contables únicas en el documento en pantalla.
SELECT distinct T1."AcctCode"
FROM "LAMODERNA"."OPDN" T0 INNER JOIN "SBOMADERAS"."PDN1" T1 ON T0."DocEntry" = T1."DocEntry" WHERE T0."DocEntry" = list_of_cols_val_tab_del AND T1."OcrCode" = 'G-VER-C'
order by T1."AcctCode"
...
Teóricamente Debería hacer una nueva consulta donde SUME el LineTotal del Documento en Pantalla, con la subconsulta anterior.
Algo así como :
SELECT SUM(T1."TotalLine") IN TO A
FROM "LAMODERNA"."OPDN" T0 INNER JOIN "SBOMADERAS"."PDN1" T1 ON T0."DocEntry" = T1."DocEntry" WHERE T0."DocEntry" = list_of_cols_val_tab_del AND T1."OcrCode" = 'G-VER-C'
and T1."AcctCode"
IN
(SELECT distinct T1."AcctCode"
FROM "LAMODERNA"."OPDN" T0 INNER JOIN "SBOMADERAS"."PDN1" T1 ON T0."DocEntry" = T1."DocEntry" WHERE T0."DocEntry" = list_of_cols_val_tab_del AND T1."OcrCode" = 'G-VER-C'
order by T1."AcctCode")..
Hasta aquí llegué, no sé si el planteamiento vaya correcto.... aún está inconcluso... alguien me podría orientar, mi temor es cómo hacer que el Punto B y C sean iguales que el Punto A, en el momento de hacer las comparaciones... estoy confundido, porque utilizo en la cláusula IN (donde el resultado puede ser más de una cuenta)...
Si alguien me puede asesorar, con gusto acepto sus comentarios.
Saludos