Microsoft KB Archive/835309

From BetaArchive Wiki

Article ID: 835309

Article Last Modified on 12/20/2005



APPLIES TO

  • Microsoft CRM 1.2
  • Microsoft Business Solutions CRM 1.0




SYMPTOMS

Managers and users may not be able to see records that are owned by a user who was moved from one business unit to another business unit in Microsoft Business Solutions CRM. This problem occurs if these managers and users have privileges that are set to any one of the following access levels in an MBS CRM security role:

  • Global
  • Parent: Child Business Units
  • Business Unit

Additionally, Microsoft CRM Sales for Outlook client users may not be able to see their records in the Outlook client after the they go offline. These users can still see their data in the Microsoft CRM Web client.

CAUSE

This problem may occur if the records that are owned by the user have an incorrect value in the OwningBusinessUnit column. This problem occurs after the user is moved from one business unit to another.

RESOLUTION

Microsoft CRM has a fix for this problem that is part of a cumulative update. The cumulative update information is described in the following Microsoft Knowledge Base article:

904435 Update Rollup 2 is available for Microsoft CRM 1.2


MORE INFORMATION

Steps to reproduce the problem

The following sample scenario describes how to reproduce this problem. This scenario can be applied to other Microsoft CRM installations. This scenario is included in this article for illustration only.

This scenario uses the Microsoft CRM sample database, Adventure Works Cycle. In this scenario, an existing Microsoft CRM installation has four business units and multiple Microsoft CRM users. The users are assigned Microsoft CRM security roles that are not the default security roles. For example, the default security roles were modified. The users have the same names as the security roles that are assigned to them.

The problems occur after you set up Microsoft CRM users in separate business units and then move a user from one business units to another. This scenario shows what the user who was moved may experience. The scenario also shows what this user's manager may experience.

Step 1: Create the Microsoft CRM business units

Create four business units. Assign them the names, the levels, and the parent business units that are shown in the following table. The root business unit is Adventure Works Cycle.

Level Business unit name Parent business unit
First Customer Care Adventure Works Cycle
First Sales and Marketing Adventure Works Cycle
Second Customer Support Customer Care
Second Field Sales Sales and Marketing

Step 2: Create the custom Microsoft CRM security roles

Create the following four custom Microsoft CRM security roles for this scenario:

  • Custom_Salesperson


To create the role, follow these steps:

    1. On the Security Roles page, click Copy Role.
    2. In the Role to Copy list, click Salesperson.
    3. In the New Role Name box, type Custom_Salesperson.


If the Open role when copying is complete check box is cleared, click to select it.

    1. Click the Core Records tab.
    2. Click the circle for each privilege type for each record type. Click each circle repeatedly until the access level changes to the Business Unit access level.


Note The Business Unit access level is represented by a half-yellow circle.

    1. Repeat step 5 for the Sales tab and for the Service tab.
  • Custom_Customer Service


To create the role, follow these steps:

    1. On the Security Roles page, click Copy Role.
    2. In the Role to Copy list, click CRM Customer Service Representative.
    3. In the New Role Name box, type Custom_Customer Service.


If the Open role when copying is complete check box is cleared, click to select it.

    1. Click the Core Records tab.
    2. Click the circle for each privilege type for each record type. Click repeatedly until the access level changes to the Business Unit access level.


Note The Business Unit access level is represented by a half-yellow circle.

    1. Repeat step 5 for the Sales tab and for the Service tab.
  • Custom_Sales Manager


To create the role, follow these steps:

    1. On the Security Roles page, click Copy Role.
    2. In the Role to Copy list, click CRM Sales Manager.
    3. In the New Role Name box, type Custom_Sales Manager.


If the Open role when copying is complete check box is cleared, click to select it.

    1. Click the Core Records tab.
    2. Click the circle for each privilege type for each record type. Click repeatedly until the access level changes to the Business Unit access level.


Note The Business Unit access level is represented by a half-yellow circle.

    1. Repeat step 5 for the Sales tab and for the Service tab.
  • Custom_CSR Manager


To create the role, follow these steps:

    1. On the Security Roles page, click Copy Role.
    2. In the Role to Copy list, click CSR Manager.
    3. In the New Role Name box, type Custom_CSR Manager.


If the Open role when copying is complete check box is cleared, click to select it.

    1. Click the Core Records tab.
    2. Click the circle for each privilege type for each record type. Click repeatedly until the access level changes to the Business Unit access level.


Note The Business Unit access level is represented by a half-yellow circle.

    1. Repeat step 5 for the Sales tab and for the Service tab.

Step 3: Create the Microsoft CRM users

Create the following five Microsoft CRM users for this scenario. Assign them the names, the security roles, and the business units that are shown in the following table.

User name Assigned Microsoft CRM security role Assigned Microsoft CRM business unit
Salesperson_FieldSales Custom_Salesperson. Field Sales
CustomerSupport_CustomerService Custom_Customer Service. Customer Support
Sales_and_Marketing_Manager Custom_Sales Manager. Sales and Marketing
Customer_Care_Manager Custom_CSR Manager. Customer Care
Administrator System Administrator. This role has the Organization access level for all privileges for all record types. Root business unit of Adventure Works Cycle

