データが大きすぎる場合、他のワークシートにSmart Markerデータを自動的にポピュレートする
可能な使用シナリオ
時々、データソースが1500000のレコードを持っていて、単一のワークシートに収まりきらない場合、残りのレコードを次のワークシートに移動する必要があります。
データが大きすぎる場合、他のワークシートにスマートマーカーデータを自動的に埋め込む
以下のサンプルコードには、21のレコードを持つデータソースが含まれています。1つのワークシートには15のレコードのみを表示し、残りのレコードは自動的に2番目のワークシートに移動します。2番目のワークシートにも同じスマートマーカータグが必要で、両方のシートに対してWorkbookDesigner.process(sheetIndex, isPreserved)メソッドを呼び出す必要があります。また、このコードで使用されているMicrosoft Accessデータベースファイルとコードによって生成された出力Excelファイルを参照してください。
サンプルコード
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Create Connection object - connect to Microsoft Access Students Database | |
java.sql.Connection conn = java.sql.DriverManager.getConnection("jdbc:ucanaccess://" + srcDir + "sampleAutoPopulateSmartMarkerDataToOtherWorksheets.accdb"); | |
// Create SQL Statement with Connection object | |
java.sql.Statement st = conn.createStatement(); | |
// Execute SQL Query and obtain ResultSet | |
java.sql.ResultSet rsEmployees = st.executeQuery("SELECT * FROM Employees"); | |
//Create empty workbook | |
Workbook wb = new Workbook(); | |
//Access first worksheet and add smart marker in cell A1 | |
Worksheet ws = wb.getWorksheets().get(0); | |
ws.getCells().get("A1").putValue("&=Employees.EmployeeID"); | |
//Add second worksheet and add smart marker in cell A1 | |
wb.getWorksheets().add(); | |
ws = wb.getWorksheets().get(1); | |
ws.getCells().get("A1").putValue("&=Employees.EmployeeID"); | |
//Create workbook designer | |
WorkbookDesigner wd = new WorkbookDesigner(wb); | |
//Set data source with result set | |
wd.setDataSource("Employees", rsEmployees, 15); | |
//Process smart marker tags in first and second worksheet | |
wd.process(0, false); | |
wd.process(1, false); | |
//Save the workbook | |
wb.save("outputAutoPopulateSmartMarkerDataToOtherWorksheets.xlsx"); |