[Announcement] Google plugin 3.0 adds Spreadsheets and more

We announce the immediate availability of version 3.0 of the Google plugin!

The new version adds the following new features:

  • Support for Spreadsheets
  • Support for Fusion tables
  • Support for Geocoding
  • Support for “Anyone with the link” document permission (finally added by Google)

When you get or create a document of type SPREADSHEET you will get a Spreadsheet object instead of a Document object. A Spreadsheet object offers everything a Document object offers, plus Spreadsheet specific methods and properties:

  • addWorksheet(title, rowCount, columnCount) to add a Worksheet with the given name and size
  • createWorksheetFromDataSet(name, dataset) to create a Worksheet with the given name from a JSDataSet
  • deleteWorksheet(name/index) to delete a Worksheet
  • getWorksheet(name/index) to get the Worksheet with the given index or name
  • getWorksheets() to get all Worksheets as a Worksheet array

Spreadsheets contain one or more Worksheets. Each worksheet can either be looked as a collection of cells or as a list of data. In a list based worksheet the first row is used to identifiy a column’s name. Some of the methods offered by the Worksheet object are more suitable for one or the other:

  • columnCount, rowCount and title properties
  • addRow(String columnNames, String rowData) adds a row to a list based worksheet
  • deleteWorksheet() deletes this worksheet
  • getAllCells() returns a WorksheetCell array in a cell based worksheet
  • getAsDataSet() returns a JSDataSet with all rows in a list based worksheet
  • getCell(row, column) returns the WorksheetCell with the given row and column
  • getCells(fromRow, toRow, fromColumn, toColumn) returns a WorksheetCell array with all filled cells in the given range
  • getDataSetByQuery() returns a JSDataSet with all rows matching the given query (e.g. "name = John and age > 25") in a list based worksheet
  • setCellValue(row, column, value) to set the value or formula of the given Cell

Finally, a worksheet contains WorksheetCell objects. Most important:

  • value property to get / set the cell’s value
  • formula property to get / set the cell’s formula

The FusionTableService object of the Google plugin allows you to

  • getAllTables() as a FusionTable array
  • createTableFromDataset(tableName, dataset, columnTypes) to create a FusionTable from the dataset provided using the given column types
  • dropTable(int tableId / FusionTable table) to drop a table
  • getDataSetByQuery(sqlQuery) to get a dataset based on the query you provide

The FusionTable object offers

  • tableId, tableName properties
  • getColumnIds(), getColumnNames(), getColumnTypes() to get column information
  • getColumns() to get a JSDataSet with columnId, columnName and columnType
  • getDataSetByQuery() to get a dataset based on the query you provide; in the query you need to select from the tableId (SELECT … FROM 12345) and not the name
  • getNumberOfRows()
  • getTableData() to return a JSDataSet with all the table’s data
  • insertDataset() to add the data from the given JSDataSet to the table

The geocoding features allow you to either geocode an address or reverse-geocode from latitude/longitude coordinates. As a result you will receive a GeocodeResult object containing the components of the response.

Using the feature is simple:

vGeoResult = plugins.Google.geocodeAddress(address, [language]);
vGeoResult = plugins.Google.reverseGeocodeAddress(latitude, longitude, [language]);

And finally Google has added the possibility to set “Anyone with the link” document permissions to their API and so have we.

For more information please visit our website. The new version is a free update for all registered users.

Great stuff! We made some customers very happy with the plugin!

We made a demo movie (in Flemish!) : http://www.conimbus.com/news/files/c864 … df-19.html
(Click the blue “demo” button)

Thanks Patrick!