Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Access vba e COM
martedì 04 luglio 2006 - 12.17
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
stungo
Profilo
| Newbie
1
messaggi | Data Invio:
mar 4 lug 2006 - 12:17
probabilmente non otterrò risposta, comunque ci provo lo stesso...
allora sto creando un editor in VBA con piattaforma COM. il mio editor deve gestire un DB di tabelle in access salvate in un MDB. la gestione comprende le 3 azioni classiche di cancellazione, modifica e inserimento.
Per quanto riguarda modifica e cancellazione non ho avuto problemi di nessun tipo.
Per quanto riguarda invece l'inserimento (che tra le 3 operazioni dovrebbe essere la più semplice non coinvolgendo cursori) ho denotato un problema.
Il mio codice è il seguente:
Dim pFact As IWorkspaceFactory
Dim pFW As IFeatureWorkspace
Set pFact = New AccessWorkspaceFactory
Set pFW = pFact.OpenFromFile("C:\tesi\stefano.mdb", 0)
Dim pT As ITable
Dim pC As ICursor
Dim pR As IRow
Set pT = pFW.OpenTable("Funzioni")
Set pR = pT.CreateRow '<----------------- riga in cui si ferma il debug
pR.Value(pT.FindField("nome_funzione")) = Me.NomeFunz
pR.Value(pT.FindField("tipo_funzione")) = Me.FunzSel
pR.Value(pT.FindField("layer")) = Me.LayerSel
pR.Value(pT.FindField("layer_supporto")) = Me.LayerSupSel
pR.Value(pT.FindField("attributo_supporto")) = Me.AttrSel
pR.Value(pT.FindField("condizione_attributi")) = Me.CondAttr
pR.Value(pT.FindField("operazione_geo")) = Me.operazioneGeo
pR.Value(pT.FindField("valore_geo")) = Me.valoreGeo
pR.Value(pT.FindField("supporto_geo")) = Me.supportoGeo
pR.Store
l'errore che mi risulta è il seguente:
"runtime error
-2147467359(80004005)elemento non trovato in questo insieme"
in teoria, secondo il mio professore (sono in tesi) questo errore non è possibile nel punto in cui me lo da (...)
girovagando per internet ho scoperto che l'errore compare in molteplici casi e ne ho trovato uno che più o meno si addice al mio problema:
Cannot add to or update database records
solution
Rename field(s), or delete and recreate field.
Set all field types to "text." Use short field names, with no
underscores, eg "curMonth." Be sure not to use SQL reserved words.
ho provato a fare ciò che mi dice la soluzione e non è cambiato nulla.
posto che:
-il database l'ho buttato e ricreato da 0 e non è cambiato nulla.
-gli attributi li ho rinominati e non è cambiato nulla.
-i path sono giusti in quanto li sfrutto anche per altre operazioni (cancellazione e modifica)
-il nome tabella è giusto in quanto anch'esso è usato in altri punti del programma
-la procedura sembra scritta in modo corretto (o almeno così pare)
vi chiedo un aiuto.
a oggi sono 5 giorni che sono fermo nel solito punto. non ho assolutamente idea di cosa posso cambiare per fare funzionare la cosa.
grazie per l'attenzione.
STEFANO
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !