public override void doRuleQuickFix(SQLElement eaElement, SQLRepository repository, int i, String errorMessage)
 {
     if (i == 0)
     {
         EAUtil.deleteElement(eaElement.getRealElement(), repository);
     }
     else if (i == 1)
     {
         EA.Diagram possibleDiagram = null;
         SQLElement parent          = eaElement;
         SQLPackage parentPackage   = null;
         while (possibleDiagram == null)
         {
             if (parent.ParentID != 0)
             {
                 parent = repository.GetElementByID(parent.ParentID);
                 if (parent.Diagrams.Count > 0)
                 {
                     possibleDiagram = parent.Diagrams.GetAt(0) as EA.Diagram;
                 }
             }
             else
             {
                 if (parentPackage == null)
                 {
                     parentPackage = repository.GetPackageByID(parent.PackageID);
                 }
                 else
                 {
                     parentPackage = repository.GetPackageByID(parentPackage.ParentID);
                 }
                 if (parentPackage.Diagrams.Count > 0)
                 {
                     possibleDiagram = parentPackage.Diagrams.GetAt(0) as EA.Diagram;
                 }
             }
         }
         possibleDiagram = EAUtil.sqlEAObjectToOriginalObject(repository, possibleDiagram) as EA.Diagram;
         EA.DiagramObject diagObject = possibleDiagram.DiagramObjects.AddNew("", eaElement.Type) as EA.DiagramObject;
         diagObject.left      = 20;
         diagObject.right     = 120;
         diagObject.top       = -20;
         diagObject.bottom    = -70;
         diagObject.ElementID = eaElement.ElementID;
         diagObject.Update();
         repository.OpenDiagram(possibleDiagram.DiagramID);
         EAUtil.clearSelectedDiagramObjects(repository);
         possibleDiagram.SelectedObjects.AddNew(diagObject.ElementID.ToString(), "");
         repository.ReloadDiagram(possibleDiagram.DiagramID);
     }
 }