Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

sql server linking to exchange personal calender files

Posted on 2003-12-04
8
Medium Priority
?
591 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 525 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
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
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

Will your db performance match your db growth?

In Percona’s white paper “Performance at Scale: Keeping Your Database on Its Toes,” we take a high-level approach to what you need to think about when planning for database scalability.

Question has a verified solution.

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

International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
Windocks is an independent port of Docker's open source to Windows.   This article introduces the use of SQL Server in containers, with integrated support of SQL Server database cloning.
This video shows, step by step, how to configure Oracle Heterogeneous Services via the Generic Gateway Agent in order to make a connection from an Oracle session and access a remote SQL Server database table.
Viewers will learn how to use the SELECT statement in SQL to return specific rows and columns, with various degrees of sorting and limits in place.

660 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