Recibir notificaciones al fusionar datos con marcadores inteligentes
Contents
[
Hide
]
Aspose.Cells Las API proporcionan laWorkbookDesigner clase atrabajar con marcadores inteligentes donde se colocan el formato y las fórmulas en elhojas de calculo de diseñador y luego procesado conWorkbookDesigner clase para completar los datos de acuerdo con los marcadores inteligentes especificados. A veces, puede ser necesario recibir notificaciones sobre la referencia de celda o el marcador inteligente en particular que se está procesando. Esto se puede lograr usando elWorkbookDesigner.CallBack propiedad yISmartMarkerCallBackinterfaz expuesta con el lanzamiento de Aspose.Cells for Java 8.6.2.
Reciba notificaciones mientras fusiona datos con marcadores inteligentes
El siguiente fragmento de código demuestra el uso deISmartMarkerCallBackinterfaz para definir una nueva clase que maneja la devolución de llamada paraWorkbookDesigner.proceso método.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
public class SmartMarkerCallBack implements ISmartMarkerCallBack { | |
Workbook workbook; | |
SmartMarkerCallBack(Workbook workbook) { | |
this.workbook = workbook; | |
} | |
@Override | |
public void process(int sheetIndex, int rowIndex, int colIndex, String tableName, String columnName) { | |
System.out.println("Processing Cell : " + workbook.getWorksheets().get(sheetIndex).getName() + "!" | |
+ CellsHelper.cellIndexToName(rowIndex, colIndex)); | |
System.out.println("Processing Marker : " + tableName + "." + columnName); | |
} | |
} |
Para mantener el ejemplo simple y directo, el siguiente fragmento crea una hoja de cálculo de diseñador vacía, inserta un marcador inteligente y lo procesa con la fuente de datos creada dinámicamente.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(GetNotificationsWhileMergingData.class); | |
// Instantiate a new Workbook designer | |
WorkbookDesigner report = new WorkbookDesigner(); | |
// Get the first worksheet of the workbook | |
Worksheet sheet = report.getWorkbook().getWorksheets().get(0); | |
/* | |
* Set the Variable Array marker to a cell. You may also place this Smart Marker into a template file manually using Excel | |
* and then open this file via WorkbookDesigner | |
*/ | |
sheet.getCells().get("A1").putValue("&=$VariableArray"); | |
// Set the data source for the marker(s) | |
report.setDataSource("VariableArray", new String[] { "English", "Arabic", "Hindi", "Urdu", "French" }); | |
// Set the CallBack property | |
report.setCallBack(new SmartMarkerCallBack(report.getWorkbook())); | |
// Process the markers | |
report.process(false); | |
// Save the result | |
report.getWorkbook().save(dataDir); |