Table of Contents
AssetCheck is a simple to use Android App designed and developed to allow the manual checking of an organisations assets. It has been designed for use by employees who need to go away from their desks to physically check the condition of the organisations assets. The type of organisation could be a railway, a water company or an oil refinery, in fact any organisation which owns equipment that needs to be checked on a regular basis so that the equipment is guaranteed to be maintained at or above a defined level.
Version 2 has been extended replacing the Asset screen with two screens, an Asset Group and Asset Detail. This allows the assets to be grouped thereby allowing a greater number of assets to be loaded, displayed and checked. It also has multiple pull down lists, different check options for different assets. Finally the screen displays have been updated.
Version 3, that is Version 2.1.0 has been modified so that it utilises Content Providers and another object called Loaders. These are objects that act beneath the bonnet, so to speak, but are recommended standards to follow.
The app is simple to operate and efficient in its operation. The app is made up of five screens as shown in the diagram below, with the Asset Screen and Asset Detail screen being at the heart of the app. The data being displayed is that given in the downloadable test files and shows railway assets located in the South Birmingham , England area.
The Asset Screen is shown on the left and gives a breakdown of the Asset entries broken down by group. For each group the total number of assets in that group is displayed together with the total number that have been checked.
Selecting a specific group by touching the entry leads to the Asset Detail Screen being displayed as shown on the right. This screen displays all of the entries that are within the group selected. The individual asset entry consists of the assets description and then below it the secondary description.
The details shown in the group is entirely dependent on what your organisation decides to group the data by. In the example shown below it gives the Ordinance Survey map location of the specific asset. On the right is a check box which when the asset has been checked will display a tick within the box. The last display item is displayed when the item has been checked and this is the found to the left of the check box. It is the entry that the user selects from a pull down list of values that the organisation decides define the possible states of the asset.
When the user selects an asset by touching the entry on the screen a dialog screen will be displayed. This consists of the details of the current asset at the top. There then follows a pull down list that identifies the condition of the asset and which has to be selected by the user. There then follows a free form text box where the user can enter additional information. Finally at the bottom are three buttons entitled "Cancel", "Reset" and “OK”. If the Cancel button is pressed then any values entered are ignored and no tick against the asset is made. It is assumed that the entry was pressed by mistake and it has not been checked. One of the alternative buttons is the OK button which if pressed identifies the asset as having been checked and the pull down list entry will be saved against the asset together with any free form text that has been entered. The asset will now be ticked as having been inspected. The other button is the "Reset" button which if entered clears the tick together with any text saved. It is there so that if an entry is shown as having been checked when it has not then the entry can be reset. The dialog can be seen on the left together with the dialog with the pull down list.
This then is the heart of AssetCheck app but we need to go through the following section on setting up the app.
The first task when setting up the AssetCheck app is to compile a list of valid values for the pull down list. The list of values used in the demonstration example is given below. The demonstration example is designed around an individual who carries out physical checks on railway equipment specifically bridges, points and clocks.
|Pull Down Group||Row Order||Description|
|B||1||No Work Required|
|B||2||Minor Masonry Work|
|B||3||Minor Steel Work|
|B||5||Major Work Required|
|C||1||No Work Required|
The pull down list consists of two groups, the first consists of seven options that describe the condition of the bridge and the type of repair work required. The second group describes the possible repairs that might be needed for points and clocks. It is expected that the first option would be the entry normally selected and that the free form text would only be entered when there was work required. The free form text would be used to give additional repair details.
The next stage would be to prepare the asset data that the individual is to carry out a physical check against. This data is assumed will be extracted from the organisations asset system. The data is to be output from the asset system into a flat file with a separator between each column of data. The first column is the unique identifier of the asset within the parent system. This will be used to identify the asset when the data is returned. The second column is a group identifier for the asset and is used to group the data. There then follows the pull-down list group identifier. Then a description of the asset and finally a sub-description of the asset which consists of information that will be useful for the operator. In this case we have entered the ordinance survey location.
While preparing both the asset data and the pull down list of data the value of the separator needs to be agreed. The most common separator is a comma but if there is a possibility of a comma being found in either the asset description or the asset sub-description then another separator will need to be found. In the example data I have used the “|” character as this character is rarely found in free form text.
We now need to enter the settings. To carry out this operation display the menu then press the settings option and the settings screen as shown below will appear.
The first setting is the I/O Directory setting. On selecting this option a dialog screen will be displayed allowing you to enter the directory where you want the files to be loaded from and the output files to be output to.This dialog screen is whown below on the right.
The next two entries are the names of the two input files, the asset csv file and the asset checked options csv file. In this instance I have called them InpAssetFile7.csv and InpAssetOpt7.csv. Both of these two example csv files can be downloaded from my web site.
We then need to enter the names of the three output csv files. The Asset Output file is the output file that contains the output of all the assets together with their current checked status. The Adjustments Output file contains a list of all the assets that have been checked together with the date/time that they were checked together with their current status and finally any free form text that was entered. The third output file contains the log data that is displayed on the log screen. A display of the Log Entries Screen is shown on the right.
All three output files will use the defined separator and output their data to the defined file name in the defined file directory. The exact output of the three output files is given in Appendix B.
The final setting is the File Separator which has already been discussed.p class=MsoNormal> That then concludes the settings screen options.
Our next stage is to load the data. To carry out this operation you will need to connect your mobile to a PC and then using Windows Explorer you will be able to see the Android Linux file structure as shown in the display on the following page. On this display the Download directory is highlighted and you can see that the two input flat files have been copied across to the mobile.
Having copied the data across it is now possible to load the data into Androids database, SQLite.
Display the menu and then access the Database screen as shown on the left. There are six options on the database screen, the first two are the import data options. Before loading the data it is often best to clear out the existing tables. Press the sixth button to “Clear All Data”. Then import the asset data by pressing “Import Assets”. Then import the pull down options by pressing “Import Options”. In all the instances a message will appear at the bottom of the screen when the operation is complete. It is useful at this point to move to the Log Entries screen and check the messages to confirm that the Asset Check Options data has been successful. If a problem has occurred you can import the data as many times as you wish. On each attempt the process will delete any existing Asset Check option data prior to attempting to import the new data.
It should be stated that the option, Clear All Data, does not remove the Asset Check Options. The data that makes up the pull down list and that is imported on the second option is only removed when new data is imported.
This then is the completion of the set-up operations.
Once the AssetCheck app is setup the operation is simple and intuitive. Go to the menu options and press the Asset entry so that the Asset screen is displayed. The groups of assets will then be displayed down the screen together with the total number in that group and the number that have been checked. Press the group that you want to work on.
Once you have physically checked the asset, press the asset entry on the screen and enter the condition of the asset from the pull down list together with any free form text if any additional information needs to be communicated. Once you press the OK button then the data will be saved and it will be recorded and displayed that the specific asset has been checked.
Work through the assets until all have been physically checked. Once this has been completed you can output the data from the Database screen for uploading to your organisations asset system.
|Asset Input Data|
|Pull Down Asset Condition List Data|
|1||Pull Down Group|
AssetCheck has been developed in Android Java and requires a minimum of Android api of 14. This is Android 4.0, Ice Cream Sandwich.
AssetCheck holds its data in a Content Provider. There are public constants within the class AssetContentProvider that give the URI's used. These are as follows:-