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
List_Functions
(Information Flow)


Vytvořeno: 12-11-1995 11:40:57
Poslední změna: 12-04-2002 11:10:53

Outputs a list of all functions, recurrent structures, internal interfaces, and port references to functions referenced by the specified information flow.

Modul

Module: Information Flow

Zdrojový kód:

PROCEDURE List_Functions FOR INFORMATIONFLOW
BEGIN
/*
   list all functions in information flow
*/

  first%=1;
  
  PRINT {BOLD,"ARIAL",12} "Seznam funkcí v diagramu informačních toků ";
  PRINT {BOLD,"ARIAL",ITALIC,12} CONV$(Informationflow.Boxname), NL(2);
 
  FOREACH Function ORDER BY Name DO
    //Ifunc
    FOR Ifunc WHERE Ifd=Informationflow.Name
              AND Function=Function.Name DO
      first%=0;
      PRINT {"ARIAL",10} TAB(4),CONV$(Function.Boxname),TAB(35);
      IF Function.Reusable <> 0 THEN
        PRINT {"ARIAL",10} "(opakující se struktura)",NL;
      ELSIF Function.Type = "" THEN
        PRINT {"ARIAL",10} "(výkonná funkce)",NL;
      ELSIF Function.Type = "cp" THEN
        PRINT {"ARIAL",10} "(řídicí funkce)",NL;
      ELSIF Function.Type = "dg" THEN
        PRINT {"ARIAL",10} "(dialogová funkce)",NL;
      END
    END
    //Internal interface
    Ifaceifd$="";
    FOREACH Iface WHERE Ifd=Informationflow.Name
                  AND Function=Function.Name ORDER BY Ifaceifd DO
      first%=0;
      IF Ifaceifd <> Ifaceifd$ THEN
        Ifaceifd$=Ifaceifd;
        PRINT {"ARIAL",10} TAB(4),CONV$(Function.Boxname),TAB(35),"(interní rozhraní k ";
        IF Function.Reusable <> 0 THEN
          PRINT {"ARIAL",10} "opakující se struktuře v ",NL;
        ELSIF Function.Type = "" THEN
          PRINT {"ARIAL",10} "výkonné funkci v ",NL;
        ELSIF Function.Type = "cp" THEN
          PRINT {"ARIAL",10} "řídicí funkci v ",NL;
        ELSIF Function.Type = "dg" THEN
          PRINT {"ARIAL",10} "dialogové funkci v ",NL;
        END
        FOR Function AS IFD WHERE Name=Iface.Ifaceifd DO
          PRINT {"ARIAL",10} TAB(35),CONV$(IFD.Boxname),")", NL;
        END
      END
    END
    //Port
    CALL Is_Port_In_Ifd(Function.Name, Informationflow.Name, 1, 0, is_port%);
    IF is_port%=0 THEN
      CALL Is_Port_In_Ifd(Function.Name, Informationflow.Name, 5, 0, is_port%);
    END
    IF is_port%=1 THEN
      PRINT {"ARIAL",10} TAB(4),CONV$(Function.Boxname),TAB(35),"(Port to ";
      IF Function.Reusable <> 0 THEN
        PRINT {"ARIAL",10} "opakující se struktura)",NL;
      ELSIF Function.Type = "" THEN
        PRINT {"ARIAL",10} "výkonná funkce)",NL;
      ELSIF Function.Type = "cp" THEN
        PRINT {"ARIAL",10} "řídicí funkce)",NL;
      ELSIF Function.Type = "dg" THEN
        PRINT {"ARIAL",10} "dialogová funkce)",NL;
      END
    END
  END
  
  IF first%=1 THEN
    PRINT {"ARIAL",10,ITALIC} TAB(4),"Diagram neobsahuje žádné funkce.",NL;
  END
  PRINT NL;

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\23070.htm (C) microTOOL GmbH 2002