Benachrichtigungen erhalten, während Daten mit Smart Markern zusammengeführt werden
Contents
[
Hide
]
Aspose.Cells APIs bieten dieWorkbookDesigner Klasse zuArbeiten Sie mit Smart Markern wo die Formatierungen und Formeln platziert werdenDesigner-Tabellen und dann mit verarbeitetWorkbookDesigner Klasse, um die Daten gemäß den angegebenen Smart Markern aufzufüllen. Manchmal kann es erforderlich sein, Benachrichtigungen über den Zellbezug oder den bestimmten Smart Marker zu erhalten, der verarbeitet wird. Dies kann mit der erreicht werdenWorkbookDesigner.CallBack Eigentum undISmartMarkerCallBackSchnittstelle ausgesetzt mit der Veröffentlichung von Aspose.Cells for Java 8.6.2.
Erhalten Sie Benachrichtigungen, während Sie Daten mit Smart Markern zusammenführen
Der folgende Codeabschnitt demonstriert die Verwendung vonISmartMarkerCallBack-Schnittstelle, um eine neue Klasse zu definieren, die den Rückruf verarbeitetWorkbookDesigner.process Methode.
This file contains 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); | |
} | |
} |
Um das Beispiel einfach und auf den Punkt zu bringen, erstellt das folgende Snippet ein leeres Designer-Arbeitsblatt, fügt einen Smart Marker ein und verarbeitet es mit der dynamisch erstellten Datenquelle.
This file contains 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); |