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


Vytvořeno: 02-13-1996 16:11:15
Poslední změna: 11-28-2002 10:46:52

Outputs all relationships referenced in the specified relational model; the amount of information delivered can be customized by parameters.

Modul

Module: OLE Functions for MS Word

Zdrojový kód:

PROCEDURE QueryRelRel(diagname$, which$)
BEGIN
    PRINT {"Arial", 12, BOLD} "Vztahy v relačním modelu ";
    FOR Relarea WHERE Name = diagname$ DO
        PRINT {"Arial", 12, ITALIC, BOLD} CONV$(Boxname);
    END
    PRINT {"Arial", 12} ":", NL;
    FOREACH Rellink WHERE Area = Diagname$ DO
        PRINT NL;
        FOR Relrship WHERE Name = Rellink.Name AND
                           Source = Rellink.Source AND
                           Target = Rellink.Target DO
            FOR Relation WHERE Name = Source DO
                SourceCardinality$ = MID$(Cardinality, 1, 1);
                TargetCardinality$ = MID$(Cardinality, 2, 1);
                CALL QueryRelCardinality (RelRship.Name, RelRship.Source,
                                          RelRship.Target, SourceCardinality$,
                                          TargetCardinality$);
                PRINT {"Arial", 10, ITALIC} CONV$(Boxname)," ";
            END
            PRINT {BOLD,"ARIAL",10} CONV$(Relrship.Boxname);
            FOR Relation WHERE Name = Target DO
                PRINT {"Arial", 10, ITALIC} " ",CONV$(Boxname), NL;
            END
            IF INSTR(which$, "r") > 0 THEN
                CALL Number2Bitmask(Integrity, byte$);
                PRINT {"ARIAL",8} TAB(4),"Integrita (změna/zrušení) :",TAB(28);
                IF MID$(byte$, 7, 1) = "1" THEN
                    PRINT {"Arial", 10}
                          "user defined:", NL;
                    PRINT {"Arial", 8} TAB(4), Userintegrity, NL;
                ELSE
                    IF MID$(byte$, 4, 1) = "1" THEN
                        PRINT {"Arial", 8} "kaskádní/";
                    END
                    IF MID$(byte$, 5, 1) = "1" THEN
                        PRINT {"Arial", 8} "restriktivní/";
                    END
                    IF MID$(byte$, 6, 1) = "1" THEN
                        PRINT {"Arial", 8} "nullify/";
                    END
                    IF MID$(byte$, 1, 1) = "1" THEN
                        PRINT {"Arial", 8} "kaskádní";
                    END
                    IF MID$(byte$, 2, 1) = "1" THEN
                        PRINT {"Arial", 8} "restriktivní";
                    END
                    IF MID$(byte$, 3, 1) = "1" THEN
                        PRINT {"Arial", 8} "nullify";
                    END
                    PRINT NL;
                END
            END
            PRINT {"ARIAL",8} TAB(4),"Kardinalita :",TAB(28);
            PRINT {"ARIAL",8} SourceCardinality$," : ",TargetCardinality$,NL;
            IF INSTR(which$, "f") > 0 THEN
                PRINT TAB(4);
                PRINT {"Arial", 8, UNDERLINE} "Primární klíč";
                PRINT {"Arial", 8} TAB(28);
                PRINT {"Arial", 8, UNDERLINE} "Cizí klíč", NL;
                FOREACH Relrshipattribute WHERE Source = Rellink.Source AND
                                                Target = Rellink.Target AND
                                                Rship = Name DO
                    PRINT {"Arial", 8} TAB(4), Sourceattribute,
                                       TAB(28), Targetattribute, NL;
                END
                PRINT NL;
            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\18677.htm (C) microTOOL GmbH 2002