I am trying to do a master detail mail merge using the eval copy of Aspose Words for Java. I have a custom complex object model that has inherent master-detail relationships. The getChildDataSource method is never called when a TableStart is encountered in the document.
To illustrate the problem I created an implementation that just prints the method calls. I also attached a sample document based upon one of your sample documents from another thread. I would expect Aspose Words to call getValue for top_field and then to call getChildDataSource for Customer, but I only see the getValue call. Here's the Java code that prints the calls:
doc.getMailMerge().execute(new IMailMergeDataSource() { protected boolean first=false; public IMailMergeDataSource getChildDataSource(String arg0) throws Exception {System.out.println("getChildDataSource: "+arg0); return null; } public String getTableName() throws Exception { System.out.println("getTableName"); return "Customer"; } public boolean getValue(String arg0, Object[] arg1) throws Exception { System.out.println("getValue: "+arg0); return false; } public boolean moveNext() throws Exception { System.out.println("moveNext"); if (!first) { first=true; return true; } return false; } });