In SQL Server 2008 R2, I have a stored procedure X, which execs 2 other stored procedures:

create procedure X
begin
exec A
exec B
end

Stored procedure A has a transaction in it

SET TRANSACTION ISOLATION LEVEL REPEATABLE READ
begin transaction
insert into .....
set @ReadingID = (select SCOPE_IDENTITY( ))
commit transaction
...