To illustrate how dhttp can work both as an application and a service, let’s focus on ways to retrieve SQL data. A typical dhttp plug-in uses some kind of data-viewing widget to present dynamic views of SQL data and attach instrumentation to those views. Figure 15.7 shows the viewer used by another plug-in, called Jobs, which tracks assigned tasks.
Figure 15-7. Data viewer for the Jobs plug-in
You can do an ascending or descending sort on any column by clicking the up or down links surrounding the column’s title. A menu of functions that apply to each row appears in the first column as a dropdown list. In this case, the client focus function constrains the view to only the jobs for the client listed in that row. The contacts function launches the SFA module, in a separate window, and synchronizes its display to the client listed in that row. The create invoice function launches Word and generates an invoice, pulling records from both the SFA and the Jobs databases.
Nothing here is specific to dhttp. It’s just basic web-to-database integration, relying on server-generated pages. Because the server is local, though, the usual rap against this technique—that it requires repeated round trips to the server—carries less force. In this case, it’s a very short round trip. Example 15.6 shows the method that implements the viewer:
Example 15-6. Implementation of the Jobs ...