Question: I am trying to duplicate a business rule that only allows certain users to delete a record in SalesLogix v7.5 Web. I believe that I have correctly duplicated the business rule but I am still receiving the following build error:
\\ERROR - C:\Documents and Settings\aadmin\Application Data\Sage\Platform\Output\Sage.SnippetLibrary.CSharp\src\Sage.SnippetLibrary.CSharp.@.62980b3c-40bd-4ec5-8be5-18185b90cc19.codesnippet.cs(36,23):The type or namespace name 'Security' does not exist in the namespace 'Sage.SalesLogix' (are you missing an assembly reference?)
ERROR - C:\Documents and Settings\aadmin\Application Data\Sage\Platform\Output\Sage.SnippetLibrary.CSharp\src\Sage.SnippetLibrary.CSharp.@.62980b3c-40bd-4ec5-8be5-18185b90cc19.codesnippet.cs(44,28):Type 'Sage.BusinessRules.CodeSnippets.AccountBusinessRules' already defines a member called 'CanDeleteStep1' with the same parameter types
/*
* This metadata is used by the Sage platform. Do not remove.
Sage.SnippetLibrary.CSharp
CanDeleteStep1
Sage.Entity.Interfaces.dll
%BASEBUILDPATH%\interfaces\bin\Sage.Entity.Interfaces.dll
Sage.Form.Interfaces.dll
%BASEBUILDPATH%\formInterfaces\bin\Sage.Form.Interfaces.dll
Sage.Platform.dll
%BASEBUILDPATH%\assemblies\Sage.Platform.dll
Sage.SalesLogix.dll
%BASEBUILDPATH%\assemblies\Sage.SalesLogix.dll
Sage.SalesLogix.Security.dll
%BASEBUILDPATH%\assemblies\Sage.SalesLogix.Security.dll
*/
#region Usings
using System;
using Sage.Entity.Interfaces;
using Sage.Form.Interfaces;
using Sage.SalesLogix.Security;
using Sage.Platform;
#endregion Usings
namespace Sage.BusinessRules.CodeSnippets
{
public static partial class AccountBusinessRules
{
public static void CanDeleteStep1( IAccount account, out Boolean result)
{
Sage.Platform.Security.IUserService userService=
Sage.Platform.Application.ApplicationContext.Current.Services.Get;
String un = userService.UserName;
result = Sage.SaleLogix.Security.User.IsUserInRole(un, "CanDelete");
// TODO: Complete business rule implementation
}
}
Answer: First, check for typos. There is also a known defect in SalesLogix v7.5 in the VFS when a business rule is deleted. Export the standard VFS, and remove the rouge code.