Qgis search button - Giswater/giswater_dbmodel GitHub Wiki

Giswater QGIS plugin allows searching for different elements of the network by using a search tool, located on basic toolbar. The way feature is search on the database may be configured by user on the config_param_system table.

Search Parameter Default values
Exploitation basic_search_exploitation {"sys_table_id":"exploitation", "sys_id_field":"expl_id", "sys_search_field":"name", "sys_geom_field":"the_geom", "alias":"Explotation"}
Hydrometer basic_search_hydrometer {"sys_table_id":"v_ui_hydrometer", "sys_id_field":"hydrometer_id", "sys_connec_id":"connec_id", "sys_search_field_1":"hydrometer_customer_code", "sys_search_field_2":"connec_customer_code", "sys_search_field_3":"state", "sys_parent_field":"expl_name"}
Municipality basic_search_muni {"sys_table_id":"ext_municipality", "sys_id_field":"muni_id", "sys_search_field":"name", "sys_geom_field":"the_geom"}
Network - arc basic_search_network_arc {"sys_table_id":"v_edit_arc", "sys_id_field":"arc_id", "sys_search_field":"code", "alias":"Arcs", "cat_field":"arccat_id", "orderby":"1", "search_type":"arc"}
Network - connec basic_search_network_connec {"sys_table_id":"v_edit_connec", "sys_id_field":"connec_id", "sys_search_field":"code", "alias":"Connecs", "cat_field":"connecat_id", "orderby":"3", "search_type":"connec"}
Network - element basic_search_network_element {"sys_table_id":"v_edit_element", "sys_id_field":"element_id", "sys_search_field":"code", "alias":"Elements", "cat_field":"elementcat_id", "orderby":"5", "search_type":"element"}
Network - node basic_search_network_node {"sys_table_id":"v_edit_node", "sys_id_field":"node_id", "sys_search_field":"code", "alias":"Nodes", "cat_field":"nodecat_id", "orderby":"2", "search_type":"node"}
Network - null basic_search_network_null {"sys_table_id":"", "sys_id_field":"", "sys_search_field":"", "alias":"", "cat_field":"", "orderby":"0"}
Address - postnumber basic_search_postnumber {"sys_table_id":"v_ext_address", "sys_id_field":"id", "sys_search_field":"postnumber", "sys_parent_field":"streetaxis_id", "sys_geom_field":"the_geom"}
Psector basic_search_psector {"sys_table_id":"v_edit_plan_psector", "WARNING":"sys_table_id only web, python is hardcoded: v_edit_plan_psector as self.plan_om ='plan'", "sys_id_field":"psector_id", "sys_search_field":"name", "sys_parent_field":"expl_id", "sys_geom_field":"the_geom"}
Address - street basic_search_street {"sys_table_id":"v_ext_streetaxis", "sys_id_field":"id", "sys_search_field":"name", "sys_parent_field":"muni_id", "sys_geom_field":"the_geom"}
Visit basic_search_visit {"sys_table_id":"om_visit", "sys_id_field":"id", "sys_search_field":"id", "alias":"Visits", "cat_field":"visitcat_id", "orderby":"6", "feature_type":"visit"}
Workcat basic_search_workcat {"sys_geom_field":"the_geom", "filter_text":"code", "sys_table_id":"cat_work", "sys_id_field":"id", "sys_search_field":"id"}

Json key explanation:

Key Description Example
sys_table_id Name of the table or view on which searching is done v_ext_streetaxis
sys_id_field Id of the table id
sys_search_field Field by which user makes the search name
sys_parent_field In case that search has two steps, parent field is the name of common field. In case of street, it depends on municipality muni_id
alias Search name, which appears on form Street
sys_geom_field Geometry field, which allows showing result on the map the_geom