O TOTVS Agro API  Hub requer a criação das seguintes tablespaces:

  • Tablespace de Dados: PIMS_DATA
  • Tablespace de Índice: PIMS_INDX


CREATE TABLESPACE PIMS_DATA DATAFILE '/u01/oradata/orcl/PIMS_DATA.ORA' SIZE 20G;

CREATE TABLESPACE PIMS_INDX DATAFILE '/u01/oradata/orcl/PIMS_INDEX.ORA' SIZE 20G;


Criação de Owner e Atribuição de Permissões


CREATE USER {{DB_USUARIO_API_HUB}} IDENTIFIED BY "{{DB_SENHA_API_HUB}}" DEFAULT TABLESPACE PIMS_DATA TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK;  

GRANT CONNECT                    TO {{DB_USUARIO_API_HUB}};
GRANT "RESOURCE                  TO {{DB_USUARIO_API_HUB}};
GRANT UNLIMITED TABLESPACE       TO {{DB_USUARIO_API_HUB}};
GRANT DEBUG CONNECT SESSION      TO {{DB_USUARIO_API_HUB}};
GRANT DEBUG ANY PROCEDURE        TO {{DB_USUARIO_API_HUB}};  
GRANT CREATE SYNONYM             TO {{DB_USUARIO_API_HUB}};
GRANT CREATE VIEW                TO {{DB_USUARIO_API_HUB}};
GRANT CREATE PROCEDURE           TO {{DB_USUARIO_API_HUB}}; 
GRANT CREATE TRIGGER             TO {{DB_USUARIO_API_HUB}};
GRANT CREATE SEQUENCE            TO {{DB_USUARIO_API_HUB}}; 
GRANT CREATE MATERIALIZED VIEW   TO {{DB_USUARIO_API_HUB}};
GRANT UNLIMITED TABLESPACE		 TO {{DB_USUARIO_API_HUB}};

ALTER USER {{DB_USUARIO_API_HUB}} QUOTA UNLIMITED ON PIMS_DATA;
ALTER USER {{DB_USUARIO_API_HUB}} QUOTA UNLIMITED ON PIMS_INDX; 


O TOTVS Agro API Hub necessita de um owner, que deverá ser aplicado um trigger de logon para o Owner do TOTVS Agro Bioenergia. Esse usuário deverá possuir as permissões listadas abaixo. 

CREATE USER {{DB_USUARIO_API_HUB_INTEGRACAO}} IDENTIFIED BY "DB_SENHA_API_HUB_INTEGRACAO"  DEFAULT TABLESPACE PIMS_DATA TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK;  

GRANT CONNECT                       TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT RESOURCE                      TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT UNLIMITED TABLESPACE          TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT CREATE SYNONYM                TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT CREATE VIEW                   TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT CREATE PROCEDURE              TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT CREATE TRIGGER                TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT CREATE SEQUENCE               TO {{DB_USUARIO_API_HUB_INTEGRACAO}}; 
GRANT CREATE MATERIALIZED VIEW      TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT CREATE ANY TABLE              TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT ALTER ANY TABLE               TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT INSERT ANY TABLE              TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT UPDATE ANY TABLE              TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT DELETE ANY TABLE              TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT SELECT ANY TABLE              TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT CREATE ANY TRIGGER            TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
GRANT CREATE ANY SEQUENCE           TO {{DB_USUARIO_API_HUB_INTEGRACAO}};
 
 
ALTER USER {{DB_USUARIO_API_HUB_INTEGRACAO}} QUOTA UNLIMITED      ON PIMS_DATA;
ALTER USER {{DB_USUARIO_API_HUB_INTEGRACAO}} QUOTA UNLIMITED      ON PIMS_INDX;  



