Ajuda com algoritmo

6 respostas
Francisco_Miguel

Galera preciso da ajuda de voces para construir um algoritmo, seguinte tenho um registro no banco com um interlavo de hora, por exemplo 14:00 a 16:00hs, quero poder inserir um novo registro com novo intervalo de hora que esteja dentro do periodo de tempo que ja esta no banco.

Me ajudemm!!!

6 Respostas

D

Hail
Coloca o código do que você fez até agora, fica melhor pra te ajudar.

G

Bom dia,
Deixe me ver se entendi:
1 - Vc tem um intervalo de tempo e quer gravar um registro somente se o horário atual estiver entre o horário do registro do banco?
ou
2 - Vc tem um intervalo de tempo e quer gravar independente da hora atual qualquer horário que esteja entre aquele tempo?

Qual das duas?
flw.

Francisco_Miguel

eu tenho um intervalo de tempo ja no banco, vou buscar este registro e so vou inserir um novo intervalo de tempo, se este novo intervalo de tempo estiver dentro da faixa de tempo do registro que busquei no banco.

B
Quer um algoritmo para decidir de o período está dentro do outro?
Date dataInicialBanco;
Date dataFinalBanco;

Date dataInicial;
Date dataFinal;

// preencher os dados
// (...)

// data inicial antes da data permitida
if (dataInicial.before(dataInicialBanco))
  // erro!

// data final depois da data final permitida
if (dataFinal.after(dataFinalBanco))
  // erro!

// data inicial depois da data final
if (dataInicial.after(dataFinal))
  // erro!

// a partir daqui, tudo certo
Francisco_Miguel

Mas seguinte estou trabalhando com horas nao com data, e a hora inicial e final esta no banco como NUMBER, fiz o mapeamento destes 2 dados para o tipo LONG, acho que fazendo como o colega mencionou acima nao daria muito certo??

G

Entendi,
Não entendi a sua dúvida no algoritmo, mas ficaria assim:

Recupera os dados do BD.
Se dataInicialBD < dataEntrada E dataEntrada < dataFinalBD então
GRAVAR NO BD O REGISTRO
Senão
NÃO GRAVAR NO BD
Fim.

Criado 23 de julho de 2009
Ultima resposta 23 de jul. de 2009
Respostas 6
Participantes 4