Página 1 de 1
TABELAS COM VIGÊNCIA
Enviado: 22 Out 2004 16:09
por ROMARIO
Caros Colegas.
A dias atras postei um tópico com o mesmo assunto. Devido a minha pouca experiencia no assunto não ficou claro. Por isso volto para maiores escarescimentos se possível.
Minnha dúvida:
Tenho uma tabela que vigora de 02/01/2004 até 28/02/2004 com os seguintes dados, por exemplo:
cod valor desc tipo
001 200,00 10 A
002 500,00 15 B etc. c/+- 20 registros
Depois tenho a mesma tabela só que com vigencia de 01/03/2004 até 31/05/2004.
Como faço uma rotina que busque o valor 500,00 (registro nr. 02) dentro da tabela que vigora de 02/01/2004 até 28/02/2004.??
Enviado: 22 Out 2004 16:26
por evolver
Sem nenhum campo de data nem imagino como possa ser feito...
Coloca um campo data nesse troço e procura por valor = 500 .and. ( data >= ctod("02/01/2004") .and. data <= ctod("28/02/2004"))
Enviado: 22 Out 2004 18:09
por ROMARIO
Evolver.
Concordo. Mas como seria os campos data.?? em cada registro teria que ter um campo datainicial e um campo datafinal ??
Desculpe a ignorancia.
Obrigado.
Romario
Enviado: 22 Out 2004 19:27
por evolver
Só precisa de um campo com a data do registro do valor
cod valor desc tipo data
001 200,00 10 A 20/01/2004
002 500,00 15 B 12/02/2004 etc. c/+- 20 registros
Aplicando dai o código que te passei ele localiza direito.
Vou colocar melhor o código
valor = valor_a_localizar .and. ( data >= data_inicial .and. data <= data_final)
O principal pra delimitar quais as datas a serem procuradas estão entre parenteses.
Enviado: 23 Out 2004 00:37
por Tim9
Olá Romário!
Tem uma coisa que antecede à Programaçao que se chama Modelagem de Dados, ou seja, como vamos armazenar as informações e como vamos encontrá-las. Existe uma fase do Processamento de Dados que é o Desenho tanto do projeto quanto os das tabelas.
Fica difícil responder a dúvidas como a sua porque a gente não sabe o que exatamente vc quer.
Vamos supor que existem tabelas com vigências mensais as quais vou chamá-las de TabJan, TabFev, TabMar...TabDez
Agora, o que eu quero? E é exatamente aqui que o bicho pega.
Posso querer várias coisas, por exemplo:
1) Quero saber em qual tabela o COD 02 TEM VALOR = 500,00.
2) Quero saber Qual COD tem Valor = 500,00 e em qual tabela ele se encontra
3) Poderia continuar simulando várias situações, mas basta conhecer aquela que vc está buscando. Coloque aqui que eu ou outro colega daqui terá o maior prazer em sanar a sua dúvida.
Mas pra não passar em branco vamos fazer um Algorítimo da situção (1) acima, bem light, bem básico. (Que as feras daqui não riam de mim)
mas é só para entendimento de tudo que falei antes:
=============================================
cCod="02"
Inicia Loop
Procura cCod na TabJan
Se Valor = 500 Sai do Loop
Procura cCod na TabFev
Se valor = 500 Sai do Loop
Procura cCod na TabMar
Se valor = 500 Sai do Loop
Mensagem = "Não encontrado COD 02 com Valor = 500,00"
Fim do Loop
=========================================
Espero ter ajudado, pois senti que a tua dificuldade é em expor o que vc deseja fazer.
Me perdoem os catedráticos do CLIPPER pelo básico.
Abraço geral na galera.