Thursday, December 5, 2013

Finding the Ultimate Parent in an Account Hierarchy with a Simple Formula

Traversing the account hierarchy via the Parent Account field can be challenging.

I was doing some research into including 'Ultimate Parent' in reports - so that you can see all Opportunities for any account in the hierarchy, for example.

I knew I had read something about it... and after spending a few hours searching, I discovered that not only had I read something, I had actually already implemented it. Ha.

I don't remember where I got this formula, so if it looks familiar to you, please let me know. It's a pretty awesome way to use standard functionality and can go through a hierarchy of up to 10 levels.

How to Do It:

  1. Create a text formula field named 'Ultimate Parent Name' on the Account object.
  2. Paste the following into the formula:
  3. IF( LEN(Parent.Name)<1 ,HYPERLINK("/"&Id, Name,"_parent"), IF( LEN( Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Id,Parent.Name,"_parent"), IF( LEN( Parent.Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Parent.Id,Parent.Parent.Name,"_parent"), IF( LEN( Parent.Parent.Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Parent.Parent.Id,Parent.Parent.Parent.Name,"_parent"), IF( LEN( Parent.Parent.Parent.Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Parent.Parent.Parent.Id,Parent.Parent.Parent.Parent.Name,"_parent"), IF( LEN( Parent.Parent.Parent.Parent.Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Parent.Parent.Parent.Parent.Id,Parent.Parent.Parent.Parent.Parent.Name,"_parent"), IF( LEN( Parent.Parent.Parent.Parent.Parent.Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Parent.Parent.Parent.Parent.Parent.Id,Parent.Parent.Parent.Parent.Parent.Parent.Name,"_parent"), IF( LEN( Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Parent.Parent.Parent.Parent.Parent.Parent.Id,Parent.Parent.Parent.Parent.Parent.Parent.Parent.Name,"_parent"), IF( LEN( Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Id,Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Name,"_parent"), IF( LEN( Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Name )<1 ,HYPERLINK("/"&Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Id,Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Parent.Name,"_parent"), "Ultimate Parent Beyond 10 Levels"))))))))))

What it looks like:



I can now use this field in reports for grouping or filtering if I want to see all Opportunities belonging to any account in this particular hierarchy. Cool!

Note: We've already implemented the customizable inline account hierarchy (that's what you're seeing in the picture, with the formula field below it), which displays the hierarchy as a visualforce page on the Account page layout. Super handy!

Thursday, October 31, 2013

Salesforce Admin Journal: Creating Groups based on Criteria with Workbench

I have so many posts in draft that I just haven't gotten around to finishing. So, instead of waiting and stressing and feeling ridiculous about it, here's something short that I stumbled upon today.

Scenario:

I wanted to create several public groups based on some criteria (in my case, I was using email domain). I discovered that was pretty much impossible in Setup. I was only seeing an option for creating a group and then adding users manually or by role/profile.



Solution:

  1. I created my groups in Setup. I don't think you can create a group without a single member, so I added someone I knew would be included anyway based on my criteria.
  2. I exported a query of all my active users as a csv (I used LexiLoader but Workbench would work great too).

    Select Id, LastName, FirstName, Email FROM User WHERE IsActive = True 
  3. I opened my csv in Excel and sorted it by the field I wanted to use to segment my groups and added a column for Group ID.
  4. I copied the id from the url for each newly created group.
  5. I pasted the group id into my sorted csv for each user as I wanted to segment them in my groups.


  6. I did a 'save as' on my csv.
  7. I used workbench to upload the file in the GroupMembers object.




Ta da! Done! Perfect!

This process was much easier for me than trying to manually add the users to these new groups.

I haven't used Workbench that much in the past but I'm realizing that it is pretty stinkin' handy. I've been a bit frustrated with LexiLoader lately (which is the Mac version of DataLoader) and I often miss the Excel Connector (which is only for Windows OS) but even that had its flaws. 

And that's all for today... until I finish those almost done blog posts that are glaring at me.


Thursday, July 11, 2013

Creating a New Salesforce Record with One Click: Passing URL Parameters from Google Form Responses

Today, I spent several hours figuring out a URL parameter hack to save me a few minutes of entering data into Salesforce.

While it may not have been the most efficient use of my time, I learned some things that will help me when attempting similar tasks in the future.

I thought I'd share the requirement I was facing and how I accomplished it.

The Requirement


I needed a way to have users submit information to create a Lead but not have to manually input this data directly into Salesforce. For my own sanity, I didn't want to the process of inserting records to be too labor intensive.

