Friday, 20 February 2026

Summarized TB GAC Report

 Summarized TB GAC Report


SELECT

    bal.period_name                                                                                                             period

    ,

    bal.name                                                                                                                    ledger_name

    ,

    xglcc.segment1                                                                                                              co,

    xglcc.segment2                                                                                                              loc,

    xglcc.segment3                                                                                                              gac,

  (SELECT Ffv.Description

                  FROM Fnd_Flex_Value_Sets Ffvs,

                       Fnd_Flex_Values_Vl  Ffv

                 WHERE Ffvs.Flex_Value_Set_Name = 'XXON_GLS3_GAC'

                   AND Ffv.Flex_Value_Set_Id = Ffvs.Flex_Value_Set_Id

                   AND Ffv.Flex_Value = XGlcc.Segment3) Gac_Desc,

    bal.currency_code                                                                                                           cy_cd

    ,

    SUM((nvl(bal.begin_balance_dr_beq, 0) - nvl(bal.begin_balance_cr_beq, 0)) +(nvl(bal.period_net_dr, 0) - nvl(bal.period_net_cr, 0))) end_balance_net

    ,

  --  xglcc.fs_cat_1,

 --   xglcc.fs_cat_2,

 --   xglcc.fs_cat_3,

     TO_NUMBER(to_char(TO_DATE(bal.period_name, 'MON-YY', 'NLS_DATE_LANGUAGE=AMERICAN'),

                      'YYYYMM'))                                                                                                                period_yyyymm

                      ,

    sysdate                                                                                                                     timestamp

FROM

    gl_periods gp,

Gl_Code_Combinations Xglcc,

    (

        SELECT

            gl.name name,

            gl.ledger_id,

            bal.period_name,

            bal.period_year,

            bal.currency_code,

            bal.period_net_dr,

            bal.period_net_cr,

            bal.begin_balance_dr_beq,

            bal.begin_balance_cr_beq,

            code_combination_id

        FROM

            gl_balances bal,

            gl_ledgers  gl

        WHERE

                gl.ledger_id = bal.ledger_id

            AND bal.actual_flag = 'A'

            AND bal.currency_code <> 'STAT'

            AND bal.translated_flag IS NULL

    )               bal

WHERE

        gp.period_name = bal.period_name

    AND gp.period_set_name = '4-4-5'

       AND ( CASE

        WHEN xglcc.segment1 IN ( :p_company ) THEN

            1

        WHEN ( coalesce(NULL, :p_company) IS NULL ) THEN

            1

          END = 1 )

         AND ( CASE

        WHEN xglcc.segment2 IN ( :p_loc ) THEN

            1

        WHEN ( coalesce(NULL, :p_loc) IS NULL ) THEN

            1

          END = 1 )

        AND ( CASE

        WHEN xglcc.segment3 IN ( :p_gac ) THEN

            1

        WHEN ( coalesce(NULL, :p_gac) IS NULL ) THEN

            1

          END = 1 )

          AND ( CASE

        WHEN xglcc.segment4 IN ( :p_lac ) THEN

            1

        WHEN ( coalesce(NULL, :p_lac) IS NULL ) THEN

            1

          END = 1 )

         AND ( CASE

        WHEN xglcc.segment5 IN ( :p_dept ) THEN

            1

        WHEN ( coalesce(NULL, :p_dept) IS NULL ) THEN

            1

          END = 1 )

          AND ( CASE

        WHEN xglcc.segment6 IN ( :p_pal ) THEN

            1

        WHEN ( coalesce(NULL, :p_pal) IS NULL ) THEN

            1

          END = 1 )

         AND ( CASE

        WHEN xglcc.segment7 IN ( :p_ico ) THEN

            1

        WHEN ( coalesce(NULL, :p_ico) IS NULL ) THEN

            1

          END = 1 )

    AND ( CASE

        WHEN xglcc.segment8 IN ( :p_proj ) THEN

            1

        WHEN ( coalesce(NULL, :p_proj) IS NULL ) THEN

            1

          END = 1 )

    AND xglcc.code_combination_id = bal.code_combination_id(+)

  --  AND acct_flex.flex_value = xglcc.segment2

  --  AND ( ( ( gp.period_name = 'JAN-20' ) ) )

   AND ( CASE

        WHEN gp.period_name IN ( :p_period ) THEN

            1

        WHEN ( coalesce(NULL, :p_period) IS NULL ) THEN

            1

          END = 1 )

  --  AND ( ( ( bal.name = 'USA USD PL' ) ) )

  AND ( CASE

        WHEN bal.name IN ( :p_ledger ) THEN

            1

        WHEN ( coalesce(NULL, :p_ledger) IS NULL ) THEN

            1

          END = 1 )

GROUP BY

    bal.period_name,

    bal.name,

    xglcc.segment1,

    xglcc.segment2,

    xglcc.segment3,

 --   acct_flex.description,

    bal.currency_code,

    To_Number(To_Char(To_Date(Bal.Period_name, 'MON-YY','NLS_DATE_LANGUAGE=AMERICAN'), 'YYYYMM'))

HAVING

    SUM((nvl(bal.begin_balance_dr_beq, 0) - nvl(bal.begin_balance_cr_beq, 0)) +(nvl(bal.period_net_dr, 0) - nvl(bal.period_net_cr, 0))) <> 0

No comments: