H T C ll b ti l H T C ll b ti l M E l M E l How T o Collaboratively How T o Collaboratively Manage Excel Manage Excel‐ Based Process Data in SQL Server Based Process Data in SQL Server Speaker: JB Kuppe Boardwalktech Silicon Valley SQL Server User Group June 2011 Mark Ginnebaugh, User Group Leader, [email protected]
20
Embed
Microsoft SQL Server - How to Collaboratively Manage Excel Data
How to Collaboratively Manage Excel-Based Process Data in SQL Server
Your organization probably uses Excel for a variety of business processes including budgeting, sales revenue forecasting, product demand planning, and project management.
You'll learn how to set up and manage multi-user collaborative processes using Excel as the data form and SQL Server as the data store and process engine.
You'll learn:
* How to enable cell-level collaboration between multiple users using Excel and SQL Server.
* How to effectively integrate desktop Excel-based process data with enterprise applications.
* How to mitigate the limitations normally associated with Excel-to-database connections including record locking (check-in/out), conflict management, and change management and versioning.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
H T C ll b ti lH T C ll b ti l M E lM E lHow To Collaboratively How To Collaboratively Manage ExcelManage Excel‐‐Based Process Data in SQL ServerBased Process Data in SQL Server
EAI , BI $$$ Iteration B: Cleansing and schema changes
Technology Focus
Normalized Normalized
$$ Expensive Iterations
Normalized Table
Normalized Table
select cust.companyname, cust.contactname, orddet.quantity, ord.orderdate, prod.productname from customers cust inner join orders ord on cust.customerid = ord.customerid inner join [order details] orddet on ord.orderid = orddet.orderid inner join products prod on orddet.productid = prod.productid where prod.productname =j p p p p p p p
Backward looking versus forward looking..
Export to Excel
Change history
Email to everyone
Maintain data connection ‐ data location changes
Create dependent data calculation
Create multiple views for different users
location changes
Merge in other data
Create
Define schema (create from Excel)
Create a database schema, define entity relationshipCreate a database schema, define entity relationship
Manage
Create UI in Excel to match database schema
Create a J2EE or .Net data update layer
Program ability to create new record from Excel
Program access control and consolidation rules into every sheet connected to RDBMS
Versioning for all schemas has to be programmed Versioning for all schemas has to be programmed
Change management has to be programmed
Formula support needs to be programmed
Check‐out/in mechanism used to work on data
Only “latest” change wins
Report
For every report, run a SQL query to filter the data, paste it in Excel, t i t il tcreate pivots, email reports
Do process again if data changes/version “old” reports
OLAP
Columns of Data• Time
Rows of Data• Product• Customer• User
• Business variableUser
How to Collaborate?How to Collaborate?
Excel “Connectors” do not work• Rigid model pushed to spreadsheet
• No persistence
Excel is a business process platform• Position of data drives business logic• Complex relationships (formulas)• Flexibility• Powerful data management UI (colors
Emailing does not work• No change management
• Versioning nightmare No persistence
• No change/audit
• No access control
• No positional integrity
RDBMS
• Powerful data management UI (colors, conditional format, picklists)
• Offline environment/mature data• “Save‐as” local versioning=scenarios
Versioning nightmare
• No central version
• No access control
• Data consistency
Change values and formulas
V2 (R/C,U,T,Net Change)
V1 (R/C,U,T)
• Patent awarded 2008
‒ Positional cell data management“Positional” Data Structure
‒ Range vs record transaction control
‒ Single flexible schema
• Excel range creates/drives shareable database model
Columns
Versions (R/C Position, Structure, Net Change, User, Time)
database model
• Scalable multi‐user collaboration
‒ Work “off‐line,” no check‐in/out
‒ Dynamic access control
DataRange2
User Access 1
User Access 3
DataRange1
User Access 2Row
y
‒ “Submit/Refresh” sharing
‒ Centrally manage collaborative data
‒ Net‐change versions vs. overwrite
ColumnBusiness Logic
‒ Cell‐level change tracking
• Integration with any App/DB
• Application flexibility
l f l
Other App/DB
‒ One platform, many solutions
Addressability to Business Objects (Table, Row, Column)