Добрый день! Может кто сталкивался с такой ситуацией?
Вызываю новый слой (записей в нем нет). По заданным координатам создаю полигон. Когда хочу записать в слой - выдает ошибку в подчеркнутых строках, т.е. не хочет создать новую запись. Что сделано не правильно? Этого не происходит, если в слое есть хоть один полигон.
------------------------------------
Set pWorkspaceFactory = New ShapefileWorkspaceFactory
Set pFeatureWorkspace = pWorkspaceFactory.OpenFromFile(shpPath, 0)
Set pFeatureLayer.FeatureClass = pFeatureWorkspace.OpenFeatureClass(shpStr)
Dim wEdit As IWorkspaceEdit
Set wEdit = pFeatureWorkspace
wEdit.StartEditing (True)
wEdit.StartEditOperation
Dim pGonColl As IPointCollection
Dim xyPoint() As IPoint
ReDim xyPoint(kk) As IPoint
Set xyPoint(0) = New esriGeometry.Point
xyPoint(0).PutCoords pRow.Value(pRow.Fields.FindField("X")), pRow.Value(pRow.Fields.FindField("Y"))
'
'---------------------------
Dim pFeature As IFeature
Dim pTopo As ITopologicalOperator
Dim kol, ii As Integer
Dim pPol As IPolygon
ii = 1
kol = 0
For i = 1 To (kk - 1)
Set xyPoint(ii + kol) = New esriGeometry.Point
xyPoint(ii + kol).PutCoords pRow.Value(pRow.Fields.FindField("X")), pRow.Value(pRow.Fields.FindField("Y"))
-------------
Set pPol = New Polygon
Set pGonColl = pPol
Set pFeature = pFeatureLayer.FeatureClass.CreateFeature
Set pTopo = pPol
pTopo.Simplify
Set pFeature.Shape = pTopo
pFeature.Value(pFeature.Fields.FindField("Id_1")) = "1" pFeature.Value(pFeature.Fields.FindField("Id_2")) ="2" pFeature.Store
End If
wEdit.StopEditOperation
wEdit.StopEditing (True)
Заранее благодарю за помощь