[firebase-br] Campo calculado usando outra tabela
CPD (Borborema-Imperial Transportes Ltda)
cpd em borborema.com.br
Sex Out 8 18:23:16 -03 2004
Ai vai os Metadados :
CREATE TABLE COMPONENTES (
COM_TIPO CHAR2 NOT NULL /* CHAR2 = CHAR(2) */,
COM_NUMERO CHAR6 NOT NULL /* CHAR6 = CHAR(6) */,
COM_KM_ACUMULADA INTLONGO NOT NULL /* INTLONGO = INTEGER */,
COM_KM_PERCORRIDA COMPUTED BY (((select kav_km from
km_acumulada_data_veiculo(componentes.com_placa, current_date)) - (select
kav_km from km_acumulada_data_veiculo(componentes.com_placa,
componentes.com_data)))),
COM_DT_KM COMPUTED BY ((select max(ckm_data) from
componentes_km where ckm_tipo = componentes.com_tipo and ckm_numero =
componentes.com_numero)),
COM_ATIVO CHAR1 NOT NULL /* CHAR1 = CHAR(1) */,
COM_PLACA CHAR7 /* CHAR7 = CHAR(7) */,
COM_DT_IMPLANTACAO DATAHORA /* DATAHORA = TIMESTAMP */,
COM_DATA DATA /* DATA = DATE */,
COM_REFERENCIA VCHAR30 /* VCHAR30 = VARCHAR(30) */,
COM_POSICAO VCHAR20 /* VCHAR20 = VARCHAR(20) */,
COM_USUARIO VCHAR30 NOT NULL /* VCHAR30 = VARCHAR(30) */,
COM_MOTIVO VCHAR256 /* VCHAR256 = VARCHAR(256) */,
COM_ATUALIZA CHAR1 /* CHAR1 = CHAR(1) */,
COM_DESINSTALAR CHAR1 /* CHAR1 = CHAR(1) */,
COM_INSTALAR CHAR1 /* CHAR1 = CHAR(1) */
);
CREATE PROCEDURE KM_ACUMULADA_DATA_VEICULO (
PLACA CHAR(7),
DATA DATE)
RETURNS (
KAV_KM INTEGER)
AS
begin
kav_km = null;
select first 1 kco_km_acumulada from km_consumo
where kco_placa = :placa and
kco_data = :data
order by kco_km_acumulada desc
into kav_km;
if (kav_km is null) then
begin
select first 1 kco_km_acumulada from km_consumo
where kco_placa = :placa and
kco_data < :data
order by kco_data desc, kco_km_acumulada desc
into kav_km;
if (kav_km is null) then
begin
select first 1 kco_km_acumulada from km_consumo
where kco_placa = :placa and
kco_data > :data
order by kco_data, kco_km_acumulada
into kav_km;
if (kav_km is null) then
select vei_km_acumulada from veiculos
where vei_placa = :placa
into kav_km;
end
end
suspend;
end
CREATE TABLE COMPONENTES_KM (
CKM_TIPO CHAR2 NOT NULL /* CHAR2 = CHAR(2) */,
CKM_NUMERO CHAR6 NOT NULL /* CHAR6 = CHAR(6) */,
CKM_DATA DATA NOT NULL /* DATA = DATE */,
CKM_KM INTLONGO NOT NULL /* INTLONGO = INTEGER */,
CKM_KM_ACUMULADA INTLONGO NOT NULL /* INTLONGO = INTEGER */,
CKM_PLACA CHAR7 NOT NULL /* CHAR7 = CHAR(7) */
);
Este é um dos exemplos que comentei que uma tabela utiliza campos calculados
chamando select em SP e Tabelas.
Alexandre C Souza
----- Original Message -----
From: "Hernando" <mecanvpcusto em mecan.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, October 08, 2004 10:39 AM
Subject: Re: [firebase-br] Campo calculado usando outra tabela
> dá pra enviar um exemplo de campo calculado dos exemplos que vc citou
> abaixo?
>
>
> Hernando.
>
>
> CPD (Borborema-Imperial Transportes Ltda) escreveu:
>
> >Eu utilizo desde da versão 1.0 e nunca tive problemas e olha que meus
campos
> >calculados são da seguinte forma :
> >
> >* Com select em outra tabela
> >* Com select em SP
> >* Com select em Tabela e SP
> >
> >O Detalhe do Restore é que vc não pode informar a opção de Commit a cada
> >Recuperação do Metadados das tabelas e sim no final do Metadados, isot é,
> >simplismente não colocar a opção de Commit no fim das tabelas.
> >
> >O meu Banco já Chegou a Casa dos + de 1GB e tudo OK.
> >
> >Alexandre C Souza
> >
> >----- Original Message -----
> >From: "Carlos H. Cantu" <listas em warmboot.com.br>
> >To: "FireBase" <lista em firebase.com.br>
> >Sent: Thursday, October 07, 2004 5:47 PM
> >Subject: Re: [firebase-br] Campo calculado usando outra tabela
> >
> >
> >
> >
> >>Apesar de existir essa possibilidade, até hoje eu nunca vi alguém
> >>dizer que teve esse problema.
> >>
> >>[]s
> >>Cantu
> >>http://www.warmboot.com.br
> >>FireBase - http://www.FireBase.com.br
> >>
> >>HdSS> Amigos,
> >>
> >>HdSS> Lembro-me de que há algum tempo falou-se na lista
> >>HdSS> sobre campos calculados usando seleção de outras tabelas.
> >>HdSS> A posíbilidade de haver erro no Restore continua no FB 1.5?
> >>HdSS> Estou com uma situação de tabela mestre-detalhe que
> >>HdSS> este recurso ajudaria imensamente.
> >>HdSS> Se alguém puder ou quiser se manifestar, eu agradeço.
> >>
> >>HdSS> Obs.: De qualquer forma estou realizando testes e os
> >>HdSS> reportarei à lista posteriormente.
> >>
> >>HdSS> Obrigado.
> >>
> >>HdSS> Hugo dos Santos Saraiva.
> >>HdSS> ______________________________________________
> >>HdSS> FireBase-BR (www.firebase.com.br)
> >>HdSS> Para editar sua configuração na lista, use o endereço
> >>HdSS> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> >>
> >>
> >>______________________________________________
> >>FireBase-BR (www.firebase.com.br)
> >>Para editar sua configuração na lista, use o endereço
> >>
> >>
> >http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> >
> >
> >
> >
> >______________________________________________
> >FireBase-BR (www.firebase.com.br)
> >Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> >
> >
> >
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br)
> Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>
Mais detalhes sobre a lista de discussão lista