Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Buchhaltungsprobelm / Grundlage (https://www.delphipraxis.net/129170-buchhaltungsprobelm-grundlage.html)

manfred_h 13. Feb 2009 20:21

Datenbank: Firbird • Version: 2.1 • Zugriff über: Fibplus 6.50

Buchhaltungsprobelm / Grundlage
 
Hallo zusammen

bin dabei in eine Anwendung ein "Buchhaltungsmodul" zu interieren.
Die Tabellen die dazu erstellt wurden sind:
( für den Kontenramen)
SQL-Code:
CREATE TABLE BOOKKEEPING_CHART_ACCOUNTS (
    ID       ID NOT NULL /* ID = CHAR(38) NOT NULL */,
    C_NO     T10 /* T10 = VARCHAR(10) */,
    U_NO     T10 /* T10 = VARCHAR(10) */,
    ACNO     INTEGER,
    ACTYPE   INTEGER,
    TEXT     T130 /* T130 = VARCHAR(130) */,
    LANG     T10 /* T10 = VARCHAR(10) */,
    L_UPDATE TIME_S /* TIME_S = TIMESTAMP */
);
( für die Buchungen)
SQL-Code:
CREATE TABLE BOOKKEEPING_BOOKING (
    ID          ID NOT NULL /* ID = CHAR(38) NOT NULL */,
    C_NO        T10 /* T10 = VARCHAR(10) */,
    U_NO        T10 /* T10 = VARCHAR(10) */,
    "DATE"      "DATE" /* "DATE" = DATE */,
    VOUCHER_NO  INTEGER,
    TEXT        T130 /* T130 = VARCHAR(130) */,
    DEBIT_ACNO  INTEGER,
    CREDIT_ACNO INTEGER,
    ACTYPE      INTEGER,
    AMOUNT      AMOUNT /* AMOUNT = DECIMAL(18,2) */,
    L_UPDATE    TIME_S /* TIME_S = TIMESTAMP */
);
Bis jetzt sieht mein Buchungsüberblick ( im Ausdruck so aus)
----------------------------------------------------Soll----------Haben
1010 PC
--13.02.2009--1--Testbuchung--4010-----200,00
--13.02.2009--2--Testbuchung--4010-----100,00

1020 Bank
--11.02.2009--3--Testbuchung--4010-----250,00

Das Problem ist nun dass bei einem Ausdruck aller Buchungen das so aussehen sollte:
----------------------------------------------------Soll----------Haben------Total
1010 PC
--13.02.2009--1--Testbuchung--4010-----200,00--------------------200,00
--13.02.2009--2--Testbuchung--4010-----100,00--------------------300,00

1020 Bank
--11.02.2009--3--Testbuchung--3010------------------250,00-------250,00

Es sollen die Buchungen direct unter dem jeweiligen Soll oder Haben Titel befinden.
Mir ist leider nicht klar wie das umzusetzten ist.
Ich hoffe ich konnte das Problem verständlich schildern.

PS: Als Reportgenerator verwende ich FastReport.

Besten dank für Eure Tipps.
Manfred

mkinzler 13. Feb 2009 20:36

Re: Buchhaltungsprobelm / Grundlage
 
Über würde es mit einem Gruppierungs-Band versuchen.

manfred_h 13. Feb 2009 20:39

Re: Buchhaltungsprobelm / Grundlage
 
Hallo mkinzler

Zitat:

würde es mit einem Gruppierungs-Band versuchen.
Das habe ich schon drin. ( Danke )
Aber das Probelm ist dass ich in der DB ja nur eine Spalte habe in der der Betrag steht
und mir nicht klat ist wie ich den jeweils unter haben oder soll darstelle.

Manfred

mkinzler 13. Feb 2009 20:44

Re: Buchhaltungsprobelm / Grundlage
 
Am Besten in der Abfrage (CASE...WHEN bzw. iif())

haentschman 14. Feb 2009 07:43

Re: Buchhaltungsprobelm / Grundlage
 
Hallo,

wenn ich das richtig sehe, hast du die Werte für Soll/Haben in einer Tabellenspalte. Den Unterschied macht das Feld ACTYPE ?

versuchs mal so:
- für Soll und Haben je ein Memo (auf deren gewünschten Platz)
- beide mit dem Feld verbinden
- im OnBeforePrint des einen je nach Soll oder Haben das eine und das andere Memo visible:= True/visible:= False setzen.
...damit ist nur das Memo sichtbar was für den Datensatz zutrifft. Soll/Haben

hoffe geholfen zu haben. :hi:

manfred_h 14. Feb 2009 10:14

Re: Buchhaltungsprobelm / Grundlage
 
Wichtig zu erwähnen ( habe ich leider vergessen ) es soll eine doppelte Buchhaltung werden
Und da liegt auch noch das Problem dass die Buchungen ja doppelt angeseit werden müssen.

Hallo mkinzler
Zitat:

Am Besten in der Abfrage (CASE...WHEN bzw. iif())
Bin das am Anschauen. Leider habe ich gestern vergessen das bige ( doppelte Buchhaltung ) zu erwähnen.

Hallo haentschman

Zitat:

Zitat von haentschman
wenn ich das richtig sehe, hast du die Werte für Soll/Haben in einer Tabellenspalte. Den Unterschied macht das Feld ACTYPE ?

Der Betrag steht nur in einer Spalte. Hier eine Beschreibung der Buchungstabelle.
SQL-Code:
VOUCHER_NO  INTEGER, >> Belegnummer
TEXT        T130 /* T130 = VARCHAR(130) */,
DEBIT_ACNO  INTEGER, >> Debitoren Konto Nummer
CREDIT_ACNO INTEGER, >> Kreditoren Konto Nummer
ACTYPE      INTEGER, >> Kontentyp // Aktiv / Passiv ...
AMOUNT      AMOUNT /* AMOUNT = DECIMAL(18,2) */, >> Betrag
Habe auch schon in andere Buchhaltungen reingeschaut ( die Datenbanken ) und da wird es auch so "gelöst"

für Tips dankbar
Manfred

mkinzler 14. Feb 2009 10:27

Re: Buchhaltungsprobelm / Grundlage
 
Wie schon geschrieben in der Abfrage beide Betragsfelder erzeugen und anhand des Feldes ACTYPE den Wert zuweisen

BTW.: Sollte es statt Debitor/Kreditorenkonto nicht Konto/Gegenkonto heissen?

manfred_h 14. Feb 2009 10:34

Re: Buchhaltungsprobelm / Grundlage
 
Zitat:

Zitat von mkinzler
Wie schon geschrieben in der Abfrage beide Betragsfelder erzeugen und anhand des Feldes ACTYPE den Wert zuweisen

Das Problem ist aber noch das der gleiche Datensatz 2x vorkommen muss.
Das heisst wenn eine Buchung vom Konto 1020 auf 4050 erstellt wir wird diese 2x dargestellt.
1x im Kontoblatt beim Konto 1020 und
1x im Kontoblatt beim Konto 4050 mit dem unterschied das der Berag einmal bei Haben und einmal bei Soll steht.
Hofe ich habe die richtigen Bez. verwendet. :roll:

Zitat:

BTW.: Sollte es statt Debitor/Kreditorenkonto nicht Konto/Gegenkonto heissen?
Die Anwendung wird zuerst in englisch erstellun und dann mehrsprachig "gemacht". Aus diesem
Grund versuche ich die DB auch in englisch zu halten.

Manfred

mkinzler 14. Feb 2009 10:40

Re: Buchhaltungsprobelm / Grundlage
 
Ich verstehe halt unter "Debitor/Kreditor" spezielle Konten (Personen- Forderungs-/Verbindlichkeitskonto)
Zitat:

Das Problem ist aber noch das der gleiche Datensatz 2x vorkommen muss.
Das heisst wenn eine Buchung vom Konto 1020 auf 4050 erstellt wir wird diese 2x dargestellt.
1x im Kontoblatt beim Konto 1020 und
1x im Kontoblatt beim Konto 4050 mit dem unterschied das der Berag einmal bei Haben und einmal bei Soll steht.
Hofe ich habe die richtigen Bez. verwendet. Rolling Eyes
Sollte ja kein Problem sein.
Ist der Buchungssatz dann auch doppelt vorhanden?

manfred_h 14. Feb 2009 11:06

Re: Buchhaltungsprobelm / Grundlage
 
Zitat:

Zitat von mkinzler
Ich verstehe halt unter "Debitor/Kreditor" spezielle Konten (Personen- Forderungs-/Verbindlichkeitskonto)

Werde die Namesgebung überprüfen.
Zitat:

Sollte ja kein Problem sein.
Ist der Buchungssatz dann auch doppelt vorhanden?
Nein ist er nicht. Das ist es ja was mich irritiert. In einer Buchhaltung bei der ich die DB angeschaut habe
ist die Buchung auch nur einmal vorhanden... :gruebel:

Wenn Die Buchung 2x vorahnden ist währe es logischer.
Ist diese normalerweise 2x vorhanden?


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz