Solved

Sending a "message" to another system or another user

Posted on 2010-08-17
4
803 Views
Last Modified: 2012-05-10
First, I have as workbook I am using in a way that is NOT recommeded. Sharing... I am resolving that by migrating to ACCESS, so please DONT BUST ON ME)
I would think that my request would also be applicable for my long term fix in access as well.

I have a network of users that are working on different projects. What I would like to do is when an event happens, to send a message (prefer IM) to a user to get their attention and let them know something has happened and needs more attention. I would also "like" to incorperate this as part of my error handling process, but if I can get a generic version of something, then I can make the mods for that.

I can do this via email, but I do not want to clutter up the email inbox, as there could be many sends during the day.

We use Office Communicator 2005,  and I am looking to see if there is a way that I could use this. I have tried the code below, only to find out that Office Communicator 2005 does not have SENDTEXT. Is there another way to handle this in Office Communicator 2005?

Here is the code:
Sub sendIM()

Dim msgr As CommunicatorAPI.IMessengerConversationWndAdvanced
Dim ToUser As String

Dim message As String

Application.ScreenUpdating = False

 ToUser = "me@mycompany.com"
  ToUser1 = "MyName@division.MyCompany.com"  'Using this email format fails. This IS how my email is, it DOES have a subdomain!

message = "test vba communicator"

On Error GoTo 0

Set msgr = Messenger.InstantMessage(ToUser1) 'Using this email format fails. This IS how my email is, it DOES have a subdomain! This is WHERE it fails with a "RUN TIME ERROR '-2147467259 (80004005) method 'InstantMessage' of object 'IMessenger3' failed"


'
'Send message to window
'
msgr.SendText (message)  ' Only for comm 2007 and later.... So I also get an error here.
msgr.Close

Application.ScreenUpdating = True

End Sub

Now, yo may say why just upgrade to Communicator 2007, and I would say I would love to, but, being in a large company, all systems are locked down, and I have tried to go that route, but IT says NO.

NET SEND is disabled. And I don't have rights to Enable it. Tried that also...

So, I can really only work with EXCEL/ACCESS for my solution.

Another possible way I have thought of is send from one instance of EXCEL on one machine to another instance on a different machine. This COULD be done by passing a message via a shared workbook, but I am trying to get away from that and I also don't have the overhead to keep watching that worksheet., so I am looking for something else.

Thanks

Bruj
0
Comment
Question by:Bruj
  • 2
  • 2
4 Comments
 
LVL 47

Accepted Solution

by:
Dale Fye (Access MVP) earned 500 total points
Comment Utility
Will all of your users have your Access application loaded all the time?  If so, you could write your own IM functionality within the application.  You would need a table with fields like ID, UserFrom, UserTo, SentDateTime, Message, MarkAsRead.

when you want to "send a message" you just write a record to this table.  Then you have a form in each users application that is loaded on startup and hidden immediately (unless there is a message waiting for that individual, in which case you would display the message(s)).  Then, on that form, the user could reply, delete the message, or mark it as read.  This is really pretty simple to implement if your users will actually be using the application all the time.
0
 

Author Comment

by:Bruj
Comment Utility
would not "monitoring" it take a lot of overhead?
0
 
LVL 47

Expert Comment

by:Dale Fye (Access MVP)
Comment Utility
not really, set the Timerinterval to once a minute or so, then use the timer event to check to see if there are any unread messages for the user.
0
 

Author Closing Comment

by:Bruj
Comment Utility
Created a second workbook(shared) that is being monitored, when a cell changes, the message is displayed on system A
0

Featured Post

Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

Join & Write a Comment

QuickBooks® has a great invoice interface that we were happy with for a while but that changed in 2001 through no fault of Intuit®. Our industry's unit names are dictated by RUS: the Rural Utilities Services division of USDA. Contracts contain un…
Introduction The Visual Basic for Applications (VBA) language is at the heart of every application that you write. It is your key to taking Access beyond the world of wizards into a world where anything is possible. This article introduces you to…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

771 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

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now