Saturday September 04 , 2010

Archive for July, 2010

Knowing what your employees know is more imperative than ever … Dodd-Frank Whistleblowers

With Dodd-Frank signed into law by President Obama, understanding what is going on in your organization from a people-perspective is more important than ever. Under the Enhanced Whistleblower Protections, The SEC is now empowered to provide substantial monetary rewards for whistleblowers. Whistleblowers are eligible for rewards of 10 to 30 percent of the collected funds on any sanction over $1 million, providing a significant monetary incentive to proactively cooperate with the government. The inherent risk here is that the monetary rewards are substantial enough to forego reporting of discrepancies or issues to internal company management before approaching the SEC for resolution and ultimately, reward.

It is imperative that companies are able to identify areas of risk vs Dodd-Frank and to rectify any possible situation as fast as possible. This means understanding your employees interactions in real-time – both topically and structurally within your company. Anomalous communications and interactions should be identified and examined proactively and investigated further before much greater liability is incurred. With possible huge payouts, the incentives are all on the side of governmental intervention vs. internal resolution. Vigilance is more important than ever both from the governance perspective as well as the risk management perspective.

Question:

What is your company doing to improve insight into employee interactions and their meaning vs your company’s risk profile?

 

ProjectGoo: Recent FAQs

ManageScope offers free email support for ProjectGoo and we’ve fielded some questions about the application that we’d like to share with our user community. While we’re still happy to receive the email requests, these FAQs and their answers might jumpstart your ProjectGoo experience.

  • Is Microsoft Project required to use ProjectGoo?

Yes. The Project Manager client relies on MS Project 2007 Standard or Professional to create the project plan and also requires MS Project to receive assignment updates, etc. The Team Client does not require MS Project and can be distributed to as many project team members as you’d like.

  • Is there a charge per user for ProjectGoo?

No. ProjectGoo is completely free for an unlimited number of users and projects.

  • Can you customize ProjectGoo to my company’s requirement (x)?

Yes! We’re happy to work with you to customize ProjectGoo. We’ve fielded requests to integrate with Jira, Mediawiki, and SharePoint and while there is a cost associated for the service, we’re happy to implement your requirements. Feel free to contact us with your needs.

  • When is the next release of ProjectGoo and will it work with Project 2010?

ProjectGoo is scheduled for its 3.0 release end of Q1 2011 and will work with Project 2010, .NET 4.0 and Windows 7.

  • I’m having issues installing ProjectGoo. The installer won’t launch.

Please review the system requirements for the application. Make sure that you have .NET 3.5 installed and that you have both a Google Docs and Google Calendar account. All installation issues reported so far have related to a lack of one of the three requirements.

If you don’t see the answer to a question you have, please email ProjectGoo Support. We’re excited to help jumpstart your use of  the application.

 

Sending Multiple Notifications in SharePoint

In Sharepoint there are many ways of notifying a user when an item gets updated on a list.

1. Setting up an alert.

2. Subscribing to an RSS Feed.

3. Using workflow via the List Settings, Sharepoint Designer or Visual Studio.

All these mechanisms have their pros and cons, but there is one thing that is not supported by any of them: Sending a notification to users when they are set up in a multi-choice person list within the SAME list. Additionally, 1 and 2 above require the user to set this up manually on their own, while 3  is much more complicated and has limitations. I chose to write my own Event Receiver in order to accomplish this task.

I won’t go into the details of creating an Event Receiver in Sharepoint and publishing it, since there is already a lot of documentation on this on the internet. In my example, the List Name is called “MyDocs” and the field that contains the users is called “Notifiers” (note: this field can contains a multiple users).

    public class MyDocsItemEventReceiver : SPItemEventReceiver
    {

        public override void ItemUpdated(SPItemEventProperties properties)
        {
            base.ItemUpdated(properties);
            DisableEventFiring();

            try
            {
                SPListItem myDocsItem = properties.ListItem;
                var notifiers = myDocsItem["Notifiers"] as SPFieldUserValueCollection;
                SendEmailToNotifiers(notifiers);
            }
            finally
            {
                EnableEventFiring();
            }

        }
        private void SendEmailToNotifiers(SPFieldUserValueCollection _notifiers)
        {

            if (_notifiers != null)
            {
                List<string> _notifierList = new List<string>();

                foreach (SPFieldUserValue _notifier in _notifiers)
                {
                    if (!string.IsNullOrEmpty(_notifier.User.Email))
                        _notifierList.Add(_notifier.User.Email.Trim());
                }

                if (_notifierList.Count > 0)
                {
                    SmtpClient _smtpClient = new SmtpClient();
                    _smtpClient.Host = "email_server_name";
                    _smtpClient.Port = 25;
                    _smtpClient.EnableSsl = false;

                    MailMessage _mailMessage = new MailMessage();

                    foreach (string _reviewer in _notifierList)
                    {
                        _mailMessage.To.Add(new MailAddress(_reviewer));
                    }

                    _mailMessage.From = new MailAddress("fromaddress@company.com");
                    _mailMessage.Subject = "the subject line";
                    _mailMessage.Body = "the body of the email";

                    _smtpClient.Send(_mailMessage);
                }
            }

        }
}
You will need to import “System.Net.Mail” and get the mail server/port info, but it gives you the basis of accomplishing a very flexible solution for sending emails from an updated list. A possible use is to send notifications from Project Server 2007 when Issues/Risks are updated. The Event Receiver above will send emails to the users that are defined in the list item itself without having to create another list for lookup or managing a sharepoint group which usually required elevated privileges.
Enjoy!