044 refactoring of the module navigation function (2)
After analysis, the data types of the first-level navigation can be divided into the following categories: 1, the actual field value of the module: for example, the "province" module, the owning area is a string field, which contains the name of each area.
2, the parent module navigation: For example, the "City" module, you can use the province to navigate it.
3. Numeric range for a numeric field: You can customize the range of values to complete the grouping. A more complex grouping can be done by configuration.
4. Date fields are grouped according to year, month and day, and can then be extended to such groupings as the last half month, the last January, and the last half year.
For grouping of numeric fields and Date fields, you can either be a field of a Datum module, a field in a parent module, or a sub-module aggregation field. The Sub-module aggregation field is the new thought, such as can add: an order can be "record number of order Details" to navigate. or according to the "Order details of the largest price of goods" to navigate. You can use custom fields or formula to generate a data for navigation.
The above is a level navigation of some data types, if a navigation is two layers, then it will be more complex, such as the above 1 and 4 of the combined navigation, under each region, and then by the date to expand navigation.
The essence of navigation is to add a filter condition to the record of the module grid, although it can be done in other ways, but this way I think is the most intuitive, the entire navigation tree values in the record distribution at a glance. The navigation tree can also perform some complex drag operations, such as dragging a province directly to a value on the Area Navigator, which can be modified to get rid of the region value of the province.
The following mind map is some of my documents. My design documents are usually a few charts, thinking about the future of the organization is a document, the class will have some comments, plus this blog is all the documents.
General function and Module customization system (CFCMMS)-044 module navigation function refactoring (2)