Error: Insufficient Permissions

Hallo,

ich möchte Einträge in einer SDE-Tabelle ändern, aber wenn ich mein Programm laufen lasse, dann bekomme ich in der Zeile " pCursor.UpdateRow pRow" ein run-time error -2147216100(8004151c) Insufficient permissions.

weiß irgendjemand wodran das liegen könnte? nachfolgend noch ein bisschen mehr SourceCode.

Viele Grüße,
Imke Dörge
----------------
Dim pSDEFeatWsp As IFeatureWorkspace
Dim pSDEWsp As IWorkspace
Dim pSDEWspEdit As IWorkspaceEdit
Dim pTable As ITable
Dim pQueryFilter As IQueryFilter
Dim pCursor As ICursor
Dim pRow As IRow

' SDEWorkspaceFactory erzeugen
Set pSDEFact = New SdeWorkspaceFactory

'Setzen der Parameter für die SDE-Verbindung in globale Variable g_pPropSet
Call Modul_SDE_connect.SDE_connect_param1

' Verweis auf die IWorkspace-Schnittstelle --> Verbindung herstellen
Set pSDEFeatWsp = pSDEFact.Open(g_pPropSet, hWnd)

'auf Tabelle zugreifen
Set pTable = pSDEFeatWsp.openTable(SDE_IMKE.Tabelle1)

'QueryFilter erzeugen und Auswahlbedingung formulieren
Set pQueryFilter = New QueryFilter
pQueryFilter.WhereClause = "REFERENZINFO = " & 125

'Cursor über alle ausgewählten Objekte
Set pCursor = pTable.Search(pQueryFilter, False)
Set pRow = pCursor.NextRow
Set pCursor = pTable.Update(pQueryFilter, False)
Set pRow = pCursor.NextRow


With pRow
.Value(.Fields.FindField("REF_LG_MITTE")) = Mitte_geo.X
.Value(.Fields.FindField("REF_BG_MITTE")) = Mitte_geo.Y

End With

pCursor.UpdateRow pRow
Ich bin nicht ganz sicher, aber ich glaube eine SDE-Tabelle kann man nur innerhalb einer Editiersession ändern, also pEditor.StartEditing, pEditor.StartOperation und so weiter.

Wieso machst du einen SearchCursor und überschreibst ihn gleich wieder?
Die editiersession hab ich eingefügt, und das Mit dem SerchCursor ist natürlich quatsch, da hast du vollkommen recht, hab einige teile aus dem Code rausgelassen, in denen was anderes passiert, was aber unwichtig hierfür ist und dabei muss ich die doppelte erzeugung von pRow übersehen haben.

Kann es sein, dass man nur seine eigenen Tabellen editieren kann? ich wollte nämlich auf eine "fremde" zugreifen. (SDE_Verbindung erstellt mit SDE_Anton und editieren von SDE_Berta.TabelleXY) denn wenn ich auf meine eigene Tabelle zugreife funktioniert es.

Viele Grüße, Imke
> Kann es sein, dass man nur seine eigenen Tabellen editieren kann?...

Klar, das kann natürlich sein. Es hängt davon ab, wie in der Datenbank die Rechte vergeben werden.