CREATE OR REPLACE TRIGGER TG_LOGON_OWNER_INTEGRACAO_API_HUB
AFTER LOGON ON DATABASE
BEGIN
    IF SYS_CONTEXT('USERENV', 'SESSION_USER') = 'DB_USUARIO_API_HUB_INTEGRACAO' THEN
        EXECUTE IMMEDIATE 'ALTER SESSION SET CURRENT_SCHEMA = OWNER_BIOENERGIA';
    END IF;
END;


O TOTVS Agro API Hub necessita de um owner, que deverá ser aplicado um trigger de logon para o Owner do TOTVS Agro Indústria para o MI e outra para o PI. 


CREATE USER {{DB_USUARIO_API_HUB_INDUSTRIA_MI}} IDENTIFIED BY "DB_SENHA_API_HUB_INTEGRACAO_MI"  DEFAULT TABLESPACE PIMS_DATA TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK;  

GRANT CONNECT                       TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT RESOURCE                      TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT UNLIMITED TABLESPACE          TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT CREATE SYNONYM                TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT CREATE VIEW                   TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT CREATE PROCEDURE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT CREATE TRIGGER                TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT CREATE SEQUENCE               TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}}; 
GRANT CREATE MATERIALIZED VIEW      TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT CREATE ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT ALTER ANY TABLE               TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT INSERT ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT UPDATE ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT DELETE ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT SELECT ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT CREATE ANY TRIGGER            TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
GRANT CREATE ANY SEQUENCE           TO {{DB_USUARIO_API_HUB_INDUSTRIA_MI}};
 
 
ALTER USER {{DB_USUARIO_API_HUB_INDUSTRIA_MI}} QUOTA UNLIMITED      ON PIMS_DATA;
ALTER USER {{DB_USUARIO_API_HUB_INDUSTRIA_MI}} QUOTA UNLIMITED      ON PIMS_INDX;  

CREATE OR REPLACE TRIGGER TG_LOGON_OWNER_INTEGRACAO_API_HUB_MI
AFTER LOGON ON DATABASE
BEGIN
    IF SYS_CONTEXT('USERENV', 'SESSION_USER') = 'DB_USUARIO_API_HUB_INDUSTRIA_MI' THEN
        EXECUTE IMMEDIATE 'ALTER SESSION SET CURRENT_SCHEMA = OWNER_INDUSTRIA_MI';
    END IF;
END;
CREATE USER {{DB_USUARIO_API_HUB_INDUSTRIA_PI}} IDENTIFIED BY "DB_SENHA_API_HUB_INTEGRACAO_PI"  DEFAULT TABLESPACE PIMS_DATA TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK;  

GRANT CONNECT                       TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT RESOURCE                      TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT UNLIMITED TABLESPACE          TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT CREATE SYNONYM                TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT CREATE VIEW                   TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT CREATE PROCEDURE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT CREATE TRIGGER                TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT CREATE SEQUENCE               TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}}; 
GRANT CREATE MATERIALIZED VIEW      TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT CREATE ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT ALTER ANY TABLE               TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT INSERT ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT UPDATE ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT DELETE ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT SELECT ANY TABLE              TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT CREATE ANY TRIGGER            TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
GRANT CREATE ANY SEQUENCE           TO {{DB_USUARIO_API_HUB_INDUSTRIA_PI}};
 
 
ALTER USER {{DB_USUARIO_API_HUB_INDUSTRIA_PI}} QUOTA UNLIMITED      ON PIMS_DATA;
ALTER USER {{DB_USUARIO_API_HUB_INDUSTRIA_PI}} QUOTA UNLIMITED      ON PIMS_INDX;  



CREATE OR REPLACE TRIGGER TG_LOGON_OWNER_INTEGRACAO_API_HUB_PI
AFTER LOGON ON DATABASE
BEGIN
    IF SYS_CONTEXT('USERENV', 'SESSION_USER') = 'DB_USUARIO_API_HUB_INDUSTRIA_PI' THEN
        EXECUTE IMMEDIATE 'ALTER SESSION SET CURRENT_SCHEMA = OWNER_INDUSTRIA_PI';
    END IF;
END;