SQL-запрос для запуска итогового баланса на основе начальных, кредитных и дебетовых сумм в отчетах Zoho

Я использую отчеты Zoho, в которых у меня есть две таблицы с соответствующими столбцами, как показано ниже:

Основная таблица GL (состоит из начальных сальдо соответствующих кодов счетов GL по состоянию на 01 апреля 2017 года, который является началом финансового года).

GL Master Table

Группа пробного баланса (состоит из датовых и дебетовых сумм соответствующих кодов счетов GL)

Триал Баланс Групп

Исходя из вышеизложенного, теперь я хочу рассчитать итоговый остаток по дате для соответствующих счетов GL, в котором итоговым балансом на определенную дату должен быть начальный баланс для следующей даты транзакции. Я хотел бы иметь результирующие данные ниже моды.

Результат пробного баланса

Обратите внимание, что, поскольку я использую Zoho Reports, у него есть ограничения при разработке таблицы запросов только с помощью операторов "SELECT".

Для вышеуказанного требования в настоящее время я создал 3 отдельные таблицы запросов в отчетах Zoho с запросами, как показано ниже:

1-я таблица: Q1_AM

SELECT
     "GL Account Code",
     "Opening Date",
     "Opening Balance",
     0 as acc_amt
FROM  "GL Master Account" 
UNION ALL
SELECT
     "GL Account Code",
     "Document Date",
     0,
     sum("Debit Amount" + "Credit Amount")
FROM  "Trial Balance 1617" 
GROUP BY 1,2,3 

2-я таблица: Q2_AM

SELECT
     "GL Account Code",
     "Opening Date",
     sum("Opening Balance") as op_bal,
     sum("acc_amt") as acc_amt
FROM  "Q1_AM" 
GROUP BY 1,2 

3-я таблица: TB Group_Op.Db.Cr.Cl_AM (Это конечная выходная таблица, которую я желаю, но значения не такие правильные. Не удалось выяснить, есть ли проблемы с созданными запросами.).

SELECT
     t1."GL Account Code" as "GL Account Code",
     t1."opening date" as "Opening Date",
     sum(if(t1.acc_amt  > 0, t1.acc_amt, 0)) as "Debit Amount",
     sum(if(t2.acc_amt  < 0, t1.acc_amt, 0)) as "Credit Amount",
     sum(if(t1."Opening Date"  > t2."Opening Date", t2."op_bal" + t2."acc_amt", t2."op_bal")) as "Opening Balance",
     sum(t2."op_bal" + t2."acc_amt") as "Cum. Closing"
FROM  "Q1_AM" t1 JOIN "Q2_AM" t2 ON t1."GL Account Code"  = t2."GL Account Code"
AND t1."opening date"  >= t2."Opening Date"  
GROUP BY 1,2 

0 ответов

Другие вопросы по тегам