ciao ragazzi,
ho questa tabella con i seguenti dati:
Salviamo i seguenti dati nella tabella:
come potete notare il terzo inserimento ha come data di arrivo il 26 ottobre anzichè il 27 in quanto supponiamo che l'operatore si sia dimenticato di inserire il record ieri.
A questo punto devo registrare le date di partenza, per far ciò ho questa stored:
ALTER PROCEDURE [dbo].[InsPartenzeC59_New]
(
@Codalbergo Int,
@CodComAlbergo Int,
@idstato Int,
@idcomune Int,
@idprovincia Int,
@idgruppo Int,
@Datapartenza SmalldateTime
)
AS
BEGIN
WITH CTE_GetID AS
(
SELECT MIN(iddb) AS id
FROM dbo.ARCHIVIO_MOV_NEW
WHERE codalbergo=@codalbergo
and codcomalbergo=@codcomalbergo
and idstato = @idstato
and idcomune = @idcomune
and idprovincia = @idprovincia
and idgruppo = @idgruppo
and datapartenza Is Null
)
UPDATE T
SET T.datapartenza = @datapartenza
From Archivio_mov_new As T
JOIN CTE_GetID AS CTE
ON T.iddb = CTE.id
Where T.codalbergo=@codalbergo
And T.codcomalbergo=@codcomalbergo
And T.idstato=@idstato
And T.idcomune=@idcomune
And T.idprovincia=@idprovincia
And T.idgruppo=@idgruppo
And T.datapartenza Is Null
END
questa stored eseguo l'aggiornamento del campo datapartenza in quanto quando si effettuano delle partenze, si prendono sempre i record con dataarrivio + vecchia e per far ciò devo lavorare sulla colonna Iddb che è un progressivo
auto-increment.
Però nella situazione sopracitata se io dovessi far partire due record in data 27 Ottobre dovrei aggiornare la colonna datapartenza del record che ha la dataarrivo = 26 ottobre ed un record che ha datapartenza 27 ottobre.
Fino quì ci siete?
Ecco il mio problema sta qui in quanto se vedete la stored se utilizzo come confronto la colonna iddb mi prende il record + vecchio inserito ma nel mio caso non è quello con dataarrivo 26 ottobre in quanto rappresenta il record + recente.
Se invece inserisco Min(dataarrivo) ecc...non mi funziona perchè se faccio aprtire due record la stored mi aggiorna sia la data del 26 ottobre che le 2 date del 27 ottobre.
Ora come posso fare?
Spero di essere stato abbastanza chiaro.
ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com