No creo que falte nada. Probablemente sea un procedimiento almacenado interno que se llama desde dentro de una transacción (TRANCOUNT =1), inicia su propia transacción (TRANCOUNT =2) y luego la deshace. Bueno, significa revertirlo, pero el revertir afecta a todas las transacciones y no solo a la más interna, por lo que el procedimiento arruina el flujo de ejecución.
Una forma de encontrar el lugar depende de las herramientas/habilidades disponibles. Una mejor manera es usar SQL Profiler que muestra todos los comandos ejecutados por una aplicación contra el servidor. Descubra el procedimiento almacenado más externo y revise su código en busca de otras llamadas a procedimientos.