How I Did It


I started by creating a Google Form with the information I wanted to gather. Then, I went into the form responses spreadsheet and added a few more columns.

In these columns, I put a HYPERLINK() formula that would create a link into which values entered in the form would be passed as parameters.



The result? With a single click of the link I can create a Lead or Task in Salesforce with information that was entered into the Google Form.

The concept can be used in a variety of ways.

If you'd like a more in-depth explanation, check out the steps here.

PS - I love using Clarify to document my process, as shown in the link above. If you haven't checked it out and find yourself sending screen captures on a regular basis, do! This post wasn't sponsored and I'm not being compensated. I just love their product.


Jenna Weiner is a rather geeky girl with average social skills and an affinity for: Google Apps, Salesforce.com, Pinterest, Firefly, dresses, indoor plants and life-hacking. Have a suggestion for a post or a question? Feel free to get in touch.
Email: rathergeeky@gmail.com
Twitter: @RatherGeeky
LinkedIn: View My Profile

Tuesday, June 25, 2013

How to Save an Instagram Video to Your Computer

[UPDATE 6/26/13 10:45am] IFTTT just announced support for Instagram video triggers. I recommend that option instead of my post below. You can learn more here.

Before I get started with the main focus of this post, here is a little backstory:

I love Instagram for sharing photos of my life with my close friends and family, but soon after I started using it, I realized that accessing those images from my computer was rather tricky.

I could export my photos with Instaport.me but I wanted to automate the process.

I later discovered IFTTT, one of my favorite online tools. Using it, I created a trigger (known as a 'recipe') that saves a copy to Dropbox of any photo that I (or my husband) post to Instagram. Then, I can easily access all of our photos for printing, sharing or creating an annual yearbook of our life together, which I'm pretty sure will become a tradition.

And now, back to the reason for my post...

Instagram released video sharing functionality recently. After waiting a bit for the Android version to roll out, I was finally able to test it out today.

As soon as I was able to test out the video functionality, I wondered how it would interact with my IFTTT recipe. It seems that IFTTT doesn't support Instagram videos yet. Neither my video nor the still I chose to represent the video have been passed to Dropbox.

But, I found a manual workaround. I'm using Chrome, but I'm sure something similar could be accomplished with any other modern browser although a few steps might be different.

How to Save a Local Copy of an Instagram Video using Chrome:


1. Log into Instagram on your computer.

2. Locate the video.



3. Right click and choose 'Inspect Element.'


4. Locate the .mp4 file in the code that appears. It should be hyperlinked. Click on it.


5. Right click on the video that opens in a new tab.



6. Choose 'Save Video As'.

7. Choose a location to save the video on your computer.


And that's it! 

Do you have any thoughts about the new video sharing functionality in Instagram? Feel free to share them by leaving a comment.


Jenna Weiner is a rather geeky girl with average social skills and an affinity for: Google Apps, Salesforce.com, Pinterest, Firefly, dresses, indoor plants and life-hacking. Have a suggestion for a post or a question? Feel free to get in touch.
Email: rathergeeky@gmail.com
Twitter: @RatherGeeky
LinkedIn: View My Profile

Tuesday, June 18, 2013

Organize Your Tasks for the Day with the 1-3-5 Method

I've been using the 1-3-5 method of day planning off and on for the past few months. It involves making a list of what you want to accomplish for the day: 1 'big' thing, 3 'medium' things and 5 'little' things.

I first read about the concept on Lifehacker and liked it immediately for its simplicity.

I started off by jotting down my outline in a paper notebook. Then, I tried creating a template in Evernote, but it wasn't quite what I was looking for.

After a bit of googling, I stumbled upon this minimalistic website. Drafting my plan for the day now takes just a few minutes.



I pin the tab in Chrome and use it in conjunction with several other task management tools that I plan to blog about soon.

How do you organize what you want to accomplish during your work day? Please share your tips in the comments.


Jenna Weiner is a rather geeky girl with average social skills and an affinity for: Google Apps, Salesforce.com, Pinterest, Firefly, dresses, indoor plants and life-hacking. Have a suggestion for a post or a question? Feel free to get in touch.
Email: rathergeeky@gmail.com
Twitter: @RatherGeeky
LinkedIn: View My Profile

Friday, April 19, 2013

Using iDoneThis to Figure Out What the Heck I Did Today

I struggle with remembering everything I accomplished during my work day. I think iDoneThis will help.
"What did you get done last week?"

If answering that question would be a struggle, iDoneThis might be able to help.

