Monday, July 13, 2009

Oracle CRM Blog Excerpts...

June 26, 2009

Social Media and Training

We’re always interested in finding better ways to share our favorite CRM On Demand resources with you. However, depending on where you are in your CRM On Demand experience, your needs for information will most likely vary. So, we started to think that maybe this is where social applications and sites can play a role in training.

Instead of our “pushing” out information to you, perhaps everyone visiting our site could “pull” content from one another as well. We could add an interactive or social element to our training resources, so customers or partners could add content and share “tribal knowledge” from their experiences with CRM On Demand.

Give us your opinion on this idea! Would a social element to a training site be something you would find useful? Is this something you would contribute to? Do you have something better in mind? Post a comment on this article and let us know what you think!

June 10, 2009

How To Restrict Sales Stage Changes on Closed Opportunities

People in our sales groups hear a lot of good questions from potential customers who are evaluating CRM On Demand. So, it’s not surprising that some of the best solutions to real use requirements come from the people in those sales groups. I saw one such solution this week that I thought might be useful to many – a very straight-forward way to make sure that sales people don’t re-open an Opportunity record once it has been closed, using field validation. Of course, not every company has this requirement, but you could also use it in other contexts, so keep it in mind for your “how can we…” –type discussions.

Here's how it works:
(Many thanks to Karthik Jayagovind for providing this content.)

You might want to prevent users from changing the Opportunity Sales Stage picklist value from ‘Closed/Lost’ or ‘Closed/Won’ back to any of the earlier stages (say, ‘Short List’, ‘Negotiation’, etc.). This can be achieved by writing a field validation rule for the ‘Sales Stage Id’ field in the Opportunity record-type. Usually field validation rules are written directly for the field that one wants to control, but in this case, you cannot write these rules for the Sales Stage field, because the field validation option is disabled. Instead you can use the Sales Stage Id field to achieve the same result.

To do this:

  1. Locate Sales Stage Id on the Opportunity Field Setup page and click the Edit link.
  2. Enter the following rule in the Field Validation field:
    PRE('')<>'Closed/Won' AND PRE('')<>'Closed/Lost'
    If you want only users with a certain role, such as the Administrator, to have the ability to change a closed opportunity to one of the earlier stages, then you can exclude that user role in the field validation rule:
    (PRE('')<>'Closed/Won' AND PRE('')<>'Closed/Lost') OR (UserValue('')='Administrator')
  3. Enter the error message that should display when a user tries to change the sales stage value on a closed Opportunity record.
  4. Click Save.
  5. Test the field validation rule to make sure it works as you expect.

End%20Result.gif


