CREATE TABLE TBPDV_MOVIMENTO_CAIXA (
    ID INTEGER NOT NULL,
    PDV_MOVIMENTO_ID INTEGER,
    DATAHORA_ABERTURA TIMESTAMP,
    OPERADOR_ABERTURA INTEGER,
    DATAHORA_FECHAMENTO TIMESTAMP,
    OPERADOR_FECHAMENTO INTEGER);
	
ALTER TABLE TBPDV_MOVIMENTO_CAIXA
ADD CONSTRAINT PK_TBPDV_MOVIMENTO_CAIXA
PRIMARY KEY (ID);

ALTER TABLE TBPDV_MOVIMENTO_CAIXA
ADD PDV_CAIXA_ID INTEGER;

CREATE SEQUENCE GTBPDV_MOVIMENTO_CAIXA;

CREATE TRIGGER TTBPDV_MOVIMENTO_CAIXA_B0I FOR TBPDV_MOVIMENTO_CAIXA
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.ID IS NULL) THEN
    NEW.ID = GEN_ID(GTBPDV_MOVIMENTO_CAIXA,1);
END;

CREATE TABLE TBPDV_MOVIMENTO_CAIXA_DET (
    ID INTEGER NOT NULL,
    PDV_MOVIMENTO_CAIXA_ID INTEGER,
    DATAHORA TIMESTAMP DEFAULT 'NOW',
    VALOR NUMERIC(15,8),
    OPERACAO_CODIGO INTEGER,
    OBSERVACAO VARCHAR(250));
	
ALTER TABLE TBPDV_MOVIMENTO_CAIXA_DET
ADD CONSTRAINT PK_TBPDV_MOVIMENTO_CAIXA_DET
PRIMARY KEY (ID);

CREATE SEQUENCE GTBPDV_MOVIMENTO_CAIXA_DET;

CREATE TRIGGER TTBPDV_MOVIMENTO_CAIXA_DET_B0I FOR TBPDV_MOVIMENTO_CAIXA_DET
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.ID IS NULL) THEN
    NEW.ID = GEN_ID(GTBPDV_MOVIMENTO_CAIXA_DET,1);
END;	