Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pereira lima

Calcular valor a pagar de uma tabela rotativo

Recommended Posts

Ola pessoal,

tenho uma tabela chamada utilizacao_r, com esses campos ai embaixo. Criei uma aplicação no apex, que tem um form e eu e uma tabela Com nome de "utilizacao_r" onde sao armazenados os resultados do cadastro.

CREATE TABLE  "UTILIZACAO_R"    (  "IDVROT" NUMBER,     "PLACA" VARCHAR2(80),     "HORA_ENTRADA" TIMESTAMP (6),     "HORA_SAIDA" TIMESTAMP (6),     "IDVAGAVR" NUMBER,     "VALOR_PAGO" FLOAT(126),      CONSTRAINT "UTILIZACAO_R_PK" PRIMARY KEY ("IDUTILR") ENABLE   )

------------------------------------------------------------------------------------------------

CREATE TABLE  "VALOR_ROTATIVO"    (    "IDVROT" NUMBER,     "VALOR" FLOAT(126),     "DATA_INICIO" DATE,     "DATA_FIM" DATE,      CONSTRAINT "VALOR_ROTATIVO_PK" PRIMARY KEY ("IDVROT") ENABLE   )

--------------------------------------------------------------------------------------------------------------

 

quero que quando der entrada na placa do veículo, ja cadastre a data e a hora de entrada no campo hora_entrada automaticamente, e quando for da saida. verifico na tabela o veiculo e clico em edidar na tabela, e os campos de hora_entrada, hora_saida e o valor a pagar ja apareça nos seus campos para que possa aplicar alteraçao ja com o valor_pago ja calculado. O valor inicial para calcular o valor_pago sera colocado na tabela "VALOR_ROTATIVO" esse valor será o valor inicial a pagar por hora ou entao por meia hora. se poderem me ajudar agradeço.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sua dúvida e de como fazer isto em Forms ou de como montar as queries para isto ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu queria as queres para quando eu desse entrada na placa no form ele ja gravasse na tabela utilizacao_r o: idutilr, placa, hora_entrada, sendo que na hora entrada ja poderia ter data e hora.

 

Quando eu fosse dar saida, eu iria na tabela Utilizacao_r escolhia a placa que eu queria dar saida, clicava em editar e entao ja ia aparacer no form os campos com os dados na tabela, mais o valor ja calculado e quando eu clicasse em aplicar ele apareceria o campo hora_saida e valor_pago ja preenchido na tabela utilização_r.

 

Pq eu criei um aplicação no apex ( Form on a Table with Report ) criei procedure de insert delete e update. se poder me ajudar agradeço....

 

Qualquer coisa eu tento explicar melhor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Mota vc tem uma querer que de acordo com as tabelas que coloquei acima, uma quare que quando der entrada na placa, gravasse o id da tabela, placa , hora e data da entrada; e quando desse saida gravasse a data e hora da saida e fizesse o calculo do valor que sera pago e gravasse no esse valor tambem

 

Abraço

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Queries não gravam o máximo que podem e montar o cálculo.

 

Você conhece SQL ?

 

a query básica seria

select *
from UTILIZACAO, VALOR_ROTATIVO
where UTILIZACAO.IDVROT =  VALOR_ROTATIVO.IDVROT

Se o relacionamento é este.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Queries não gravam o máximo que podem e montar o cálculo.

 

Você conhece SQL ?

 

a query básica seria

select u.idutilr,placa
from UTILIZACAO, VALOR_ROTATIVO
where UTILIZACAO.IDVROT =  VALOR_ROTATIVO.IDVROT

Se o relacionamento é este.

select

CREATE TABLE  "UTILIZACAO_R"    (    "IDUTILR" NUMBER,     "IDVAGAVR" NUMBER,     "HORA_ENTRADA" TIMESTAMP (6),     "HORA_SAIDA" TIMESTAMP (6),     "VALOR_PAGO" FLOAT(126),     "PLACA" VARCHAR2(80),      CONSTRAINT "UTILIZACAO_R_PK" PRIMARY KEY ("IDUTILR") ENABLE,      CONSTRAINT "UTILIZACAO_R_V_VROTATIVO_FK" FOREIGN KEY ("IDVAGAVR")      REFERENCES  "V_VROTATIVO" ("IDVAGAVR") ENABLE   )/-----------------------------------------------------------------CREATE TABLE  "V_VROTATIVO"    (    "IDVAGAVR" NUMBER,     "IDVROT" NUMBER,     "IDVAGA" NUMBER,     "DATA" DATE,      CONSTRAINT "V_VROTATIVO_PK" PRIMARY KEY ("IDVAGAVR") ENABLE,      CONSTRAINT "V_VROTATIVO_VALOR_ROTATIVO_FK" FOREIGN KEY ("IDVROT")      REFERENCES  "VALOR_ROTATIVO" ("IDVROT") ENABLE,      CONSTRAINT "V_VROTATIVO_VAGA_FK" FOREIGN KEY ("IDVAGA")      REFERENCES  "VAGA" ("IDVAGA") ENABLE   )/CREATE OR REPLACE TRIGGER "AUDIT_V_VROTATIVO" AFTER INSERT OR DELETE OR UPDATE ON V_VROTATIVO FOR EACH ROW BEGIN INSERT INTO AUD_V_VROTATIVO VALUES(:OLD.IdVagaVR,:NEW.IdVagaVR,:OLD.IDVROT, :NEW.IDVROT,:OLD.IDVAGA,:NEW.IDVAGA,:OLD.DATA,:NEW.DATA,USER,SYSDATE); END; / ALTER TRIGGER "AUDIT_V_VROTATIVO" ENABLE / 