My Problem with Logging Tasks


I've been using Google Tasks + Google Calendar to document my plans and accomplishments for the day. But, inevitably, I leave something out. I may, for example, spend several hours running unplanned reports and forget to add it as a completed task, or I get bogged down in email correspondence (which I never add to my calendar) and wonder where my day went.

And when it comes to preparing my timesheet, I sometimes struggle to see exactly how my week went.

Where iDoneThis Comes In 


After reading about it somewhere (Lifehacker? Twitter? Eh, I forget.) and only finding team account pricing, I suggested that iDoneThis should have a free personal account. Turns out, they already do. Yay!

While the name makes me cringe a little, the functionality is rather cool. Simply put, it lets you easily track what you accomplished each day by either 1) adding it to an online calendar, 2) replying to a daily email with a list of tasks or 3) adding things as they happen via email or the web interface.



It works for teams or individuals. I'm using it just for me.

There are some additional handy features, such as:



So far, I haven't missed a day; today will be my fifth day of use. I like the tickler that helps me remember what I got done.


I'm excited about the potential of displaying my iDoneThis daily reports on my Google Calendar (shown in purple in the screen capture below). I've contacted their help desk to suggest some improvements, but it's a great start.



Time will tell if iDoneThis becomes part of my long-term productivity plans. But, I definitely feel like it fills a gap in my process and I plan to continue using it.

Side note: iDoneThis hasn't asked me write this post, or compensated me in any way. I'm just a happy user wanting to share my experience.


Jenna Weiner is a rather geeky girl with average social skills and an affinity for: Google Apps, Salesforce.com, Pinterest, Firefly, dresses, indoor plants and life-hacking. Have a suggestion for a post or a question? Feel free to get in touch.
Email: rathergeeky@gmail.com
Twitter: @RatherGeeky
LinkedIn: View My Profile

Thursday, April 11, 2013

Getting Over Google Reader

Have you heard the news about Google Reader? (In case you hadn't, here's the low down.) The official date to say goodbye is July 1, 2013.

I'm sad to see a tool with such potential shut down, especially considering my affection for most Google products.

Did you know? You can use Google Takeout to download your Google Reader data.
I've been trying to reorganize the blogs that I follow recently, as I tried stepping back from Facebook as my preferred method for updates. So, I went through and relabeled, reorganized, unsubscribed and resubscribed. That's when I heard about the announcement.

I'm looking at this as an opportunity to start fresh... again.

I've taken a look at a few alternatives, like Feedly, Bloglines, Google Currents, Good Noows and Taptu.

I haven't found anything that I like as much as Google Reader. But, I think Feedly is my favorite option so far.

Have you settled on one yet? Let me know in the comments.


Jenna Weiner is a rather geeky girl with average social skills and an affinity for: Google Apps, Salesforce.com, Pinterest, Firefly, dresses, indoor plants and life-hacking. Have a suggestion for a post or a question? Feel free to get in touch.
Email: rathergeeky@gmail.com
Twitter: @RatherGeeky
LinkedIn: View My Profile

Friday, March 8, 2013

Video Tutorial: How To Use a List of Record IDs as a Report Filter in Salesforce

I sometimes have to generate reports based on specific record ids.

I've found a little trick to format these ids (if they are in a list) so that I can pop them in as either a report or list view filter.

View the tutorial by clicking on the screencapture below.




Jenna Weiner is a rather geeky girl with average social skills and an affinity for: Google Apps, Salesforce.com, Pinterest, Firefly, dresses, indoor plants and life-hacking. Have a suggestion for a post or a question? Feel free to get in touch.
Email: rathergeeky@gmail.com
Twitter: @RatherGeeky
LinkedIn: View My Profile

Wednesday, January 30, 2013

How I Changed My Attitude Toward Internal Tech Support

In the past, I've been inclined to have an 'it'll be quicker if I do it' attitude when it comes to providing tech support.
An important point to keep in mind if you're going to educate vs. enable is this: It's probably not going to save you time right now. You've got to think long term.
I recently realized that I was training my coworkers to be dependent on me. I decided I'd much rather educate than enable.

My new perspective:
  • I want to be prompt, polite and helpful.
  • I want the person I'm helping to be able to remember what I showed them.
  • In-person sessions can be useful but often forgettable and not everyone has the time.

With those points in mind, I've been putting a few handy apps and practices to good use to help me educate more and enable less.

Continue reading to find out why it doesn't always work, the name of my favorite app and how the magic actually happens.