Faturalarimi kaydetmek icin iki tablo kullaniyorum
1 - fatura basliklari tablosu
Kod: Tümünü seç
CREATE TABLE INV_HEADER (
ID INTEGER,
INV_NO VARCHAR(10),
CLIENT_ID INTEGER,
INV_DATE DATE,
INV_TYPE INTEGER,
NET_SUM DECIMAL(9,2),
VAT_SUM DECIMAL(9,2),
DISC_PRCNT INTEGER,
DISC_VAL DECIMAL(9,2),
GRAND_SUM DECIMAL(9,2),
INV_EXP BLOB SUB_TYPE 1 SEGMENT SIZE 80,
EXCH_RATE DECIMAL(7,4),
CARPAN INTEGER DEFAULT '1',
OZEL VARCHAR(40),
MFLAG2 INTEGER,
NIR_TARIHI DATE,
NIR INTEGER,
VADE INTEGER,
PROJECT_ID INTEGER
);
Kod: Tümünü seç
CREATE TABLE INV_LINES (
ID INTEGER,
FAT_ID INTEGER,
CODE_ID INTEGER,
ADET INTEGER,
UNIT_PRICE DECIMAL(9,2),
LINE_NET DECIMAL(9,2),
LINE_VAT DECIMAL(9,2),
KDV INTEGER,
LINE_GRAND DECIMAL(9,2),
CRN VARCHAR(3),
MFLAG INTEGER
);
iliskilendirmede su sekilde
FAT_ID -> ID
INV_HEADER--ID alani autoincrement ve trigger ile olusturuluyor (BEFORE INSERT)
Kod: Tümünü seç
CREATE OR ALTER TRIGGER INV_HEADER_BI FOR INV_HEADER
ACTIVE BEFORE INSERT POSITION 0
as
begin
if (new.id is null) then
new.id = gen_id(gen_inv_header_id,1);
end
Bu bircok sekilde yapilabilinir ama Amerikayi yeniden kesfetmeye gerek yok. Emini bunu etkili ve kisa bicimde yapabilen arkadaslar vardir. Ve bende onlardan gorus bekliyorum
Saygilar...