---------------------------------------------------------------------------------------------------------------------------------------------

CREATE TABLE  "VALOR_ROTATIVO"    (    "IDVROT" NUMBER,     "VALOR" FLOAT(126),     "DATA_INICIO" DATE,     "DATA_FIM" DATE,      CONSTRAINT "VALOR_ROTATIVO_PK" PRIMARY KEY ("IDVROT") ENABLE   )/
CREATE OR REPLACE TRIGGER "AUDIT_VALOR_ROTATIVO" AFTER INSERT OR DELETE OR UPDATE ON VALOR_ROTATIVO FOR EACH ROW BEGIN INSERT INTO AUD_VALOR_ROTATIVO VALUES(:OLD.IDVROT,:NEW.IDVROT,:OLD.VALOR,:NEW.VALOR, :OLD.DATA_INICIO,:NEW.DATA_INICIO,:OLD.DATA_FIM,:NEW.DATA_FIM,USER,SYSDATE); END; / ALTER TRIGGER "AUDIT_VALOR_ROTATIVO" ENABLE / 

------------------------------------------------------------------------------------------------------------------------------------------

CREATE OR REPLACE TRIGGER "AUDIT_UTILIZACAO_R" AFTER INSERT OR DELETE OR UPDATE ON UTILIZACAO_R FOR EACH ROW BEGIN INSERT INTO AUD_UTILIZACAO_R VALUES(:OLD.idUtilR,:NEW.idUtilR ,:OLD.PLACA,:NEW.PLACA, :OLD.IdVagaVR,:NEW.IdVagaVR ,:OLD.HORA_ENTRADA,:NEW.HORA_ENTRADA,:OLD.HORA_SAIDA,:NEW.HORA_SAIDA, :OLD.VALOR_PAGO,:NEW.VALOR_PAGO,USER,SYSDATE); END; / ALTER TRIGGER "AUDIT_UTILIZACAO_R" ENABLE / 
CREATE OR REPLACE TRIGGER "data_hora_entrada_r" before insert or update ON utilizacao_r FOR EACH ROW DECLARE begin :new.hora_entrada:= SYSDATE; end; / ALTER TRIGGER "data_hora_entrada_r" ENABLE / 
CREATE OR REPLACE TRIGGER "data_hora_SAIDA_r" before insert or update ON utilizacao_r FOR EACH ROW DECLARE begin :new.hora_SAIDA:= SYSDATE; end; / ALTER TRIGGER "data_hora_SAIDA_r" ENABLE / 

essas sao as pabelas que eu queria essa quareres, que gravasse no banco ai da tabela, hora de tada, e placa quendo desse esntrada e quando desse saida guavasse hora e datad da saida com o valor pago ja calculado

select

CREATE TABLE  "UTILIZACAO_R"    (    "IDUTILR" NUMBER,     "IDVAGAVR" NUMBER,     "HORA_ENTRADA" TIMESTAMP (6),     "HORA_SAIDA" TIMESTAMP (6),     "VALOR_PAGO" FLOAT(126),     "PLACA" VARCHAR2(80),      CONSTRAINT "UTILIZACAO_R_PK" PRIMARY KEY ("IDUTILR") ENABLE,      CONSTRAINT "UTILIZACAO_R_V_VROTATIVO_FK" FOREIGN KEY ("IDVAGAVR")      REFERENCES  "V_VROTATIVO" ("IDVAGAVR") ENABLE   )/-----------------------------------------------------------------CREATE TABLE  "V_VROTATIVO"    (    "IDVAGAVR" NUMBER,     "IDVROT" NUMBER,     "IDVAGA" NUMBER,     "DATA" DATE,      CONSTRAINT "V_VROTATIVO_PK" PRIMARY KEY ("IDVAGAVR") ENABLE,      CONSTRAINT "V_VROTATIVO_VALOR_ROTATIVO_FK" FOREIGN KEY ("IDVROT")      REFERENCES  "VALOR_ROTATIVO" ("IDVROT") ENABLE,      CONSTRAINT "V_VROTATIVO_VAGA_FK" FOREIGN KEY ("IDVAGA")      REFERENCES  "VAGA" ("IDVAGA") ENABLE   )/CREATE OR REPLACE TRIGGER "AUDIT_V_VROTATIVO" AFTER INSERT OR DELETE OR UPDATE ON V_VROTATIVO FOR EACH ROW BEGIN INSERT INTO AUD_V_VROTATIVO VALUES(:OLD.IdVagaVR,:NEW.IdVagaVR,:OLD.IDVROT, :NEW.IDVROT,:OLD.IDVAGA,:NEW.IDVAGA,:OLD.DATA,:NEW.DATA,USER,SYSDATE); END; / ALTER TRIGGER "AUDIT_V_VROTATIVO" ENABLE / 

