D
DCIApps
My Logins and Updates
My Logins and Updates
Lightning Widgets

About My Logins and Updates

Who logged in when? What did I update in that timeframe?
My Logins and Updates consists of three Lightning-component-based widgets.
  • One widget provides user views of their own actual personal logins.
  • Another widget shows others logging in on their behalf.
  • The history widget will show the users updates history on a selected object for the same selected timeframe from personal logins.

Logins and Updates Guide

Lightning Experience Only
My Personal Logins widget list shows login Location, Type whether by desktop or laptop (either considered a PC) OR by mobile app or mobile browser, and the Date Time in GMT of the login.

Others Logins As Me widget list shows the User who logged in as you, Event of login or logout, and the Date Time in GMT of the event.

Starting on Home Page
Initially the widgets show zero days of log in information. The widgets load this way to avoid using resources until the user selects the number of days for either My Logins and/or Others Logins.

*Note: Dont bother clicking the Get History button at this point. You wont be able to get any of your update history without selecting some days range first.

Initial View
Click to enlarge
Select Number of Days

On either widget the user can select the number of days past for displaying login information. Options are fixed by picklist None (=0), 7, 15, 30, 90, or 180.
(Since personal logins are common My Personal Logins selection is limited to 90 days although obviously that result could be a long list.)

Get History

After setting the number of days on My Personal Logins widget you can use Get History and this widgets days value will be passed to the history widget. There you can select an object to view your TRACKED* updates for the past selected days. (see next tile)
* Only objects and their fields with history tracking set will be displayed.

Login Views
Click to enlarge
Having clicked Get History

On the updates history widget select an object Account, Opportunity, or Lead to see what updates you made - on fields that are tracked - in the timeframe selected from My Personal Logins widget.
Notice the message "Your updates for past 7 days" letting you know the number of days you selected from My Personal Logins.

Now just select one of the objects you want to see your history of updates. Selecting triggers a server request that will return update history for the selected object.

History Landing
Click to enlarge
Upon Selecting an Object

If you selected Account you will see something like this.

The output table as you can see contains...

  • Account Name in column 1
  • Field updated in column 2
  • Prior Value before your update in column 3
  • New Value after your update in column 4
  • DateTime of the update in GMT in column 5
History Data Detail
Click to enlarge
Copy the Results Table

Select left to right top to bottom (or opposite) and Cntl-C it.

Data Select to Copy
Click to enlarge
Paste into Spreadsheet

Cntl-V it into your favorite spreadsheet.

Pasted Data
Click to enlarge
Create a Combined Sheet

This is where the whole widget set becomes quite useful. You can combine update data with your logins and others logins into a single sheet. Paste each set with timestamps aligned and sort on the datetime.
(*** Be sure to select the same number of days for personal and others logins before copying the data from the resulting page output.)

Notice the column distinction between your personal logins and others logins each as described in the first screen.

Now you see how simple it is to observe the possibilty that a proxy admin logged in as you MIGHT have made the updates.

In this example Fred Jones had logged in as you right before a couple of Account updates were made. Now you can ask Fred why those items were changed in case you did not authorize it.

Your valuable data is now a little more secure with this capability.

Combo Sheet with Logins AND Updates
Click to enlarge

Use Cases

These widgets are useful in various ways.

Use Case 1

A sales rep may want to keep an eye on her or his adoption of Salesforce and can quickly see from their homepage the logins they have used over a number of different selectable time periods.

Or perhaps a simple memory jog for a busy rep on the road to see where they were when they last logged in on a mobile device.

Use Case 2

A sales manager may have asked an admin to log in as her to test some functionality and would like to see if the admin had done that and when. She can figure out the approximate local time of a login (from displayed GMT) and see if test Accounts, Opportunities, etc. were updated in that particular timeframe.

Use Case 3

You know you did not perform some Account, Opportunity, or Lead updates that show that you did. You can determine if an admin logged in as you and made changes on your behalf.

Get a range of others logins as well as the same range of history updates on the object(s), stack the results in a spreadsheet, then sort on datetime as shown in the last guide slide above.

Using this procedure can benefit your organization in keeping reasonable quality control on important data.

Configuration

Package Contents
App managed package is MyLogins DCI.
Namespace: dciapp2
Type Name Purpose
Component iLoggedIn Personal login widget component
Component WhoLoggedInOthers login widget component
Component showMyHistoryHistory updates widget component
Apex Class LoginController Logins server-side controller
Apex Class LoginControllerTestTest class for logins controller
Apex Class HistoryController History server-side controller
Apex Class HistoryControllerTestTest class for history controller
Setup/Deployment
Setting up My Logins and Updates is simple with Lightning Experience configuration.
  1. Install the managed package.
  2. Set up the app for Lightning Experience by adding iLoggedIn and WhoLoggedIn components to any Lightning home page. Users with access to that home page will be able to use the widgets from there.
  3. Since showMyHistory is referenced from iLoggedIn by passing its day range as a parameter it will not function on its own. Therefore DO NOT add it to any pages.

CONTACT

Email Us About This App

X