|
POST
|
David, I have some follow-up questions. 1) I assume you are using traditional versioning, and not branch versioning, right? 2) You're trying to run this as a Pro add-in, right? I'm suspicious that your threading routines could be causing an issue. These geodatabase routines are designed for use on the MCT. In Pro, this means putting them inside QueuedTask.Run. --Rich
... View more
01-27-2020
09:35 AM
|
0
|
1
|
1964
|
|
POST
|
Hi David, Do you have a short coding snippet you could share? --Rich
... View more
01-23-2020
10:08 AM
|
2
|
3
|
1964
|
|
POST
|
Hi Jimmy, I've reviewed all of your code and cannot find anything wrong. You shouldn't have to reconcile to get version differences (and of course, if you do, you'll get a different list). Some questions: Can I assume you are using traditional versioning, and not branch versioning? Is the version you are trying to get differences for a direct child of Default? (as opposed to a grand-child) --Rich p.s. This line of code is going to create, but not dispose, of a large number of Version objects, along with the VersionManager: var defaultversion = versiongdb.GetVersionManager().GetVersions().First(v => v.GetParent() == null); It should have no impact whatsoever on your test results, but I recommend using the snippet found here. Again, this is completely independent from the results you're seeing- just noticed it and thought I would mention it.
... View more
01-21-2020
03:50 PM
|
0
|
2
|
6253
|
|
POST
|
John, I haven't analyzed all of your code, but this loop in AppendOptionAsync is going to keep locks around: if (sATbl.GetTable().GetDatastore().GetPath().ToString().Contains(selGDBitem))
{
removalStandAloneTables.Add(sATbl);
sATbl.GetTable().Dispose();
} Here's a better way to do this: using (Table myTable = sATbl.GetTable())
using (Datastore myDatastore = myTable.GetDatastore())
{
if (myDatastore.GetPath().ToString().Contains(selGDBitem)) {
removalStandAloneTables.Add(sATbl);
}
}
Here I'm disposing both the table and the datasource. Likewise, this code isn't doing what you want it to: foreach (var t in removalStandAloneTables)
{
t.GetTable().Dispose();
}
removalStandAloneTables.First().GetTable().GetDatastore().Dispose();
The loop portion is getting a table pointer, and then removing it (no effect whatsoever). The last line is getting a table point, then getting a datastore pointer, then disposing the datastore pointer (leaving the table pointer behind). You can remove this entire code block. There's more documentation on how to properly dispose of geodatabase objects here. --Rich
... View more
01-17-2020
08:41 AM
|
2
|
1
|
3097
|
|
POST
|
I haven't analyzed the entire code snippet, but this line: var dispData = removalStandAloneTables.First().GetTable().GetDatastore().GetPath().AbsolutePath;
} Is going to create a Table and a Geodatabase object that are not disposed. They could keep a lock until .NET garbage collection runs.
... View more
01-16-2020
09:52 AM
|
0
|
4
|
3097
|
|
POST
|
Than is on the right track. The Geodatabase constructor and the call to Geodatabase.OpenDataset<Table> at the end of the snippet should also be inside a QueuedTask.Run block. The call to OpenTablePane should not. Try the following: if (!ProcessingReuslt.IsFailed)
{
Trace.WriteLine("Success");
var insTbl;
await QueuedTask.Run(()=>
{
using (Geodatabase geodatabase = new Geodatabase(new FileGeodatabaseConnectionPath(new Uri(gPath))))
{
using (Table table = geodatabase.OpenDataset<Table>(inTbl))
{
IStandAloneTableFactory tableFactory = StandaloneTableFactory.Instance;
insTbl = tableFactory.CreateStandaloneTable(table, MapView.Active.Map, inTbl);
}
}
}
FrameworkApplication.Panes.OpenTablePane(insTbl);
}
This will open the table on the MCT (geodatabase thread) and open the table pane on a UI thread. I hope this helps, --Rich
... View more
01-16-2020
09:45 AM
|
1
|
2
|
3230
|
|
POST
|
Hi Star, Yes, this is included with the Export Subnetwork geoprocessing tool. You can call it from a geoprocessing model, Python, or by using the geoprocessing API in the Pro SDK. --Rich
... View more
01-16-2020
09:18 AM
|
0
|
1
|
3840
|
|
POST
|
Hi Bob, It's buried in a utility network sample, but check out this C# file: arcgis-pro-sdk-community-samples/CategoriesComboBox.cs at master · Esri/arcgis-pro-sdk-community-samples · GitHub Starting at line 192 is some code to create a table in the geodatabase using the geoprocessing APIs. Starting at line 282, the code shows how to create a `StandaloneTable` from a geodatabase table. Starting at line 292, the code shows how to open a table view of that standalone table. I hope this helps some. We are actively working on adding some simple DDL operations directly in the Pro C# SDK for a future release. --Rich
... View more
01-13-2020
09:09 PM
|
0
|
1
|
5570
|
|
POST
|
We don't currently provide Pro SDK support for generating offline maps, although it's something we are considering for the future. The only work-around at the moment would be to directly call the REST endpoint. Sorry I can't provide a more helpful answer, --Rich
... View more
01-07-2020
04:43 PM
|
2
|
0
|
865
|
|
POST
|
Thanks, Jimmy. I'll dig into this over the next few days.
... View more
01-06-2020
05:32 PM
|
0
|
1
|
6253
|
|
POST
|
Hi Jimmy, Could you please share a code snippet showing how you are getting version differences? Thanks, --Rich
... View more
01-06-2020
08:43 AM
|
0
|
6
|
6253
|
|
POST
|
Hi David, If you are using traditional versioning, the feature service does not support versioning functionality, as you have pointed out. You can connect to a particular version by passing that into the connection properties, but there is no way to iterate through what versions are available. If you set up your enterprise geodatabase to use branch versioning, and enable the Version Management Service when you publish to a feature service, this story changes. IsVersioningSupported() returns true, GetVersionManager() returns an object, and all of the routines on that class work as you would expect. I hope this helps, --Rich
... View more
12-17-2019
08:35 AM
|
2
|
0
|
2785
|
|
POST
|
A colleague pointed this post out to me and made the excellent suggestion that I add another reply. We added plugin datasources in the Pro 2.3 release. More information can be found in the conceptual doc. We've also provided a guide that shows step-by-step how to create one.
... View more
12-04-2019
04:50 PM
|
1
|
0
|
2415
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 12-13-2024 11:22 AM | |
| 2 | 01-29-2026 09:34 AM | |
| 2 | 01-28-2026 08:20 AM | |
| 1 | 12-10-2025 09:15 AM | |
| 2 | 11-30-2025 12:23 PM |
| Online Status |
Offline
|
| Date Last Visited |
a week ago
|