[ 01011011 @ 07.02.2007. 22:11 ] @
Radim na projektu u jednoj prilicno velikoj kompaniji u kojoj ima na hiljade "Stored Procedures", Triggera, Funkcija i tako dalje. Zadatak su mi dali da skontam i da ispisem koje su "dependancy issues", ili ono sta od cega zavisi.

Da li za ovako nesto postoji Software koji bi mogao da uradi neku analizu ili neki report i da po tome dodjem do zeljenih podataka ili moram sam da idem i prepisujem jednu za drugom proceduru i funkciju i da uporedjivam.

Hvala
[ Hrvoje Balažinec @ 07.02.2007. 22:25 ] @
Mozda ti ovo moze pomoci:

http://www.red-gate.com/products/SQL_Dependency_Tracker/index.htm
[ 01011011 @ 07.02.2007. 22:59 ] @
Tacno tako mi nesto treba, sad ne znam da li ovi hoce da potrose 300 dolara za ovako nesto posto je samo jedan licence. Ali mogu predloziti projekt menadzeru. Ima li kakava solucija da je OPEN SOURCE?

[ spartak @ 08.02.2007. 16:15 ] @
Ako project manager ne ukapira koliko plata ce ustedeti tom licencom nema sta da mu objasnjavas. Nadji crackovanu verziju, odradi posao i onda uci, citaj ili radi bilo sta drugo pametno a primaj te plate.
[ 01011011 @ 09.02.2007. 20:19 ] @
Ma skontace oni, nije to problem. Predlozio sam im i kupice software. Problem je u tome sto ja radim samo COnsulting u ovoj kompaniji ovo je Fortune 500 kompanija i ono imaju bilione i nije im frka izdvojiti za nesto 300 dolara sto ce koristiti. Imao sam podrsku od njihovog DB Administratora, koji je rekao da je strava software i to je to.

Hvala na pomoci :)

Znate samo sta je smijesno sto ja ovo moram dijelic po dijelic raditi. Kad sam dodao samo tabele sve, i sve procedure, napravio mi se bio krug i toliko je bilo zavisnosti da se skoro ofarbao taj krug kolika je baza i sve..da se nista ne vidi, tako da cu morati dio po dio da radim...

evo i slika


[ dekibre @ 20.02.2007. 00:12 ] @
Nisam siguran da sam razumeo šta ti treba ali evo koda koji sam nabrzaka napisao i pokazuje zavisnost objekata ali samo do prvog nivo, sigurno se kod može preraditi tako da se doda parametar nivo pa da se uradi zavisnost objekata do odredjenog nivoa.
Inače u object browseru se može videti za svaki objekat neke baze koji su mu dependencies prvog nivoa.

Isprobao sam na bazi koja ima oko 8000 objekata u sysobjects tabeli i ovaj izveštaj se napravi za manje od devet minuta.

Code:

/*
Objasnjenje kolona

objectName    - Naziv objekta
DName         - Naziv objekta
Type         - pogledaj u BOL-u za tabelu sysobjects kolona type sta znaci svaka skracenica
Dependencies     - dve vrednosti 
            1 Depends on - znaci da objectName zavisi od DName 
            2 - znaci da DName zavisi od objectName
*/

declare @objectID int

drop table #objectID 
drop table #dependencies

create table #objectID
(
objectID int
)

create table #dependencies
(
objectID int
,objectName sysname
, DName sysname
, DID int
, Type char(2)
, Dependencies varchar(15)
)

insert into #objectID
select id from sysobjects

while (select count(*) from #objectID) > 0
begin
select @objectID = min(objectID) from #objectID

insert into #dependencies
-- this object depends on following objects
select distinct @objectID, object_name(@objectID), o.name, o.id, o.type, '1 Depends on' from sysobjects o, sysdepends d 
where d.id = @objectID and o.id = d.depid

insert into #dependencies
-- the following objects depend on this object
select distinct @objectID, object_name(@objectID) , o.name, d.id , o.type,  '2' from sysdepends d, sysobjects o 
where d.depid = @objectID and d.id = o.id


delete from  #objectID where objectID = @objectID
end

select objectName 
, DName 
, Type 
, Dependencies 
from 
#dependencies
order by 
objectName
, Dependencies
, DName