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
GenERMText
(OLE Functions for MS Word)


Vytvořeno: 12-08-1995 17:22:36
Poslední změna: 11-27-2002 13:52:54

Outputs the text describing the specified ER model and its elements.

Modul

Module: OLE Functions for MS Word

Zdrojový kód:

PROCEDURE GenERMText(name$)
BEGIN
    FOR Erarea WHERE Name = name$ DO
        Diagname$= Boxname;
        IF Text <> "" THEN
            CALL GenERMTitle(DiagName$);
            PRINT Text, NL;
        END
        FOREACH Enode WHERE Area = Name ORDER BY Entity DO
            FOR Entity WHERE Name = Enode.Entity DO
                IF Semantic <> "" THEN
                    CALL GenERMTitle(DiagName$);
                    PRINT {"Arial",10,BOLD} CONV$(Boxname);
                    PRINT {"Arial",10} " (Entita)",NL;
                    PRINT Semantic, NL;
                END
            END
        END
        FOREACH Rnode WHERE Area = Name DO
            FOR Rship WHERE Id = Rnode.Rship DO
                IF Semantic <> "" THEN
                    CALL GenERMTitle(DiagName$);
                    IF Name<>"" THEN
                        PRINT {"Arial",10,BOLD} CONV$(Name);
                    ELSE
                        c%=0;
                        FOREACH Erconnection WHERE Rship=Rship.Id DO
                            FOR Entity WHERE Name=Erconnection.Entity DO
                            IF c%>0 THEN
                                PRINT {"ARIAL",10,BOLD} "/";
                            END
                            c%=c%+1;
                            PRINT {"Arial",10,BOLD} CONV$(Boxname);
                            END
                        END
                    END
                    PRINT {"Arial",10} " (vztah)", NL;
                    PRINT Semantic, NL;
                END
            END
        END
        FOREACH Erlink WHERE Area = Name DO
            FOR Erconnection WHERE Entity = Erlink.Entity AND
                                   Rship = Erlink.Rship AND
                                   Erconnectionno = Erlink.Erconnectionno AND
                                   Cardinality <>"as" AND
                                   Text <> "" DO
                CALL GenERMTitle(DiagName$);
                FOR Entity WHERE Name=Erconnection.Entity DO
                  PRINT {"Arial",10} CONV$(Boxname)," ";
                END
                PRINT {"Arial",10,BOLD} CONV$(Name);
                c%=0;
                FOR Rship WHERE Rship.Id=Erconnection.Rship DO
                  FOREACH Rnode WHERE Rnode.Area=Erarea.Name
                                AND Rnode.Rship=Rship.Id DO
                    FOREACH Erconnection AS EC WHERE EC.Rship=Rship.Id
                                         AND NOT EC.Entity=Erconnection.Entity
                                         AND NOT EC.cardinality="as" DO
                      FOR Entity WHERE Entity.Name=EC.Entity DO
                        IF c%>0 THEN
                          PRINT {"ARIAL",10} " a";
                        END
                        c%=c%+1;
                        PRINT {"Arial",10} " ",CONV$(Boxname);
                      END
                    END
                  END
                END
                PRINT {"Arial",10} " (vztah)", NL;
                PRINT Text;
            END
        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\9994.htm (C) microTOOL GmbH 2002