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
GetErmRelationshipName
(Connection ER Model - Relational Model)


Vytvořeno: 09-24-2001 08:19:32
Poslední změna: 11-29-2002 12:36:06

Modul

Module: Connection ER Model - Relational Model

Zdrojový kód:

PROCEDURE GetErmRelationshipName(entName$, rshId%, ercNo%, BYREF name$)
BEGIN
/* ***************************************************************************
    
    ***************************************************************************
    (Created 09/19/2001 mT)
    ***************************************************************************/
    
    name$ = "";
    FOREACH Erconnection AS Erc WHERE Entity = entName$
                                   AND Rship = rshId%
                                   AND Erconnectionno = ercNo% DO
        
        FOR Entity AS Ent1 WHERE Name = entName$ DO
                              
            name$ = Conv$(Ent1.Boxname);
            IF Erc.Name <> "" THEN
                name$ = name$ + " " + CONV$(Erc.Name) + " ";
            ELSIF Erc.Cardinality = "as" THEN
                name$ = name$ + " popisuje relaci mezi ";
            ELSIF Erc.Cardinality="sz" THEN
                name$ = name$ + " specifikuje ";
            ELSIF Erc.Cardinality="ge" THEN
                name$ = name$ + " zobecňuje ";
            ELSE
                name$ = name$ + " má vztah k ";
            END
            
            bFirst! = TRUE;
            FOREACH Erconnection AS Erc2 WHERE Erc2.Rship= Erc.Rship
                                     AND Erc2.Erconnectionno <> Erc.Erconnectionno
                                     AND Erc2.Cardinality <> "as"
                                     AND (Erc2.Cardinality <> "sz" OR Erc2.Cardinality = "ge") DO
                
                FOR Entity AS Ent2 WHERE Name = Erc2.Entity DO
                    IF bFirst! THEN
                        name$ = name$ + Conv$(Ent2.Boxname);
                        bFirst! = FALSE;
                    ELSE
                        name$ = name$ + " a " + Conv$(Ent2.Boxname);
                    END
                END
                 
            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\276845415.htm (C) microTOOL GmbH 2002