コード例 #1
0
        private void parseProcedureStmt(TStoredProcedureSqlStatement procedureStmt)
        {
            if (procedureStmt.StoredProcedureName == null)
            {
                return;
            }
            ProcedureMetaData procedureMetaData = getProcedureMetaData(procedureStmt.StoredProcedureName);

            procedureMetaData = getProcedureMetaData(procedureMetaData, true);

            TObjectName procedureName = procedureStmt.StoredProcedureName;
            procedure   procedure     = new procedure();

            procedure.name          = procedureMetaData.DisplayName;
            procedure.owner         = getOwnerString(procedureMetaData);
            procedure.coordinate    = procedureName.startToken.lineNo + "," + procedureName.startToken.columnNo;
            procedure.highlightInfo = procedureName.startToken.offset + "," + (procedureName.endToken.offset - procedureName.startToken.offset + procedureName.endToken.astext.Length);
            List <procedure> procedureList = getProcedureList(procedures.Item1);

            procedureList.Add(procedure);
            procedures.Item1.procedures = procedureList.ToArray();


            parseProcedureLineage(procedureStmt, procedureMetaData, procedure);
        }
コード例 #2
0
 private void parseStatement(TCustomSqlStatement stmt)
 {
     if (stmt is TUseDatabase)
     {
         TUseDatabase use = (TUseDatabase)stmt;
         database = use.DatabaseName.ToString();
     }
     else if (stmt is TStoredProcedureSqlStatement)
     {
         TStoredProcedureSqlStatement procedureStmt = (TStoredProcedureSqlStatement)stmt;
         parseProcedureStmt(procedureStmt);
     }
 }
コード例 #3
0
        private void parseProcedureLineage(TStoredProcedureSqlStatement procedureStmt, ProcedureMetaData procedureMetaData, procedure sourceProcedure)
        {
            functionVisitor fv = new functionVisitor(this, procedureMetaData, sourceProcedure);

            procedureStmt.acceptChildren(fv);
        }