交易在触发器中结束。 批次已中止(在PROCEDURE上)

I have 2 applications running on the server, namely "production applications" and "dev applications". There is no difference between the two applications in addition to their use, the other for developing and the other for users.

There is no problem with the "dev application", but the problem is precisely in the "production application".

The following is one of the problems : when I tried to update the data, an error appeared :

"The transaction ended in the trigger. The batch has been aborted" enter image description here

Even though there is no code difference with the "dev application"

This is my code :

    ALTER PROCEDURE  [dbo].[uspFakultas] 

      @FakultasID varchar(50),
      @Dekan varchar(50),
      @KetuaProgram varchar(50),
      @WakilDekan1 nvarchar(50),
      @stat varchar(20)
    AS 
    SET NOCOUNT ON;
    if @stat = 'delete' and @FakultasID<>''
        begin
            DELETE FROM [dbo].[MasterFakultas]
                  WHERE [FakultasID] = @FakultasID
        end
    else
        begin   
        if @FakultasID='' 
            begin
                INSERT INTO [dbo].[MasterFakultas]
                           Some field .....
                     VALUES
                           some values.....
            end
        else 
            begin
                UPDATE [dbo].[MasterFakultas]
                   SET some data......

                 WHERE [FakultasID] = @FakultasID
            end
    end;

And this is php code

$sqlstr=" exec [dbo].[uspfakultas] '$FakultasID','$Dekan','$NomorSK','$KetuaProgram','$WakilDekan1','$stat'";
$hasil=mssql_query( $sqlstr ) or die(mssql_get_last_message());
print $hasil;

Anyone can help me ?

Do any of the tables that you operate on in your stored procedure have any replication on them?

I have seen, in a few applications, replication triggers causing this issue.