Solved

sql server linking to exchange personal calender files

Posted on 2003-12-04
8
587 Views
Last Modified: 2010-05-18
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
0
Comment
Question by:markofsoton
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
8 Comments
 
LVL 30

Expert Comment

by:nmcdermaid
ID: 9873762
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.
0
 
LVL 30

Accepted Solution

by:
nmcdermaid earned 175 total points
ID: 9873908
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

0
 
LVL 34

Expert Comment

by:arbert
ID: 9874678
These were some pretty interesting examples too (this is more client side though):

http://www.databasejournal.com/features/mssql/article.php/1441931
0
NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

 
LVL 34

Expert Comment

by:arbert
ID: 9874682
Have you thought about setting up a public calendar?  
0
 
LVL 30

Expert Comment

by:nmcdermaid
ID: 9874755
Defintely, there is no point getting SQL Server involved if you can do it natively in Outlook.
0
 

Author Comment

by:markofsoton
ID: 9874791
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
0
 
LVL 30

Expert Comment

by:nmcdermaid
ID: 9875110
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.




0
 
LVL 34

Expert Comment

by:arbert
ID: 9876963
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
0

Featured Post

Get MySQL database support online, now!

At Percona’s web store you can order your MySQL database support needs in minutes. No hassles, no fuss, just pick and click. Pay online with a credit card.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Slowly Changing Dimension Transformation component in data task flow is very useful for us to manage and control how data changes in SSIS.
Ever wondered why sometimes your SQL Server is slow or unresponsive with connections spiking up but by the time you go in, all is well? The following article will show you how to install and configure a SQL job that will send you email alerts includ…
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
Via a live example, show how to backup a database, simulate a failure backup the tail of the database transaction log and perform the restore.

630 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question