Hi Ocke,

I have created issues for the stuff, which we discussed last time I
posted here. It seems like it will still take a while until they are
treated. There are still a few more problems with the driver and hope
you have an idea how to solve this one:

A view that references a table is dropped silently by our DBMS, when the
referenced table is dropped, yet Base still displayes the view, until
View->Refresh Tables in the Bases menubar is clicked.
Calling refreshTables() and refreshViews() from the IngCatalog class
doesn't solve this, as it only refreshes the structures in the driver,
but Base has no clue that they have changed.
I guess I should do something like the following for every silently
dropped view in the implementation of XDrop for the IngTables class to
tell Base about the change, but it doesn't seem to work either.

IngViews* pViews = static_cast<IngViews*>
  (static_cast<OIngresCatalog&>(m_rParent).getPrivateViews());
if (pViews && pViews->hasByName(_ViewName_))
{
  pViews->dropByNameImpl(_ViewName_);
  ContainerEvent aEvent(static_cast<XContainer*>(this),
    makeAny(_ViewName_), Any(), Any());
  OInterfaceIteratorHelper aListenerLoop(m_aContainerListeners);
  while (aListenerLoop.hasMoreElements())
  {
    static_cast<XContainerListener*>
      (aListenerLoop.next())->elementRemoved(aEvent);
  }
}

Best Regards,
Micha

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to