home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / komix / DATA.Z / unrefd_cdms.tcl < prev    next >
Text File  |  1997-07-11  |  2KB  |  65 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #    (c) Cadre Technologies Inc. 1995
  4. #
  5. #    File:        @(#)unrefd_cdms.tcl    /main/titanic/2
  6. #    Author:        Harm Leijendeckers
  7. #    Description:    Report on unreferenced cdm's
  8. #    Usage in:    SystemVersion
  9. #
  10. #---------------------------------------------------------------------------
  11. # SccsId = @(#)unrefd_cdms.tcl    /main/titanic/2    11 Jul 1997    Copyright 1995 Cadre Technologies Inc.
  12.  
  13.  
  14. Class ReportUnrefCdms : {ReportBase} {
  15.     constructor
  16.     method systemReport
  17. }
  18.  
  19.  
  20. constructor ReportUnrefCdms {class this} {
  21.     set this [ReportBase::constructor $class $this]
  22.     $this reportName "Unreferenced cdm's"
  23.     return $this
  24. }
  25.  
  26.  
  27. method ReportUnrefCdms::systemReport {this} {
  28.     set allCdmItems [query -s file.item \
  29.                "file.type == cdm" \
  30.                [$this systemV].localFileVersions]
  31.     if [lempty $allCdmItems] { return 0 }
  32.  
  33.     set report [$this report]
  34.  
  35.     $report header {
  36.     [$this report] print "Unreferred Cdm" line
  37.     [$this report] line
  38.     }
  39.  
  40.     set cnfv [$cc currentConfig]
  41.     set sv [$this systemV]
  42.     set found 0
  43.     foreach item [osort name $allCdmItems] {
  44.     $sv getDecompositions $item $cnfv decompComponents \
  45.                 "cad ccd cod dfd etd mgd std ucd" svs fvs
  46.  
  47.     if [lempty $fvs] {
  48.         set found 1
  49.         $report print [$item name] line
  50.     }
  51.     }
  52.  
  53.     if !$found {
  54.     $report print "** None **" line
  55.     }
  56.  
  57.     $report page
  58.     $report remove header
  59.  
  60.     return 0
  61. }
  62.  
  63.  
  64. set executeMe [ReportUnrefCdms new]
  65.