2010-11-02 9 views
13

Wenn Sie eine Transaktion in einer Datenbank speichernAccounting Database - Kredit- und Debit-Speicherung?

1) Speichern Sie Kredit und Debit im selben Datensatz unter zwei verschiedenen Spalten? (Ohne die positive oder die negative Vorzeichen)

Beispiel 1A

TABLENAME 
... 
... 
(Credit) null 
(Debit) 100 

Beispiel 1B

TABLENAME 
... 
... 
(Credit) 250 
(Debit) null 

Oder

2) Haben Sie speichern 1-Wert mit einem positiven für Kredit- und ein negatives Vorzeichen für Debit?

Beispiel 2A

TABLENAME 
... 
... 
(Amount) -100 

Beispiel 2B

TABLENAME 
... 
... 
(Amount) 250 

Antwort

34

Accountants (und viele Buchhalter, wenn sie sind alle gut) wissen, dass es absolut keinen Unterschied zwischen Gut- und Lastschriften ist. Sie sind einfach Wertbewegungen.

Sie sollten in der gleichen Spalte mit einem vorzeichenbehafteten Wert gespeichert werden. Das macht die doppelte Buchführung so viel einfacher * a. Einige Leute glauben, dass doppelte Buchführung bedeutet, dass Sie zwei Sätze von Büchern behalten, einen für die Steuerabteilung (um Steuern zu minimieren) und einen für die Realität.

aber es wirklich bedeutet, dass jede Transaktion ist ausgeglichen, dass es einen Kredit- und Debit Eintrag hat, obwohl sie oft aus vielen Teilen bestehen und nicht nur zwei (und sie überqueren frei aus der Bilanz (zB Aktien ., Vermögenswerte, Verbindlichkeiten) in der Gewinn- und Verlust (zB Einkommen, Ausgaben) zum Beispiel können einige Aktien mit Brokerage-Kauf sein:

cash at bank  Asset  2019.95 cr 
shares at cost Asset  2000.00 dr 
brokerage  Expense  19.95 dr 
          ---------- 
           0.00 

* a: Sie mich als ein behandeln Autorität hier * b. Ich habe an vier separaten kommerziellen Buchhaltungspaketen gearbeitet, von denen eine riesige war. Noch wichtiger ist, ist meine Frau eine CA und sie stimmt mit mir, und das ist ungewöhnlich genug, dass ich rechts :-)


* b sein müssen : Natürlich sollten Sie nicht behandeln jemand als eine Autorität * c. "Jeder, der 30 Jahre alt ist, ist entweder sein eigener Arzt oder ein Idiot" und so weiter. Stellen Sie sicher, dass Sie verstehen, warum etwas als "richtig" akzeptiert wird, folgen Sie nicht blind der Masse.


* c: Es sei denn, es mir ist :-)

+3

+1. Es gibt auch keinen Vorteil, Spalten von einer Datenbankleistungsperspektive zu trennen, und wenn Sie beide Spalten haben, müssen Sie erzwingen, dass genau einer von ihnen NULL ist, andernfalls könnten Sie mit komischen Daten enden. In der Präsentationsoberfläche können Sie sie natürlich in zwei Spalten aufteilen. – Thilo

+0

lol Punkt * c, es sei denn, du bist: D, was du sagst macht Sinn für mich, das ist was ich akzeptiere es als die Antwort :) – 001

+0

paxdiablo, eine andere Frage für Sie hier http://StackOverflow.com/Questions/4074737/ accounting-database-storage-a-transaction: D – 001

1

Eine Ausnahme wurde nicht erwähnt. Wie nennt man einen Eintrag mit einem Nullbetrag - ist es eine Gutschrift oder eine Belastung?In einigen Fällen musste ich zeigen, dass der Betrag auf einen ungerundeten Wert berechnet wurde, der nicht null ist, aber der gerundete Betrag ist gleich Null wie bei Devisentransaktionen, Steuerbeträgen usw. Daher bevorzuge ich einen expliziten Indikator für das Soll oder Kredit-Flag und speichern Sie den Betrag als positiven Wert.

+4

Wenn es Null ist, fügen Sie es nicht hinzu :) es ist kein Kredit oder eine Schuld – 001