Como criar um livro-razão / conta-T usando o PHP Mysql
Eu estou tentando criar um sistema de contabilidade financeira de dupla entrada. Eu terminei de projetar o banco de dados para ele, por favor, verifique este link para ver o diagrama do meu banco de dados.http://i39.tinypic.com/juhbv6.png
Eu tentei muito para desenvolver a consulta mysql para produzir o razão geral, mas não cheguei perto. Tudo o que consegui fazer é criar razão para apenas uma conta, onde tenho que criar para uma conta ilimitada.
A consulta que tentei está seguindo:
<code> $this->db->select('*'); $this->db->from('credit_side'); $this->db->join('debit_side', ' debit_side.transaction_id_dr = credit_side.transaction_id_cr '); $this->db->join('transaction_info', 'transaction_info.transaction_id = credit_side.transaction_id_cr '); $this->db->join('accounts', 'accounts.code = credit_side.account_code '); $this->db->where('debit_side.account_code', '1001'); $this->db->order_by('voucher_date','ASC'); </code>
Depois de falhar ao escrever a consulta mysql que pode produzir o ledger para todas as contas, eu escrevi a lógica para criar a conta General Ledger / T.
Agora, você poderia me ajudar com a consulta mysql?
Por favor, verifique o banco de dados antes de passar pelo seguinte. Desde já, obrigado :)
Pegue oaccounts.name
AS AccountHead,accounts.code
de contas.
Vá para a mesadebit_side
eget debit_side.account_code
, E sedebit_side.account_code
=accounts.code
então peguecredit_side.account_code
AS AccountName1 (mas quando eu vou echo em php, eu quero obter o nome em vez do código em si) ecredit_side.amount
AS Amount1,SUM(credit_side.amount)
AS TotalAmount1 decredit_side
Ondedebit_side.transaction_id_dr
=credit_side.transaction_id_cr
etransaction_info.voucher_date
está entre data1 e data2 ONDEtransaction_info.transaction_id
=debit_side.transaction_id_dr
Depois de completar o segundo passo, vá para a mesacredit_side
eget credit_side.account_code
,
E secredit_side.account_code
=accounts.code
então peguedebit_side.account_code
AS AccountName2 (mas quando eu vou echo em php, eu quero obter o nome em vez do código em si) edebit_side.amount
AS Amount2,SUM(debit_side.amount)
AS TotalAmount2 dedebit_side
Ondecredit_side.transaction_id_cr
=debit_side.transaction_id_dr
etransaction_info.voucher_date
está entre data1 e data2 ONDEtransaction_info.transaction_id
=credit_side.transaction_id_cr
Agora no arquivo de visão eu pretendo ter o seguinte:
<code> <table width="200" border="0"> <tr><td colspan="5">Account Head <?echo $AccountHead ; ?> </td> </tr> <tr> <td>Dr.</td> <td>amount.</td> <td> </td> <td>Cr</td> <td>Amount</td> </tr> <tr> <td><?echo $AccountName1 ; ?></td> <td><?echo $Ammount1 ; ?></td> <td></td> <td><?echo $AccountName2 ; ?></td> <td><?echo $Ammount2 ; ?></td> </tr> <tr> <td>Total</td> <td><?echo $TotalAmount1 ; ?></td> <td> </td> <td>Total </td> <td><?echo $TotalAmount2 ; ?></td> </tr> </table> </code>Amostra do razão geral