what does "if @@trancount > 0 commit tran" mean?
I think there are two concepts that you need to understand:

IF @@trancount &gt; 0 COMMIT TRANSACTION
This checks whether there are still any open transactions from earlier in the
script, or that will be present if IMPLICIT_TRANSACTIONS are on. If you don't
check for open transaction before doing a COMMIT, you will receive the
following error:



The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION.


IMPLICIT_TRANSACTIONS
To simplify this, when IMPLICIT_TRANSACTIONS is ON, there is an invisible BEGIN TRANSACTION before specific statements (see list here) if there aren't any transactions open already. And when IMPLICIT_TRANSACTIONS is OFF, your statement is in autocommit mode


If you provide us with a code example, we might be able to answer your question more specifically. You can play with this code to see how these commands affect a statement:
    /*
    SET IMPLICIT_TRANSACTIONS ON
    SET IMPLICIT_TRANSACTIONS OFF
    */
    
    
    --BEGIN TRANSACTION  --Uncomment if IMPLICIT_TRANSACTIONS is ON
    
    CREATE TABLE Test (col int)
    
    DROP TABLE Test
    
    SELECT @@TRANCOUNT
    
    BEGIN TRANSACTION
    
    SELECT @@TRANCOUNT
    
    COMMIT
    
    SELECT @@TRANCOUNT
    
    COMMIT
    
    SELECT @@TRANCOUNT
    
    --When IMPLICIT_TRANSACTIONS is ON, SQL will begin a new transaction count here, 
    --You need to explicitly end the transaction at the end
    CREATE TABLE Test (col int)
    
    DROP TABLE Test
    
    SELECT @@TRANCOUNT
    
    IF @@TRANCOUNT &gt; 0
        COMMIT
    
    SELECT @@TRANCOUNT