---------------------------------------------------------------------------------------------------------------------------------------------

CREATE TABLE  "VALOR_ROTATIVO"    (    "IDVROT" NUMBER,     "VALOR" FLOAT(126),     "DATA_INICIO" DATE,     "DATA_FIM" DATE,      CONSTRAINT "VALOR_ROTATIVO_PK" PRIMARY KEY ("IDVROT") ENABLE   )/
CREATE OR REPLACE TRIGGER "AUDIT_VALOR_ROTATIVO" AFTER INSERT OR DELETE OR UPDATE ON VALOR_ROTATIVO FOR EACH ROW BEGIN INSERT INTO AUD_VALOR_ROTATIVO VALUES(:OLD.IDVROT,:NEW.IDVROT,:OLD.VALOR,:NEW.VALOR, :OLD.DATA_INICIO,:NEW.DATA_INICIO,:OLD.DATA_FIM,:NEW.DATA_FIM,USER,SYSDATE); END; / ALTER TRIGGER "AUDIT_VALOR_ROTATIVO" ENABLE / 

------------------------------------------------------------------------------------------------------------------------------------------

CREATE OR REPLACE TRIGGER "AUDIT_UTILIZACAO_R" AFTER INSERT OR DELETE OR UPDATE ON UTILIZACAO_R FOR EACH ROW BEGIN INSERT INTO AUD_UTILIZACAO_R VALUES(:OLD.idUtilR,:NEW.idUtilR ,:OLD.PLACA,:NEW.PLACA, :OLD.IdVagaVR,:NEW.IdVagaVR ,:OLD.HORA_ENTRADA,:NEW.HORA_ENTRADA,:OLD.HORA_SAIDA,:NEW.HORA_SAIDA, :OLD.VALOR_PAGO,:NEW.VALOR_PAGO,USER,SYSDATE); END; / ALTER TRIGGER "AUDIT_UTILIZACAO_R" ENABLE / 
CREATE OR REPLACE TRIGGER "data_hora_entrada_r" before insert or update ON utilizacao_r FOR EACH ROW DECLARE begin :new.hora_entrada:= SYSDATE; end; / ALTER TRIGGER "data_hora_entrada_r" ENABLE / 
CREATE OR REPLACE TRIGGER "data_hora_SAIDA_r" before insert or update ON utilizacao_r FOR EACH ROW DECLARE begin :new.hora_SAIDA:= SYSDATE; end; / ALTER TRIGGER "data_hora_SAIDA_r" ENABLE / 

essas sao as pabelas que eu queria essa quareres, que gravasse no banco ai da tabela, hora de tada, e placa quendo desse esntrada e quando desse saida guavasse hora e datad da saida com o valor pago ja calculado

Isso no oracle

eu sei. pois eu so queria queria as queres que fizesse esses calculos. de controle de entrada e saida de acordo com essas dabelas acima

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas aí eu teria de perder algum tempo analisando isto, tempo que não tenho.

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas aí eu teria de perder algum tempo analisando isto, tempo que não tenho.

Ta tranquilo meu amigo. mais valeu a sua atenção.

Abraço ai e Obriagado mais uma veis pela sua atenção em responder minhas perguntas. Valeu.

 

 

OI pessoal,

Como consertar essa tabela, pq to tentando fazer um Join, so que os resultado vem duplicados. .

select    UTILIZACAO_M.IDUTILM as IDUTILM,    VEICULO.PLACA as PLACA,    VEICULO.MODELO as MODELO,    VEICULO.COR as COR,    VEICULO.ANO as ANO,    VEICULO.TIPO as TIPO,    VEICULO.SITUACAO as SITUACAO,    VAGA.NUMVAGA as NUMVAGA,    VAGA.LOCALIZACAO as LOCALIZACAO,    CONTRATO.IDCONT as IDCONT,    CLIENTE.NOME as NOME,    UTILIZACAO_M.HORA_ENTRADA as HORA_ENTRADA,    UTILIZACAO_M.HORA_SAIDA as HORA_SADA from CLIENTE CLIENTE,    VALOR_CONTRATO VALOR_CONTRATO,    CONTRATO CONTRATO,    VAGA VAGA,    VEICULO VEICULO,    UTILIZACAO_M UTILIZACAO_M where CONTRATO.IDCONT=UTILIZACAO_M.IDUTILM    and CONTRATO.IDVEI=VEICULO.IDVEI    and CLIENTE.IDCLI=CONTRATO.IDCLI

Compartilhar este post


Link para o post
Compartilhar em outros sites

A SQL tem 6 tabelas no FROM faltam condições de JOIN no WHERE , tabelas VALOR_CONTRATO e VAGA ao menos, se não faltar chaves de relacionamento nas demais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.