ошибка создания Dataset в *.mdb

0 голосов
спросил 31 Май, 06 от sschainik (4,900 баллов) в категории Программные продукты Esri
Может ли кто нибудь подсказать почему, следующий код создает базу "c:\temp\1\1myBase.mdb" со всеми GDB таблицами, но выдает ошибку при создании Dataset в этой базе
 
Dim pWorkspace As IWorkspace
Dim pFact As IWorkspaceFactory
Set pFact = New AccessWorkspaceFactory
Dim pPropset As IPropertySet
Set pPropset = New PropertySet
Dim pWorSpaceName As IName
Set pWorSpaceName = pFact.Create("c:\\temp\\1", "1myBase", pPropset, 0)
Set pWorkspace = pWorSpaceName.Open
Dim pFeatureWorkspace As IFeatureWorkspace
Set pFeatureWorkspace = pWorkspace
Dim pFeatureDataset As IFeatureDataset
Set pFeatureDataset = pFeatureWorkspace.CreateFeatureDataset ("mySet", Nothing) 'эта строка вызывает ошибку

2 Ответы

0 голосов
ответил 31 Май, 06 от Alexander1 (32,520 баллов)

А где spatial reference, хотя бы unknown? В ArcObjects Developer Help есть пример "Create a new geodatabase dataset":

Public Function createDataset(Name As String, workspace As esriCore.IWorkspace, _
                 Optional pSR As esriCore.ISpatialReference) As esriCore.IFeatureDataset
'' createDataset:  creates a dataset in a workspace
'' ISpatialReference is optional but should generally be defined by the caller
''
  Dim pFeatureWorkspace As esriCore.IFeatureWorkspace
  On Error GoTo EH
 
  Set createDataset = Nothing
  If workspace Is Nothing Then Exit Function
 
  ' if the spatial reference is not passed in, then create an unknown one here
  If (pSR Is Nothing) Or IsMissing(pSR) Then
    Set pSR = New esriCore.UnknownCoordinateSystem
    pSR.SetDomain 0, 21474.83645, 0, 21474.83645
    pSR.SetFalseOriginAndUnits 0, 0, 100000
    pSR.SetMDomain 0, 21474.83645
    pSR.SetZDomain 0, 21474.83645
    pSR.SetZFalseOriginAndUnits 0, 100000
  End If
 
  Set pFeatureWorkspace = workspace
 
  ' create the feature dataset
  Set createDataset = pFeatureWorkspace.CreateFeatureDataset(Name, pSR)
 
  Exit Function
EH:
    MsgBox Err.Description, vbInformation, "createDataset"
End Function

0 голосов
ответил 31 Май, 06 от sschainik (4,900 баллов)

Спасибо!

Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...