Download - Android SharePoint
Android-SharePoint
Integration Framework Best of Breed Technologies
Working Together Peter Allen
Sean Hansen
Pawel Mozdzen
Malcolm Nguyen
Business Challenge
Key Challenges
•Selected to perform Americans with Disability Act
(ADA) Assessment
•Hundreds of buildings, thousands of rooms, Literally
millions of Square Feet to be assessed
•Physically Disparate, Remote Locations across the state
•Aggressive, Condensed Timeframe
•8 months total project duration
•2 month development cycle
•1 month setup
•1 month reporting
•4 months total in-the-field
What is an Assessment? •Sean to Introduce
•Institution
•Facility
•Building
•Room
•Element
•Element Requirement
Traditional Assessment •Volumes of Requirements
•Pen & Paper
•Camera
•Manual Data Entry once
back in office
•Linking and Synching
data and images
•Extremely
TIME CONSUMING
Our Solution
•Leverage existing
technology investment
•Use the right tool(s) in
the right environment
•Tablets in the field
•SharePoint for Back-Office
•Streamline assessment reqs
•Automate Data and Image
Synchronization
SharePoint and Android
•Back-Office: SharePoint 2010 Enterprise
•Accessibility Requirements and Setup
•Process Management
•Reporting and Cost Allocation
•In The Field: Android 4.0 Tablets
•Off-line Data collection
•Local Relational Database
•Image and Information Synchronization
SELECT THE RIGHT TOOL FOR THE RIGHT ENVIRONMENT
Bringing the Pieces Together SOLVING THE BUSINESS CHALLENGE WITH THE RIGHT TOOLS
Off-Line Availability
Rules-Based Data Collection
Dynamic & Lightweight
Tablet Features
SQL Lite DB SP Lists
Local Images SP Libraries
Transform Relational Database
To SharePoint Sites
Data Synchronization
View and Manage Assessments
Navigation
Report Results
Back-Office Features
Core Infrastructure
Accessibility Requirements
Security and Synchronization
Process Setup
SharePoint: Process Setup
Preparing for the Assessment
ADA Site Structure
Main Site Institution Assessment Sub Sites
Cost Codes
Elements
Element Requirements
Room Types
Element Room Types
Yard Room Types
Setup Lists Assessment Lists
Facilities
Buildings
Rooms
Element Inventories
Element Inventory Requirements
Tablet Solution
Architecture
Building, Room Elements & ADA Requirements
Stores
Data and
Images
Database and Images
sync to SharePoint
Tablet vs. Laptop?
•Android tablet
•Lightweight 1.3 pounds, .33” thin vs. 4 pound Laptop
•Back facing camera
•8 MP camera
•Touch interface
•Easy to use and enter data
•Long battery life
•12 – 16 Hours vs. 3-4 hours of a laptop
•Offline Database
•SQLite, Increased data integrity
App Overview Authentication
& Initialization
Navigation
& Data Structure
Assessment Data
Collection
Synchronization
Authentication & Initialization
NTLM Authentication
•Not supported by default
Android HTTP Client
•JCFIS Library (http://jcifs.samba.org/)
Initialization
•Pulls XML data from
SharePoint
•Data contains Building,
Room Elements and ADA
requirements.
Navigation & Data Structure
Institution
Facility
Building
Rooms
Yard
Elements
Elements
Navigation & Data Structure (cont)
Dynamic, rules based
structure based on
types of buildings and
rooms added in the
field
Capturing Data
Templated
•Elements are applied
based on the type of
room
Types of entry:
•Touch
•Keyboard
•Select Lists
•Camera
•Voice Control
Data Storage
SQLite
•Open source relational database which is
embedded into Android. Ships with version
3.4.0+
•Supports SQL syntax. Data types TEXT,
INTEGER and REAL.
Data Synchronization
Tablet Upload
Syncs When Online (connected)
•Multithreading image uploaded, uploads images,
checks if successful, marks as uploaded in the
database.
•Interruptions are actively managed by marking
records as “failed”, then load on next sync
SharePoint Web Services
•SOAP and REST Web Services Utilized
Client Applications
Web Services
API SharePoint
Data
Data Transfer – SP Web Services
SQLite
Institution
Site
1. CopyIntoItems to upload database to a
document library
2. Upload to upload images to a picture library
3. UpdateListItems to update metadata in the
picture library
Tablet Images
1
2
3
SP Event Receiver Institution
Site
Facility
Building
Rooms
Yard
Elements
Element
Requirements
Elements
Element
Requirements
Image Library
•Once uploaded an
event receiver
triggers integration
process
•Only new or changed
records processed
•Each SQLite table
processed, one at a
time
•Uploaded photos
linked to the lists
SharePoint Side Synchronization
Information Linking
•Using CAML queries to link incoming data with existing
lists
•Using GUIDs to uniquely identify tablet generated
records
Issues Encountered
•Speed Issues
•Synch Progress Reporting
•Error Reporting
SharePoint Back-Office
Features
Moving from User Interface to User Experience (UI UX)
SharePoint Interface Overview •Once the data was in SharePoint we needed to:
•Navigate from Facility to Building/Yard to Room
•View details about Buildings, Yards and Rooms.
•Report the results of the findings.
•We used:
•OOB Features
•Inline editing, Data View web part variable filtering
•Third Party Solutions
•SPServices (Marc Anderson), Easy Tabs (Christophe Humbert)
•Custom Code
•JavaScript, jQuery
Typical SharePoint UI
Optimized SharePoint UX
SharePoint - Navigation •This is not a site
hierarchy, but a data
hierarchy.
•All of the points are
lists with related data.
•Need a quick way to
traverse the ladder to
get to the right place
to view the data.
Institution
Facility
Building
Rooms
Yard
Navigation to Building/Yard/Room
•Created a custom cascading navigation
•Used SPServices and jQuery
SharePoint – Details Shown
•One page used for room view all filtered by URL
variable • http://portal.vanir.com/sites/ada/test/SitePages/Assessment-
Room.aspx?&FacilityId=1&BuildingId=1&RoomId=1
SharePoint – Edit Form Enhanced
•Use of jQuery, Easy Tabs
•Filter right web parts based on ID
•jQuery to make columns read only
Reporting
SharePoint - Reporting
•Used SSRS to aggregate the data from multiple
lists into one report.
•Created one report that can pull data
dynamically from different sites.
Root
Inst. A Inst. B Inst. C
SSRS
Report
SSRS
Report
Template
SSRS
Report SSRS
Report
SharePoint – SSRS Reports
SharePoint – Reporting Subscription
•Used SSRS
subscription
service to
publish reports
on a daily basis
to each
institution.
•Showed the
library on the
landing page for
each institution.
Join us right after the event here at the Woodlake Hotel for SharePint! Socialize and
unwind after our day of learning.