|
POST
|
I've been working with Esri tech support; no solution yet. I have discovered that other urls in this format get renamed, such as ms-outlook://compose to open Outlook gets changed to #compose on refresh. If I enter as the "URL" random dictionary words with no # / : etc, such as "taco", the URL doesn't get changed. All the Esri ecosystem URLS are unaffected, so clearly there's some way that Portal knows those URLs are OK. I need to find a way to let Portal know that my third-party URLs are OK.
... View more
06-17-2021
08:24 AM
|
0
|
0
|
4229
|
|
POST
|
Bit of a head scratcher here. I'm trying to configure a custom app url to invoke activity in Cityworks Mobile. I'm configuring the URL per Cityworks' documentation, and the link works if I open it in a browser on the mobile device. However, it does nothing in Collector, Field Maps, or Explorer. After some digging, I confirmed that it was configured correctly and passing all the correct information when I set up the popup in the map in Portal, but when that map is reloaded, the url is changed. The URL I setup is: cityworks9://createWorkActivity.... After a reload, it's changed to: #createWorkActivity.... I suspect the link Collector, etc, see is the latter one, which would explain why it doesn't react like a link. I have a similar link setup to connect to Survey123 in several maps, and I have not encountered this issue before. Is there some kind of setting that I'm missing on the Portal end to allow the Cityworks url to stick? Edit: I've also discovered this is an issue in ArcGIS Online, so it's clearly not tied to my environment or to the Enterprise version.
... View more
06-07-2021
07:51 AM
|
0
|
17
|
5510
|
|
POST
|
@JohannesLindner that does the trick! I like your sorting approach, and explicitly setting storing the WAM_ID is a smart move. Learn something new every day. Thank you!
... View more
04-07-2021
05:55 AM
|
0
|
0
|
1883
|
|
POST
|
@DougBrowning unless I'm mistaken, I need to pull the WAM_ID field to match up the records between the FC and related records. I see what you're saying about the whereclause on the updateCursor, and creating a new cursor for each record in the dict. I believe that would incur a huge performance penalty over iterating through rows in a single cursor, as would using the field calculator. My current script format processes a similar sized table in ~30 seconds, including loading the arcpy libraries. If I recall correctly, Field Calculator took 5-10 min or more. I like the idea of using Arcade or a join in a view layer. I know we had a good reason for updating the FC instead of just doing a dynamic display, but I'll have to revisit if that reason is still valid. Thank you, Jay
... View more
04-06-2021
10:13 AM
|
0
|
1
|
1913
|
|
POST
|
I'm having an odd issue with a script that I use to update the "last inspected" field in a feature class based on the related inspection records. It uses a search cursor to populate a dictionary with the most recent inspection date (values) for a given unique ID (keys). Then, it uses an update cursor, uses the unique ID field to look up the inspection date in the dictionary, and updates the inspection date if applicable. What I've noticed happening is that the script will overwrite the unique ids in chunks so that there are sets of duplicates. I'd love to say it was working perfectly before, but there was an index error that I recently fixed. It was only after I fixed that error and the script was able to run that I noticed this problem. I do have several other scripts that use the same template on other FCs that don't have this issue. Fortunately, I have archiving enabled and I was able to restore the proper ids. If I disable the line that overwrites the row and have it print out the existing Unique ID and what the script wants to write in place, I get output like this: (u'STV033632', (u'STV033586', datetime.datetime(2021, 3, 24, 4, 0)))
(u'STV033633', (u'STV033586', datetime.datetime(2021, 3, 24, 4, 0)))
(u'STV033634', (u'STV033586', datetime.datetime(2021, 3, 24, 4, 0)))
(u'STV033635', (u'STV033586', datetime.datetime(2021, 3, 24, 4, 0)))
(u'STV033636', (u'STV033586', datetime.datetime(2021, 3, 24, 4, 0)))
(u'STV033637', (u'STV033586', datetime.datetime(2021, 3, 24, 4, 0)))
(u'STV033638', (u'STV033586', datetime.datetime(2021, 3, 24, 4, 0)))
(u'STV033639', (u'STV033586', datetime.datetime(2021, 3, 24, 4, 0)))
(u'STV033641', (u'STV033640', datetime.datetime(2021, 1, 6, 5, 0)))
(u'STV033642', (u'STV033640', datetime.datetime(2021, 1, 6, 5, 0)))
(u'STV033643', (u'STV033640', datetime.datetime(2021, 1, 6, 5, 0)))
(u'STV033644', (u'STV033640', datetime.datetime(2021, 1, 6, 5, 0)))
(u'STV033645', (u'STV033640', datetime.datetime(2021, 1, 6, 5, 0)))
(u'STV033646', (u'STV033640', datetime.datetime(2021, 1, 6, 5, 0))) Here's the meat of the script. I've excised the except statements and all of the edit session formalities for the sake of brevity. Is there something obvious I'm missing here? #specify fields from target dataset to be updated
oldFields = ("WAM_ID","LastServiceDate")
#specify fields from source dataset
newFields = ("wam_id","date")
#create empty dictionary to store values
valDict = {}
#use search cursor to collect values from source dataset
newValues = arcpy.da.SearchCursor(gateInspections,newFields,"wam_id is not Null")
for row in newValues:
try:
key = row[0]
if key not in valDict:
valDict[key] = row[1:]
elif key in valDict:
if valDict[key][0] < row[1]:
valDict[key] = row[1:]
else:
pass
else:
pass
except:
logFile.write('No date for valve {0}.\n'.format(row[0]))
fcRows = arcpy.da.UpdateCursor(inFC,oldFields, "WAM_ID is not Null")
try:
for row in fcRows:
try:
if valDict.has_key(row[0]):
Vals = valDict[row[0]]
if Vals[0] is None:
operDate = row[1]
else:
operDate = Vals[0]
newRow = (row[0],operDate)
if tuple(row) != newRow:
fcRows.updateRow(newRow)
else:
pass
... View more
04-06-2021
06:58 AM
|
0
|
5
|
1971
|
|
POST
|
Ok, I see that now. I misread where you said the "name of your ArcGIS Monitor service" and was looking in the wrong spot. Sorry about that, and thanks!
... View more
02-19-2021
08:31 AM
|
0
|
0
|
2741
|
|
POST
|
@ReeseFacendini I'm actually trying to remove the "credentials" and not the counters. For example, in the screenshot below, the first two credentials are working, but I want to remove the third one. I can select which credential to use for my counter, or I can add one. I'm looking for a place to remove or edit an existing credential.
... View more
02-19-2021
08:23 AM
|
0
|
1
|
2749
|
|
POST
|
Thanks for the confirmation. The SQL triggers are outside of my control, so I'll have to tinker around on the Python side to find something that's not too clunky.
... View more
02-19-2021
08:05 AM
|
0
|
0
|
2054
|
|
POST
|
I'm setting up database counters ArcGIS Monitor 10.8.1 and made some mistakes creating database credentials. I'd like to remove the old, broken credentials from the list, but I can't seem to find anywhere to manage these. Is there something I'm missing?
... View more
02-19-2021
08:02 AM
|
0
|
5
|
2777
|
|
IDEA
|
This would be an incredible addition to the capabilities of Monitor. I'm trying to fine tune things so I only get alerts when something happens that really needs my attention. I know you can't fully get there, but being able to tune out the ones that result from scheduled maintenance tasks would help a lot.
... View more
02-17-2021
05:24 AM
|
0
|
0
|
1690
|
|
POST
|
We're having some trouble with a process that bridges Cityworks and ArcGIS. We have a field in our vehicles/fleet table in GIS that stores the mileage to the next service, which has an attribute rule to keep the value updated. This updates just fine when my Python script pulls in the current mileages from our gas cards, but we noticed it doesn't update when the last service mileage is updated. The difference here is that our Cityworks consultants set up a db trigger that writes that value to the fleet table using a SQL statement. It seems like Esri doesn't recognize this as an edit, as the last edit date and last editor fields don't update. I think I can resolve this either by setting up a deferred evaluation rule and scheduling that to run periodically, or by periodically re-writing the existing values to the last service mileage field using an update cursor to create an Esri recognized edit. The problem with #1 is I need to set up branch versioning and I'm not sure we're ready for that quite yet. #2 seems inelegant. Are there any other ways to make this work? It would be great if there was a way for Esri to recognize the SQL-triggered update.
... View more
02-12-2021
05:49 AM
|
0
|
2
|
2218
|
|
POST
|
I'm trying to troubleshoot a map that used to work in Collector, but seems to not work correctly now. It's a map for our field crews to make basic attribute edits to some features (hydrants, mains, etc). Currently, the map is visible in Collector, and opens without any errors. However, none of the layers draw, but are visible in the layer list (first image). There are no errors in the Server logs. If I open the map in Field Maps (second image), I see all the layers. My one thought was Arcade-based symbology rules, but I don't have any of those configured as far as I can see. I'm logged in as the same user on both apps. The service was published to our Portal from ArcGIS Pro 2.6.3. I've also tried republishing, both as an overwrite and as a brand-new service, to no avail. Does anyone have any thoughts? I want to get our people on the Field Maps app, but we'll still be using Collector for at least a little while.
... View more
12-02-2020
11:34 AM
|
1
|
3
|
1520
|
|
POST
|
I have a task that I put together to walk users through creating a shutdown notification. In this process, they create the area that will be affected, then create features to show the valves that will be closed. I would like to be able to take the count of these valves and use it to update a field in the Affected Area feature class. Similarly, I would also like to get the count of intersecting customer points and hydrants and use those to update fields. I can't seem to find a way to accomplish either of these operations using the built-in settings in Task Designer. I know I could probably put together a Python script tool to accomplish this, but is there something I'm just missing here? Tasks can keep track of items created while running the task for selection and verification purposes, so I imagine it wouldn't be too much of a leap to pass the count of those features as a variable.
... View more
11-05-2020
12:05 PM
|
0
|
1
|
1044
|
|
POST
|
This is what my app launcher looks like for my Admin user: If I go to my "regular" user login, I see this instead: I know why the extra Sites is in there and why only one of those has Insights, but I'm not sure why the new apps aren't showing up in the admin user's app launcher.
... View more
09-10-2020
05:06 AM
|
0
|
1
|
2678
|
|
POST
|
Great, thank you! Yet another reason to push our full migration to Pro sooner rather than later.
... View more
09-10-2020
04:50 AM
|
0
|
0
|
5651
|
| Title | Kudos | Posted |
|---|---|---|
| 9 | 08-27-2025 02:06 PM | |
| 1 | 10-22-2024 04:41 AM | |
| 2 | 01-17-2024 12:35 PM | |
| 2 | 05-18-2023 05:44 AM | |
| 1 | 04-15-2024 07:13 AM |
| Online Status |
Offline
|
| Date Last Visited |
Friday
|