AC ENTRY BALANCE
Материал из GedeminWiki
Оперативное бухгалтерское сальдо в разрезе счетов и аналитик на дату, которая хранится в генераторе GD_G_ENTRY_BALANCE_DATE.
CREATE TABLE ac_entry_balance ( id DINTKEY, /* Идентификатор */ accountkey DINTKEY, /* Код бухгалтерского счета */ companykey DINTKEY, /* Ключ фирмы по которой сформирована проводка */ currkey DINTKEY, /* Ключ валюты */ debitncu DCURRENCY, /* Сумма по дебету в рублях */ debitcurr DCURRENCY, /* Сумма по дебету в валюте */ debiteq DCURRENCY, /* Сумма по дебету в эквиваленте */ creditncu DCURRENCY, /* Сумма по кредиту в рублях */ creditcurr DCURRENCY, /* Сумма по кредиту в валюте */ crediteq DCURRENCY /* Сумма по кредиту в эквиваленте */ ); ALTER TABLE ac_entry_balance ADD CONSTRAINT pk_ac_entry_bal PRIMARY KEY (id); ALTER TABLE ac_entry_balance ADD CONSTRAINT gd_fk_entry_bal_ac FOREIGN KEY (accountkey) REFERENCES ac_account (id) ON UPDATE CASCADE; CREATE TRIGGER AC_BI_ENTRY_BALANCE FOR AC_ENTRY_BALANCE ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.ID IS NULL) THEN NEW.ID = GEN_ID(gd_g_unique, 1) + GEN_ID(gd_g_offset, 0); IF (NEW.debitncu IS NULL) THEN NEW.debitncu = 0; IF (NEW.debitcurr IS NULL) THEN NEW.debitcurr = 0; IF (NEW.debiteq IS NULL) THEN NEW.debiteq = 0; IF (NEW.creditncu IS NULL) THEN NEW.creditncu = 0; IF (NEW.creditcurr IS NULL) THEN NEW.creditcurr = 0; IF (NEW.crediteq IS NULL) THEN NEW.crediteq = 0; END