POST
|
Alex, First, the purpose of the EditOperation.EditOperationType parameter is to allow callers of the edit operation to restrict all participating datasets in the operation to have either LONG or SHORT transaction semantics (depending on what you set it to). The default is NULL which is what we call "MIXED" - as in datasets with LONG and datasets with SHORT semantics can be "mixed" together in the same edit operation. This is explained here: ProConcepts-Editing#edit-operations-and-long-and-short-transactions Second, given my explanation above (and in the article referenced), the use of the EditOperation.EditOperationType, therefore, is not to ~change~ the transaction semantics - that is not possible. It is to ensure that all of the participating datasets are of the same transaction semantic specified (LONG or SHORT). If there is a mix, when either of LONG or SHORT is specified, an exception is thrown. If you specify LONG and attempt to edit a SHORT transaction semantic dataset you get a generic error along the lines of "the edit failed because you tried to edit non-versioned data" and conversely if you specify SHORT and attempt to edit a LONG transaction semantic dataset you get a generic error along the lines of "the edit failed because you tried to edit versioned data" - which is the message you got - File Geodatabase is LONG and you specified a restriction of SHORT. [There is a table in the same article that I reference above that gives you the transaction semantics of a given datastore based on its characteristics]. Third, you ask "Is it because the edit operation automatically spans all the workspaces being accessed"...if I reword your question slightly to "Is it because the edit operation automatically spans all the workspaces of all datasets being accessed in the edit operation", then the answer is yes. An edit session is established for each workspace (datastore we call them in Pro) with LONG semantics. No edit session is established for workspaces enlisted in the edit with SHORT semantics (because, by definition, there is no such thing). This can lead to a confusing UI experience if the user is not aware of the characteristics of the data they are editing. The LONG transaction data is undo-able and requires an explicit save to commit it. The SHORT transaction data is automatically committed ("saved') and is not undo-able. Thus, if the user is editing MIXED mode data (the default) and goes to undo one or more edits then only the LONG transaction data edits can be undone. The SHORT transaction data changes will already have been committed. To allow 3rd party developers to enforce consistency in the UI during editing when the TOC content is "mixed" (everything undoable, nothing undoable, save edits required, save edits not required) the EditOperation.EditOperationType parameter was added. Fourth, you ask: "All the geoprocessing calls are using the GPExecuteToolFlags.None flag so no output is being added to the map. The code runs successfully but no features are written into the feature class. When I close Pro, I get the "Do you want to save the edits?" prompt, and if I click Yes, the features do appear in the feature class. It looks like the edits are being added to the Pro edit stack. Should this be happening when I am using the callback to create features? How can I have the edits saved automatically?" Let's break this down: - "All the geoprocessing calls are using the GPExecuteToolFlags.None flag so no output is being added to the map. The code runs successfully but no features are written into the feature class" - GP either starts a new edit session on the File GDB or enlists in an existing edit session if one has already been started. Presumably because of the flag the edits are not showing up in the table pane but they are "there", waiting to be committed. - "When I close Pro, I get the "Do you want to save the edits?" prompt, and if I click Yes, the features do appear in the feature class" File Geodatabase is LONG. An edit session was started and an explicit save is required to commit the edits. "It looks like the edits are being added to the Pro edit stack." - File Geodatabase is LONG. Edits are undo-able "Should this be happening when I am using the callback to create features?" Yes. The callback will start or enlist in an edit session on the File GDB "How can I have the edits saved automatically?" You must explicitly call Project.Current.SaveEditsAsync(). Note: This will commit all edits currently pending on all edit sessions. [It will also terminate all edit sessions on all datastores.] This is the same behavior as if the user clicked Save Edits on the UI.
... View more
09-10-2019
10:21 AM
|
1
|
1
|
816
|
POST
|
I suspect this is the root of your original problem: var rowCursor = layer.Search(myGeometry, SpatialRelationship.Crosses); You are using a recycling cursor. Change to a non-recycling cursor (access this off the feature class). With a recycling cursor, repetitive calls to op.Modify with rowcursor.Current will get overwritten by the following "current" feature. (note: the last feature in your selection was probably getting successfully modified). //This is a problem with a recycling cursor when in a loop. cutOperation.Modify(rowCursor.Current, fkzFieldIndex, "MyNewFKZ");
... View more
08-21-2019
10:32 AM
|
0
|
0
|
808
|
POST
|
Than, start here: ProConcepts-Framework#introduction-to-daml-desktop-application-markup-language
... View more
07-19-2019
09:22 AM
|
0
|
1
|
1024
|
POST
|
Matt, this is a bug. It will be fixed in the next release - 2.5
... View more
07-18-2019
01:46 PM
|
0
|
0
|
636
|
POST
|
Than, you are almost there 😉 You have some copy-paste baggage. Change this '<updateModule refID="esri_mapping">' to this '<updateModule refID="esri_geodatabase_module">' and you will have it.
... View more
07-18-2019
11:34 AM
|
1
|
0
|
1024
|
POST
|
Than, This is how I would find a context menu id by way of example. Let's assume that you want to add a new item to the "Databases" context menu in Catalog pane (sorry, I am not familiar with "Research Data" context menu) First, make sure this option is checked on: Go to the context menu you are after and hover over one of the core buttons that is on it (in my example I use "Databases" folder context menu): With the "Show Command IDs" option checked on you get the daml id for the particular button you are hovering over displayed in its tooltip. Go to: https://github.com/esri/arcgis-pro-sdk/wiki/ArcGIS-Pro-DAML-ID-Reference In your case I would try "ADGeoDatabase.daml" first - which also happens to be the .daml file I will use to find the "Databases" context menu. Click on the "Click this link to view ADGeoDatabase.daml" link on the github to get to the "raw" daml. Hit Ctrl-F and type in the daml id you captured from the desired context menu button: Step through occurrences of the daml id until you get to the containing menu you are after: Cycle through the other daml files if you don't get a hit in ADGeoDatabase.daml. Record the daml id (GDBContainerMenu in my example).
... View more
07-17-2019
05:15 PM
|
0
|
2
|
1024
|
POST
|
I was answering this: >>My question is how come SDK automatically updated to 2.4??<<
... View more
07-17-2019
10:41 AM
|
0
|
1
|
808
|
POST
|
Hi Naresh, this is explained here: ProGuide-Installation-and-Upgrade#upgrade-arcgis-pro-sdk-for-net
... View more
07-17-2019
09:47 AM
|
0
|
3
|
808
|
POST
|
sounds like the Microsoft Visual C++ redistributable package is missing from your server machine https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads
... View more
07-07-2019
05:11 PM
|
0
|
0
|
1294
|
POST
|
Max, the issue to me looks like you are not specifying a cell size. The resulting cell size of the raster is 10600614 which matches the dimension of the raster. I do not know the significance of that number (i.e. why is it used as the default cell size). However, if I do specify a cell size explicitly (eg "90" or "180" ) then the extent of the layer is correct (as, in, it is a proper extent). As the cell size, in this case because of the projection being used, is in decimal degrees and the WGS projection is wider than it is tall, I assume that the maximum possible cell size will be "180" while still retaining a "real" spatial extent. For example, using your same settings and a cell size of 180:
... View more
06-17-2019
11:26 AM
|
0
|
1
|
1054
|
POST
|
I cannot reproduce. My results using 2.4: SR Domain, MapView Extent, layer "QueryExtent" Initial extent: Zoom to layer extent Pan to date line (or approx) with "Enable wrapping around the date line" enabled layer properties: map properties:
... View more
06-11-2019
11:50 AM
|
0
|
6
|
1054
|
POST
|
Max, Unfortunately, it looks like ProportionalRenderer Recalculate is not currently supported in the public API. We will add recalc support in 2.5. I will update the API reference for 2.4. Thanks for bringing this to our attention.
... View more
05-31-2019
11:38 AM
|
0
|
0
|
461
|
POST
|
So Max, I have looked closely at this and discussed with the original developer.This is designed behavior. Please use GetOverlayControls to examine which controls are already on the overlay. The returned UIElements can then be queried for their size and placement information [on the overlay]. For example, perhaps you have a preferred placement and prior to adding your control you want to detect if a control (perhaps placed by Pro or another add-in) already occupies that "space". Based on your examination of the existing overlay controls, your logic could adjust your default position accordingly, alter ZOrder, etc. It is not intended that you cast the controls to their underlying type. Simply use them "as" UIElement. Cast to FrameworkElement also, if needed. If you do need reference to your control "later on" you should hold a reference to it. We will update the API reference for AddOverlayControl and GetOverlayControls for 2.4
... View more
05-09-2019
04:23 PM
|
0
|
0
|
623
|
Title | Kudos | Posted |
---|---|---|
2 | Wednesday | |
1 | 03-18-2024 06:28 PM | |
1 | 03-19-2024 10:15 AM | |
1 | 03-18-2024 03:46 PM | |
2 | 03-14-2024 08:37 AM |
Online Status |
Online
|
Date Last Visited |
yesterday
|