Error message when you transfer a requisition to a purchase order in Microsoft Dynamics GP: “Unable to add entity because it already exists”


Source: Microsoft Support

RAPID PUBLISHING

RAPID PUBLISHING ARTICLES PROVIDE INFORMATION DIRECTLY FROM WITHIN THE MICROSOFT SUPPORT ORGANIZATION. THE INFORMATION THAT IS CONTAINED HEREIN IS CREATED IN RESPONSE TO EMERGING OR UNIQUE TOPICS, OR IS INTENDED TO SUPPLEMENT OTHER KNOWLEDGE BASE INFORMATION.

Symptoms


When you transfer a requisition to a purchase order in Microsoft Dynamics GP, you receive the following error message:
Unable to add entity because it already exists

Cause


Cause 1

The value in the Next Purchase Order Number field in the Purchase Order Processing Setup window has already been used on a purchasing document. See Resolution 1 in the "Resolution" section

Cause 2

Invalid records exist in the MulitUserManager table that reference the next purchase order number. See Resolution 2 in the "Resolution" section.

Resolution


Note Before you follow the instructions in this article, make sure that you have a complete backup copy of the database that you can restore if a problem occurs.

Resolution 1

  1. Check the POP10100 table and the POP30300 table for the last purchase order number used in the system. To do this, follow these steps:
    1. Start the Support Administrator Console, Microsoft SQL Query Analyzer, or SQL Server Management Studio. To do this, use one of the following methods depending on the program that you are using.

      Method 1: For SQL Server Desktop Engine

      If you are using SQL Server Desktop Engine (also known as MSDE 2000), start the Support Administrator Console. To do this, click Start, point to All Programs, point to Microsoft Administrator Console, and then click Support Administrator Console.

      Method 2: For SQL Server 2000

      If you are using SQL Server 2000, start SQL Query Analyzer. To do this, click Start, point to All Programs, point to Microsoft SQL Server, and then click Query Analyzer.

      Method 3: For SQL Server 2005

      If you are using SQL Server 2005, start SQL Server Management Studio. To do this, click Start, point to All Programs, point to Microsoft SQL Server 2005, and then click SQL Server Management Studio.
    2. Run the following scripts against the company database:
      select MAX (PONUMBER) from POP10100
      select MAX (PONUMBER) from POP30100
    3. Use the results from step b to find the largest purchase order number.
  2. Follow the appropriate step:
    • In Microsoft Dynamics GP 10.0, on the Microsoft Dynamics GP menu, point to Tools, point to Setup, point to Purchasing, and the click Purchase Order Processing.
    • In Microsoft Dynamics GP 9.0, on the Tools menu, point to Setup, point to Purchasing, and then click Purchase Order Processing .
  3. Use the results from step 1 to determine if the value in the Next Purchase Order Number field has already been used. If the value has already been used, then change the value in the Next Purchase Order Number field.

Resolution 2

  1. Have all users exit Business Portal.
  2. Start the Support Administrator Console, Microsoft SQL Query Analyzer, or SQL Server Management Studio. To do this, use one of the following methods depending on the program that you are using.

    Method 1: For SQL Server Desktop Engine

    If you are using SQL Server Desktop Engine (also known as MSDE 2000), start the Support Administrator Console. To do this, click Start, point to All Programs, point to Microsoft Administrator Console, and then click Support Administrator Console.

    Method 2: For SQL Server 2000

    If you are using SQL Server 2000, start SQL Query Analyzer. To do this, click Start, point to All Programs, point to Microsoft SQL Server, and then click Query Analyzer.

    Method 3: For SQL Server 2005

    If you are using SQL Server 2005, start SQL Server Management Studio. To do this, click Start, point to All Programs, point to Microsoft SQL Server 2005, and then click SQL Server Management Studio.
  3. Run the following script against the DYNAMICS database

    Delete MultiUserManager

DISCLAIMER

MICROSOFT AND/OR ITS SUPPLIERS MAKE NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY, THE RELIABILITY OR THE ACCURACY OF THE INFORMATION THAT IS CONTAINED IN THE DOCUMENTS AND THE RELATED GRAPHICS PUBLISHED ON THIS WEB SITE (THE “MATERIALS”) FOR ANY PURPOSE.

THE MATERIALS MAY INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS AND MAY BE REVISED AT ANY TIME WITHOUT NOTICE. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND/OR ITS SUPPLIERS DISCLAIM AND EXCLUDE ALL REPRESENTATIONS, WARRANTIES, AND CONDITIONS WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT LIMITED TO REPRESENTATIONS, WARRANTIES, OR CONDITIONS OF TITLE, NON-INFRINGEMENT, SATISFACTORY CONDITION OR QUALITY, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE MATERIALS.