Wednesday, June 29, 2011

Tips&Tricks: Records Created By the Current User

Here's a little formula that I came up with that comes in handy when you need to create reports and dashboards that display things like Activities, Cases, Leads, Opportunities, etc that were created by one user, but might now be owned by another user.
Unfortunately the built-in Salesforce "My..." and "My Team..." filters only reference the record Owner field, so you're forced to clone reports and edit the Created By filter (making the Running User pretty much useless)

Until now....

Here's what you do:

Create a custom field on the objects that you need to track CreatedBy (User).
Field Name: CreatedBy$User
Datatype: Formula
Return Type: Number, 0 decimals
Formula: IF(CreatedById = $User.Id , 1, 0)

Now just add a simple filter:
Field: CreatedBy$User Operator: [equals] Value: 1

to your reports and now use the Running User to create Scheduled Reports and Dashboards that display anything a user created. Now if you need to create a new "Created By... Dashboard" all you have to do is clone the Dashboard and change the Running User (no more cloning and editing reports for each user)

it also works with List Views too!

Monday, June 13, 2011

Reset Reminder Button - A fix for the Dismiss All Reminder Pop-up window

Oops! I Didn’t Want to Dismiss All  by Kyle Thornton

The infamous Matt Brown threw out a question the other day
After some back and forth with Matt it turned out there are many questions on the Answers forums related to getting reminders back after a user clicks ‘Dismiss All’ on the reminders pop up. I decided to give this a stab and the following is the result.
I created a Visualforce Page that simply has a button on it along with a disclaimer of what the button will do.
The main purpose of the controller is to query for all open tasks and future events owned by the current user and set the reminder flag to true, allowing them to show up in the reminder pop-up when logging in. The controller will not set the reminder flag for any Tasks that never had a reminder set.  We know this because the Reminder Date is null.  Had it been set previously, it would still be set; the reminder flag was just unchecked.

Finally, I created a very simply home page component with a link to the visualforce page. The component name is “Reset Reminders For My Open Tasks and Event” and the html (be sure to check the ‘show html’ checkbox) is:

My only change would be here and replace the section of code that created the below Homepage component:
 with a button. The button on the Homepage looks like this:
Here is the code for the button:

I figured the easiest way to show the functionality was with a quick demo.

Finally, you can install an unmanaged package of the home page component (don’t forget to add it to a page layout), visualforce page, controller and test method with this link:
*Remember, you can change the path to… to install to a sandbox.

This excellent Post was from a fellow blogger Kyle Thornton over on his blog

Tuesday, May 24, 2011

Mass moving Reports from one folder to another using the Eclipse IDE

In the Eclipse IDE

  • Create a new project
  • Include ‘reports’ or more specifically the report folders you are concerned with
  • Let Eclipse refresh the project with the reports metadata
  • In Eclipse, navigate to the reports folder you just download and then select the Report Folder you want the reports you want to move from, right click and select Properties

  • Take Note of the Location. This is the path where the metadata files are located
  • Open a windows explorer window and navigate to that path

  • Highlight all the Reports you want to move and right click Cut
  • Still in window explorer navigate back to the list of report folders and expand the one you want to move the reports to and right click and Paste
  • Now back in the IDE highlight the folder titled Reports and right click and Refresh and then right click again and - Save to Server

  • BOOM! Now you have moved your reports.

Guest Post on - Core Admin Productivity

Mike Gerholdt has an awesome blog that is worthy of a read. I was asked by Mike to write a post for a series he has been covering titled "True to the Core Series." My post is concerning Admin Productivity and some of the deficiencies around Admin functionality. Take a look: Core Admin Productivity

Friday, April 22, 2011

How to create an Email Button with a record link

Hi Gang,

Here's a little nugget I just wanted to pass on. It's a piece of code that you can use to create a custom button on the Record Detail Page in SFDC that will open the users default email program and create an email with a URL Link to the record in SFDC, and the SFDC Object and Record Name in the Email Subject.

It comes in handy when one of your more Technology Challenged users is having a problem with a specific record and you don't feel like having that awkward "What is a URL and Record ID???" conversation with them.

Label: Email

Name: Email

Object Name: Opportunity

Display Type: Detail Page

Button Behavior: Execute JavaScript

OnClick JavaScript: javascript:location.href='mailto:?SUBJECT='+document.title+'&BODY='+escape(location.href);