Access vba e COM

martedì 04 luglio 2006 - 12.17

stungo Profilo | Newbie

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
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 !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5