This product looks like a leap in using SSRS with SharePoint lists as a data source
Enesys RS Data Extension
As pointed out in Creating Reports From SharePoint Lists Using SQL Server Reporting Services (SSRS) , it is pretty much impossible to directly query from more than one list in SSRS using the web services as a data source. Even with a single list, doing so requires some fine-tuning of the XML request, looking up a list and view guid, and the whatnot. At this point, nothing I would be prepared to hand off to the typical report analyst role.
Looks like the Enesys product makes it pretty clear to pull from a SharePoint list by name, and some features to pull from multiple lists in a query of some sort...
Also, looking at the Enesys IS data extension asserts to be able to pull from SharePoint lists directly, I've only, again, used the web services in SharePoint to pull from a single list as XML - there is a lot of hand-coding in the process.
Will be grabbing an evaluation copy soon and see how it works!
Tuesday, September 21, 2010
UML stencils for Visio
Ran across UML stencils for Visio, which appear to be an open source download.
UML, is a codified way for analysts to present and document their work, and even Microsoft Visio Professional's UML stencils don’t truly conform to latest version of UML, but these stencils are closer…
Visio Templates for UML 2.0
UML, is a codified way for analysts to present and document their work, and even Microsoft Visio Professional's UML stencils don’t truly conform to latest version of UML, but these stencils are closer…
Visio Templates for UML 2.0
Saturday, September 4, 2010
Mashup Development
Reading the ProgrammableWeb and other sites, recently, was feeling behind on the technology of creating mashups.
Decided to at least start a very basic one, to remind myself of the steps, and start hooking into a more modern API. Started with... Programmable Web's 'How to make your own mashup' article, and browsed through the APIs. I had did maps years ago with Virtual Earth and Google Maps, and while my skills are completely up to the latest mapping, creating yet another mapping mashup didn't enthrall me, and I couldn't come up with any compelling ideas.
So, settled on using LinkedIn's API (which has a bad link as of this writing, but found the correct link to LinkedIn's API site) and started up using the Company Insider Widget.
Had to remind myself some of the basic layout of JavaScript, The Linked In api thus far has been simple to use and their documentation clear.
The View Source bookmarklet and/or IE 8 Developer Tools came in handy, for those unfamiliar, the 'View Source' in the web browser proper shows the source of the page upon load from a web server. When dynamic script modifies the page, another tool is needed to show the source of the page as 'currently' rendered.
So my work in progress project is the Real World IS Company Viewer allowing some ways to display various company information. Definitely just a starting point, kind of stumbled upon a feature in the API that adds information about a company each time a certain API is called, rather than replacing the existing information. With that, I'm envisioning expanding the interface to build up a list of companies to 'watch'
Decided to at least start a very basic one, to remind myself of the steps, and start hooking into a more modern API. Started with... Programmable Web's 'How to make your own mashup' article, and browsed through the APIs. I had did maps years ago with Virtual Earth and Google Maps, and while my skills are completely up to the latest mapping, creating yet another mapping mashup didn't enthrall me, and I couldn't come up with any compelling ideas.
So, settled on using LinkedIn's API (which has a bad link as of this writing, but found the correct link to LinkedIn's API site) and started up using the Company Insider Widget.
Had to remind myself some of the basic layout of JavaScript, The Linked In api thus far has been simple to use and their documentation clear.
The View Source bookmarklet and/or IE 8 Developer Tools came in handy, for those unfamiliar, the 'View Source' in the web browser proper shows the source of the page upon load from a web server. When dynamic script modifies the page, another tool is needed to show the source of the page as 'currently' rendered.
So my work in progress project is the Real World IS Company Viewer allowing some ways to display various company information. Definitely just a starting point, kind of stumbled upon a feature in the API that adds information about a company each time a certain API is called, rather than replacing the existing information. With that, I'm envisioning expanding the interface to build up a list of companies to 'watch'
Thursday, August 12, 2010
Microsoft Web Syndication
Added a Microsoft Web Syndication widget to the Real World IS page. The widget is pretty functional, because it is actually shows a popup of content without redirecting the viewer (will have to learn more of the javascript to do that)
Learn more
Learn more
Tuesday, June 29, 2010
Virtual Business Cards Now Available to MCPs
Created a Virtual Business Card with my most recent MCP:
If you are Microsoft Certified Professional, get yours now
If you are Microsoft Certified Professional, get yours now
Sunday, May 9, 2010
SQL Server Schemas
Posted a reply to:I am not a Schema
I've started adopting schemas, and have migrated a system that originally was designed with multiple databases to serve a single end data warehouse into schemas for two reasons:
1. DRI across schemas - before schemas, i had the ugly option of a trigger, or would even sync multiple copies of the same data between databases within the same server to provide a base in each db to DRI against. If a deletion or update in one, or in a master set, conflicted, it would be discovered at sync time rather than at the time of the change itself. Generally, in an OLTP application avoided the architecture that requires DRI to cross schemas. In the OLAP-oriented solution, it has worked well to have a single schema containing measure metadata, to provide validation for user entries in another schema, and provide a base for star schema tables in another schema.
2. Database objects and scripts can be written polymorphically - in a multi-tenant architecture, multiple databases required any views, sprocs, user-defined functions, or ad hoc scripts to reference the databases they touched (i.e. "SELECT * FROM {Customer}SourceData.dbo.RawData" with the {Customer} parameter having to precisely and manually be filled in...each... and...every... time a script was ran... and carefully too, to avoid accidental cross-polinations. With schemas, the SQL becomes "SELECT * FROM SourceData.RawData", and can be deployed across customer databases with no changes, and no risk of accidental cross-polination of data.
I've started adopting schemas, and have migrated a system that originally was designed with multiple databases to serve a single end data warehouse into schemas for two reasons:
1. DRI across schemas - before schemas, i had the ugly option of a trigger, or would even sync multiple copies of the same data between databases within the same server to provide a base in each db to DRI against. If a deletion or update in one, or in a master set, conflicted, it would be discovered at sync time rather than at the time of the change itself. Generally, in an OLTP application avoided the architecture that requires DRI to cross schemas. In the OLAP-oriented solution, it has worked well to have a single schema containing measure metadata, to provide validation for user entries in another schema, and provide a base for star schema tables in another schema.
2. Database objects and scripts can be written polymorphically - in a multi-tenant architecture, multiple databases required any views, sprocs, user-defined functions, or ad hoc scripts to reference the databases they touched (i.e. "SELECT * FROM {Customer}SourceData.dbo.RawData" with the {Customer} parameter having to precisely and manually be filled in...each... and...every... time a script was ran... and carefully too, to avoid accidental cross-polinations. With schemas, the SQL becomes "SELECT * FROM SourceData.RawData", and can be deployed across customer databases with no changes, and no risk of accidental cross-polination of data.
Friday, April 2, 2010
IIL's free series of podcasts on Business Analysts
The International Institute for Learning (IIL) has a free series of podcasts on Business Analysts (http://www.iil.com/Freeresources/podcasts.asp) Some of the content will be old hat to very experienced PMs and analysts. It is organized, though and presents some good benchmarks for the business analysis function on a project.
Since my current project is a business intelligence projects, I jotted down thoughts while going through the podcasts as to where and how I might tie some of the general skills to a specific action or deliverable in this type of project.
Role of the Business Analyst - define the "solution" - people, processes, and technologies used to solve a business issue
Liaison between IT and the business - Assign an analyst to different scope of measures
Requirements manager - an analyst can be the requirements librarian and check for consistency between requirements gathered and authored by a team of analysts
Since my current project is a business intelligence projects, I jotted down thoughts while going through the podcasts as to where and how I might tie some of the general skills to a specific action or deliverable in this type of project.
Managing Requirement Changes
- Static prototyping - Create an version of reports in Excel using 'hard-coded' data, or based on your current reports/cubes showing differences
- Manage expectations of stakeholders - that they will have the time to review a prototype and provide feedback - give a set start and end date for when certain analytics are 'open' for comments
- Traceability matrix - trace each measure back to an original request - approval
The Value of Identifying the Right Business Issue
- Using an Ishikawa Diagram to focus on high-priority issues. In a BI project, there are often discrepancies between multiple potential sources of a given measure. Typically, there a multiple explaining causes
- Use an Ishikawa Diagram to root cause the discrepancy
- Identify contributing causes
- Then further research can be done to numbers - how much of the discrepancy is 'explained' by that particular cause
- Focus on the cause with the largest amount 'explaining' the discrepancy
- Take into account the payoff of time, your scope may or may not allow you to solve causes 'explaining' very small amounts of discrepancy (i.e. 1-5%)
- 15 words or less - A technique used to encourage an issue to summarized to a concise, but complete statement (note my 15 word summary :) this will be useful in constructing data dictionaries
Requirements Process - The Key to Project Success
Role of the Business Analyst - define the "solution" - people, processes, and technologies used to solve a business issue
Liaison between IT and the business - Assign an analyst to different scope of measures
Requirements manager - an analyst can be the requirements librarian and check for consistency between requirements gathered and authored by a team of analysts
Tuesday, January 12, 2010
Cool OneNote feature you might not know about
If you've been tagging your notes in Microsoft OneNote as 'To Do', cool feature, but you have to review every page to see if you finished all your items, right?
Or...on the standard toolbar, click Tag, then 'Show All Tagged Notes':
Just what you needed - another list o' tasks!
Or...on the standard toolbar, click Tag, then 'Show All Tagged Notes':
Just what you needed - another list o' tasks!
Subscribe to:
Posts (Atom)
Labels
SQL Server
(15)
Project Management
(5)
Dot Net Framework
(4)
SSIS
(4)
Maxims
(3)
Virtual PC
(3)
WMI
(3)
ASP.net
(2)
Data Warehouse
(2)
Database
(2)
Development
(2)
InfoPath
(2)
Oracle
(2)
PMI
(2)
PowerShell
(2)
SQL Server Integration Services
(2)
Software
(2)
Source Code Control
(2)
web design
(2)
Active Directory
(1)
Business Analysis
(1)
C#
(1)
CSS
(1)
Career
(1)
Click-Once
(1)
Flash
(1)
FoxPro
(1)
HTML
(1)
IT Support
(1)
JavaScript
(1)
LAMP
(1)
MCP
(1)
MCTS
(1)
MOSS
(1)
Microsoft Access
(1)
Microsoft Money
(1)
ODBC
(1)
Office 2007
(1)
OneNote
(1)
Open Source
(1)
PMP
(1)
Reporting
(1)
SQL Server 2008 R2; SQL Server
(1)
SQL Server Express
(1)
SQL Server Reporting Services
(1)
SSRS
(1)
SharePoint
(1)
SharePoint Server
(1)
SkyDrive
(1)
T-SQL
(1)
UML
(1)
VB.net
(1)
VBScript
(1)
Visual Studio
(1)
WMI; PowerShell
(1)
Web
(1)
Word 2000
(1)
Word 2003
(1)
mashup
(1)