Hi,
This post is with reference to the error I am facing after deployment of openmaint-1.1-2.5.0.
I am trying to make a fresh install of openmaint-1.1-2.5.0. But I get error "org.cmdbuild.exception.ORMException: ORM_SQL_PATCH" when I click on "Apply Patch" button just after a fresh install of openmaint.
My Test Environment:
OS: Windows 7 Professional 64bit
Tomcat: Tomcat8.5.28
Java: 1.8.0_162
Database: PostgreSQL 64bit v10.2-1
==========================================
Here is what I did to install it:
1. Downloaded openmaint-1.1-2.5.0.zip.
2. Extracted it to "D:\Programs\Apache\Tomcat8.5.28\webapps"
3. After extraction, two war files got shown: "cmdbuild-openmaint-2.5.0.war" and "cmdbuild-shark-server-openmaint-2.5.0.war".
4. I renamed them to "openmaint" and "shark" respectively.
5. Now I started Tomcat
6. In firefox browser, I opened url: "http://localhost:8080/openmaint".
7. A screen shown with fields:
> Choose default language: Drop Down List
> Show language selection in login box: checkbox
8. I click on "Next". In next screen following fields are shown section-wise:
CMDBuild Database:
> Type: Drop Down List -> I selected value "Demo"
> Name: Text Box: I entered name for the database
> Create a shark schema: Check Box -> I selected it
Database Connection (PostgreSQL JDBC Driver 42.2.1):
> Host: localhost
> Port: 5432
> Super user: postgres
> Password: *******
I tested connection and it was successful
Create restricted database user:
User Type: Drop Down List -> I selected "Super user"
9. I click on "Next". The installation seems to have gone well and it shows a link to access application.
10. When I click link to access application, the opened webpage shows a list of patches to be applied. Following is the list of patches shown:
Category Name Description
openMAINT 1.1.0-04 DataModel - Fix triggers and constraints
openMAINT 1.1.0-05 Workorder - Refactoring
openMAINT 1.1.0-06 Maintenance request - Refactoring
openMAINT 1.1.0-07 Processes - Emails revision
openMAINT 1.1.0-08 DataModel - Lookup types revision
openMAINT 1.1.0-09 Maintenance processes - Refactoring
openMAINT 1.1.0-10 Maintenance processes - Time-based preventive activities refactoring
openMAINT 1.1.0-11 Maintenance processes - Time-based preventive activities refactoring (functions)
openMAINT 1.1.0-12 DataModel - Remove unused classes
openMAINT 1.1.0-13 DataModel - Triggers and constraints clean-up
openMAINT 1.1.0-14 DataModel - Comments revision
openMAINT 1.1.0-15 Maintenance processes - Meter-based preventive maintenance
openMAINT 1.1.0-16 DataModel - M/D domains revision
openMAINT 1.1.0-17 Maintenance processes - Scheduling criteria improvements
openMAINT 1.1.0-18 DataModel - Avoid duplicate relations. Remove unused triggers.
openMAINT 1.1.0-19 DataModel - Load French translations
openMAINT 1.1.0-20 DataModel - Drop BuildingBimProject domain if bim is not configured
openMAINT 1.1.0-21 DataModel - New domain Department-Person
openMAINT 1.1.0-22 DataModel - Fix lookup values
openMAINT 1.1.0-23 Reports - Reports improvements
openMAINT 1.1.0-24 DataModel - Fix Priority lookup
openMAINT 1.1.0-25 DataModel - Load Italian translations
openMAINT 1.1.0-26 Portal - Portal utilities
openMAINT 1.1.0-27 Processes - Fix ticket numbers generation
openMAINT 1.1.0-28 Maintenance processes - Time-based preventive activities improvements
openMAINT 1.1.0-29 DataModel - PMScheduling class
openMAINT 1.1.0-30 Maintenance processes - Improvements
openMAINT 1.1.0-31 DataModel - New navigation menu
openMAINT 1.1.0-32 Preventive maintenance - Functions
openMAINT 1.1.0-33 Dashboards and Views- Improvements
openMAINT 1.1.0-34 DataModel - Remove unused metadata
openMAINT 1.1.0-35 Dashboards - Code clean-up
openMAINT 1.1.0-36 QR Code Generator - New process for generating QR codes labels
openMAINT 1.1.0-37 DataModel - Set all grants
openMAINT 1.1.0-38 Reorganize menu folders
openMAINT 1.1.0-39 Add preventive maintenance widgets
openMAINT 1.1.0-40 Fix too short field for Workorder Downtime
openMAINT 1.1.0-41 MTBF/Warehouse reports - Fix descriptions of asset types in input params dropdown
openMAINT 1.1.0-42 DataModel - New service activity class to be used in the maintenance processes
openMAINT 1.1.0-43 Maintenance processes - Fix emails recipients
openMAINT 1.1.0-44 WOGen process - Add message with instructions for the user
openMAINT 1.1.0-45 DataModel - Move spatial_ref_sys table into gis schema
openMAINT 1.1.0-46 Reports - Report to print barcodes from Asset Management and stand-alone
openMAINT 1.1.0-47 DataModel - Fix CQL filters on InventoryItem subclasses
openMAINT 1.1.0-48 QRCodeGen process - Process is startable from AssetManager role only
openMAINT 1.1.0-49 DataModel - Fix wrong dashboard definition
openMAINT 1.1.0-50 DataModel - Final fixes for Italian translations
11. When I click on "Apply" button, I get a small error popup on right bottom corner of the page with text "Error in SQL patch". I click on "Show details" link and see following error:
Call: services/json/configure/applypatches
-------------------------------------------
Error: org.cmdbuild.exception.ORMException: ORM_SQL_PATCH
at org.cmdbuild.exception.ORMException$ORMExceptionType.createException(ORMException.java:63)
at org.cmdbuild.services.DefaultPatchManager.applyPatch(DefaultPatchManager.java:391)
at org.cmdbuild.services.DefaultPatchManager.applyPatchList(DefaultPatchManager.java:360)
at org.cmdbuild.services.startup.DefaultStartupLogic.migrate(DefaultStartupLogic.java:31)
at org.cmdbuild.servlets.json.Configure.applyPatches(Configure.java:214)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.cmdbuild.servlets.JSONDispatcher.dispatch(JSONDispatcher.java:104)
at org.cmdbuild.servlets.JSONDispatcher.doPost(JSONDispatcher.java:64)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.AuthFilter.doFilter(AuthFilter.java:183)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.PatchManagerFilter.doFilter(PatchManagerFilter.java:48)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.ConfCheckFilter.doFilter(ConfCheckFilter.java:31)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.TranslationFilter.doFilter(TranslationFilter.java:52)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.LocalizationFilter.doFilter(LocalizationFilter.java:127)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
The log file "cmdbuild.log" shows following entries after I click on "Apply Patch" button:
INFO 2018-04-13 15:28:14 [jsonrpc ] Calling url /configure/applypatches
INFO 2018-04-13 15:28:14 [cmdbuild] applying patch 'DefaultPatchManager.DefaultPatch[version=1.1.0-04,description=DataModel - Fix triggers and constraints,category=openMAINT,file=D:\Programs\Apache\Tomcat8.5.28\webapps\openmaint\WEB-INF\patches-ext\openMAINT\1.1.0-04.sql]'
ERROR 2018-04-13 15:28:14 [cmdbuild] failed applying patch '1.1.0-04'
org.springframework.jdbc.BadSqlGrammarException: StatementCallback; bad SQL grammar [-- DataModel - Fix triggers and constraints
-- AccountingDocument
COMMENT ON TABLE public."AccountingDocument"
IS 'DESCR: Accounting document|MODE: write|STATUS: active|SUPERCLASS: true|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."AccountingDocument"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocument"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocument"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Number|GROUP: |INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 4|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."AccountingDocument"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocument"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocument"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocument"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3';
COMMENT ON COLUMN public."AccountingDocument"."Contract" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ContractAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Contract|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."Referent" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ReferentAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Referent|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."BudgetCentre" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetCentreAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget centre|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."Date" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Date|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."BasePrice" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Base price|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."TaxAmount" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Tax amount|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."TotalPrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Total price|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."Supplier" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SupplierAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Supplier|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocument"."Title" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Title|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
-- PurchaseDeliveryNote
CREATE OR REPLACE FUNCTION public._opm_trigger_purchasedeliverynote_description()
RETURNS trigger AS
$BODY$
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
IF(TG_OP = 'INSERT') THEN
NEW."Code"= concat_ws('-','PDN',lpad(nextval('purchasedeliverynote_seq')::VARCHAR,9,'0'));
END IF;
NEW."Description" = concat_ws(' - ', NEW."Code", NEW."Title");
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
DROP SEQUENCE public.purchasedeliverynote_seq;
CREATE SEQUENCE public.purchasedeliverynote_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 999999999
START 1
CACHE 1;
SELECT * FROM cm_modify_domain('DeliveryNoteWarehouseMovement', 'LABEL: DeliveryNoteWarehouseMovement|DESCRDIR: generates|DESCRINV: is generated by|MODE: write|STATUS: active|TYPE: domain|CLASS1: PurchaseDeliveryNote|CLASS2: WarehouseMovement|CARDIN: 1:N|MASTERDETAIL: false|MDLABEL: |DISABLED1: |DISABLED2: ');
COMMENT ON TABLE public."PurchaseDeliveryNote"
IS 'DESCR: Delivery note|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 1|DESCR: Number|GROUP: |INDEX: 2|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Description" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 4|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Contract" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ContractAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Contract|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Referent" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ReferentAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Referent|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."BudgetCentre" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetCentreAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget centre|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Date" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Date|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."BasePrice" IS 'STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Base price|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."TaxAmount" IS 'STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Tax amount|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."TotalPrice" IS 'STATUS: noactive|BASEDSP: true|CLASSORDER: 0|DESCR: Total price|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Supplier" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SupplierAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Supplier|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Title" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Title|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Order" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseOrderDeliveryNote|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Order|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseDeliveryNote"."Request" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseRequestDeliveryNote|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Purchase request|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
-- PurchaseInvoice
CREATE OR REPLACE FUNCTION public._opm_trigger_purchaseinvoice_description()
RETURNS trigger AS
$BODY$
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
IF(TG_OP = 'INSERT') THEN
NEW."Code"= concat_ws('-', 'PI',lpad(nextval('purchaseinvoice_seq')::VARCHAR,9,'0'));
END IF;
NEW."Description" = concat_ws(' - ', NEW."Code", NEW."Title");
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
DROP SEQUENCE public.purchaseinvoice_seq;
CREATE SEQUENCE public.purchaseinvoice_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 999999999
START 1
CACHE 1;
COMMENT ON TABLE public."PurchaseInvoice"
IS 'DESCR: Invoice|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."PurchaseInvoice"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoice"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoice"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Number|GROUP: |INDEX: 2|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."PurchaseInvoice"."Description" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 4|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."PurchaseInvoice"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoice"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoice"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoice"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."Contract" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ContractAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Contract|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."Referent" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ReferentAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Referent|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."BudgetCentre" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetCentreAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget centre|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."Date" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Date|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."BasePrice" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Base price|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."TaxAmount" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Tax amount|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."TotalPrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Total price|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."Supplier" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SupplierAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Supplier|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."Title" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Title|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."ToApprove" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: To Approve|GROUP: |INDEX: 15|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."PaymentTerm" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Payment Term|GROUP: |INDEX: 16|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."TaxIncluded" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Tax Included|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."Paid" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Paid|GROUP: |INDEX: 17|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."Request" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseRequestInvoice|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Purchase request|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoice"."Order" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseOrderInvoice|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Order|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
-- PurchaseOrder
SELECT * FROM cm_delete_attribute('"PurchaseOrder"'::regclass, 'ScheduledStart');
SELECT * FROM cm_delete_attribute('"PurchaseOrder"'::regclass, 'ScheduledEnd');
SELECT * FROM cm_create_attribute('"PurchaseOrder"'::regclass,'DueDate','date',null,false,false,'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Due date|GROUP: |INDEX: 16|MODE: write|FIELDMODE: write');
CREATE OR REPLACE FUNCTION public._opm_trigger_purchaseorder_description()
RETURNS trigger AS
$BODY$
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
IF(TG_OP = 'INSERT') THEN
NEW."Code"= concat_ws('-', 'PO',lpad(nextval('purchaseorder_seq')::VARCHAR,9,'0'));
END IF;
NEW."Description" = concat_ws(' - ', NEW."Code", NEW."Title");
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
DROP SEQUENCE public.purchaseorder_seq;
CREATE SEQUENCE public.purchaseorder_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 999999999
START 1
CACHE 1;
SELECT * FROM cm_modify_domain('PurchaseOrderInvoice', 'LABEL: PurchaseOrderInvoice|DESCRDIR: generates|DESCRINV: is related to|MODE: write|STATUS: active|TYPE: domain|CLASS1: PurchaseOrder|CLASS2: PurchaseInvoice|CARDIN: 1:N|MASTERDETAIL: false|MDLABEL: |DISABLED1: |DISABLED2: ');
COMMENT ON TABLE public."PurchaseOrder"
IS 'DESCR: Purchase order|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."PurchaseOrder"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrder"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrder"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Number|GROUP: |INDEX: 2|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."PurchaseOrder"."Description" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 4|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."PurchaseOrder"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrder"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrder"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrder"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."Contract" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ContractAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Contract|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."Referent" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ReferentAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Referent|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."BudgetCentre" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetCentreAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget centre|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."Date" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Date|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."BasePrice" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Base price|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."TaxAmount" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Tax amount|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."TotalPrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Total price|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."Supplier" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SupplierAccountingDocument|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Supplier|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."Title" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Title|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."ActualEnd" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Actual end date|GROUP: |INDEX: 15|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."Request" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseRequestPurchaseOrder|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Purchase request|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."Type" IS 'LOOKUP: PurchaseType|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Type|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrder"."DueDate" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Due date|GROUP: |INDEX: 14|MODE: write|FIELDMODE: write';
-- AccountingDocumentItem
COMMENT ON TABLE public."AccountingDocumentItem"
IS 'DESCR: Accounting document item|MODE: write|STATUS: active|SUPERCLASS: true|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."AccountingDocumentItem"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocumentItem"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocumentItem"."Code" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 1|DESCR: Number|GROUP: |INDEX: 1|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."AccountingDocumentItem"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 3|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."AccountingDocumentItem"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocumentItem"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocumentItem"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."AccountingDocumentItem"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."BudgetItem" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetItemDocumentItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget item|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."Quantity" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Quantity|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."UnitBasePrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit base price|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."UnitTaxAmount" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit tax amount|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."UnitTotalPrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit tot. price|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."QuantityUoM" IS 'LOOKUP: UnitOfMeasure|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: U/M|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."Title" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."Item" IS 'REFERENCEDIRECT: false|REFERENCEDOM: WarehouseItemAccountingDocumentItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Item|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."AccountingDocumentItem"."ItemType" IS 'LOOKUP: WarehouseItemCategory|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Item type|GROUP: |INDEX: 4|MODE: write|FIELDMODE: write';
-- PurchaseInvoiceItem
ALTER TABLE public."PurchaseInvoiceItem"
ADD CONSTRAINT "_NotNull_Invoice" CHECK ("Status" <> 'A'::bpchar OR "Invoice" IS NOT NULL);
CREATE OR REPLACE FUNCTION public._opm_trigger_purchaseinvoiceitem_description()
RETURNS trigger AS
$BODY$
DECLARE
code character varying;
max_code integer;
parent_code character varying;
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
IF(TG_OP = 'INSERT') THEN
SELECT coalesce(MAX("Code"::integer),0) into max_code
FROM "PurchaseInvoiceItem"
WHERE "Invoice" = NEW."Invoice" AND "Status" = 'A';
NEW."Code"= trim(to_char(max_code + 1,'000'));
ELSEIF(TG_OP = 'UPDATE' AND NEW."Invoice" <> OLD."Invoice") THEN
SELECT coalesce(MAX("Code"::integer),0) into max_code
FROM "PurchaseInvoiceItem"
WHERE "Invoice" = NEW."Invoice" AND "Status" = 'A' AND "Id" <> NEW."Id";
NEW."Code"= trim(to_char(max_code + 1,'000'));
END IF;
SELECT "Code" INTO parent_code
FROM "PurchaseInvoice"
WHERE "Id" = NEW."Invoice";
NEW."Description" = concat_ws(' - ', concat_ws('/', parent_code,NEW."Code"), NEW."Title");
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
COMMENT ON TABLE public."PurchaseInvoiceItem"
IS 'DESCR: Invoice item|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Code" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 1|DESCR: Number|GROUP: |INDEX: 2|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 4|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."BudgetItem" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetItemDocumentItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget item|GROUP: |INDEX: 12|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Quantity" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Quantity|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."UnitBasePrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit base price|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."UnitTaxAmount" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit tax amount|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."UnitTotalPrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit tot. price|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."QuantityUoM" IS 'LOOKUP: UnitOfMeasure|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: U/M|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Title" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Item" IS 'REFERENCEDIRECT: false|REFERENCEDOM: WarehouseItemAccountingDocumentItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Item|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."ItemType" IS 'LOOKUP: WarehouseItemCategory|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Item type|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Invoice" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseInvoiceItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 1|DESCR: Invoice|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseInvoiceItem"."Request" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseRequestInvoiceItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Purchase request|GROUP: |INDEX: 13|MODE: write|FIELDMODE: write';
-- PurchaseOrderItem
ALTER TABLE public."PurchaseOrderItem" DROP CONSTRAINT "_NotNull_Quantity";
ALTER TABLE public."PurchaseOrderItem" DROP CONSTRAINT "_NotNull_QuantityUoM";
CREATE OR REPLACE FUNCTION public._opm_trigger_purchaseorderitem_description()
RETURNS trigger AS
$BODY$
DECLARE
code character varying;
max_code integer;
parent_code character varying;
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
IF(TG_OP = 'INSERT') THEN
SELECT coalesce(MAX("Code"::integer),0) into max_code
FROM "PurchaseOrderItem"
WHERE "Order" = NEW."Order" AND "Status"='A';
NEW."Code"= trim(to_char(max_code + 1,'000'));
ELSEIF(TG_OP = 'UPDATE' AND NEW."Order" <> OLD."Order") THEN
SELECT coalesce(MAX("Code"::integer),0) into max_code
FROM "PurchaseOrderItem"
WHERE "Order" = NEW."Order" AND "Status" = 'A' AND "Id" <> NEW."Id";
NEW."Code"= trim(to_char(max_code + 1,'000'));
END IF;
SELECT "Code" INTO parent_code
FROM "PurchaseOrder"
WHERE "Id" = NEW."Order";
NEW."Description" = concat_ws(' - ', concat_ws('/', parent_code,NEW."Code"), NEW."Title");
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
COMMENT ON TABLE public."PurchaseOrderItem"
IS 'DESCR: Order item|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."PurchaseOrderItem"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrderItem"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrderItem"."Code" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 1|DESCR: Number|GROUP: |INDEX: 2|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."PurchaseOrderItem"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 4|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."PurchaseOrderItem"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrderItem"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrderItem"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."PurchaseOrderItem"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."BudgetItem" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetItemDocumentItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget item|GROUP: |INDEX: 12|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."Quantity" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Quantity|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."UnitBasePrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit base price|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."UnitTaxAmount" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit tax amount|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."UnitTotalPrice" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Per-unit tot. price|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."QuantityUoM" IS 'LOOKUP: UnitOfMeasure|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: U/M|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."Title" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."Item" IS 'REFERENCEDIRECT: false|REFERENCEDOM: WarehouseItemAccountingDocumentItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Item|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."ItemType" IS 'LOOKUP: WarehouseItemCategory|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Item type|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."Order" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseOrderItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 1|DESCR: Order|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."PurchaseOrderItem"."Request" IS 'REFERENCEDIRECT: false|REFERENCEDOM: PurchaseRequestOrderItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Purchase request|GROUP: |INDEX: 13|MODE: read|FIELDMODE: read';
-- Budget
COMMENT ON TABLE public."Budget"
IS 'DESCR: Budget|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."Budget"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."Budget"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."Budget"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 1|DESCR: Code|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Budget"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Budget"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."Budget"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."Budget"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."Budget"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Budget"."Manager" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ManagerBudget|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Manager|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Budget"."Company" IS 'REFERENCEDIRECT: false|REFERENCEDOM: CompanyBudget|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Company|GROUP: |INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Budget"."StartDate" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Start date|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Budget"."Enddate" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: End date|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Budget"."ApprovalDate" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Approval date|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
-- BudgetCentre
ALTER TABLE public."BudgetCentre"
ADD CONSTRAINT "_NotNull_Budget" CHECK ("Status" <> 'A'::bpchar OR "Budget" IS NOT NULL);
DROP SEQUENCE public.budgetcentre_seq;
CREATE SEQUENCE public.budgetcentre_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 9999
START 1
CACHE 1;
CREATE OR REPLACE FUNCTION public._opm_trigger_budgetcentre_description()
RETURNS trigger AS
$BODY$
DECLARE
budget_code character varying;
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
IF(TG_OP = 'INSERT') THEN
NEW."Code"= lpad(nextval('budgetcentre_seq')::VARCHAR,4,'0');
END IF;
SELECT concat_ws('/', "Code", NEW."Code") into budget_code
FROM "Budget"
WHERE "Id" = NEW."Budget" AND "Status"='A';
NEW."Description" = concat_ws('-', budget_code, NEW."Name");
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
COMMENT ON TABLE public."BudgetCentre"
IS 'DESCR: Budget centre|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."BudgetCentre"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetCentre"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetCentre"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 2|DESCR: Code|GROUP: |INDEX: 3|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."BudgetCentre"."Description" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 5|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."BudgetCentre"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetCentre"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetCentre"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetCentre"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetCentre"."DetailedDescription" IS 'EDITORTYPE: HTML|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Detailed description|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetCentre"."Department" IS 'REFERENCEDIRECT: false|REFERENCEDOM: DepartmentBudgetCentre|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Department|GROUP: |INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetCentre"."Budget" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetBudgetCentre|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 1|DESCR: Budget|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetCentre"."Name" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Name|GROUP: |INDEX: 4|MODE: write|FIELDMODE: write';
-- BudgetItem
ALTER TABLE public."BudgetItem"
ADD CONSTRAINT "_NotNull_BudgetCentre" CHECK ("Status" <> 'A'::bpchar OR "BudgetCentre" IS NOT NULL);
CREATE OR REPLACE FUNCTION public._opm_trigger_budgetitem_description()
RETURNS trigger AS
$BODY$
DECLARE
code character varying;
parent_descr character varying;
max_code integer;
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
SELECT "Description" INTO parent_descr
FROM "BudgetCentre"
WHERE "Id" = NEW."BudgetCentre";
IF(TG_OP = 'INSERT') THEN
SELECT coalesce(MAX("Code"::integer),0) into max_code
FROM "BudgetItem"
WHERE "BudgetCentre" = NEW."BudgetCentre" AND "Status"='A';
NEW."Code"= trim(to_char(max_code+1,'000'));
ELSEIF(TG_OP = 'UPDATE') THEN
SELECT coalesce(MAX("Code"::integer),0) into max_code
FROM "BudgetItem"
WHERE "BudgetCentre" = NEW."BudgetCentre" AND "Status" = 'A' AND "Id" <> NEW."Id";
NEW."Code"= trim(to_char(max_code + 1,'000'));
END IF;
NEW."Description" = concat_ws(' - ', concat_ws('/', parent_descr,NEW."Code"), NEW."Name");
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
SELECT * FROM cm_modify_domain('BudgetItemCost', 'LABEL: BudgetItemCost|DESCRDIR: is involved in|DESCRINV: refers to|MODE: write|STATUS: active|TYPE: domain|CLASS1: BudgetItem|CLASS2: CostIssue|CARDIN: 1:N|MASTERDETAIL: true|MDLABEL: Cost Issues|DISABLED1: |DISABLED2: ');
COMMENT ON TABLE public."BudgetItem"
IS 'DESCR: Budget item|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."BudgetItem"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetItem"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetItem"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 2|DESCR: Code|GROUP: |INDEX: 2|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."BudgetItem"."Description" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 4|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."BudgetItem"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetItem"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetItem"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."BudgetItem"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetItem"."BudgetCentre" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetCentreItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 1|DESCR: Budget centre|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetItem"."PlannedValue" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Planned value|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetItem"."AuthorizationDate" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Authorization date|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetItem"."AuthorizedValue" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Authorized value|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetItem"."Site" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SiteBudgetItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Site|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."BudgetItem"."Name" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Name|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
-- Certificate
SELECT * FROM cm_create_attribute('"Certificate"'::regclass,'Date','date',null,false,false,'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Date|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write');
COMMENT ON TABLE public."Certificate"
IS 'DESCR: Certificate|MODE: write|STATUS: active|SUPERCLASS: true|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."Certificate"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."Certificate"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."Certificate"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Code|GROUP: |INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Certificate"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Certificate"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."Certificate"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."Certificate"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."Certificate"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3';
COMMENT ON COLUMN public."Certificate"."Site" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SiteCertificate|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Site|GROUP: |INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Certificate"."Certificator" IS 'REFERENCEDIRECT: false|REFERENCEDOM: StakeholderCertificate|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Certificator|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Certificate"."Outcome" IS 'LOOKUP: CertificationOutcome|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Outcome|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Certificate"."Date" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Date|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
-- DisabilityAccess
COMMENT ON TABLE public."DisabilityAccess"
IS 'DESCR: Disability access|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."DisabilityAccess"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."DisabilityAccess"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."DisabilityAccess"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Code|GROUP: |INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."DisabilityAccess"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."DisabilityAccess"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."DisabilityAccess"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."DisabilityAccess"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."DisabilityAccess"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3';
COMMENT ON COLUMN public."DisabilityAccess"."Site" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SiteCertificate|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Site|GROUP: |INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."DisabilityAccess"."Certificator" IS 'REFERENCEDIRECT: false|REFERENCEDOM: StakeholderCertificate|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Certificator|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."DisabilityAccess"."Outcome" IS 'LOOKUP: CertificationOutcome|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Outcome|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."DisabilityAccess"."Date" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Date|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
-- EnergyPerformance
COMMENT ON TABLE public."EnergyPerformance"
IS 'DESCR: Energy performance|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."EnergyPerformance"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."EnergyPerformance"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."EnergyPerformance"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Code|GROUP: |INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."EnergyPerformance"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."EnergyPerformance"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."EnergyPerformance"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3';
COMMENT ON COLUMN public."EnergyPerformance"."Site" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SiteCertificate|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Site|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."Certificator" IS 'REFERENCEDIRECT: false|REFERENCEDOM: StakeholderCertificate|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Certificator|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."Outcome" IS 'LOOKUP: CertificationOutcome|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Outcome|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."Rating" IS 'LOOKUP: EfficiencyRating|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Rating|GROUP: |INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."InspectionDate" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Inspection date|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."EnergyConsumption" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Energy consumption|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."Co2Emissions" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: CO2 emissions|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."MainFuelType" IS 'LOOKUP: Fuel|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Main fuel type|GROUP: |INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."EfficiencyHotWaterHeating" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Efficiency hot water heating source|GROUP: |INDEX: 12|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."EfficiencyMainHeating" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Efficiency main heating source|GROUP: |INDEX: 13|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."PhotovoltaicSupply" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Photovoltaic supply|GROUP: |INDEX: 14|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."RecommendedImprovements" IS 'EDITORTYPE: HTML|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Recommended improvements|GROUP: |INDEX: 15|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."EnergyPerformance"."Date" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Date|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
-- ClimaticZone
COMMENT ON TABLE public."ClimaticZone"
IS 'DESCR: Climatic zone|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."ClimaticZone"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."ClimaticZone"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."ClimaticZone"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Code|GROUP: |INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."ClimaticZone"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: |INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."ClimaticZone"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."ClimaticZone"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."ClimaticZone"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."ClimaticZone"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3';
COMMENT ON COLUMN public."ClimaticZone"."Type" IS 'LOOKUP: ClimaticZone|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Type|GROUP: |INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."ClimaticZone"."MeanDailyTemperature" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Mean daily temperature|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
-- CostIssue
COMMENT ON TABLE public."CostIssue"
IS 'DESCR: Cost issue|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."CostIssue"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."CostIssue"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."CostIssue"."Code" IS 'MODE: read|DESCR: Code|INDEX: 1|BASEDSP: true|CLASSORDER: 0';
COMMENT ON COLUMN public."CostIssue"."Description" IS 'MODE: read|DESCR: Description|INDEX: 2|BASEDSP: true|CLASSORDER: 0';
COMMENT ON COLUMN public."CostIssue"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."CostIssue"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."CostIssue"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."CostIssue"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3|CLASSORDER: 0';
COMMENT ON COLUMN public."CostIssue"."Site" IS 'REFERENCEDIRECT: false|REFERENCEDOM: SiteCost|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 2|DESCR: Site|GROUP: |INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."CostIssue"."Amount" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Amount|GROUP: |INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."CostIssue"."Date" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 1|DESCR: Date|GROUP: |INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."CostIssue"."Type" IS 'LOOKUP: CostIssue - Type|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Type|GROUP: |INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."CostIssue"."BudgetCentre" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetCentreCost|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget centre|GROUP: |INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."CostIssue"."BudgetItem" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BudgetItemCost|REFERENCETYPE: restrict|FILTER: from BudgetItem where BudgetCentre = {client:BudgetCentre}|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Budget item|GROUP: |INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."CostIssue"."Workorder" IS 'REFERENCEDIRECT: false|REFERENCEDOM: WorkorderCost|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Workorder|GROUP: |INDEX: 10|MODE: write|FIELDMODE: write';
-- InventoryItem
COMMENT ON TABLE public."InventoryItem"
IS 'DESCR: Inventory item|MODE: write|STATUS: active|SUPERCLASS: true|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."InventoryItem"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."InventoryItem"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."InventoryItem"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Code|GROUP: General Data|INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: General Data|INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."InventoryItem"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."InventoryItem"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."InventoryItem"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3';
COMMENT ON COLUMN public."InventoryItem"."IsInComplex" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ComplexItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Complex|GROUP: Position|INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."IsInBuilding" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BuildingItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Building|GROUP: Position|INDEX: 5|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."IsInFloor" IS 'REFERENCEDIRECT: false|REFERENCEDOM: FloorItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Floor|GROUP: Position|INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."IsInRoom" IS 'REFERENCEDIRECT: false|REFERENCEDOM: RoomItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Room|GROUP: Position|INDEX: 7|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."IsInUnit" IS 'REFERENCEDIRECT: false|REFERENCEDOM: UnitItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Unit|GROUP: Position|INDEX: 8|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."Area" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceAreaItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Area|GROUP: Maintenance Data|INDEX: 9|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."Category" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceCategoryItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Category|GROUP: Maintenance Data|INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."Group" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceGroupItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Group|GROUP: Maintenance Data|INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."Condition" IS 'LOOKUP: Condition|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Condition|GROUP: Maintenance Data|INDEX: 12|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."Criticality" IS 'LOOKUP: Criticality|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Criticality|GROUP: Maintenance Data|INDEX: 13|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."LastCheckDate" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Last check date|GROUP: Maintenance Data|INDEX: 14|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."InventoryItem"."Availability" IS 'LOOKUP: AvailabilitySubCategory|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Availability|GROUP: General Data|INDEX: 3|MODE: write|FIELDMODE: write';
-- Site
COMMENT ON TABLE public."Site"
IS 'DESCR: Site|MODE: write|STATUS: active|SUPERCLASS: true|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."Site"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."Site"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."Site"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Code|GROUP: General Data|INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: General Data|INDEX: 2|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."Site"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."Site"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."Site"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3';
COMMENT ON COLUMN public."Site"."IsInComplex" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ComplexItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Complex|GROUP: Position|INDEX: 5|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Site"."IsInBuilding" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BuildingItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Building|GROUP: Position|INDEX: 6|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Site"."IsInFloor" IS 'REFERENCEDIRECT: false|REFERENCEDOM: FloorItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Floor|GROUP: Position|INDEX: 7|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Site"."IsInRoom" IS 'REFERENCEDIRECT: false|REFERENCEDOM: RoomItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Room|GROUP: Position|INDEX: 8|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Site"."IsInUnit" IS 'REFERENCEDIRECT: false|REFERENCEDOM: UnitItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Unit|GROUP: Position|INDEX: 9|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Site"."Area" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceAreaItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Area|GROUP: Maintenance Data|INDEX: 14|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Category" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceCategoryItem|REFERENCETYPE: restrict|FILTER: from MaintenanceCategory where Area=0{client:Area.Id}|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Category|GROUP: Maintenance Data|INDEX: 15|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Group" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceGroupItem|REFERENCETYPE: restrict|FILTER: from MaintenanceGroup where Category=0{client:Category.Id}|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Group|GROUP: Maintenance Data|INDEX: 16|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Condition" IS 'LOOKUP: Condition|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Condition|GROUP: Maintenance Data|INDEX: 17|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Criticality" IS 'LOOKUP: Criticality|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Criticality|GROUP: Maintenance Data|INDEX: 18|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."LastCheckDate" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Last check date|GROUP: Maintenance Data|INDEX: 19|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Availability" IS 'LOOKUP: AvailabilitySubCategory|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Availability|GROUP: General Data|INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Address" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Address|GROUP: Position|INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."ZIP" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: ZIP|GROUP: Position|INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."City" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: City|GROUP: Position|INDEX: 12|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Country" IS 'LOOKUP: Country|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Country|GROUP: Position|INDEX: 13|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."TotalGrossArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Total gross area [m2]|GROUP: Dimensional Data|INDEX: 20|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."TotalNetArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Total net area [m2]|GROUP: Dimensional Data|INDEX: 21|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."CoveredArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Covered area [m2]|GROUP: Dimensional Data|INDEX: 22|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."GlazedArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Glazed area [m2]|GROUP: Dimensional Data|INDEX: 23|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."CleanableArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Cleanable area [m2]|GROUP: Dimensional Data|INDEX: 24|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."TotalVolume" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Total volume [m3]|GROUP: Dimensional Data|INDEX: 25|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."TotalHeatedVolume" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Heated volume [m3]|GROUP: Dimensional Data|INDEX: 26|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Site"."Name" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Name|GROUP: General Data|INDEX: 3|MODE: write|FIELDMODE: write';
-- Building
CREATE OR REPLACE FUNCTION public._opm_building()
RETURNS trigger AS
$BODY$
DECLARE
complex character varying;
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
SELECT INTO complex c."Code"
FROM "Complex" c
WHERE c."Id"=NEW."Complex" AND c."Status"='A';
NEW."Description" = concat_ws(' - ', complex, concat_ws(' ', NEW."Code", NEW."Name"));
NEW."IsInComplex" = NEW."Complex";
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
CREATE OR REPLACE FUNCTION public._opm_count_buildings_of_complex()
RETURNS trigger AS
$BODY$
DECLARE
new_value INTEGER;
old_value integer;
BEGIN
--RAISE NOTICE 'Trigger % on %', TG_NAME, TG_TABLE_NAME;
IF (TG_OP = 'UPDATE' AND OLD."Complex" IS NOT NULL) THEN
SELECT "Buildings" INTO old_value
FROM "Complex"
WHERE "Id" = OLD."Complex";
SELECT COUNT(*) INTO new_value
FROM "Map_ComplexBuilding"
WHERE "IdObj1" = OLD."Complex" AND "Status"='A';
old_value = coalesce(old_value,0);
new_value = coalesce(new_value,0);
--RAISE NOTICE 'there were % buildings in complex %', old_value, OLD."Complex";
--RAISE NOTICE 'there are % buildings in complex %', new_value, OLD."Complex";
IF(old_value <> new_value)THEN
UPDATE "Complex"
SET "Buildings" = new_value
WHERE "Id" = OLD."Complex";
END IF;
END IF;
IF(NEW."Complex" IS NOT NULL) THEN
SELECT "Buildings" INTO old_value
FROM "Complex"
WHERE "Id" = NEW."Complex";
SELECT COUNT(*) INTO new_value
FROM "Map_ComplexBuilding"
WHERE "IdObj1" = NEW."Complex" AND "Status"='A';
old_value = coalesce(old_value,0);
new_value = coalesce(new_value,0);
--RAISE NOTICE 'there were % buildings in complex %', old_value, NEW."Complex";
--RAISE NOTICE 'there are % buildings in complex %', new_value, NEW."Complex";
IF(old_value <> new_value)THEN
UPDATE "Complex"
SET "Buildings" = new_value
WHERE "Id"=NEW."Complex";
END IF;
END IF;
RETURN null;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
COMMENT ON TABLE public."Building"
IS 'DESCR: Building|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."Building"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."Building"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."Building"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 1|DESCR: Code|GROUP: General Data|INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Description" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Description|GROUP: General Data|INDEX: 2|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Building"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."Building"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."Building"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."Building"."Notes" IS 'EDITORTYPE: null|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Notes|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."IsInComplex" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ComplexItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Complex|GROUP: Position|INDEX: 7|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Building"."IsInBuilding" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BuildingItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Building|GROUP: Position|INDEX: 8|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Building"."IsInFloor" IS 'REFERENCEDIRECT: false|REFERENCEDOM: FloorItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Floor|GROUP: Position|INDEX: 9|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Building"."IsInRoom" IS 'REFERENCEDIRECT: false|REFERENCEDOM: RoomItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Room|GROUP: Position|INDEX: 10|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Building"."IsInUnit" IS 'REFERENCEDIRECT: false|REFERENCEDOM: UnitItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Unit|GROUP: Position|INDEX: 11|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Building"."Area" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceAreaItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Area|GROUP: Maintenance Data|INDEX: 17|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Category" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceCategoryItem|REFERENCETYPE: restrict|FILTER: from MaintenanceCategory where Area=0{client:Area.Id}|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Category|GROUP: Maintenance Data|INDEX: 18|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Group" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceGroupItem|REFERENCETYPE: restrict|FILTER: from MaintenanceGroup where Category=0{client:Category.Id}|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Group|GROUP: Maintenance Data|INDEX: 19|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Condition" IS 'LOOKUP: Condition|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Condition|GROUP: Maintenance Data|INDEX: 20|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Criticality" IS 'LOOKUP: Criticality|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Criticality|GROUP: Maintenance Data|INDEX: 21|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."LastCheckDate" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Last check date|GROUP: Maintenance Data|INDEX: 22|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Availability" IS 'LOOKUP: AvailabilitySubCategory|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Availability|GROUP: General Data|INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Address" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Address|GROUP: Position|INDEX: 13|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."ZIP" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: ZIP|GROUP: Position|INDEX: 12|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."City" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: City|GROUP: Position|INDEX: 14|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Country" IS 'LOOKUP: Country|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Country|GROUP: Position|INDEX: 15|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."TotalGrossArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Total gross area [m2]|GROUP: Dimensional Data|INDEX: 20|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."TotalNetArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Total net area [m2]|GROUP: Dimensional Data|INDEX: 21|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."CoveredArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Covered area [m2]|GROUP: Dimensional Data|INDEX: 22|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."GlazedArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Glazed area [m2]|GROUP: Dimensional Data|INDEX: 23|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."CleanableArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Cleanable area [m2]|GROUP: Dimensional Data|INDEX: 24|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."TotalVolume" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Total volume [m3]|GROUP: Dimensional Data|INDEX: 25|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."TotalHeatedVolume" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Heated volume [m3]|GROUP: Dimensional Data|INDEX: 26|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Name" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Name|GROUP: General Data|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Complex" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ComplexBuilding|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: true|CLASSORDER: 2|DESCR: Complex|GROUP: Position|INDEX: 6|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."ClimaticZone" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ClimaticZoneBuilding|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Climatic zone|GROUP: Position|INDEX: 16|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Building"."Floors" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Number of floors|GROUP: Dimensional Data|INDEX: 30|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."Building"."Rooms" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Number of rooms|GROUP: Dimensional Data|INDEX: 31|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."Building"."Units" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Number of units|GROUP: Dimensional Data|INDEX: 32|MODE: read|FIELDMODE: read';
COMMENT ON COLUMN public."Building"."MainUse" IS 'LOOKUP: BuildingMainUse|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Main use|GROUP: General Data|INDEX: 5|MODE: write|FIELDMODE: write';
-- Complex
COMMENT ON TABLE public."Complex"
IS 'DESCR: Complex|MODE: write|STATUS: active|SUPERCLASS: false|TYPE: class|USERSTOPPABLE: false';
COMMENT ON COLUMN public."Complex"."Id" IS 'MODE: reserved';
COMMENT ON COLUMN public."Complex"."IdClass" IS 'MODE: reserved';
COMMENT ON COLUMN public."Complex"."Code" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Code|GROUP: General Data|INDEX: 1|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Description" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Description|GROUP: General Data|INDEX: 2|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."Status" IS 'MODE: reserved';
COMMENT ON COLUMN public."Complex"."User" IS 'MODE: reserved';
COMMENT ON COLUMN public."Complex"."BeginDate" IS 'MODE: reserved';
COMMENT ON COLUMN public."Complex"."Notes" IS 'MODE: read|DESCR: Notes|INDEX: 3';
COMMENT ON COLUMN public."Complex"."IsInComplex" IS 'REFERENCEDIRECT: false|REFERENCEDOM: ComplexItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Complex|GROUP: Position|INDEX: 5|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."IsInBuilding" IS 'REFERENCEDIRECT: false|REFERENCEDOM: BuildingItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Building|GROUP: Position|INDEX: 6|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."IsInFloor" IS 'REFERENCEDIRECT: false|REFERENCEDOM: FloorItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Floor|GROUP: Position|INDEX: 7|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."IsInRoom" IS 'REFERENCEDIRECT: false|REFERENCEDOM: RoomItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Room|GROUP: Position|INDEX: 8|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."IsInUnit" IS 'REFERENCEDIRECT: false|REFERENCEDOM: UnitItem|REFERENCETYPE: restrict|FILTER: |STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Unit|GROUP: Position|INDEX: 9|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."Area" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceAreaItem|REFERENCETYPE: restrict|FILTER: |STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Area|GROUP: Maintenance Data|INDEX: 14|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Category" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceCategoryItem|REFERENCETYPE: restrict|FILTER: from MaintenanceCategory where Area=0{client:Area.Id}|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Category|GROUP: Maintenance Data|INDEX: 15|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Group" IS 'REFERENCEDIRECT: false|REFERENCEDOM: MaintenanceGroupItem|REFERENCETYPE: restrict|FILTER: from MaintenanceGroup where Category=0{client:Category.Id}|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Group|GROUP: Maintenance Data|INDEX: 16|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Condition" IS 'LOOKUP: Condition|STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Condition|GROUP: Maintenance Data|INDEX: 17|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Criticality" IS 'LOOKUP: Criticality|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Criticality|GROUP: Maintenance Data|INDEX: 18|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."LastCheckDate" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Last check date|GROUP: Maintenance Data|INDEX: 19|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Availability" IS 'LOOKUP: AvailabilitySubCategory|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Availability|GROUP: General Data|INDEX: 4|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Address" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Address|GROUP: Position|INDEX: 10|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."ZIP" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: ZIP|GROUP: Position|INDEX: 11|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."City" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: City|GROUP: Position|INDEX: 12|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Country" IS 'LOOKUP: Country|STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Country|GROUP: Position|INDEX: 13|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."TotalGrossArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Total gross area [m2]|GROUP: Dimensional Data|INDEX: 20|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."TotalNetArea" IS 'STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Total net area [m2]|GROUP: Dimensional Data|INDEX: 21|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."CoveredArea" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Covered area [m2]|GROUP: Dimensional Data|INDEX: 22|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."GlazedArea" IS 'STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Glazed area [m2]|GROUP: Dimensional Data|INDEX: 23|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."CleanableArea" IS 'STATUS: noactive|BASEDSP: false|CLASSORDER: 0|DESCR: Cleanable area [m2]|GROUP: Dimensional Data|INDEX: 24|MODE: hidden|FIELDMODE: hidden';
COMMENT ON COLUMN public."Complex"."TotalVolume" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Total volume [m3]|GROUP: Dimensional Data|INDEX: 25|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."TotalHeatedVolume" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Heated volume [m3]|GROUP: Dimensional Data|INDEX: 26|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Name" IS 'STATUS: active|BASEDSP: true|CLASSORDER: 0|DESCR: Name|GROUP: General Data|INDEX: 3|MODE: write|FIELDMODE: write';
COMMENT ON COLUMN public."Complex"."Buildings" IS 'STATUS: active|BASEDSP: false|CLASSORDER: 0|DESCR: Number of buildings|GROUP: Dimensional Data|INDEX: 27|MODE: read|FIELDMODE: read';
]; nested exception is org.postgresql.util.PSQLException: ERROR: relation "public.AccountingDocument" does not exist
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:231)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:73)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:415)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:439)
at org.cmdbuild.services.DefaultPatchManager$4.doInTransactionWithoutResult(DefaultPatchManager.java:378)
at org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:34)
at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133)
at org.cmdbuild.services.DefaultPatchManager.applyPatch(DefaultPatchManager.java:372)
at org.cmdbuild.services.DefaultPatchManager.applyPatchList(DefaultPatchManager.java:360)
at org.cmdbuild.services.startup.DefaultStartupLogic.migrate(DefaultStartupLogic.java:31)
at org.cmdbuild.servlets.json.Configure.applyPatches(Configure.java:214)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.cmdbuild.servlets.JSONDispatcher.dispatch(JSONDispatcher.java:104)
at org.cmdbuild.servlets.JSONDispatcher.doPost(JSONDispatcher.java:64)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.AuthFilter.doFilter(AuthFilter.java:183)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.PatchManagerFilter.doFilter(PatchManagerFilter.java:48)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.ConfCheckFilter.doFilter(ConfCheckFilter.java:31)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.TranslationFilter.doFilter(TranslationFilter.java:52)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.LocalizationFilter.doFilter(LocalizationFilter.java:127)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
Caused by: org.postgresql.util.PSQLException: ERROR: relation "public.AccountingDocument" does not exist
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2422)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2167)
at org.postgresql.core.v3.QueryExecutorImpl.flushIfDeadlockRisk(QueryExecutorImpl.java:1297)
at org.postgresql.core.v3.QueryExecutorImpl.sendQuery(QueryExecutorImpl.java:1332)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:298)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:441)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:365)
at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:307)
at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:293)
at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:270)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:266)
at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at org.springframework.jdbc.core.JdbcTemplate$1ExecuteStatementCallback.doInStatement(JdbcTemplate.java:431)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:404)
... 60 more
ERROR 2018-04-13 15:28:14 [jsonrpc ] A org.cmdbuild.exception.ORMException occurred calling method class org.cmdbuild.servlets.json.Configure.applyPatches: ORM_SQL_PATCH
org.cmdbuild.exception.ORMException: ORM_SQL_PATCH
at org.cmdbuild.exception.ORMException$ORMExceptionType.createException(ORMException.java:63)
at org.cmdbuild.services.DefaultPatchManager.applyPatch(DefaultPatchManager.java:391)
at org.cmdbuild.services.DefaultPatchManager.applyPatchList(DefaultPatchManager.java:360)
at org.cmdbuild.services.startup.DefaultStartupLogic.migrate(DefaultStartupLogic.java:31)
at org.cmdbuild.servlets.json.Configure.applyPatches(Configure.java:214)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.cmdbuild.servlets.JSONDispatcher.dispatch(JSONDispatcher.java:104)
at org.cmdbuild.servlets.JSONDispatcher.doPost(JSONDispatcher.java:64)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.AuthFilter.doFilter(AuthFilter.java:183)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.PatchManagerFilter.doFilter(PatchManagerFilter.java:48)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.ConfCheckFilter.doFilter(ConfCheckFilter.java:31)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.TranslationFilter.doFilter(TranslationFilter.java:52)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.cmdbuild.filters.LocalizationFilter.doFilter(LocalizationFilter.java:127)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
INFO 2018-04-13 15:28:14 [jsonrpc ] Calling url /configure/getpatches
===================================================================
Can someone please help me resolve this error?
Thanks