none
Business Contact Manager 2010 Delete contact error

    Question

  • I have users getting an error when trying to delete a business contact or account.  "error converting data type int to smallint".  I know it is a sql error, but have been unable to find the field causing the problem.  You can make changes to the contact, just not delete it.

    Any ideas on how to fix this would be appreciated.

    Thanks.

    • Moved by Jennifer Zhan Thursday, June 17, 2010 2:36 AM Not an outlook issue (From:Outlook IT Pro Discussions)
    Wednesday, June 16, 2010 4:10 PM

Answers

  • I have only 1 thing to add to the above solution.  The dbo.UpdatePhoneLogs is a stored procedure.

    For those that do not know how to make this change, the easiest way is to use SQL Managment Studio and expand your {database name}-Programmability-Stored Procedures.

    Right click on dbo.UpdatePhoneLogs and choose Modify

    Change @ContactServiceID and @GrandParentContactServiceID to int

    Parse and Execute.

    That's it.  If you are unsre the change took reopen the modify window.

    • Marked as answer by ChrisFurmanek Tuesday, December 7, 2010 3:54 PM
    Tuesday, December 7, 2010 3:54 PM

All replies

  • Hi Chris,

    Because this issue is related to SQL, so I move this thread to SQL forum in order to get more help and effective solution timely.

    Thursday, June 17, 2010 2:34 AM
  • Hello,

     

    I have exactly the same fault. Did you find a solution to this problem? I tried posting on experts-exchange but no one has come up with a solution.....

     

    Thanks

    Friday, August 13, 2010 10:26 AM
  • Markus can you run profiler with the error collection to see what the exact error causing event is?

     

     


    looking for a book on SQL Server 2008 Administration? http://www.amazon.com/Microsoft-Server-2008-Management-Administration/dp/067233044X looking for a book on SQL Server 2008 Full-Text Search? http://www.amazon.com/Pro-Full-Text-Search-Server-2008/dp/1430215941
    Friday, August 13, 2010 1:05 PM
    Moderator
  • The problem is when more than 32,767 (the number that a smallint can handle at max) business contacts are in the database and you want to delete one of the contacts beyond the 32,767 mark.

    When deleting a business contact dbo.DeleteContactoid gets called which itself calls dbo.UpdatePhoneLogs. dbo.UpdatePhoneLogs accepts @ContactServiceID and @GrandParentContactServiceID as smallints. Change both parameters to int and you're set.

    Sunday, August 29, 2010 12:14 PM
  • I have only 1 thing to add to the above solution.  The dbo.UpdatePhoneLogs is a stored procedure.

    For those that do not know how to make this change, the easiest way is to use SQL Managment Studio and expand your {database name}-Programmability-Stored Procedures.

    Right click on dbo.UpdatePhoneLogs and choose Modify

    Change @ContactServiceID and @GrandParentContactServiceID to int

    Parse and Execute.

    That's it.  If you are unsre the change took reopen the modify window.

    • Marked as answer by ChrisFurmanek Tuesday, December 7, 2010 3:54 PM
    Tuesday, December 7, 2010 3:54 PM
  • I'm having the same problem but I'm not a programmer and don't know where to go to use the fix you provided.  Any suggestions?  Thanks.
    David Harlowe
    Wednesday, March 2, 2011 6:18 PM
  • Same issue. I really don't want to download SQL Managment Studio and try to mess with the Database. Is there any other solution?
    Thursday, April 7, 2011 5:34 PM
  • I tried to find your solution and cannot.  I can't get to the @ContactServiceID.  Where is that?  I have upgraded to SQL 2012 and still have the above mentioned problem.  Can you tell me how to start the fix in SQL 2012?  This is very frustrating and I refuse to pay Microsoft money for something I didn't screw up.  Thank you in advance.

    David


    David Harlowe


    • Edited by fantom5656 Thursday, September 27, 2012 7:03 AM
    Thursday, September 27, 2012 7:02 AM
  • Open your SQL Management Studio and attach the BusinessContactManager database. 

    Expand the Programmability node, the Stored Procedures node, and scroll way down until you find the procedure dbo.UpdatePhoneLogs.  Select it, right click and choose 'Modify'.

    The code will read

    ALTER proc [dbo].[UpdatePhoneLogs]

    (

    @ContactAServiceID smallint,

    @GrandParentContactServiceID smallint,

    @multiplier smallint) 

    Change the first two parameters from "smallint" to "int" and Execute the procedure.  It works.  The error goes away when you try to delete a BCM contact.

    Tuesday, January 15, 2013 1:42 AM