Example: DataPilotTable

This example creates a DataPilot table and then adds fields for it.

import com.ibm.symphony.javaapi.Application;
import com.ibm.symphony.javaapi.Constant;
import com.ibm.symphony.javaapi.spreadsheet.DataPilotFields;
import com.ibm.symphony.javaapi.spreadsheet.DataPilotTable;
import com.ibm.symphony.javaapi.spreadsheet.Range;
import com.ibm.symphony.javaapi.spreadsheet.Sheet;
import com.ibm.symphony.javaapi.spreadsheet.Spreadsheet;

public class DataPilotTableExample {

	public void example() {
		try {
			Application application = Application.getInstance();
			Spreadsheet spreadsheet = application.getSpreadsheets()
					.openSpreadsheet("F:\\DataPilot.ods", true);
			Sheet sheet = spreadsheet.getActiveSheet();
			Range sourcerange = sheet.range("A2:E8");
			Range destRange = sheet.cells(13, 6);
			DataPilotTable dataPilotTable = sheet.getDataPilotTables().add(
					sourcerange, "Sells report", destRange);
			String[] rowfieldsarray = { "Item" };
			String[] colfieldsarray = { "Requested by" };
			String[] datafieldsarray = { "total price" };
			String[] pagefieldsarray = { "P.O.#" };
			dataPilotTable.addFields(rowfieldsarray, colfieldsarray,
					datafieldsarray, pagefieldsarray,
					Constant.SYMPHONY_GENERAL_FUNCTION_SUM);
			DataPilotFields rowfields = dataPilotTable.getRowFields();
			DataPilotFields columnfields = dataPilotTable.getColumnFields();
			DataPilotFields datafields = dataPilotTable.getDataFields();
			DataPilotFields pagefields = dataPilotTable.getPageFields();
			if (rowfields.getCount() > 0) {
				System.out.println(rowfields.item(1).getName());
			}
			if (columnfields.getCount() > 0) {
				System.out.println(columnfields.item(1).getName());
			}
			if (datafields.getCount() > 0) {
				System.out.println(datafields.item(1).getName());
			}
			if (pagefields.getCount() > 0) {
				System.out.println(pagefields.item(1).getName());
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}

Related information

DataPilotTable