Quantcast
Channel: Forums - ArcObjects SDKs
Viewing all articles
Browse latest Browse all 1374

Geoprocessing SDE Feature Classes

$
0
0
I'm trying to append two SDE feature classes together. I've been able to piece together the following code with no luck. My geoprocessor appears to be failing I believe because my feature classes are not wrapped in a strongly typed RCW, but I've not had any luck figuring out how to accomplish this (or I may be totally out in left field with what I'm trying to do). Any thoughts would be greatly appreciated.

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;


using ESRI.ArcGIS.esriSystem;
using ESRI.ArcGIS.DataManagementTools;
using ESRI.ArcGIS.Geoprocessing;
using ESRI.ArcGIS.Geoprocessor;
using ESRI.ArcGIS.DataSourcesGDB;
using ESRI.ArcGIS.Geodatabase;

namespace T
{
class Program
{
private static LicenseInitializer m_AOLicenseInitializer = new T.LicenseInitializer();

[STAThread()]
static void Main(string[] args)
{
//ESRI License Initializer generated code.
m_AOLicenseInitializer.InitializeApplication(new esriLicenseProductCode[] { esriLicenseProductCode.esriLicenseProductCodeArcInfo },
new esriLicenseExtensionCode[] { });

//ESRI License Initializer generated code.
//Do not make any call to ArcObjects after ShutDownApplication()

// Get geoprocessor
ESRI.ArcGIS.Geoprocessor.Geoprocessor gp = new ESRI.ArcGIS.Geoprocessor.Geoprocessor();
gp.AddOutputsToMap = false;

// Get append tool
ESRI.ArcGIS.DataManagementTools.Append app = new ESRI.ArcGIS.DataManagementTools.Append();

IPropertySet propertySet = new PropertySetClass();
propertySet.SetProperty("SERVER", "xxxxx");
propertySet.SetProperty("INSTANCE", "xxxxx");
propertySet.SetProperty("DATABASE", "xxxxx");
propertySet.SetProperty("USER", "xxxxx");
propertySet.SetProperty("PASSWORD", "xxxxx");
propertySet.SetProperty("VERSION", "xxxxx");

// Use activator
Type factoryType = Type.GetTypeFromProgID("esriDataSourcesGDB.SdeWorkspaceFactory");
IWorkspaceFactory workspaceFactory = (IWorkspaceFactory)Activator.CreateInstance(factoryType);
//workspaceFactory.Open(propertySet, 0);

//IWorkspaceFactory workspaceFactory = new SdeWorkspaceFactoryClass();

IWorkspace workspace = (IWorkspace)workspaceFactory.Open(propertySet, 0);

IFeatureWorkspace pFeatureWorkspace = (IFeatureWorkspace)workspace;

//IFeatureWorkspace pFeatureWorkspace = workspaceFactory.Open(propertySet, 0) as IFeatureWorkspace;

ESRI.ArcGIS.Geodatabase.IFeatureClass inputClass = (IFeatureClass)pFeatureWorkspace.OpenFeatureClass("sde.DBO.Tester2Updater");
ESRI.ArcGIS.Geodatabase.IFeatureClass targetClass = (IFeatureClass)pFeatureWorkspace.OpenFeatureClass("sde.DBO.Tester2Updater");

//MessageBox.Show(inputClass.ShapeType.ToString());

IVariantArray array = new VarArrayClass();
array.Add(inputClass);
array.Add(targetClass);
array.Add("NO_TEST");

//IVariantArray array = new VarArrayClass();
//array.Add(@"D:\ProjectData\TestData2\test2.shp");
//array.Add(@"D:\ProjectData\TestData1\test1.shp");
//array.Add("NO_TEST");

gp.Execute("Append_management", array, null);

m_AOLicenseInitializer.ShutdownApplication();
}
}
}

Viewing all articles
Browse latest Browse all 1374

Trending Articles