public void GetAllDependencies(DbObjectBE pDbObjectBE, List <DbObjectBE> pLstObjs) { try { if (pDbObjectBE != null) { if (!pLstObjs.Contains(pDbObjectBE)) { pLstObjs.Add(pDbObjectBE); List <DbObjectBE> lstDependencies = this.GetDependencies(pDbObjectBE); foreach (var item in lstDependencies) { if (item.Owner.CompareTo("SYS") != 0) { GetAllDependencies(item, pLstObjs); } } } } } catch (Exception) { throw; } }
public DataSet GetDependencies(DbObjectBE pDbObjectBE) { DataSet res = null; string wsql = "select a.referenced_owner, a.referenced_type, a.referenced_name " + Environment.NewLine + "from all_dependencies a " + Environment.NewLine + " where a.owner = " + MyStringUtils.entreComas(pDbObjectBE.Owner) + Environment.NewLine + " and a.type = " + MyStringUtils.entreComas(pDbObjectBE.Type) + Environment.NewLine + " and a.name = " + MyStringUtils.entreComas(pDbObjectBE.Name) + Environment.NewLine; try { res = MyOracleUtils.executeSqlStmDs(wsql, this.conn); } catch (Exception) { throw; } return(res); }
private void tlsStrProcess_Click(object sender, EventArgs e) { OracleMetadataBL oraMetaBL = new OracleMetadataBL(); DbObjectBE dbObjBE = new DbObjectBE(); List <DbObjectBE> lst = new List <DbObjectBE>(); // Set cursor as hourglass Cursor.Current = Cursors.WaitCursor; try { txtResult.Text = string.Empty; dbObjBE.Owner = txtOwner.Text; dbObjBE.Type = txtType.Text; dbObjBE.Name = txtDbObjName.Text; oraMetaBL.GetAllDependencies(dbObjBE, lst); if (lst != null) { foreach (var item in lst) { txtResult.Text += (item.ToString() + Environment.NewLine); } SaveListDbsToFile(lst); } MessageBox.Show("Proceso finalizado!!!"); } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { // Set cursor as default arrow Cursor.Current = Cursors.Default; } }
public List <DbObjectBE> GetDependencies(DbObjectBE pDbObjectBE) { List <DbObjectBE> res = null; res = new List <DbObjectBE>(); try { DataSet ds = this.oraMetaDL.GetDependencies(pDbObjectBE); foreach (DataRow dr in ds.Tables[0].Rows) { DbObjectBE dbObj = new DbObjectBE(); dbObj.Owner = Convert.ToString(dr["REFERENCED_OWNER"]); dbObj.Type = Convert.ToString(dr["REFERENCED_TYPE"]); dbObj.Name = Convert.ToString(dr["REFERENCED_NAME"]); res.Add(dbObj); } } catch (Exception) { throw; } return(res); }