Android SharePoint

Preview:

Citation preview

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.

Recommended