Coder Social home page Coder Social logo

Comments (26)

skrishn avatar skrishn commented on August 16, 2024 1

@sumitzarkar: Thank you for looking into this. Let me connect with the team, and get back to you soon.

from crowdsource-manager.

LindsayThomas avatar LindsayThomas commented on August 16, 2024 1

@skrishn @sumitzarkar we are waiting on an answer from the AGOL team on whether or not interactive filter capability is on the roadmap. We will sync with you once we know.

from crowdsource-manager.

LindsayThomas avatar LindsayThomas commented on August 16, 2024 1

@sumitzarkar The development is not planning on adding the Interactive/prompt for values filter to the new map viewer.

Are we able to look at additional option to allow the application to work correctly without additional configuration on the users part?

from crowdsource-manager.

aparveen avatar aparveen commented on August 16, 2024 1

@sumitzarkar I reached out to AGOL team and they confirmed that this property is reliable for distinguishing between the two map viewer maps. Could you please update the issue about the backward compatibility issue we could see if we don't distinguish between these two? Our team is good with this change.

from crowdsource-manager.

aparveen avatar aparveen commented on August 16, 2024 1

@sumitzarkar I think we are good with not having the new functionalities. So the 4.x map viewer filtering functionality will have parity with 3.x map viewer except the "Ask for value" right?

from crowdsource-manager.

aparveen avatar aparveen commented on August 16, 2024

@sumitzarkar Could you please investigate this issue and discuss the findings with @LindsayThomas and @skrishn

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen @LindsayThomas @skrishn

We have analyzed this issue and here are our findings:

  • Filter functionality was implemented in CSM according to the details in the ticket - #99
  • App is designed to show only those filters which have 'Ask for Values'. Ref of the previous discussion - #99 (comment)
  • The new Map Viewer is currently not supporting this 'Ask for values' feature - Ref Link
    image
  • We depend on the information which we find in the operational layer details of a webmap which helps us in showing filter icons to only those specific columns which are involved in filtering and allow user to fiter it with user values at runtime.
  • As this feature is not yet implemented in New Mapviewer we don't see a way to support this functionality in Manager APP.
  • We can get AGOL team's input regarding the implementation of this feature in New Mapviewer and then based on their input we can plan.
  • If this functionality is not going to be added at all we may have to find an additional way to support it in CSM. If this is going to be added soon we can mark this as a known limitation for now.

Please let us know your thoughts on this

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@LindsayThomas

We are analyzing all possibilities to allow the application to work without additional configuration. Will get back to you with all the feasible possibilities.

Are we looking to fix this for AGOL 10.1 release?

from crowdsource-manager.

LindsayThomas avatar LindsayThomas commented on August 16, 2024

@sumitzarkar

@LindsayThomas

We are analyzing all possibilities to allow the application to work without additional configuration. Will get back to you with all the feasible possibilities.

Are we looking to fix this for AGOL 10.1 release?
We would like too. But if the LOE and Risk are high then we may push till 10.2.

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@LindsayThomas

Are we looking to fix this for AGOL 10.1 release?
We would like too. But if the LOE and Risk are high then we may push till 10.2.

LOE and Risk are high for this change, let's push this for 10.2. it would need a good amount of testing as well

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@LindsayThomas @aparveen

As discussed on the last call we checked the feasibility of allowing users to select the filter values if 'Ask for values' filters are not applied and here are some challenges in implementing this:

  • To allow users to select filter values at runtime in the app we need to create a layer definition editor from layer definition expression. As the definition editor contains inputs and parameterizedExpression(as shown in the below image), we need to break layer definition expression in subexpression to create inputs for each applied filter and to create parameterizedExpression.
    image

  • We find this operation quite complicated however, we can add a logic that can create this definition editor from definition Expression.

  • To show any filter option it is mandatory to have Hint and Prompt as it is used to understand what that filter is doing and hence Mapviewer classic validates that when 'Ask for values' is enabled Hint and Prompt is not empty.

  • Now if we generate the definition editor from definition expression we have a challenge how to add hints and Prompt for those filters which don't have 'Ask for Values' enabled. Also, it is not possible to provide unique hints and prompts.
    image

  • To overcome this we can create Prompt(filter titles) using the condition applied in the filter. For e.g. If we have applied a filter on the status field where status is Submitted and one more filter status is not In Progress
    image
    Note: As we don't have any hint text in such cases we can hide the Hint text

  • The manager app is designed to allow users to select the values in the filters where 'Ask for values' is enabled

  • We cannot display the filters option on all fields as to apply filters we need some conditions.

    • Condition will have a field name, some operator( is equal, starts with, etc.), and a value.
    • If any field is not involved in the definition expression then it means we don't have any filter condition applied on it and as we just have an option to select the value in the Manager app we cannot consider such fields to show/allow filters.
  • The filtering option will not be displayed in the following filtering conditions:
    i. "is blank"
    ii. "is not blank" filter is applied
    Since in these cases, there is no option to select any value we cannot support filtering for such conditions

  • Also, currently 'Ask for values' filter cannot be enabled for Date Fields. And, as a result in the Manager App, we don't have any provision to select values for filters in case of fields with a Date type. This means if we have to support filtering date fields at runtime we may have to create a date picker in filtering controls.

Please let us know your thoughts on this and if required we can discuss it on the call

from crowdsource-manager.

aparveen avatar aparveen commented on August 16, 2024

