Ir para o conteúdo
Luis Caçador

Editar registo antigo quando um novo é introduzido

Mensagens Recomendadas

Luis Caçador

Tenho uma tabela para registo e stock de combustível tenho tudo mais ou menos orientado só preciso de resolver o problema dos Km’s tenho uma tabela com registo de Km´s iniciais e finais.

Os Km´s iniciais introduzo no registo inicial com a matricula, mas os Km’s finais queria fazer a introdução automática ao fazer um novo registo  de Km´s com essa matricula,

Assim sendo o novo registo de Km’s iniciais do segundo registo passa a ser os Km´s finais do registo anterior.

Obrigado

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
M6

Se bem percebi queres fechar um registo de KMs e abrir outro usando o mesmo número de KMs, é isso?


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Luis Caçador

Sim é isso que pretendo

Ao fazer um novo Registo editar o primeiro com os mesmos Km

obrigado

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Luis Caçador

Não sei, estes valores são passados pelo visual basic.

Depois consigo passar para o VB não sei…

desculpa

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
acao

não deves de necessitar desse campo porque o valor do registo seguinte é o fecho do registo anterior ou seja o fim da viagem.

claro que para obteres o inicio e fim dos kms tens que pesquisares dois registos,

mas para atualizares os registos também tens que pesquisares 2 registos

e para criares novo registo tens que pesquisares o ultimo registo.

se optares por o registo seguinte é o fecho dos kms, tens a db mais pequena.

cumpts acao

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Luis Caçador

Não sei se me expliquei bem ou eu não entendi,

O registo de Km são atribuídos a matriculas ou seja o registo anterior e ou seguinte pode ter matriculas diferentes os km’s finais tem que ter busca pela matricula

Fiz-me entender

Obrigado

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
M6

O que queres fazer é simples e pode ser resolvido de várias formas.

A que acho mais simples é teres um store procedure que recebe os parametros para criar o novo registo e verifica se existe um registo anterior relativo ao veiculo/matricula cujo campo dos KmsFinais está a null. Caso exista esse registo, pega no valor dos KmsIniciais usados na criação do novo registo e atualiza o registo anterior.

Obviamente a aplicação terá de se adaptar para passar a chamar este store procedure em vez de fazer um insert into direto na tabela.

Editado por M6

10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Luis Caçador

A ideia é essa, mas não sei fazer.

Pode-me ajudar a dar um exemplo, fico grato

Os campos que tenho são:

Id, Matricula, Data, Kms_Inicial, Kms_Final

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
M6

Tens aqui um tutorial que explica como criares store procedures: https://www.mssqltips.com/sqlservertutorial/160/sql-server-stored-procedure-tutorial/

Basta acompanhares para perceber como se faz.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.