Building Searches

From IMSMA Wiki
Revision as of 19:03, 19 February 2013 by JMU (talk | contribs)
Jump to: navigation, search

The mine action information collected and stored in IMSMANG is useless without the ability to find it and use it to make operational decisions. That’s why IMSMANG includes a robust data search mechanism that provides an easy-to-use, multilevel interface for building and running searches. As with other parts of IMSMANG, the search functionality is divided into a customisation mode, where information managers can prepare simple or complex searches, and an execution mode where data entry personnel can run prebuilt searches. This simplifies the user experience and ensures consistency of use by sharing identical searches with all users. The IMSMANG search function has three primary purposes:

  • to navigate to data
  • to display data on the map
  • to prepare data for reports and analysis

Information managers can customise IMSMANG searches for each of these purposes to meet the specific needs of the programme. Particularly, customizing the search functionality to facilitate access to programme data and reporting is a key component of implementing and managing a programme’s information workflow.

Table 14. Options for Using Searches
Option Use or purpose Example criteria Example parameters
Navigation and map display Search for items by a specific ID Find all hazards with a local ID that includes = “MF-001” Set the local ID as a parameter to be supplied when the search is run
These searches are typically designed to find a single record or a set of records. These searches are generally simpler than the other kinds of searches and are designed to return records that users can browse through to find the necessary data. Search for items by type Find all hazards with a mine action are type = “Minefield” Mine Action Area Type
Search for items by date Find all hazard reductions between January 1 and February 1 The date range
Reporting and data quality analysis

Reporting searches are typically more complicated than navigation searches since they are intended to return a set of records to populate a report directly without any additional user interaction. These searches can also be saved and run independently of reports and used for browsing data. Data quality analysis searches help identify possible data problems and ensure that programme-specific workflow steps are being followed. These searches can be used to help protect data integrity.

Report on clearance efforts Find all hazard reductions where the type = “Progress Report” and the status = “Completed” and the dates are between January 1 and February 1 The date range
Report on hazards cleared by an organisation Find all hazards that are linked to hazard reductions whose type = “Clearance” and the organisation = “XYZ Org” Mine Action Area Type
Search for all hazards with AP mines Find all active hazards with antipersonnel mines or that have clearances linked to them that have found antipersonnel mines
Data quality checks Find all hazards whose status is “Worked On” with no active hazard reductions

Find all clearances that are not linked to a hazard

Find all victims with no link to accident

Building Simple Searches

Building searches in IMSMANG is a simple three-step process in which information managers determine:

  1. The item to search for
  2. The attributes of the item to use in the search
  3. Whether all of the criteria must be met (AND) or any of the criteria must be met (OR)

Following these three steps, users can build searches as simple or as complex as the examples below:

  • find hazards with an ID of “MF-101”
  • find victims who are children and were injured in 2010
  • find progress reports about work done by XYZ organization on hazards in Province ABC between 2008 and 2010
  • find all clearances completed on hazards with antipersonnel mines

When a search is designed, it can be given a name and description and then saved for later use. Saving a search saves the criteria of the search rather than the search results. This means that searches are automatically updated when additional data is added to the system, ensuring that searches return the most up-to-date data. For example, an information manager can build a search called “Open Hazards” that finds 25 hazards with a status of “Open.” If 10 additional hazards are entered into the system with a status of “Open,” the search would find 35 records when it is run again. In this way, searches are dynamically updated as data is added to the system, allowing information managers to assess data trends over time using consistent search criteria. Information managers can also use an existing search as a template to create other searches by using the “Save as” functionality.

Using Search Parameters

Search parameters allow users to change one or more search criteria when running a search. For example, if a user wants to find all progress reports submitted by “XYZ” organisation, they can build a search for “XYZ progress reports.” If another user wants to search for progress reports submitted by “ABC” organisation, they can build another search for “ABC Progress Reports.” Alternatively, an information manager can build one search with a parameter for “Organisation” that allows users to provide different values for the organisation when running the search. This makes one search, for example, “Progress Reports by Organisation,” available for multiple purposes. The ability to build dynamic searches allows information managers to customise search capabilities to meet the needs of various stakeholders within their programmes.

Note.jpg Searches can include geospatial data as a parameter which allows users to define a geospatial extent to search within. For the purposes of searching, records without geospatial data are defined as “outside” the geospatial extent

Building Complex Searches

While the IMSMANG search functionality is extremely robust—allowing searches on CDFs, customised option list values and links among items— there are some cases where users may want to run more complex searches that cannot be built using the standard search interface. For these cases, IMSMANG includes a special Structured Query Language (SQL) search functionality that allows information managers to provide SQL syntax for executing searches. Creating searches using SQL criteria requires a detailed understanding of relational databases, SQL and the IMSMANG data model and should only be undertaken by advanced users.

To use SQL criteria, simply provide a valid SQL statement in the following format:

SELECT [item_guid] FROM [item_table] WHERE... For example, SELECT hazreduc_guid FROM hazreduc WHERE hazreduc_localID =’ÇL-001’

Using SQL criteria, information managers can design complicated searches that can then be saved and run by users with no understanding of SQL. In this way, IMSMANG unleashes the full power of SQL criteria, joins and subqueries in an easy-to-run interface.

  • It is recommended that information managers test their SQL in an external SQL editor prior to using it within IMSMANG since IMSMANG does not provide SQL debugging support.
  • Information managers can build complicated queries using SQL and combine them with other criteria, including parameters, to provide virtually unlimited search capabilities to IMSMANG users