This service implements a user interface for browsing data sources registered on the
DatabaseContext
instance of the system.
It is possible to navigate through all the data sources, it's queries and it's tables.
The queries/tables can be displayed in a grid-like view, where functionality for searching,
sorting, filtering, and such is provided.
Usually, you won't instantiate this service directly, instead you use the dispatch mechanisms
of the application framework to load the URL .component:DB/DataSourceBrowser into an arbitrary
frame. This should involve a
ContentLoader
service, which creates and initializes
the browser.
Some aspects of the browser can be controlled from outside, eg.,
it is possible to dispatch a sort or filter
request, if a table or query is being displayed.
The communication between the browser and external instances works in two ways.
The way in is provided by the
::com::sun::star::frame::XDispatchProvider
interface the service exports (Please see below for more details on this).
The way out works in another way. There are several URL's which an external
instance can provide dispatches for (usually by implementing a
::com::sun::star::frame::XDispatchProviderInterceptor
for the parent frame of the browser), thus indicating that the browser should provide special functionality.
In this case, the browser displays and maintains some additional slots (to be more concrete: toolbox items), which,
upon triggering, call the
::com::sun::star::frame::XDispatch::dispatch()methodoftheobject
provided by the external instance.
In particular, the supported URL's for communicating to an external instance are:
- .uno:DataSourceBrowser/InsertColumns
Available whenever an external instance provides a dispatcher (
::com::sun::star::frame::XDispatch)
for this URL.
Enabled, if at least one row in the grid view of a table or query is selected.
It is the task of the external instance to provide functionality for this URL, but usually it is used
to implement some kind of "Data To Text" functionality.
- .uno:DataSourceBrowser/InsertContent
Available whenever an external instance provides a dispatcher(
::com::sun::star::frame::XDispatch
) for this URL.
Enabled, if at least one row in the grid view of a table or query is selected.
It is the task of the external instance to provide functionality for this URL, but usually it is used
to implement some kind of "Data To Fields" functionality.
- .uno:DataSourceBrowser/FormLetter
Available whenever an external instance provides a dispatcher (
::com::sun::star::frame::XDispatch)forthisURL.
It is the task of the external instance to provide functionality for this URL, but usually it is used
to implement some kind of "Form Letter" functionality.
For all kinds of URL's, the parameters supplied during dispatching build up a DataAccessDescriptor,
where the following properties are present:
The default for DataAccessDescriptor::Selection is to contain bookmarks, if not specified
otherwise by DataAccessDescriptor::BookmarkSelection.