PDA

View Full Version : VB6 metodo REFRESH !!!! please please please


bloobdool
19-04-2004, 09:58
salve a tutti voi, vi ringrazio giā l'attenzione, io ho il seguente problema: (non sono capace ad effettuare aggiornameti nelle tabelle di un database)!!!


' Dichiarazione del database
Dim ARCH As Database

' Dichiarazione del percorso del database
Dim WRK_DB As Workspace

' Dichiarazione delle tabelle del database usate nel form
Dim t_TabTrat As dao.Recordset



E NEL FORM LOAD METTO QUESTO:

AperturaDataBase:
Set WRK_DB = DBEngine.Workspaces(0)
On Error GoTo DATABASE_NO_ONLINE

Set ARCH = WRK_DB.OpenDatabase(PERCORSO_DB)
On Error GoTo TABELLA_NON_PRESENTE

AperturaTabellaTrattamenti:
NOME_TABELLA = "TRT Trattamenti"

Set t_TabTrat = ARCH.OpenRecordset(NOME_TABELLA)
On Error GoTo 0

.--.-.-.-.-.-.-.--.-.-.-.-.-.-.-.--.-.-.-.-.-.-.-.-.-.-.-.-.-.--.-.-.-.-...-.-.--.-.-.--.-.

Fin qui tutto OK!!

ma quando vado a fare delle procedure sul recordset

t_ TabTrat.addnew
t_ TabTrat!codice=text1.text
t_ TabTrat!nome=text2.text
t_ TabTrat.update

MI SERVIREBBE EFFETTUARE IL REFRESH CHE NON CE' ((((t_TabTrat.refresh))))
perchč poi una volta inerita una cosa devo farne altra di seguito e non riesce a prendermi l'ultimo inserimento




ciao e grazie di cuore a quelli che risponderanno!!!

cisky
19-04-2004, 12:35
Devi utilizzare il metodo Requery (... o Resync)

bloobdool
19-04-2004, 13:56
ciao e grazie per l'interessamento,

ho provato a mettere t_TabTrat.requery per effettuare un aggiornamento ma mi dice:


ERRORE DI RUN-TIME '3251'

OPERAZIONE NON SUPPORTATA PER QUESTO TIPO DI OGGETTO


sai il motivo ???


ciao e grazie ancora

cisky
21-04-2004, 12:41
Un recordset DAO supporta il metodo Requery solo se il metodo Restartable ritorna il valore True.

Prova ad eseguire rs.Restartable con il tuo recordset e vedrai che restituirā False (... almeno in teoria)

Il recordset non č aggiornabile perchč si basa sull'apertura diretta di una tabella.In questo caso per aggiornare i dati del recordset č necessario riaprire il recordset

................................

Proprietā Restartable

Restituisce un valore che indica se un oggetto Recordset supporta il metodo Requery, che esegue di nuovo la query su cui si basa l'oggetto Recordset.

Valori restituiti

Il valore restituito č un tipo di dati Boolean che č True se l'oggetto Recordset supporta il metodo Requery. Gli oggetti Recordset di tipo tabella restituiscono sempre False.

Osservazioni

Controllare la proprietā Restartable prima di utilizzare il metodo Requery su un oggetto Recordset. Se la proprietā Restartable dell'oggetto č impostata a False, utilizzare il metodo OpenRecordset sull'oggetto QueryDef sottostante per eseguire di nuovo la query.