oe table
CREATE TABLE ``oe'' ( ``id'' integer DEFAULT nextval('id'::text),``ordnumber'' text,
``transdate'' date DEFAULT date('now'::text),
``vendor_id'' integer,
``customer_id'' integer,
``amount'' double precision,
``netamount'' double precision,
``reqdate'' date,
``taxincluded'' boolean,
``shippingpoint'' text,
``notes'' text,
``curr'' character(3)
);
NAME
Vend::Accounting::SQL-Ledger - SQL-Ledger Accounting Interface for InterchangeDESCRIPTION
This module is an attempt to create a set of callable routines that will allow the easy integration of the SQL-Ledger Accounting package with Interchange.It handles the mapping of the Interchange variable names to the appropriate SQL-Ledger ones as well as parsing the html returned by the SQL-Ledger ``API''.
Background: SQL-Ledger Accounting ``www.sql-ledger.org'' is a multiuser, double entry, accounting system written in Perl and is licensed under the GNU General Public License.
The SQL-Ledger API: SQL-Ledger functions can be accessed from the command line by passing all the variables in one long string to the perl script. The variable=value pairs must be separated by an ampersand. See ``www.sql-ledger.org/misc/api.html'' for more details on the command line interface.
------------------------------------------------------------------
This module also happens to be the author's first perl module and probably his second or third perl program in addition to ``Hello World''. :)
So please go easy on me. -Daniel
Schema
CREATE SEQUENCE ``id'' start 1 increment 1 maxvalue 2147483647 minvalue 1 cache 1 ;
CREATE TABLE ``makemodel'' (
``id'' integer,
``parts_id'' integer,
``name'' text
);
CREATE TABLE ``gl'' (
``id'' integer DEFAULT nextval('id'::text),
``source'' text,
``description'' text,
``transdate'' date DEFAULT date('now'::text)
);
CREATE TABLE ``chart'' (
``id'' integer DEFAULT nextval('id'::text),
``accno'' integer,
``description'' text,
``charttype'' character(1) DEFAULT 'A',
``gifi'' integer,
``category'' character(1),
``link'' text
);
CREATE TABLE ``defaults'' (
``inventory_accno_id'' integer,
``income_accno_id'' integer,
``expense_accno_id'' integer,
``fxgain_accno_id'' integer,
``fxloss_accno_id'' integer,
``invnumber'' text,
``ordnumber'' text,
``yearend'' character varying(5),
``curr'' text,
``weightunit'' character varying(5),
``businessnumber'' text,
``version'' character varying(8)
);
CREATE TABLE ``acc_trans'' (
``trans_id'' integer,
``chart_id'' integer,
``amount'' double precision,
``transdate'' date DEFAULT date('now'::text),
``source'' text,
``cleared'' boolean DEFAULT 'f',
``fx_transaction'' boolean DEFAULT 'f'
);
CREATE TABLE ``invoice'' (
``id'' integer DEFAULT nextval('id'::text),
``trans_id'' integer,
``parts_id'' integer,
``description'' text,
``qty'' real,
``allocated'' real,
``sellprice'' double precision,
``fxsellprice'' double precision,
``discount'' real,
``assemblyitem'' boolean DEFAULT 'f'
);
CREATE TABLE ``vendor'' (
``id'' integer DEFAULT nextval('id'::text),
``name'' character varying(35),
``addr1'' character varying(35),
``addr2'' character varying(35),
``addr3'' character varying(35),
``addr4'' character varying(35),
``contact'' character varying(35),
``phone'' character varying(20),
``fax'' character varying(20),
``email'' text,
``notes'' text,
``terms'' smallint DEFAULT 0,
``taxincluded'' boolean
);
CREATE TABLE ``customer'' (
``id'' integer DEFAULT nextval('id'::text),
``name'' character varying(35),
``addr1'' character varying(35),
``addr2'' character varying(35),
``addr3'' character varying(35),
``addr4'' character varying(35),
``contact'' character varying(35),
``phone'' character varying(20),
``fax'' character varying(20),
``email'' text,
``notes'' text,
``discount'' real,
``taxincluded'' boolean,
``creditlimit'' double precision DEFAULT 0,
``terms'' smallint DEFAULT 0,
``shiptoname'' character varying(35),
``shiptoaddr1'' character varying(35),
``shiptoaddr2'' character varying(35),
``shiptoaddr3'' character varying(35),
``shiptoaddr4'' character varying(35),
``shiptocontact'' character varying(20),
``shiptophone'' character varying(20),
``shiptofax'' character varying(20),
``shiptoemail'' text
);
CREATE TABLE ``parts'' (
``id'' integer DEFAULT nextval('id'::text),
``partnumber'' text,
``description'' text,
``bin'' text,
``unit'' character varying(5),
``listprice'' double precision,
``sellprice'' double precision,
``lastcost'' double precision,
``priceupdate'' date DEFAULT date('now'::text),
``weight'' real,
``onhand'' real DEFAULT 0,
``notes'' text,
``makemodel'' boolean DEFAULT 'f',
``assembly'' boolean DEFAULT 'f',
``alternate'' boolean DEFAULT 'f',
``rop'' real,
``inventory_accno_id'' integer,
``income_accno_id'' integer,
``expense_accno_id'' integer,
``obsolete'' boolean DEFAULT 'f'
);
CREATE TABLE ``assembly'' (
``id'' integer,
``parts_id'' integer,
``qty'' double precision
);
CREATE TABLE ``ar'' (
``id'' integer DEFAULT nextval('id'::text),
``invnumber'' text,
``ordnumber'' text,
``transdate'' date DEFAULT date('now'::text),
``customer_id'' integer,
``taxincluded'' boolean,
``amount'' double precision,
``netamount'' double precision,
``paid'' double precision,
``datepaid'' date,
``duedate'' date,
``invoice'' boolean DEFAULT 'f',
``shippingpoint'' text,
``terms'' smallint DEFAULT 0,
``notes'' text,
``curr'' character(3)
);
CREATE TABLE ``ap'' (
``id'' integer DEFAULT nextval('id'::text),
``invnumber'' text,
``transdate'' date DEFAULT date('now'::text),
``vendor_id'' integer,
``taxincluded'' boolean,
``amount'' double precision,
``netamount'' double precision,
``paid'' double precision,
``datepaid'' date,
``duedate'' date,
``invoice'' boolean DEFAULT 'f',
``ordnumber'' text,
``curr'' character(3)
);
CREATE TABLE ``partstax'' (
``parts_id'' integer,
``chart_id'' integer
);
CREATE TABLE ``tax'' (
``chart_id'' integer,
``rate'' double precision,
``taxnumber'' text
);
CREATE TABLE ``customertax'' (
``customer_id'' integer,
``chart_id'' integer
);
CREATE TABLE ``vendortax'' (
``vendor_id'' integer,
``chart_id'' integer
);
CREATE TABLE ``oe'' (
``id'' integer DEFAULT nextval('id'::text),
``ordnumber'' text,
``transdate'' date DEFAULT date('now'::text),
``vendor_id'' integer,
``customer_id'' integer,
``amount'' double precision,
``netamount'' double precision,
``reqdate'' date,
``taxincluded'' boolean,
``shippingpoint'' text,
``notes'' text,
``curr'' character(3)
);
CREATE TABLE ``orderitems'' (
``trans_id'' integer,
``parts_id'' integer,
``description'' text,
``qty'' real,
``sellprice'' double precision,
``discount'' real
);
CREATE TABLE ``exchangerate'' (
``curr'' character(3),
``transdate'' date,
``buy'' double precision,
``sell'' double precision
);