If you want to see more detail, including more pictures, check out this document on My Oracle Support: Restricting Opportunity Sales Stage Value Using Field Validation (Doc ID 841398.1). (You'll need to sign in with your My Oracle Support account to access the document.)

May 26, 2009

Fun and Gains with Related Information Sections

Note: I developed this article from discussions with Cari Aves, so thank you, Cari!

Why is the ability to customize related information sections such a popular enhancement in Release 16? Well, displaying certain fields in the sections lets users review their most critical information without drilling down on related information records. You can eliminate that pesky go-back-to-the-previous-record step!

Even better, if the Inline Edit feature is enabled at your company, users can also update that information right there in the related information sections, saving them a lot of time.

Let’s take the Product Revenue section linked to opportunities as an example. Here’s how the default section appears when a sales rep goes to an Opportunity Detail page:

PR_2rows_final.gif

Notice that the first column is Product Name, second is Quantity, and so on. From this related information section, the sales reps can update the quantity and pricing fields. If your company bases forecasting on products, clicking the Update Opportunity Totals also lets them see the impact of those changes—maybe discounted prices on a specific product—on the opportunity total revenue. This helps your sales reps work through several scenarios before deciding on one.

However, let’s say that your sales reps also want to specify which line item is included in the Forecast field when forecasts are generated. They want to see the Forecast check box as the first column and the Revenue field as the second column. Their final layout should look like this:

PR_finallayout_final.gif

To make this requested change, you first need to create the related information layout. In our example, you’ll be customizing the Product Revenue related information layout linked to Opportunity records (the "primary record"):

  1. Click Admin > Application Customization > Opportunity > Opportunity Related Information Layout. This takes you to the list of related information sections available for Opportunity records.

  2. Click Product Revenues.

  3. Copy the standard layout and name it: Forecast & Revenue.

  4. In Step 2, add Forecast to the Selected Fields box, and then move Revenue up in the list:
  5. PR_fieldswizard_final.gif

  6. Click Finish.


Now you need to assign this new related information layout to the Opportunity page layout:
  1. From the Admin page, click Application Customization > Opportunity > Opportunity Page Layout.

  2. Click the Edit link next to your role so that you can test it. Later, you’ll follow these steps for the roles whose layout you want to change.

  3. Go to Step 5 in the Page Layout wizard.

  4. In the Product Revenue row, select the new layout: Forecast & Revenue
  5. PR_pagelayout_final.gif

  6. Click Finish.

You can go immediately to any opportunity record to make sure the change has been applied. Scroll down to the Product Revenue section and verify that the Forecast check box appears in the first column, where sales reps will be able to select or deselect a line item:

PR_forecastcheckboxempty_final.gif

To test it further, update a product price in the Product Revenue section using Inline Edit:

PR_updateprice.gif

The Revenue field is updated immediately:

PR_updateprice-rev_final.gif

Then click the Update Opportunity Totals button to recalculate the Revenue number on the opportunity record itself:

PR_updateprice-oppty_final.gif

Just to round out our discussion, I want to remind you of a few things:

  • Other fields, such as Close Date, determine what products and opportunities are included in the generated forecasts. For more information on forecasting, see online Help, My Oracle Support, and specifically the Sales: Accurate Forecasting and Pipeline Analysis Webinar.

  • Related information sections can be different for different primary records. In other words, the contact records linked to accounts can display certain fields in one sequence. For activities, the linked contact records can display other fields or display the same fields but in a different sequence. That’s why the first step in setting up related information sections is to go to the section for customizing the primary record.

  • You can use the same primary record-related information layout across different roles. The new layout appears in the drop-down list for all roles (Step 5 in the Page Layout wizard).

  • The Record Preview feature allows you to see some important fields for linked records in the top section of the Detail pages themselves. This is another feature that is enabled across your company, giving users visibility to the right information in the quickest fashion and without moving from one page to another!

OK, now that you’ve seen this example, what other ways can you effectively use this capability? We’d like to know so that others can learn from you! Just comment on this article to share your knowledge!


March 10, 2009

How to Copy a Record

Occasionally, you may need to copy an opportunity, lead, service request, campaign, or another record. You might be at a trade show, entering the same information over and over for each new record. Or your sales reps often need to create multiple opportunity records during the life of a given sales cycle.

To copy a record, you need to add a Web link as a custom field and insert specific code into the URL field for this Web link. To learn how to do this, step by step, refer to How to Copy a Record in My Oracle Support (formerly MetaLink.) This document takes you through the process, using an Opportunity record as an example.

Note: This document describes a method for copying records that includes reading some Web source code, so it assumes that you have some familiarity with doing that.

February 13, 2009

Never Miss Critical CRM On Demand Notifications

Your Primary Contact--the user whose name appears in that field on the Company Profile page--is the sole recipient of notifications of automated process failures in CRM On Demand. That includes failures to generate forecasts that are run weekly or monthly for your entire company.

So what if that person leaves your company, changes email addresses, or is on vacation? Will an admin remember to update the Primary Contact information in CRM On Demand so that your company receives those notifications?

To avoid that scenario, enter a distribution list as the email address for the Primary Contact so that more than one person is notified of the process failures.

See more tips on how to ensure your company is notified of critical communications by reading Critical Notifications: Primary Contact and Always Send Critical Alerts fields in My Oracle Support. That article describes the "Always Send Critical Alerts" field, which was added in Release 15 patch 932.0.01, and explains the difference between that field and the Primary Contact field.

January 23, 2009

Checking for Letters in Numerical Text Fields

Let’s say your users need to enter an 11-digit number in a field. The number will always be purely numerical (not alphabetical or alphanumeric), but it exceeds the 10-digit limit allowed for fields with the Number field type. What do you do?

You can use a field validation on the text field and use the expression:

Len([]) = 11 AND (FindOneOf ([], "!
@#$%^&*_{[]:;<>,.?/=qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM") = 0)

So if one non-numeric character is found, the expression will evaluate to false, and the field validation error message will be displayed to the user.

As an example, we’ll set up a field validation on an indexed field for products.

  1. Click Admin> Application Customization> Product> Product Field Setup. In this example, we’ll edit Indexed Short Text 1.
  2. Next to Field Validation, click the fx icon.
    2ExpressionBldr1.jpg
  3. Copy the expression listed above and paste it into the Expression field.
    6ExpressionBldr4A.jpg

    In case you noticed, in our example, [] is actually the correct field value for Indexed Short Text 1. If you were setting up your own field validation, you’d want to replace the field reference in the expression with the correct one for the field. To do this, you’d use the field drop-down list to insert the correct field value.

  4. Click Check Syntax and fix any errors. If you get no errors, click Save.
  5. Back on the Field Edit page, enter a Field Validation Error Message.
    7ExpressionBldr5.jpg
  6. Click Save.

Remember, you have to make the fields available on the page layout for you to test the validation.

For more information on building field valitation expressions, see “Creating Expressions with Expression Builder” in Oracle CRM On Demand’s Online Help.

January 5, 2009

Displaying an Analytic Dashboard for a Role

There are a lot of good ideas that I see on our internal and external forums on the subject of Oracle CRM On Demand analytic reports and dashboards. These are very flexible, meaning that you can do a lot with them if you know what you’re doing. (And we have a class for you, if you really want to learn about some of the advanced features of creating reports – Advanced Analytics Workshop).

But, there are also some pretty easy ways to customize the application to help users get the reports they need. Here is a simple tip that could make a lot of people happy who rely on a certain dashboard – grouping of reports – to keep tabs on their part of the business.

The default Dashboard tab cannot be configured show a certain dashboard based on the role of the user. It is basically a public dashboard. However, you can use a custom Web tab to show role-based analytic reports. You just need to:

  1. Create a custom Web tab for the role, using the URL for any dashboard that you want to show for that role in the Web tab. The dashboard could be one of the prebuilt dashboards or you could use a custom dashboard created in Answers On Demand.
  2. Add that custom Web tab to the tab layout for the role.

As an example, here is how you would create a custom Web tab that shows the Marketing Effectiveness dashboard for the Marketing Manager role. (You have to be able to access the Dashboard tab, customize pages, and customize user roles to be able to perform these steps.)

Create the Custom Web Tab

  1. Sign in to CRM On Demand, and go to the Dashboard tab. Select the Marketing Effectiveness Dashboard and click Show.
  2. When it is displayed, right click somewhere in the dashboard area and select Properties.
  3. Take a copy of the URL. (Example: https://secure-ausomxdsa.crmondemand.com/OnDemand/user/analytics/saw.dll?Dashboard&PortalPath=%2fshared%2fpre-built+Analysis%2f_Portal%2fMarketing+Effectiveness.) This URL will be different for your company, so make sure that you don't use my URL...it's just here to give you an idea of what it should look like.
  4. Navigate to Admin > Application Customization > Custom Web Tabs. Click New to create a custom Web tab.
  5. Give the new tab a name, such as Marketing Dashboard and enter the dashboard URL.
  6. Click Save.

Web%20Tab%20Setup.gif

Add the new tab to the Marketing Manager role

  1. Navigate to Admin > User Management & Access Controls > Role Management.
  2. Edit the Marketing Manager role and go to Step 5 of the wizard.
  3. Move the new Web tab to the Selected Tabs box and click the Finish button.
  4. You may also want to remove the standard Dashboard tab from the role, if it is not used.

RoleManagement.gif

Now, the next time a marketing manager logs in, he or she will see the new tab. Don’t forget, though, if the user has personalized his or her tab layout, he or she will have to add the new tab to their personal layout (My Setup > Personal Layout > Tab Layout).
FinalTab.gif

November 21, 2008

When an Employee Leaves...

peop019_semiphore2.gif
When an employee leaves an organization, an admin needs to change that user’s settings to “Inactive.” That’s always a best practice!

Beyond that, you need to follow some steps if that former employee is included in your company’s forecast. So here’s a sure-fire way to make sure that your company’s forecasts do not include that former employee’s data:

  1. Create a new role, and name it “Inactive.”
  2. Go to the User Detail page for that former employee.
  3. For Role, select this new Inactive role.
  4. For Reports To, clear the field. In other words, remove the value so that it’s blank.

Why is this so foolproof? First, because the Inactive role is not included in your forecast paradigm. Second, because a forecast won’t run if the Reports To field is blank (unless that person is the top person in the forecast hierarchy).

Now let’s turn our attention to users who reported to the former employee:

  1. Go to the User Detail page and update their Reports To field.
  2. Verify that the employee you select for the Reports To field is assigned a role that is included in your forecast hierarchy.

    Remember that forecasting requires an unbroken chain leading to a single top-level user. Everyone’s role in the chain must be included in the forecast hierarchy.

  3. After you save your changes, run through the Forecast Definition wizard to refresh your company’s forecast settings: Admin > Data Rules & Assignment > Forecast Definition > Update button

October 28, 2008

Displaying CRM On Demand Widgets

How would you like to add CRM On Demand content to your desktop, Google home page, or another application? Each one of our Widgets is a snippet of HTML code that you can use to view CRM On Demand data without signing into CRM On Demand itself. In other words, it's just a URL that gets you a small subset of the full application UI.

To get started, first make sure that you have the Embed CRM On Demand Widgets privilege. Click the My Setup global link at the top of any CRM On Demand page. If you see the Embed CRM On Demand Content link, you’re good to go! If not, ask your administrator to add that privilege to your role.

Second, check out the example shown in this MetaLink resource, which explains how to add the CRM On Demand Message Center to your Google.com home page:
Quick Guide: Embedding Content Using Widgets (Doc ID 565525.1)

Third, share with us your experiences with our Widgets. Let us know how you’re using them to stay on top of important CRM On Demand activities!

October 6, 2008

Linking In to LinkedIn

I’ve been thinking a lot about the 2.0 technology trends, most particularly in the eLearning arena. But, a recent conversation with a networking-savvy friend of mine got me thinking about how social networking tools can contribute to my business success. How about you? Do you love what social networking brings to your business or hate it? Or somewhere in between – like…never thought about it? The increasing popularity among sales reps of using social networking sites to make connections with prospects or to accelerate sales deals makes me think that we should all be loving it, whether we know it or not. I ran across a very interesting (free) eBook called Can LinkedIn Increase Your Sales, by Jill Konrath, that gives some very specific applications of using that social networking site in a sales context.

This is actually leading somewhere CRM On Demand oriented – I remembered seeing some emails flying between some of our sales guys about embedding LinkedIn into contact and account records in CRM On Demand. So when you view a record, it passes the company or contact name into LinkedIn and shows the same contact relationships you would see by logging in and doing a search. It might come in handy, so I thought I’d share the info.

Note: You have to have application customization privileges in CRM On Demand to be able to do this.

For the Contact record

Create a Custom Web Applet for the Contact record:

  • Navigate to Admin > Application Customization > Contact > Contact Web Applet
  • Create a new Web Applet and configure it with this information
    • Location = Detail Page
    • Type = HTML
    • Web Applet HTML = &ltIFRAME frameborder="no" src=' http://www.linkedin.com/search?search=&sik=1208482857531&keywords=%%%First_Name%%%+%%%Last_Name%%%+%%%Primary_Account_Name%%%&sortCriteria=4' width="800" height="450"> No IFRAMES supported.
Web%20Applet.gif
Add the new Web Applet to your Contact Detail page and instruct others to do the same:
  • Navigate to a Contact Detail page.
  • Click the Edit Layout link near the top right side of the page.
  • Move the new Web Applet to the Displayed Related Information box.
  • Click Save.

For the Account record

Create a Custom Web Applet for the Account record:

  • Navigate to Admin > Application Customization > Account > Account Web Applet
  • Create a new Web Applet and configure it with this information
    • Location = Detail Page
    • Type = HTML
    • Web Applet HTML = &ltIFRAME src="http://www.linkedin.com/search?search=&sik=1213996244420&company=%%%Name%%%&currentCompany=currentCompany&sortCriteria=4&currentTitle=currentTitle" width="800" height="450" marginheight=0 marginwidth=0 border=0 style="border:none;">
Add the new Web Applet to your Account Detail page and instruct others to do the same:
  • Navigate to an Account Detail page.
  • Click the Edit Layout link near the top right side of the page.
  • Move the new Web Applet to the Displayed Related Information box.
  • Click Save.

Caution: Consider performance

A word of caution when adding a Web Applet to a detail page – you should always consider the performance hit when adding anything to your page. Just test it after you add the new Web Applet, to see if the time it takes for the page to load is still acceptable. If it isn’t, you can instruct people to collapse that related information section – and only expand it when they want to view that content.


Wednesday, July 8, 2009

ASCII characters and their codesIn HTML

www.codetoad.com/.../ascii_characters.asp

ASCII characters and their codesIn HTML

Complete list of all the ASCII characters and their codesIn HTML you can print to screen ASCII characters by using their ASCII code. This is particularly useful when writing characters that might be treated as part of HTML, such as <> as well as to produce some special codes and accents. The format is &# followed by the number, followed by semi-colon, as in :

produces a bullet point : •The full list of ASCII codes is shown below.
 = 
4 = 4
g = g
 = 
Ð = Ð
 = 
5 = 5
h = h
ž = ž
Ñ = Ñ
 = 
6 = 6
i = i
Ÿ = Ÿ
Ò = Ò
 = 
7 = 7
j = j
  =
Ó = Ó
 = 
8 = 8
k = k
¡ = ¡
Ô = Ô
 = 
9 = 9
l = l
¢ = ¢
Õ = Õ
 = 
: = :
m = m
£ = £
Ö = Ö
 = 
; = ;
n = n
¤ = ¤
× = ×
=
< = <
o = o
¥ = ¥
Ø = Ø
=
= = =
p = p
¦ = ¦
Ù = Ù
=
> = >
q = q
§ = §
Ú = Ú
=
? = ?
r = r
¨ = ¨
Û = Û
=
@ = @
s = s
© = ©
Ü = Ü
 = 
A = A
t = t
ª = ª
Ý = Ý
 = 
B = B
u = u
« = «
Þ = Þ
 = 
C = C
v = v
¬ = ¬
ß = ß
 = 
D = D
w = w
­ = ­
à = à
 = 
E = E
x = x
® = ®
á = á
 = 
F = F
y = y
¯ = ¯
â = â
 = 
G = G
z = z
° = °
ã = ã
 = 
H = H
{ = {
± = ±
ä = ä
 = 
I = I
| =
² = ²
å = å
 = 
J = J
} = }
³ = ³
æ = æ
 = 
K = K
~ = ~
´ = ´
ç = ç
 = 
L = L
 = 
µ = µ
è = è
 = 
M = M
€ = €
¶ = ¶
é = é
 = 
N = N
 = 
· = ·
ê = ê
 = 
O = O
‚ = ‚
¸ = ¸
ë = ë
 = 
P = P
ƒ = ƒ
¹ = ¹
ì = ì
 = 
Q = Q
„ = „
º = º
í = í
 = 
R = R
… = …
» = »
î = î
=
S = S
† = †
¼ = ¼
ï = ï
! = !
T = T
‡ = ‡
½ = ½
ð = ð
" = "
U = U
ˆ = ˆ
¾ = ¾
ñ = ñ
# = #
V = V
‰ = ‰
¿ = ¿
ò = ò
$ = $
W = W
Š = Š
À = À
ó = ó
% = %
X = X
‹ = ‹
Á = Á
ô = ô
& = &
Y = Y
Œ = Œ
 = Â
õ = õ
' = '
Z = Z
 = 
à = Ã
ö = ö
( = (
[ = [
Ž = Ž
Ä = Ä
÷ = ÷
) = ;
\ = \
 = 
Å = Å
ø = ø
* = *
] = ]
 = 
Æ = Æ
ù = ù
+ = +
^ = ^
‘ = ‘
Ç = Ç
ú = ú
, = ,
_ = _
’ = ’
È = È
û = û
- = -
` = `
“ = “
É = É
ü = ü
. = .
a = a
” = ”
Ê = Ê
ý = ý
/ = /
b = b
• = •
Ë = Ë
þ = þ
0 = 0
c = c
– = –
Ì = Ì
ÿ = ÿ
1 = 1
d = d
— = —
Í = Í
2 = 2
e = e
˜ = ˜
Î = Î
3 = 3
f = f
™ = ™
Ï = Ï

NVARCHAR versus VARCHAR

NVARCHAR versus VARCHAR
SQL Server provides both datatypes to store character information. For the most part the two datatypes are identical in how you would work with them within SQL Server or from an application. The difference is that nvarchar is used to store unicode data, which is used to store multilingual data in your database tables. Other languages have an extended set of character codes that need to be saved and this datatype allows for this extension. If your database will not be storing multilingual data you should use the varchar datatype instead. The reason for this is that nvarchar takes twice as much space as varchar, this is because of the need to store the extended character codes for other languages from