Step 4: Create the records and view the privileges

See Microsoft CRM Help for more information about how to create records and about how to view records in Microsoft CRM.

  1. Log on to Microsoft CRM as the Salesperson_FieldSales user. Create an account and name it FieldSales_Account. Create a lead record and name it FieldSales_Lead. Fill in the appropriate required fields, and then save this record. Note that the Administration tab of this record shows that the Owner field is set to Salesperson_FieldSales.
  2. Log on to Microsoft CRM as the CustomerSupport_CustomerService user. Create an account record and name it CustomerSupport_Account. Fill in the appropriate required fields, and then save this record. Note that the Administration tab of this record shows that the Owner field is set to CustomerSupport_CustomerService.
  3. Create a lead record and name it CustomerSupport_Lead. Fill in the appropriate required fields, and then save this record. Note that the Administration tab of this record shows that the Owner field is set to CustomerSupport_CustomerService.
  4. Log on to Microsoft CRM as the Sales_and_Marketing_Manager user. Then, follow these steps:
    1. On the GoTo menu, point to Sales, and then click Leads. In the View list, click All Leads. Note that this user can see the FieldSales_Lead record but cannot see the CustomerSupport_Lead record.
    2. On the GoTo menu, point to Sales, and then click Accounts. In the View list, click All Active Accounts. Note that this user can see the FieldSales_Account account but cannot see the CustomerSupport_Account account.
  5. Log on to Microsoft CRM as the Customer_Care_Manager user. Then, follow these steps:
    1. On the GoTo menu, point to Sales, and then click Leads. In the View list, click All Leads. Note that this user can see the CustomerSupport_Lead record but cannot see the FieldSales_Lead record.
    2. On the GoTo menu, point to Sales, and then click Accounts. In the View list, click All Active Accounts. Note that this user can see the FieldSales_Account account but cannot see the CustomerSupport_Account account.
    Note If you are logged on as either the Salesperson_FieldSales user or as the CustomerSupport_CustomerService user, you can only see records that are owned by that user, records that are shared with that user, and records that exist in that user's business unit. This means that the Salesperson_FieldSales user cannot see records that were created by the CustomerSupport_CustomerService user. Additionally, the CustomerSupport_CustomerService user cannot see records that were created by the Salesperson_FieldSales user.

Step 5: Move a user to another business unit

The following steps describe what you should see if a Microsoft CRM Administrator moves the Salesperson_FieldSales user to the Customer Support business unit:

  1. Log on to Microsoft CRM as the Administrator user. Change the business unit for the Salesperson_FieldSales user from Field Sales to Customer Support. Assign the Salesperson_FieldSales user to the Custom_Salesperson security role in the Customer Support business unit. You have to do this because the security roles are specific to each business unit.

    Wait until the Microsoft CRM SecurityDescriptor field values have been updated. To verify that the values have been updated, see the Bin folder. By default, the path is C:\Program Files\Microsoft CRM\Server\Bin. Then, wait for the Sspcqc.bin hidden file to disappear. This indicates that all the SecurityDescriptor field values have been updated.
  2. Log on to Microsoft CRM as the Sales_and_Marketing_Manager user. Then, follow these steps:
    1. Switch to All Leads view. This user should not be able to see the FieldSales_Lead record. This behavior occurs because you moved the Salesperson_FieldSales user to a different business unit that is not a child of the Sales and Marketing business unit.
    2. Switch to Active Accounts view. This user should not be able to see the FieldSales_Account account. This behavior occurs because you moved the Salesperson_FieldSales user to a different business unit that is not a child of the Sales and Marketing business unit.
  3. Log on to Microsoft CRM as the Customer_Care_Manager user. Then, follow these steps:
    1. Switch to All Leads view. This user should now be able to see both the CustomerSupport_Lead record and the FieldSales_Lead record. However, the FieldSales_Lead is not visible, even though you moved the Salesperson_FieldSales user to the Customer Support business unit.
    2. Switch to Active Accounts view. This user should now be able to see the CustomerSupport_Account account and the FieldSales_Account account. However, only the CustomerSupport_Account record is visible, even though the Salesperson_FieldSales user is now in the Customer Support business unit.
    Note The CustomerSupport _CustomerService user is also not able to see the FieldSales_Salesperson user's records, even though you moved this user into the same Customer Support business unit.

For more information about the terminology that is used to describe Microsoft product updates, click the following article numbers to view the articles in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates


887283 Microsoft Business Solutions CRM software hotfix and update package naming standards


Many of the problems that are resolved by this hotfix involve larger Microsoft CRM databases. For information about how to tune and optimize the performance of Microsoft CRM, see the "Optimizing the Performance of Microsoft CRM 1.2" white paper. To obtain this white paper, visit the following Microsoft Web site:

For more information about how to obtain and use the CRMADRecovery tool in Microsoft CRM, click the following article number to view the article in the Microsoft Knowledge Base:

893106 How to obtain and use the CRMADRecovery tool in Microsoft CRM



Additional query words: reparent re-parent

Keywords: kbbug kbfix kbqfe kbmbsmigrate kbhotfixserver kbmbsadministration KB835309