@sumitzarkar Is there a way to make this change for 4.x viewer maps only, 3x viewer maps where ask for value is enabled won't be impacted?

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen We need to check if we can get any details to distinguish and identify in which mapViewer the webmap is created. Will analyze this and will share the details.

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen

Here are our findings to distingush between Map Viewer and Classic Map Viewer;

  • We can use "authoringApp" property to distinguish between webmap created in Map Viewer Classic and new Map Viewer.
  • When map is created or edited in Map Viewer Classic "authoringApp" is set to "WebMapViewer"
  • And, for new Map Viewer "authoringApp" is set to "ArcGISMapViewer"

Could you check this with AGOL team if our unerstanding is correct

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen

  • With the current implementation in production we provide the option to change the filter value in CSM app only when 'Ask for value' is enabled

  • As an implementation of this ticket, we decided to show filters to each field that is involved in Definition Expression (excluding date fields, and some filtering conditions that cannot be honored ).

  • After the Implementation of this ticket user can change the filter values for any field involved in the definition expression which is different from the previous implementation where the user can only change the values of the filter for fileds where 'Ask for values' is enabled, and cannot change the filter value for any other field which is involved in definition Expression.

  • This could be a major difference in the app behavior where the user will be allowed to change the value for filters although as an admin you would like to restrict to not changing those filter values.

  • And, this issue will still be there if we distinguish between the map viewers or not.

Example:

  • In the webmap filter is applied on the layer for field Status = 'In Progress' so that users can see only those features in the layer which have 'In Progress' status.
  • With the current app in production users don't have an option to change this filter from the CSM APP and the user can only work on the features with the status as 'In Progress'
  • After implementation of this ticket user will get an option to change the filter value for the status field as it is involved in definition expression and now the user can see any features in CSM app.

from crowdsource-manager.

aparveen avatar aparveen commented on August 16, 2024
  • This could be a major difference in the app behavior where the user will be allowed to change the value for filters although as an admin you would like to restrict to not changing those filter values

I thought it would not be there if we distinguished between the map viewer maps and apply the changes only to new map viewer maps.

from crowdsource-manager.

aparveen avatar aparveen commented on August 16, 2024

@sumitzarkar could you please update this issue with clarified discussion we had this morning. We are good with this approach as long as it does not break backward compatibility.

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen

could you please update this issue with clarified discussion we had this morning. We are good with this approach as long as it does not break backward compatibility.

As discussed on the call - With the implementation of this new change, filters will be available for user on the columns only in New Map Viewer. So from backward compatibility point of view for the apps with old map viewer we don't see any functional impact.

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen

  • We observed that the old map viewer does not contain 'include' and 'exclude' filtering conditions. However, these conditions are present in a new map viewer.
    MicrosoftTeams-image (1)

  • In 'include' and 'exclude' filtering conditions users can select multiple values but in the Manager App we don't have any provision to select multiple values.

  • So we cannot support 'include' and 'exclude' filtering conditions along with the current implementation of CSM.

  • If we need to support these filtering conditions at runtime we may have to create a multi-select dropdown in filtering controls and this is not considerd under current scope of this ticket.

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen

Dev Checklist

Items Is required Status Comments
Required NLS changes? Yes -
Required Backward compatibility Yes -
Required 508 No -
Need Sanitize? No -

Impact Analysis Report

Impacted Areas Comments
Have Configuration changes? No
Have Runtime changes? Yes
Impact on RTL No
Runtime impacts 1. Test by applying different filters on different field types in the new web map viewer.
2. The filter icon should be shown on the column on which filers are applied.
3. Filter icon should not be shown for date,Blank/Not Blank and include/exclude filters.
4. Test with "Apply default filters automatically" configuration settings in the filters tab for CSM App.
5. If the web map is created in the old web map viewer then the application for that web map should work as before.

from crowdsource-manager.

aparveen avatar aparveen commented on August 16, 2024

@sumitzarkar In Manager filter enhancement, I can see the filter and default choice is value, In 3.x maps it always shows the unique value, do we need to show these two choices?
image
in 3.x maps it looks like the below screenshot
image

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen

  • Whenever we have domain fields we see only a dropdown to select the value. And, for other fields, we show both the options in 3.x as well as 4.x
  • In the above example for 3.x status field must have a domain defined and hence we see an only dropdown
  • And for 4.x example the field city seems to be non domain and hence both the options (Value and Unique) are shown.

For e.g. In the below screen capture Text Field is non domain and we can see both options whereas for TextFieldCoded is domain and we see only one option (dropdown)
CSM334

Please check and let us know. If you still see any issues please share the app link to reproduce the issue.

from crowdsource-manager.

skrishn avatar skrishn commented on August 16, 2024

verified in dev

from crowdsource-manager.

aparveen avatar aparveen commented on August 16, 2024

@sumitzarkar seeing a minor issue with the filter icon, if when scrolling down the table the filter icon is disappearing, it appears back again when scroll back to the top again, the table header is there just the icon is disappearing, is this expected?
CSManager_filterIconVanishes
?

from crowdsource-manager.

sumitzarkar avatar sumitzarkar commented on August 16, 2024

@aparveen

Good Catch 👍
We are able to reproduce this issue, and this is due to the floating header. We have a floating header in the table which is shown on scrolling the table content and we missed enabling the filter icons on this floating header.

We have identified the root cause and we are working on it, we will deliver the fix soon.

from crowdsource-manager.

skrishn avatar skrishn commented on August 16, 2024

verified in qa

from crowdsource-manager.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.