sql server linking to exchange personal calender files

Hello,

I want to link to some outlook calenders (that have shares set up) to sql server, so i can get meetings and who is going to them into tabular form into a database, i'm happy enough with xp_send read mail and T_SQL but is there a way of getting a certain user's( a PA) meetings and the invitees into sql server.

I have admin access to a sql server box with smtp mail server set up and can link to the exchange server via Access 2000, but

I will up the points for a good technical answer but i anticipate the answer will involve buying propietry software or a link to a kb article.

Thanks

Mark
markofsotonAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

nmcdermaidCommented:
Using the OLE DB provider for Outlook, you should be able to connect and run queries using OPENROWSET (and similar functions like OPENQUERY)

You can try something like this (a T-SQL statement - run it in Query Analyzer to test)

SELECT * FROM
OPENROWSET(
'MSUSP.10',
'Data Source=NameOfYourOutlookServer')

This is just an example, it won't  work just yet but it gives you the idea.

You will still need to specify login details. possibly you will need to set a mail user who has access to all appointments.

Unfortunately I don't have a test outlook server or SQL server to play with!

Let me know if this piques your interest and I will have a more thorough look.
nmcdermaidCommented:
Further to this..

this may be closer to what is required... the trick is in getting the correct OLE DB connection string.

SELECT * FROM
OPENROWSET(
'Microsoft.JET.OLEDB.4.0',
'Exchange 4.0;'MAPILEVEL=Mailbox - James Smith|;PROFILE=MS Exchange Settings;TABLETYPE=0;DATABASE=C:\WINDOWS\TEMP\;",
'Select * from Calendar'
)


If you run this on your SQL server, and you have the JET provider installed (you may need to install MDAC to get the Jet provider), it should return the contents of the calendar.

Then you can filterthe contents using a Where clause..., and insert into a tbale if required using INSERT

In theory! As I said I can't test it!




I stole the string from this page if you need more info

http://support.microsoft.com/?kbid=275262

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
arbertCommented:
These were some pretty interesting examples too (this is more client side though):

http://www.databasejournal.com/features/mssql/article.php/1441931
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

arbertCommented:
Have you thought about setting up a public calendar?  
nmcdermaidCommented:
Defintely, there is no point getting SQL Server involved if you can do it natively in Outlook.
markofsotonAuthor Commented:
there is no outlook or mapi services set up on the box i am trying to set one up i know my exchange server name but i get prompted for domain, i've tried AD and all the Host name bits dns names and ip's i can muster but none of them is playing. nmcdermaid's second string got me this far but i am stuck is there a dos command to determine your 'domain' i am as you can see confused
nmcdermaidCommented:
I guess it is asking for the domain that the Outlook exchange server is on.

At this point, as Windows Help is fond of saying you may need to 'Ask your network administrator' (but I am the network administrator!!!  aaaarrrrgh!)

I'm not 100% sure how to find that out. I can only suggest that you go log on to the Exchange server, check the list of domains in the logon drop down and if there are any in the list besides the actual name of the exchange server, use that.


The other option is to 'push' the data. Make a VBScript which runs on your exchange server which pushes data to your SQL server.




arbertCommented:
I had tried this product a while back--really interesting product that allows Outlook to store directly in SQL Server or MSDE--might be worth a download and a trial:

http://www.tabtag.com/home/tabtag.aspx
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft SQL Server

From novice to tech pro — start learning today.