複式簿記の財務会計システムを作ろうとしています。データベースの設計が完了しました。このリンクをチェックして、データベースの図を確認してください。http://i39.tinypic.com/juhbv6.png
総勘定元帳を生成するためにmysqlクエリを開発するために多くのことを試みましたが、どこにも近づきませんでした。私が何とかしてやったのは、無制限のアカウント用に作成する必要がある1つのアカウント用の元帳を作成することだけです。
私が試したクエリは次のとおりです。
$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');
すべてのアカウントの元帳を生成できるmysqlクエリの記述に失敗した後、総勘定元帳/Tアカウントを作成するためのロジックを書き留めました。
さて、mysqlクエリを手伝ってくれませんか?
以下を実行する前に、データベースを確認してください。前もって感謝します :)
accounts.name
アカウントからASAccountHeadを取得accounts.code
します。テーブル
debit_side
に移動しget debit_side.account_code
、ifdebit_side.account_code
=accounts.code
then getcredit_side.account_code
AS AccountName1(ただし、phpでエコーする場合は、コード自体ではなく名前を取得したい)およびcredit_side.amount
AS Amount1、SUM(credit_side.amount)
AS TotalAmount1 fromcredit_side
wheredebit_side.transaction_id_dr
=credit_side.transaction_id_cr
andtransaction_info.voucher_date
is between date1 and date2 WHEREtransaction_info.transaction_id
==debit_side.transaction_id_dr
2番目のステップを完了した後、テーブルに移動し
credit_side
、get credit_side.account_code
if
=credit_side.account_code
thenaccounts.code
getdebit_side.account_code
AS AccountName2(ただし、phpでエコーする場合は、コード自体ではなく名前を取得したい)およびdebit_side.amount
AS Amount2、SUM(debit_side.amount)
AS TotalAmount2 fromdebit_side
wherecredit_side.transaction_id_cr
=debit_side.transaction_id_dr
andtransaction_info.voucher_date
is in date1とdate2の間WHEREtransaction_info.transaction_id
=credit_side.transaction_id_cr
ビューファイルで、次のことを目指しています。
<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>
総勘定元帳のサンプル
