Informační tok Funkční structura Datová struktura ER model Modulová struktura Typová struktura Relační model Dokumentace


[Celkový datový model] [Funkce] [Externí rohraní] [Stavové diagramy] [Datové elementy] [Entity] [Relace]
[Databáze] [Události] [Materiály] [Generovací funkce] [Vyhodnocovací funkce] [Konfigurace] [Uživatelé] [Projekt] [Home]



Vyhodnocovací funkce
ReportMap
(Web Publishing)


Vytvořeno: 04-16-1998 09:41:00
Poslední změna: 01-10-2003 13:33:29

Generates HTML <MAP> sections for the element trees of the report structure.

Modul

Module: Web Publishing

Zdrojový kód:

PROCEDURE ReportMap(Name$, Page%, BYREF PageWasGenerated!)
BEGIN
  
  foundsomething! = FALSE;
  FOR Report WHERE Name = Name$ DO
    FOREACH Repunit WHERE Report = Report.Name AND Page = Page% DO
      IF NOT Emptyflag AND hasText THEN
        foundsomething! = TRUE;
        BREAK;
      END
    END
    FOREACH Reppart WHERE Report = Report.Name AND Page = Page% DO
      foundsomething! = TRUE;
      BREAK;
    END
  END

  PageWasGenerated! = foundsomething!;
  
  IF foundsomething! THEN
    FOR Report WHERE Name = Name$ DO
      CALL GenMapHeader("map_page" + Str$(Page%));

      //we need to find the coord of the most left box in advance
      leftmost% = 570; //highest possible value
      FOREACH Repunit WHERE Report = Report.Name AND Page = Page% AND X < leftmost% ORDER BY X DO
        IF X < leftmost% THEN leftmost% = X; END
        BREAK;
      END
      FOREACH Reppart WHERE Report = Report.Name AND Page = Page% AND X < leftmost% ORDER BY X DO
        IF X < leftmost% THEN leftmost% = X; END
        BREAK;
      END

      //create map sections
      CALL PageNo2IDString(Page%, id1$);
      FOREACH Repunit WHERE Report = Report.Name AND Page = Page% DO
        IF NOT Emptyflag AND hasText THEN
          CALL H_CaseBoxCoorToImageCoor(leftmost%, X, Y, ulc_x%, ulc_y%);
          CALL Long2IDString(Unitno, id2$);
          link$ = "r" + id1$ + id2$ + Str$(Report.Object);
          coor$ = """" + Str$(ulc_x%) + "," + Str$(ulc_y%) + ",";
          coor$ = coor$ + Str$(ulc_x%+ 80) + "," + Str$(ulc_y% + 52) + """";
          PRINT {HTML} " <AREA ";
          PRINT {HTML} "href=""", link$, ".htm"" ";
          PRINT {HTML} "alt=""", Conv$(Boxname), """ ";
          PRINT {HTML} "shape=rect ";
          PRINT {HTML} "coords=", Coor$;
          PRINT {HTML} ">", NL;
        END
      END

      FOREACH Reppart WHERE Report = Report.Name AND Page = Page% DO
        CALL H_CaseBoxCoorToImageCoor(leftmost%, X, Y, ulc_x%, ulc_y%);
        FOR Report WHERE Name = Reppart.Refrepname DO
          CALL GenMapRect(Object, Conv$(Boxname), ulc_x%, ulc_y%, ulc_x% + 80, ulc_y% + 52);
        END
      END
 
      CALL GenMapFooter();
    END
  END

END


Generováno: 16.10.2003 7:41 Systém: C:\Documents and Settings\hajsman\Dokumenty\Vyuka\Irs2\Projekt case40\Projekt03.csf Generováno systémem case/4/0
Vygeneroval: Administrator Soubor: C:\Documents and Settings\hajsman\Dokumenty\Vyuka\Irs2\Projekt case40\html\28367.htm (C) microTOOL GmbH 2002