try
create proc SP_AcceditCustomerOperationDepartment
@UserId  nvarchar(20),
@objSalesOrganisecode nvarchar(10),
@objGroupNo nvarchar(5)
as 
begin
  SET NOCOUNT ON
  declare @intyear smallint
  declare @ToUserId  nvarchar(20)
  declare @ToOffno  nvarchar(10)
  set @intyear=3
  DECLARE Customers_cursor CURSOR
  FOR SELECT OffNo FROM AutoAcceditCustomer
  OPEN Customers_cursor  FETCH NEXT FROM Customers_cursor into @ToOffno
  WHILE @@FETCH_STATUS = 0
  begin
          delete from TempOfficeRelation1 where UserId=@UserID --删除上一次产生的记录
          Exec SP_ObtainOfficeRelation @ToOffno,@UserID
          DECLARE ToUser_cursor CURSOR
  FOR SELECT Account FROM UserGroup where GroupNo=@objGroupNo and Account in (select Account from VOfficeAccredit where Offno=@objSalesOrganisecode)
  OPEN ToUser_cursor
  FETCH NEXT FROM ToUser_cursor into @ToUserId
  WHILE @@FETCH_STATUS = 0
  begin                   
                   insert into CustomerAccredit
                         select custno,@ToUserId,'CRM_SYSTEM',getdate() from customer where CustNo in (select Custno from CustomerAccredit where account in (select account from SalesOrganiseAccount,TempOfficeRelation1
          where SalesOrganiseCode=ChildOffice and UserID=@UserID) group by CustNo)
           and custno in (select distinct custno
 from CustomerMachineYearKind
 where custno not in 
         (select custno from CustomerMachineYearKind where MachineYear<=3 group by custno)
                        ) and CustNo not in 
                        (select custno from CustomerAccredit where account=@ToUserId)             
FETCH NEXT FROM ToUser_cursor into @ToUserId --SQL提示出错位置所在地
  end
  CLOSE ToUser_cursor
          DEALLOCATE ToUser_cursor
          FETCH NEXT FROM Customers_cursor into @ToOffno
  end
  CLOSE Customers_cursor
  DEALLOCATE Customers_cursor
end