|
|
@ -57,6 +57,7 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
private UICheckBox isShareCheckBox; |
|
|
|
private UICheckBox isShareCheckBox; |
|
|
|
private MaxMemRowCountPanel maxPanel; |
|
|
|
private MaxMemRowCountPanel maxPanel; |
|
|
|
private String pageQuery = null; |
|
|
|
private String pageQuery = null; |
|
|
|
|
|
|
|
private String customCountQuery = null; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public DBTableDataPane() { |
|
|
|
public DBTableDataPane() { |
|
|
@ -148,9 +149,10 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private void refresh() { |
|
|
|
private void refresh() { |
|
|
|
String[] paramTexts = new String[2]; |
|
|
|
String[] paramTexts = new String[3]; |
|
|
|
paramTexts[0] = sqlTextPane.getText(); |
|
|
|
paramTexts[0] = sqlTextPane.getText(); |
|
|
|
paramTexts[1] = pageQuery; |
|
|
|
paramTexts[1] = pageQuery; |
|
|
|
|
|
|
|
paramTexts[2] = customCountQuery; |
|
|
|
|
|
|
|
|
|
|
|
List<ParameterProvider> existParameterList = editorPane.update(); |
|
|
|
List<ParameterProvider> existParameterList = editorPane.update(); |
|
|
|
Parameter[] ps = existParameterList == null ? new Parameter[0] : existParameterList.toArray(new Parameter[existParameterList.size()]); |
|
|
|
Parameter[] ps = existParameterList == null ? new Parameter[0] : existParameterList.toArray(new Parameter[existParameterList.size()]); |
|
|
@ -164,6 +166,8 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
toolBarDef.addShortCut(new PreviewAction()); |
|
|
|
toolBarDef.addShortCut(new PreviewAction()); |
|
|
|
toolBarDef.addShortCut(SeparatorDef.DEFAULT); |
|
|
|
toolBarDef.addShortCut(SeparatorDef.DEFAULT); |
|
|
|
toolBarDef.addShortCut(new EditPageQueryAction()); |
|
|
|
toolBarDef.addShortCut(new EditPageQueryAction()); |
|
|
|
|
|
|
|
toolBarDef.addShortCut(SeparatorDef.DEFAULT); |
|
|
|
|
|
|
|
toolBarDef.addShortCut(new EditCustomCountQueryAction()); |
|
|
|
isShareCheckBox = new UICheckBox(Inter.getLocText("FR-Designer_Is_Share_DBTableData")); |
|
|
|
isShareCheckBox = new UICheckBox(Inter.getLocText("FR-Designer_Is_Share_DBTableData")); |
|
|
|
maxPanel = new MaxMemRowCountPanel(); |
|
|
|
maxPanel = new MaxMemRowCountPanel(); |
|
|
|
maxPanel.setBorder(null); |
|
|
|
maxPanel.setBorder(null); |
|
|
@ -175,9 +179,10 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private void checkParameter() { |
|
|
|
private void checkParameter() { |
|
|
|
String[] paramTexts = new String[2]; |
|
|
|
String[] paramTexts = new String[3]; |
|
|
|
paramTexts[0] = sqlTextPane.getText(); |
|
|
|
paramTexts[0] = sqlTextPane.getText(); |
|
|
|
paramTexts[1] = pageQuery; |
|
|
|
paramTexts[1] = pageQuery; |
|
|
|
|
|
|
|
paramTexts[2] = customCountQuery; |
|
|
|
|
|
|
|
|
|
|
|
Parameter[] parameters = ParameterHelper.analyze4Parameters(paramTexts, false); |
|
|
|
Parameter[] parameters = ParameterHelper.analyze4Parameters(paramTexts, false); |
|
|
|
|
|
|
|
|
|
|
@ -222,6 +227,7 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
isShare = dbtabledata.isShare(); |
|
|
|
isShare = dbtabledata.isShare(); |
|
|
|
maxMemeryRow = dbtabledata.getMaxMemRowCount(); |
|
|
|
maxMemeryRow = dbtabledata.getMaxMemRowCount(); |
|
|
|
this.pageQuery = dbtabledata.getPageQuerySql(); |
|
|
|
this.pageQuery = dbtabledata.getPageQuerySql(); |
|
|
|
|
|
|
|
this.customCountQuery = dbtabledata.getCustomCountQuery(); |
|
|
|
|
|
|
|
|
|
|
|
this.connectionTableProcedurePane.setSelectedDatabaseConnection(db); |
|
|
|
this.connectionTableProcedurePane.setSelectedDatabaseConnection(db); |
|
|
|
this.sqlTextPane.setText(query); |
|
|
|
this.sqlTextPane.setText(query); |
|
|
@ -258,6 +264,7 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
dbTableData.setShare(isShareCheckBox.isSelected()); |
|
|
|
dbTableData.setShare(isShareCheckBox.isSelected()); |
|
|
|
dbTableData.setMaxMemRowCount(maxPanel.getValue()); |
|
|
|
dbTableData.setMaxMemRowCount(maxPanel.getValue()); |
|
|
|
dbTableData.setPageQuerySql(this.pageQuery); |
|
|
|
dbTableData.setPageQuerySql(this.pageQuery); |
|
|
|
|
|
|
|
dbTableData.setCustomCountQuery(this.customCountQuery); |
|
|
|
|
|
|
|
|
|
|
|
return dbTableData; |
|
|
|
return dbTableData; |
|
|
|
} |
|
|
|
} |
|
|
@ -298,7 +305,7 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public void actionPerformed(ActionEvent e) { |
|
|
|
public void actionPerformed(ActionEvent e) { |
|
|
|
final PageQueryPane pane = new PageQueryPane(); |
|
|
|
final QueryPane pane = new QueryPane(Inter.getLocText("FR-Designer-LayerPageReport_Define_PageQuerySQL")); |
|
|
|
pane.populate(pageQuery); |
|
|
|
pane.populate(pageQuery); |
|
|
|
BasicDialog dialog = pane.showWindow(DesignerContext.getDesignerFrame()); |
|
|
|
BasicDialog dialog = pane.showWindow(DesignerContext.getDesignerFrame()); |
|
|
|
dialog.addDialogActionListener(new DialogActionAdapter() { |
|
|
|
dialog.addDialogActionListener(new DialogActionAdapter() { |
|
|
@ -311,10 +318,34 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private class PageQueryPane extends BasicPane { |
|
|
|
private class EditCustomCountQueryAction extends UpdateAction { |
|
|
|
|
|
|
|
public EditCustomCountQueryAction() { |
|
|
|
|
|
|
|
this.setName(Inter.getLocText("FR-Designer-LayerPageReport_CustomCountQuery")); |
|
|
|
|
|
|
|
this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_file/text.png")); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
|
|
public void actionPerformed(ActionEvent e) { |
|
|
|
|
|
|
|
final QueryPane editPane = new QueryPane(Inter.getLocText("FR-Designer-LayerPageReport_Define_CustomCountQuery")); |
|
|
|
|
|
|
|
editPane.populate(customCountQuery); |
|
|
|
|
|
|
|
BasicDialog dialog = editPane.showWindow(DesignerContext.getDesignerFrame()); |
|
|
|
|
|
|
|
dialog.addDialogActionListener(new DialogActionAdapter() { |
|
|
|
|
|
|
|
public void doOk() { |
|
|
|
|
|
|
|
customCountQuery = editPane.update(); |
|
|
|
|
|
|
|
checkParameter(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
dialog.setVisible(true); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private class QueryPane extends BasicPane { |
|
|
|
private SQLEditPane pageQueryPane; |
|
|
|
private SQLEditPane pageQueryPane; |
|
|
|
|
|
|
|
private String title; |
|
|
|
|
|
|
|
|
|
|
|
public PageQueryPane() { |
|
|
|
public QueryPane(String title) { |
|
|
|
|
|
|
|
this.title = title; |
|
|
|
this.initComponents(); |
|
|
|
this.initComponents(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -342,7 +373,7 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> { |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
protected String title4PopupWindow() { |
|
|
|
protected String title4PopupWindow() { |
|
|
|
return Inter.getLocText("FR-Designer-LayerPageReport_Define_PageQuerySQL"); |
|
|
|
return title; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |