Akıllı İmler ile Veri Birleştirirken Bildirimleri Alma

Akıllı İşaretçilerle Veri Birleştirilirken Bildirim Alınması

Aşağıdaki kod parçacığı, yeni bir sınıf tanımlamak için ISmartMarkerCallBack arayüzünün kullanımını gösterir ve WorkbookDesigner.process yöntemi için geri aramanın nasıl ele alındığını belirtir.

// 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);
}
}

Örneği basit ve net tutmak için aşağıdaki parçacık, boş bir tasarımcı tablo oluşturur, bir Akıllı İşaretçi ekler ve dinamik olarak oluşturulan veri kaynağı ile işler.

// 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);