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
CrossReferenceUsage
(Miscellaneous Evaluating Functions)


Vytvořeno: 12-02-1996 09:42:15
Poslední změna: 12-04-2002 14:17:37

Outputs the calling functions of a function or of all functions of a language and a type. The last argument specifies the language in which the caller of the function/s is searched.

Modul

Module: Miscellaneous Evaluating Functions

Zdrojový kód:

PROCEDURE CrossReferenceUsage(Language$, Type$, Name$, SearchArea$)
BEGIN
/*
    Outputs all generating or evaluation functions calling
    the function.
    
    Parameters:
    
    Language$ Values:
                    C, COBOL, DRIVE, SQL, BASIC, ADA, JCL and JAVA
                    QUERY for evaluation functions
                    "" for all functions
    Type$ Type of Component of the function
                    Values:
                    Global 000
                    (in Modulstructures:)
                    Callback cbk
                    Module Structure/Module/Program mod
                    Module Head/Program Head cmt
                    Function/Procedure/Subroutine fdt
                    Dialog/Form fdt
                    Reference to Relation end
                    Reference to Type Structure dde
                    Reference to Module usa
                    Declaration/Variable/Typedefinition dec
                    (Language SQL:)
                    Data Base dba
                    Relation rla
                    Index idx
                    Type Structure tsd
                    Type Structure: Type/Attribute field tfi
                    Type Structure: Condition tco
                    Type Structure: Relation Reference rlp
                    Type Structure: Part tpa
                    (for Evaluation functions/QUERY:)
                    Configuration cfg
                    Data Base dba
                    Data Element dat
                    Data Structure/Event/Material dsd
                    Entity Type ent
                    ER Model erm
                    External Interface efa
                    Function fun
                    Function Structure fsd
                    Implementation Tree fdt
                    Information Flow ifd
                    Module Strukture mod
                    Relation rla
                    Relational Model rel
                    Report Structure rep
                    Scenario sce
                    Type Structure tsd
                    State Transition Diagram std
                    all components ""
    Name$ Name of function
    SearchArea$ language in which the caller is searched or ""

*/
   

    sprachtab% = 35;
    comptab% = 42;
    modtab% = 62;
    
    Name$ = UCASE$ (Name$);
    IF Language$ = "" AND (Type$ <> "" OR Name$ <> "") THEN
        PRINT "Pokud je zvolena komponenta nebo funkce je třeba zadat jazyk!", NL;
    ELSE

        Language$ = UCASE$ (Language$);
        Language% = Languageid%(Language$);
        
        Type$=LCASE$(Type$);
        SearchArea$ = UCASE$ (SearchArea$);
        SearchArea% = Languageid%(SearchArea$);
          
        PRINT {"Arial", 12, BOLD} "Funkce volající zvolenou funkci", NL(3);
    
        FOREACH Format AS f1 WHERE (Language = Language% OR (Language% = 0))
        AND (Type = Type$ OR Type$ = "")
        AND (UCAse$(Name) = Name$ OR Name$ = "")
        ORDER BY Language, Type, Name DO
        
            SET STYLE {"ARIAL", 10, BOLD};
            PRINT Name;
            SET STYLE {"Arial", 10, BOLD};
            PRINT TAB(sprachtab%), Languagename$(Language);
            IF Type <> "000" THEN
               PRINT TAB(comptab%), Tablename$(Type);
            ELSE
               PRINT TAB(comptab%), "globální";
            END
            PRINT TAB(modtab%), f1.Formatmodule;
            PRINT NL(2);

            IsUsedAnywhere% = 0;
            FOREACH Format AS f2 WHERE (Language = SearchArea% OR SearchArea% = 0)
            ORDER BY Language, Type, Name DO
                
                IF f2.Language = f1.Language THEN
                    LanguageInCall$ = "";
                ELSE
                    LanguageInCall$ = """" + Language$ + """";
                END
    
                IF f1.Type <> "000" THEN
                     IF Tablename$(f1.Type)=f1.Name THEN
                      EXTERN "gencref.dll" CALL GFisCalled(LanguageInCall$, Tablename$(f1.Type), f1.Name, f2.Code, isCalled$);
                     END
                ELSE
                    EXTERN "gencref.dll" CALL GFisCalled(LanguageInCall$, "",f1.Name, f2.Code, isCalled$);
                END
    
                isCalled% = VAL(isCalled$);
                IF isCalled% = 1 THEN
                    SET STYLE {"ARIAL", 10};
                    PRINT TAB (3), f2.Name;
                    PRINT TAB(sprachtab%), Languagename$(f2.Language) ;
                    IF f2.Type <> "000" THEN
                        PRINT TAB (comptab%), Tablename$(f2.Type);
                    ELSE
                        PRINT TAB (comptab%), "globální";
                    END
                    PRINT TAB(modtab%), f2.Formatmodule;
                    PRINT NL;
                    IsUsedAnywhere% = 1;
                END
            END
            
            IF IsUsedAnywhere% = 0 THEN
                PRINT {"Arial", 10} TAB(3), "(funkce není volána)", NL;
            END
            
            PRINT NL;
        END
        PRINT NL;
    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\234.htm (C) microTOOL GmbH 2002