>CREATE PROCEDURE PlaceByDep @PK UniqueIdentifier >AS >Set NoCount ON >DECLARE @PkList CURSOR >EXEC DeepPk @PK, 'DepPkNodeList', @PkList OUTPUT >create table #PkList (PK uniqueidentifier) > >FETCH NEXT FROM @PkList into @Pk >WHILE (@@FETCH_STATUS = 0) >BEGIN > Insert Into #PkList (PK) Values (@PK) > FETCH NEXT FROM @PkList into @Pk >END >CLOSE @PkList >DEALLOCATE @PkList >select * from #PkList >return >GO > > >CREATE PROCEDURE [DeepPk] @ParentPK uniqueidentifier > , @NodProc_Na char(64) > , @PkCursor CURSOR VARYING OUTPUT > >AS >create table #PkList (PK uniqueidentifier) >Insert into #PkList (Pk) Values (@ParentPK) >execute @NodProc_Na @ParentPk > >Set @PkCursor= Cursor Local Fast_Forward > For Select * from #PkList > >Open @PkCursor > >return >GO>