premetto che ho già postato il quesito sul Forum ASP in quanto sto costruendo l'applicativo sia in VB6 che in ASP per utilizzo desktop e/o con interfaccia web. Per tale motivo, spero non violando alcunchè, mi permetto di riproporre il problema quì, stante l'attuale stallo dello stesso:
Ecco il problema:
Ho un database Access che è composto dai seguenti campi:
ID --> contatore
IDTESSERA -->
COGNOME --> testo
NOME --> testo
DATAISCRIZ -->
ATTIVITAPRINCIPALE -->
ATTIVITASECONDARIA -->
MODALITAPAGAMENTO -->
DATAULTIMOPAGAMENTO -->
Tale db è suscettibile di modifiche, mi correggo, di aggiunte di nuove situazioni ( variazioni ) che riguardano ad esempio un socio già iscritto. Per cui, il socio ROSSI Mario, che aveva pagato la penultima retta mensile in OTTOBRE, ora la RINNOVA pagando la retta di Novembre. Nel far ciò, non aggiorno il vecchio record di ottobre, ma ne aggiungo uno nuovo ( con tutti i campi aventi medesimo valore di quello di ottobre, tranne che per la data di pagamento che sarà NOVEMBRE ). Aggiungo un nuovo record, e non sovrascrivo, per permettere all'utilizzare dell'applicativo di effettuare "lo storico" per mese, a ritroso. L'utilizzatore dell'applicativo, per verificare l'ultimo pagamento effettuato da ROSSI Mario interroga semplicemente il COGNOME ed ottiene il solo ultimo record inserito a nome di ROSSI MArio tessera nr.5 (Cioè quello dell'ultimo pagamento). Faccio questo mediante tale codice:
strSQL = "SELECT * FROM last WHERE COGNOME = '" & strDigitato & "'"
Set RS = DBArchivio.OpenRecordset(strSQL)
RS.MoveLast
dove digitato è la variabile contenente la stringa-cognome digitata nella casella di testo txtDigitato.
E fin quì tutto bene. Il proble sorge quando esistono due persone che hanno lo stesso cognome, ma che evidentemente sono soggetti diversi, con un nome di battesimo diverso e soprattutto non un numero di TESSERA diverso. La query così fatta, mi continua a restituire solo l'ultimo record di uno solo dei due signor ROSSI esistenti. Ho provato a togliere RS.Movelast e ottengo come risultato tutti record ( ma proprio tutti, mentre a me serve solo l'ultimo ) di entrambi i signor Rossi. Dunque, a me occorre tirar fuori solo l'ulitmo record ( l'ultimo pagamento cioè ) di entrambi i signor Rossi, senza tutti gli altri record relativi ai mesi passati. Come faccio? Se reinserisco RS.Movelast, mi dà si l'ultimo record, ma solamente quello di uno dei due signor Rossi.
Spero di essere stato chiaro e scusate il poema. Grazie dell'aiuto!