CREATE SEQUENCE id
  start 10000 increment 1 maxvalue 2147483647 minvalue 1  cache 1 ;
--
SELECT nextval ('id');
--
CREATE TABLE makemodel (
  id int DEFAULT nextval ( 'id' ),
  parts_id int,
  name text
);
--
CREATE TABLE gl (
  id int DEFAULT nextval ( 'id' ),
  source text,
  comment text,
  transdate date DEFAULT 'current_date'
);
--
CREATE TABLE chart (
  id int DEFAULT nextval ( 'id' ),
  accno int,
  description text,
  balance float,
  type char(1) DEFAULT 'A',
  gifi int,
  category char(1),
  link text
);
--
CREATE TABLE defaults (
  inventory_accno int,
  income_accno int,
  expense_accno int,
  invnumber text,
  ponumber text
);
--
CREATE TABLE acc_trans (
  trans_id int,
  accno int,
  amount float,
  transdate date DEFAULT 'current_date'
);
--
CREATE TABLE invoice (
  id int DEFAULT nextval ( 'id' ),
  trans_id int,
  inventory_accno int,
  income_accno int,
  expense_accno int,
  parts_id int,
  number text,
  description text,
  qty float4,
  allocated float4,
  sellprice float,
  discount float4,
  unit varchar(5)
);
--
CREATE TABLE vendor (
  id int DEFAULT nextval ( 'id' ),
  name varchar(35),
  addr1 varchar(35),
  addr2 varchar(35),
  addr3 varchar(35),
  contact varchar(35),
  phone varchar(20),
  fax varchar(20),
  email text,
  notes text,
  ytd float
);
--
CREATE TABLE customer (
  id int DEFAULT nextval ( 'id' ),
  name varchar(35),
  addr1 varchar(35),
  addr2 varchar(35),
  addr3 varchar(35),
  contact varchar(35),
  phone varchar(20),
  fax varchar(20),
  email text,
  notes text,
  ytd float,
  discount float4,
  tax1 bool DEFAULT 'f',
  tax2 bool DEFAULT 'f',
  creditlimit float,
  terms int2,
  shiptoname varchar(35),
  shiptoaddr1 varchar(35),
  shiptoaddr2 varchar(35),
  shiptoaddr3 varchar(35),
  shiptocontact varchar(20),
  shiptophone varchar(20),
  shiptofax varchar(20)
);
--
CREATE TABLE parts (
  id int DEFAULT nextval ( 'id' ),
  number text,
  description text,
  unit varchar(5),
  listprice float,
  sellprice float,
  lastcost float,
  priceupdate date DEFAULT 'current_date',
  weight float4,
  onhand float4,
  notes text,
  makemodel bool DEFAULT 'f',
  assembly bool DEFAULT 'f',
  alternate bool DEFAULT 'f',
  rop float4,
  inventory_accno int DEFAULT 0,
  income_accno int,
  expense_accno int
);
--
CREATE TABLE ar (
  id int DEFAULT nextval ( 'id' ),
  invnumber text,
  transdate date DEFAULT 'current_date',
  customer int,
  amount float,
  netamount float,
  paid float,
  datepaid date,
  duedate date,
  invoice bool DEFAULT 'f',
  shippingpoint text,
  terms int2,
  notes text
);
--
CREATE TABLE ap (
  id int DEFAULT nextval ( 'id' ),
  invnumber text,
  transdate date DEFAULT 'current_date',
  vendor int,
  amount float,
  netamount float,
  paid float,
  datepaid date,
  duedate date,
  invoice bool DEFAULT 'f',
  ordnumber text
);
--
insert into defaults (inventory_accno,income_accno,expense_accno,invnumber,ponumber) values (1520,4020,5010,'1000','1000');

# 
# accno,description,balance,type,gifi,category,link
#
# type: H=heading, A=account
# gifi???
# category; L=liabilities/passiv, A=Assett/aktiv, Q=Equity/egenkapital, I=Income/indtægt, E=Expense/udgift
# link???
#
# ========================================================
insert into chart (accno,description,balance,type,gifi,category,link) values (10000,'Varesalg indland',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10100,'Diversesalg indland',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10200,'Kunderabat',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10300,'Kasserabat debitorer',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10400,'Kasserabat kreditorer',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10500,'Lagerforskydninger',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10600,'Vareforbrug',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10700,'Udviklingsomkostninger',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10800,'Indretning af lokaler',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (10900,'Materialeudgifter',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11000,'Varekøb til videresalg',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11100,'Køb af hjælpematerialer',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11200,'Andre eksterne udgifter',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11300,'Personaleudgifter',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11400,'Afskrivninger',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11500,'Husleje',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11600,'El/Varme',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11700,'Telefon/Internet',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11800,'Kontorhold',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (11900,'Leasing',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (12000,'Anskaffelse under 8.000',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (12100,'Anskaffelse over 8.000',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (12200,'Kursdifferencer',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (13100,'Autodrift',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (14100,'Renteudgifter',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (14200,'Reneteindtægter',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (14300,'Gebyr',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (14400,'Kasserabat debitorer',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (14500,'Kasserabat kreditorer',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (14600,'Resultat før skat',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (15000,'Skat af årets resultat',0,'A',NULL,'E','');
insert into chart (accno,description,balance,type,gifi,category,link) values (16000,'Årets resultat',0,'A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (29999,'Status:',0,'H','A',NULL,'I','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30000,'Immaterielle anlægsaktiver',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30100,'Udviklingsomkostninger',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30200,'Materielle anlægsaktiver',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30300,'Fast ejendom',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30400,'Indretning af lejede lokaler',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30500,'Produktionsmaskiner',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30600,'Afskrivninger produktionsmaskiner',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30700,'Kontormaskiner',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (30800,'Afskrivning kontormaskiner',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (40100,'Finansielle anlægsaktiver',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (40200,'Aktier',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (40300,'Obligationer',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (50100,'Varebeholdninger',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (50200,'Primo lager',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (50300,'Varekøb lager',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (50400,'Varekøb',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (50500,'Afgang varer',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (50600,'Lagerjusteringer',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (50700,'Varebeholdninger',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (60100,'Tilgodehavender',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (60200,'Debitorer',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (60300,'Div. tilgodehavender',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (70100,'Likvide beholdninger',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (70200,'Kasse',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (70300,'Bank',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (70400,'Giro',0,'A',NULL,'A','');
insert into chart (accno,description,balance,type,gifi,category,link) values (80100,'Kreditorer',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (80200,'Skatter m.v.',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (80300,'Skyldig a-skat',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (80400,'Skyldig ATP',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (80500,'Skyldig selskabsskat',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (85100,'Afgifter',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (85200,'indgående moms',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (85300,'Udgående moms',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (85400,'Momstilsvar',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (85500,'Udlandslån',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (85600,'Prioritetsgæld',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (85700,'Øvrig gæld',0,'A',NULL,'L','');
insert into chart (accno,description,balance,type,gifi,category,link) values (90100,'Egenkapital',0,'A',NULL,'Q','');
insert into chart (accno,description,balance,type,gifi,category,link) values (90200,'Selskabskapital',0,'A',NULL,'Q','');
insert into chart (accno,description,balance,type,gifi,category,link) values (90300,'Lovpligtig reservefond',0,'A',NULL,'Q','');
insert into chart (accno,description,balance,type,gifi,category,link) values (90400,'Overført fra tidligere år',0,'A',NULL,'Q','');
insert into chart (accno,description,balance,type,gifi,category,link) values (90500,'Årets resultat',0,'A',NULL,'Q','');
