POST
|
Hi, So in our Organizational AGOL account, I can add a "Table" element to a dashboard. But, in our Portal (not sure on the version) I cannot do this. Here is a screenshot of what I am seeing. Is this just a deficiency in our Portal?? Or is this feature not available in Portal at all??
... View more
03-21-2024
07:30 AM
|
0
|
4
|
635
|
POST
|
Can't you just modify your editing template so it comes up as "No" instead of "N"?
... View more
01-15-2024
12:26 PM
|
0
|
0
|
397
|
POST
|
Hi @TracyLove . Yes, it sounds like you understand what I am trying to do. I agree, I don't think it's possible, but really is something that should be able to be done. Back in the summer I sat in on a Field Maps webinar where they said that Attribute Rules would soon be coming to Field Maps, and that what I was trying to do should be able to work. Even at the Dev Summit I talked to esri people who said it should work too, but alas.....nothing works. We are looking at using VertiGIS Mobile for this now, but I really hate that application. I think we can get it to work, but it's such a klunky application and to get things working takes a lot of trial and error. Field Maps is much more user friendly. Right within ArcPro I can get everything I was to do working with Attribute Rules, it's just within Field Maps that I can't get thing working.
... View more
12-11-2023
07:34 AM
|
0
|
1
|
785
|
POST
|
Yes, that would change the value for the CHAINS field in the INSPECTION form, but what I need it to do is to change the INSP_STATUS on the hydrant feature.
... View more
12-05-2023
08:07 AM
|
0
|
1
|
829
|
POST
|
Hi Doug, Thanks for helping. So I am setting this code on the respective field on the "Inspections" form. See the screenshot below: Now if I change the code as per your advice above to this: var allHydrants = FeaturesetByName($datastore, 'Hydrants', ['FACILITYID', 'ObjectID'], false);
var facility_id = $feature.FACILITYKEY; //this should be the ID of the currently selected hydrant
var thisHydrant = First(Filter(allHydrants, 'FACILITYID = @facility_id'));
//If the CHAINS field gets toggled to "YES" in the collection form, then we need to update the INSP_STATUS attribute on the feature to YES
if (($feature.CHAINS != "NO"))
{
//abort if no hydrant was found
if (thisHydrant == null){return};
return "WR";
}; Now when I do this, I still don't get what I want. What is happening is that a "WR" is now getting substituted for the "switch" control. But what I want, is for the switch control to update the feature based on wether or not the switch is in the No or Yes position.....if that makes any sense. Ultimately what I want to do is replicate what we currently have working in our ArcPad inspection applications. So the user clicks on a hydrant, an inspection form opens up and based on what is selected in the inspection form, the INSP_STATUS field on the hydrant gets updated.....either to "WR" (work required) or to "YES" (a completed inspection with no issues). All of these Inspections are saved in a related table to the hydrant....the INSPECTIONS table. I guess with Field Maps we could have the technician doing the inspection manually toggle the INSP_STATUS on the feature after each inspection to either WR or YES, but I'm trying to avoid them having to do that, as ultimately that will get screwed up in the field and hydrants that should be at WR will get missed. Currently in ArcPad, this all automated through a script when they hit the "Save" button at the end of the inspection. So ideally with Field Maps, once they hit the "Submit" button after they fill out the entire inspection form, is where this business logic would happen to determine how to update the INSP_STATUS field on the hydrant. For now, I am just trying to get it to work with the one field CHAINS, but in reality I would need to look at about 10 different fields before I determine whether to set it to WR or to YES. Hopefully this makes sense. This is something I've been trying to sort out with esri for years, and there is still no solution. I've met with people at the Dev Summit, sat in countless web demos of Fields Maps and still there is no solution to this. Hopefully you have some ideas that can point me in the right direction. Recently I've looked at the Maps SDK, but I'd like to stick to something more simpler than redeveloping all 9 of our field inspections apps from scratch in the Maps SDK. Not sure we have the manpower for that.
... View more
12-05-2023
07:44 AM
|
0
|
1
|
831
|
POST
|
Yeah, it seems like once you use a calculated expression, there is no way to 'overwrite' it in the form....which is a bit of a bummer.
... View more
12-05-2023
05:40 AM
|
0
|
0
|
289
|
POST
|
Well, I coded it like that since when I was doing this in ArcGIS Pro, that was the only way I could get it to work. I'm trying to update an attribute in a feature, not make any change to the form. Either way, I don't think FieldMaps has the ability to do what I want to do. I've tried this so many ways, it's making my head spin. I think I just need to come to the realization that Field Maps just can't do it and look at other options. VertiGIS seems to be able to do it, but I hate that application so much. It's such a pain to work with.
... View more
12-05-2023
05:06 AM
|
0
|
1
|
834
|
POST
|
Sorry...my bad. I do some work in VertiGIS too, and in it's mobile app it lets you go back and edit, even with it auto-populating when you load the form. I guess I mixed the two up.
... View more
12-05-2023
05:03 AM
|
0
|
1
|
756
|
POST
|
I think if you create an arcade expression to autopopulate both the Inspector field and the Date field, it will NOT carry over those two field, and the rest will just copy over as per usual. In my limited testing, this is what I am seeing....the date is definitely updating, and I'm pretty sure the Inspector would be too, but all of these records have my name for all my test data, so can't say for sure. In Arcade use "return Now()" for the date. For the Inspector Name there are a few options, but if you just want their logged in username something like this will work, using whatever the layer name you are using in your app. GetUser(FeatureSetByName($datastore, 'Hydrants')).username;
... View more
12-04-2023
12:46 PM
|
0
|
1
|
297
|
POST
|
For the date, just create an Arcade expression. One line is all you need: return Now() This will return the date/time in whatever format you have the field setup for, but it will populate as soon as the user opens the form. They can always just tap in and make any changes needed.
... View more
12-04-2023
12:23 PM
|
0
|
1
|
766
|
POST
|
See this post for a possible solution: https://community.esri.com/t5/arcgis-field-maps-questions/quot-failed-to-calculate-quot-error-on-getuser/m-p/1356023#M7482
... View more
12-04-2023
12:18 PM
|
0
|
1
|
920
|
POST
|
I just tried this and it works no problem for me. I set it in my Field Maps Form through the "Templates" tab....as it says, "Default values can be set on the Templates tab". Where you have it set to 1.8 above, I have it blank.....I only have it set through the Templates tab.
... View more
12-04-2023
12:14 PM
|
0
|
0
|
303
|
POST
|
It seems like the only way to get rid of that is to adjust what kind of editing is applicable to the layers in the map. If even one of them has "Add" editing, then you will see the + sign. If all they need to do is "Update" and/or "Delete", just uncheck the "Add" editing from the service and the + sign will go away.....but you need to do this for ALL layers that are editable in the web map.
... View more
12-04-2023
11:43 AM
|
0
|
0
|
522
|
POST
|
Hi, So I'm trying customize a fields maps form to automatically update an attribute on a feature when a specific attribute on the form gets set to "YES" (via a form switch). The form is on a related table called INSPECTIONS, which is related to my HYDRANTS layer. I want it so when the user sets the switch for CHAINS to be "YES", that the INSP_STATUS field on the HYDRANTS layer gets set to "WR" (for 'Work Required). On my Field Maps inspection form, I have the Arcade code on the CHAINS switch set to this: var allHydrants = FeaturesetByName($datastore, 'Hydrants', ['FACILITYID', 'ObjectID'], false);
var facility_id = $feature.FACILITYKEY; //this should be the ID of the currently selected hydrant
var thisHydrant = First(Filter(allHydrants, 'FACILITYID = @facility_id'));
//If the CHAINS field gets toggled to "YES" in the collection form, then we need to update the INSP_STATUS attribute on the feature to YES
if (($feature.CHAINS != "NO"))
{
//abort if no hydrant was found
if (thisHydrant == null){return};
return {
'edit': [{
'classname' : 'Hydrants',
'updates' : [{
'objectID': thisHydrant.ObjectID,
'attributes' : {'INSP_STATUS' : 'WR'}
}]
}]
};
}; In field maps, all I get in the form is some text (the dictionary) where the switch should be instead of the code actually getting triggered like an event when the switch gets toggled by the user. Is there a way to get what I want to do to work? Either through Field Maps forms or some other way?? I've given WebHooks a try, but no success, but this seems like something that should be fairly simple to do. Right in ArcGIS Pro if I create Attribute Rules on the INSPECTION table this will work, but I have been struggling for years to get Field Maps/Collector to work in a more automated way.
... View more
12-04-2023
11:28 AM
|
1
|
10
|
971
|
POST
|
You need to add a "Group" to the form, which is where you can set the toggle. Then you can add as many attributes into the group as you want.
... View more
11-28-2023
10:17 AM
|
0
|
1
|
707
|
Title | Kudos | Posted |
---|---|---|
1 | 3 weeks ago | |
2 | 05-13-2024 07:06 AM | |
1 | 03-21-2024 07:55 AM | |
1 | 12-04-2023 11:28 AM | |
1 | 11-03-2023 05:25 AM |
Online Status |
Offline
|
Date Last Visited |
Thursday
|