diff --git a/.gitignore b/.gitignore index a9c6c2320..5cc51f5ed 100644 --- a/.gitignore +++ b/.gitignore @@ -3,5 +3,6 @@ designer_base/bin designer_chart/bin designer_form/bin *.iml +designer_base/src/com/fr/design/locale/.idea diff --git a/designer/src/com/fr/design/cell/editor/RichTextToolBar.java b/designer/src/com/fr/design/cell/editor/RichTextToolBar.java index 8d7708c9c..1bf8a2f56 100644 --- a/designer/src/com/fr/design/cell/editor/RichTextToolBar.java +++ b/designer/src/com/fr/design/cell/editor/RichTextToolBar.java @@ -134,7 +134,7 @@ public class RichTextToolBar extends BasicPane{ } private void bindListener(){ - FRFont defaultFont = RichTextPane.DEFAUL_FONT; + FRFont defaultFont = (this.textPane != null) ? FRFont.getInstance(this.textPane.getFont()) : RichTextPane.DEFAUL_FONT; fontNameComboBox.addItemListener(fontNameItemListener); fontNameComboBox.setSelectedItem(defaultFont.getFontName()); fontSizeComboBox.addItemListener(fontSizeItemListener); diff --git a/designer/src/com/fr/design/mainframe/AuthorityEditToolBarPane.java b/designer/src/com/fr/design/mainframe/AuthorityEditToolBarPane.java index d464d8f48..a760e0043 100644 --- a/designer/src/com/fr/design/mainframe/AuthorityEditToolBarPane.java +++ b/designer/src/com/fr/design/mainframe/AuthorityEditToolBarPane.java @@ -1 +1,251 @@ -package com.fr.design.mainframe; import com.fr.design.constants.LayoutConstants; import com.fr.design.constants.UIConstants; import com.fr.design.file.HistoryTemplateListPane; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; import com.fr.design.roleAuthority.ReportAndFSManagePane; import com.fr.design.roleAuthority.RolesAlreadyEditedPane; import com.fr.design.webattr.ToolBarButton; import com.fr.general.ComparatorUtils; import com.fr.general.Inter; import com.fr.stable.StringUtils; import javax.swing.*; import javax.swing.tree.TreePath; import java.awt.*; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.util.List; /** * 用于在权限编辑状态对工具栏的元素进行权限编辑的面板 * Author : daisy * Date: 13-9-18 * Time: 下午2:15 */ public class AuthorityEditToolBarPane extends AuthorityPropertyPane { private static final int TITLE_HEIGHT = 19; private AuthorityEditPane authorityEditPane = null; private AuthorityToolBarPane authorityToolBarPane; private String[] selectedPathArray; public AuthorityEditToolBarPane(List buttonlists) { super(HistoryTemplateListPane.getInstance().getCurrentEditingTemplate()); this.setLayout(new BorderLayout()); this.setBorder(null); UILabel authorityTitle = new UILabel(Inter.getLocText(new String[]{"DashBoard-Potence", "Edit"})) { @Override public Dimension getPreferredSize() { return new Dimension(super.getPreferredSize().width, TITLE_HEIGHT); } }; authorityTitle.setHorizontalAlignment(SwingConstants.CENTER); authorityTitle.setVerticalAlignment(SwingConstants.CENTER); JPanel northPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); northPane.add(authorityTitle, BorderLayout.CENTER); northPane.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, UIConstants.LINE_COLOR)); this.add(northPane, BorderLayout.NORTH); authorityEditPane = new AuthorityEditPane(buttonlists); this.add(authorityEditPane, BorderLayout.CENTER); } public void setAuthorityToolBarPane(AuthorityToolBarPane authorityToolBarPane) { this.authorityToolBarPane = authorityToolBarPane; } public void populate() { authorityToolBarPane.populateAuthority(); signelSelection(); authorityEditPane.populateDetials(); } private void signelSelection() { JTemplate jTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate(); if (jTemplate.isJWorkBook()) { //清参数面板 jTemplate.removeParameterPaneSelection(); //清报表主体 jTemplate.removeTemplateSelection(); } } private class AuthorityEditPane extends JPanel { private static final int TOP_GAP = 11; private static final int LEFT_GAP = 8; private static final int ALIGNMENT_GAP = -3; private UILabel type = null; private UILabel name = null; private JPanel checkPane = null; private List buttonlists; private UICheckBox buttonVisible = new UICheckBox(Inter.getLocText("Widget-Visible")); private ItemListener itemListener = new ItemListener() { public void itemStateChanged(ItemEvent e) { String selectedRole = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); initSelectedselectedPathArray(); if (ComparatorUtils.equals(selectedRole, Inter.getLocText("Role"))) { return; } if (selectedRole == null) { return; } if (selectedPathArray == null) { return; } for (int t = 0; t _buttonlists = AuthorityEditPane.this.buttonlists; for (int j = 0; j < _buttonlists.size(); j++) { if (_buttonlists.get(j).isSelected()) { //由引擎实现保存进模板报表 authorityToolBarPane.setAuthorityWebAttr(_buttonlists.get(j).getWidget(), checkbox.isSelected(), selectedPathArray[t]); } } } } }; private void initSelectedselectedPathArray () { TreePath[] selectionPaths = ReportAndFSManagePane.getInstance().getRoleTree().getCheckBoxTreeSelectionModel().getSelectionPaths(); if (selectionPaths.length == 1){ if(((ExpandMutableTreeNode)(selectionPaths[0].getLastPathComponent())).getChildCount() > 0){ ExpandMutableTreeNode node = (ExpandMutableTreeNode) ((ExpandMutableTreeNode)(selectionPaths[0].getLastPathComponent())).getLastChild(); selectedPathArray = new String[node.getChildCount()]; for (int i = 0 ; i < node.getChildCount(); i++) { ExpandMutableTreeNode n = (ExpandMutableTreeNode) node.getChildAt(i); String nodeName = n.getUserObject().toString(); selectedPathArray[i] = nodeName; } } else { selectedPathArray = pathToString(selectionPaths); } } else { selectedPathArray = pathToString(selectionPaths); } } protected String[] pathToString(TreePath[] path) { String roles = StringUtils.EMPTY; if(path == null || path.length == 0){ return null; } for(TreePath tempPath:path){ String temp = tempPath.toString(); boolean isTrue = temp.length() > 0 && temp.charAt(0) == '[' && temp.endsWith("]"); if (isTrue) { temp = temp.substring(1, temp.length() - 1); String[] selectedRoles = temp.split(","); String role = selectedRoles[2].trim(); if(roles.isEmpty()){ roles = role; }else{ roles = roles + "," + role; } } } String[] selectedRole = roles.split(","); return selectedRole; } public AuthorityEditPane(List buttonlists) { setLayout(new BorderLayout()); type = new UILabel(); name = new UILabel(); checkPane = new JPanel(); checkPane.setLayout(new BorderLayout()); this.add(layoutText(), BorderLayout.WEST); this.add(layoutPane(), BorderLayout.CENTER); this.setBorder(BorderFactory.createEmptyBorder(TOP_GAP, LEFT_GAP, 0, 0)); this.buttonlists = buttonlists; buttonVisible.addItemListener(itemListener); } private JPanel layoutText() { double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{new UILabel(Inter.getLocText("Type") + ":", SwingConstants.RIGHT)}, new Component[]{new UILabel(Inter.getLocText("WF-Name") + ":", SwingConstants.RIGHT)}, new Component[]{new UILabel(Inter.getLocText("DashBoard-Potence") + ":", SwingConstants.RIGHT)}, }; double[] rowSize = {p, p, p}; double[] columnSize = {p}; int[][] rowCount = {{1}, {1}, {1}}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } private JPanel layoutPane() { double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{type}, new Component[]{name}, new Component[]{checkPane}, }; double[] rowSize = {p, p, p}; double[] columnSize = {f}; int[][] rowCount = {{1}, {1}, {1}}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } /** * 更新权限编辑面板的具体内容:类型、名称、权限面板 */ public void populateDetials() { populateName(); populateType(); populateCheckPane(); checkVisibleCheckBoxes(); } private void checkVisibleCheckBoxes() { buttonVisible.removeItemListener(itemListener); String selected = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); if (selected == null) { buttonVisible.setSelected(true); } for (int i = 0; i < buttonlists.size(); i++) { if (buttonlists.get(i).isSelected()) { buttonVisible.setSelected(!buttonlists.get(i).isDoneAuthorityEdited(selected)); break; } } buttonVisible.addItemListener(itemListener); } public void populateType() { if (name.getText() == "") { type.setText(""); } else { type.setText(Inter.getLocText(new String[]{"ReportServerP-Toolbar", "Form-Button"})); } } public void populateName() { String names = ""; for (int i = 0; i < buttonlists.size(); i++) { if (buttonlists.get(i).isSelected()) { names += "," + buttonlists.get(i).getNameOption().optionName(); } } if (names != "") { names = names.substring(1); } name.setText(names); } public void populateCheckPane() { checkPane.removeAll(); if (name.getText() == "") { return; } double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{new UILabel(Inter.getLocText("Form-Button"), SwingConstants.LEFT), buttonVisible}, }; double[] rowSize = {p, p}; double[] columnSize = {p, p, f}; int[][] rowCount = {{1, 1, 1}, {1, 1, 1}}; JPanel check = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); checkPane.add(check, BorderLayout.CENTER); checkPane.setBorder(BorderFactory.createEmptyBorder(ALIGNMENT_GAP, 0, 0, 0)); } } } \ No newline at end of file +package com.fr.design.mainframe; + +import com.fr.design.constants.LayoutConstants; +import com.fr.design.constants.UIConstants; +import com.fr.design.file.HistoryTemplateListPane; +import com.fr.design.gui.icheckbox.UICheckBox; +import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; +import com.fr.design.layout.FRGUIPaneFactory; +import com.fr.design.layout.TableLayout; +import com.fr.design.layout.TableLayoutHelper; +import com.fr.design.roleAuthority.ReportAndFSManagePane; +import com.fr.design.roleAuthority.RolesAlreadyEditedPane; +import com.fr.design.webattr.ToolBarButton; +import com.fr.general.ComparatorUtils; +import com.fr.general.Inter; + +import javax.swing.*; +import javax.swing.tree.TreePath; +import java.awt.*; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.util.List; + +/** + * 用于在权限编辑状态对工具栏的元素进行权限编辑的面板 + * Author : daisy + * Date: 13-9-18 + * Time: 下午2:15 + */ +public class AuthorityEditToolBarPane extends AuthorityPropertyPane { + + private static final int TITLE_HEIGHT = 19; + private AuthorityEditPane authorityEditPane = null; + private AuthorityToolBarPane authorityToolBarPane; + private String[] selectedPathArray; + + public AuthorityEditToolBarPane(List buttonlists) { + super(HistoryTemplateListPane.getInstance().getCurrentEditingTemplate()); + this.setLayout(new BorderLayout()); + this.setBorder(null); + UILabel authorityTitle = new UILabel(Inter.getLocText(new String[]{"FR-Designer_Permissions", + "FR-Designer_Edit"})) { + @Override + public Dimension getPreferredSize() { + return new Dimension(super.getPreferredSize().width, TITLE_HEIGHT); + } + }; + authorityTitle.setHorizontalAlignment(SwingConstants.CENTER); + authorityTitle.setVerticalAlignment(SwingConstants.CENTER); + JPanel northPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); + northPane.add(authorityTitle, BorderLayout.CENTER); + northPane.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, UIConstants.LINE_COLOR)); + this.add(northPane, BorderLayout.NORTH); + authorityEditPane = new AuthorityEditPane(buttonlists); + this.add(authorityEditPane, BorderLayout.CENTER); + } + + public void setAuthorityToolBarPane(AuthorityToolBarPane authorityToolBarPane) { + this.authorityToolBarPane = authorityToolBarPane; + } + + + public void populate() { + authorityToolBarPane.populateAuthority(); + signelSelection(); + authorityEditPane.populateDetials(); + } + + + private void signelSelection() { + JTemplate jTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate(); + if (jTemplate.isJWorkBook()) { + //清参数面板 + jTemplate.removeParameterPaneSelection(); + //清报表主体 + jTemplate.removeTemplateSelection(); + } + } + + + private class AuthorityEditPane extends JPanel { + private static final int TOP_GAP = 11; + private static final int LEFT_GAP = 8; + private static final int ALIGNMENT_GAP = -3; + private UILabel type = null; + private UILabel name = null; + private JPanel checkPane = null; + private List buttonlists; + private UICheckBox buttonVisible = new UICheckBox(Inter.getLocText("FR-Designer_Visible")); + private ItemListener itemListener = new ItemListener() { + public void itemStateChanged(ItemEvent e) { + String selectedRole = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); + initSelectedPathArray(); + if (ComparatorUtils.equals(selectedRole, Inter.getLocText("FR-Designer_Role")) || selectedRole == + null || selectedPathArray == null) { + return; + } + for (int t = 0; t < selectedPathArray.length; t++) { + for (int i = 0; i < buttonlists.size(); i++) { + if (buttonlists.get(i).isSelected()) { + buttonlists.get(i).changeAuthorityState(selectedPathArray[t], buttonVisible.isSelected()); + authorityToolBarPane.repaint(); + } + } + HistoryTemplateListPane.getInstance().getCurrentEditingTemplate().fireTargetModified(); + RolesAlreadyEditedPane.getInstance().refreshDockingView(); + UICheckBox checkbox = (UICheckBox) e.getSource(); + List btns = AuthorityEditPane.this.buttonlists; + for (int j = 0; j < btns.size(); j++) { + if (btns.get(j).isSelected()) { + //由引擎实现保存进模板报表 + authorityToolBarPane.setAuthorityWebAttr(btns.get(j).getWidget(), checkbox.isSelected(), selectedPathArray[t]); + } + } + } + } + }; + + /** + * @see ElementCasePaneAuthorityEditPane initSelectedPathArray() + */ + private void initSelectedPathArray() { + TreePath[] selectionPaths = ReportAndFSManagePane.getInstance().getRoleTree().getCheckBoxTreeSelectionModel().getSelectionPaths(); + if (selectionPaths.length == 1) { + if (((ExpandMutableTreeNode) (selectionPaths[0].getLastPathComponent())).getChildCount() > 0) { + ExpandMutableTreeNode node = (ExpandMutableTreeNode) ((ExpandMutableTreeNode) (selectionPaths[0].getLastPathComponent())).getLastChild(); + selectedPathArray = new String[node.getChildCount()]; + for (int i = 0; i < node.getChildCount(); i++) { + ExpandMutableTreeNode n = (ExpandMutableTreeNode) node.getChildAt(i); + String nodeName = n.getUserObject().toString(); + selectedPathArray[i] = nodeName; + } + } else { + selectedPathArray = ElementCasePaneAuthorityEditPane.pathToString(selectionPaths); + } + } else { + selectedPathArray = ElementCasePaneAuthorityEditPane.pathToString(selectionPaths); + } + + } + + public AuthorityEditPane(List buttonlists) { + setLayout(new BorderLayout()); + type = new UILabel(); + name = new UILabel(); + checkPane = new JPanel(); + checkPane.setLayout(new BorderLayout()); + this.add(layoutText(), BorderLayout.WEST); + this.add(layoutPane(), BorderLayout.CENTER); + this.setBorder(BorderFactory.createEmptyBorder(TOP_GAP, LEFT_GAP, 0, 0)); + this.buttonlists = buttonlists; + buttonVisible.addItemListener(itemListener); + } + + private JPanel layoutText() { + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Type") + ":", SwingConstants.RIGHT)}, + new Component[]{new UILabel(Inter.getLocText("FR-Designer_WF_Name") + ":", SwingConstants.RIGHT)}, + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Permissions") + ":", SwingConstants + .RIGHT)}, + }; + double[] rowSize = {p, p, p}; + double[] columnSize = {p}; + int[][] rowCount = {{1}, {1}, {1}}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + } + + + private JPanel layoutPane() { + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{type}, + new Component[]{name}, + new Component[]{checkPane}, + }; + double[] rowSize = {p, p, p}; + double[] columnSize = {f}; + int[][] rowCount = {{1}, {1}, {1}}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + } + + /** + * 更新权限编辑面板的具体内容:类型、名称、权限面板 + */ + public void populateDetials() { + populateName(); + populateType(); + populateCheckPane(); + checkVisibleCheckBoxes(); + } + + private void checkVisibleCheckBoxes() { + buttonVisible.removeItemListener(itemListener); + String selected = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); + if (selected == null) { + buttonVisible.setSelected(true); + } + for (int i = 0; i < buttonlists.size(); i++) { + if (buttonlists.get(i).isSelected()) { + buttonVisible.setSelected(!buttonlists.get(i).isDoneAuthorityEdited(selected)); + break; + } + } + buttonVisible.addItemListener(itemListener); + } + + + public void populateType() { + if (name.getText() == "") { + type.setText(""); + } else { + type.setText(Inter.getLocText(new String[]{"ReportServerP-Toolbar", "FR-Designer_Form_Button"})); + } + } + + public void populateName() { + String names = ""; + for (int i = 0; i < buttonlists.size(); i++) { + if (buttonlists.get(i).isSelected()) { + names += "," + buttonlists.get(i).getNameOption().optionName(); + } + } + if (names != "") { + names = names.substring(1); + } + name.setText(names); + } + + public void populateCheckPane() { + checkPane.removeAll(); + if (name.getText() == "") { + return; + } + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Form_Button"), SwingConstants.LEFT), + buttonVisible}, + }; + double[] rowSize = {p, p}; + double[] columnSize = {p, p, f}; + int[][] rowCount = {{1, 1, 1}, {1, 1, 1}}; + JPanel check = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + checkPane.add(check, BorderLayout.CENTER); + checkPane.setBorder(BorderFactory.createEmptyBorder(ALIGNMENT_GAP, 0, 0, 0)); + } + } +} \ No newline at end of file diff --git a/designer/src/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java b/designer/src/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java index 3f9a717dd..fe6c616ed 100644 --- a/designer/src/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java +++ b/designer/src/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java @@ -1 +1,829 @@ -package com.fr.design.mainframe; import com.fr.design.constants.LayoutConstants; import com.fr.design.editor.ValueEditorPane; import com.fr.design.editor.ValueEditorPaneFactory; import com.fr.design.event.UIObserverListener; import com.fr.design.file.HistoryTemplateListPane; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.toolbar.AuthorityEditToolBarComponent; import com.fr.design.roleAuthority.ReportAndFSManagePane; import com.fr.design.roleAuthority.RolesAlreadyEditedPane; import com.fr.form.ui.Widget; import com.fr.general.ComparatorUtils; import com.fr.general.Inter; import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.FloatSelection; import com.fr.grid.selection.Selection; import com.fr.js.NameJavaScriptGroup; import com.fr.report.cell.AbstractCellElement; import com.fr.report.cell.DefaultTemplateCellElement; import com.fr.report.cell.FloatElement; import com.fr.report.cell.TemplateCellElement; import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.worksheet.WorkSheet; import com.fr.stable.ColumnRow; import com.fr.stable.StringUtils; import javax.swing.*; import javax.swing.tree.TreePath; import java.awt.*; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; /** * Author : daisy * Date: 13-9-4 * Time: 下午4:01 */ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane { private static final int WIDGET_VISIBLE = 0; private static final int WIDGET_USABLE = 1; private static final int CELL = 2; private static final int HYPER_LINK = 3; private static final int FLOAT_SELECTION = 3; private static final int NEW_VALUE = 4; //新值下面的编辑器的宽度 private static final int NEW_PANE_WIDTH = 120; private UICheckBox floatElementVisibleCheckBoxes = new UICheckBox(Inter.getLocText("FR-Designer_Visible")); private UICheckBox cellElementVisibleCheckBoxes = new UICheckBox(Inter.getLocText("FR-Designer_Visible")); private UICheckBox widgetVisible = new UICheckBox(Inter.getLocText("FR-Designer_Visible")); private UICheckBox widgetAvailable = new UICheckBox(Inter.getLocText("FR-Designer_Enabled")); private UICheckBox gridColumnRowVisible = new UICheckBox(Inter.getLocText("FR-Designer_Hide")); private UICheckBox newValue = new UICheckBox(Inter.getLocText("FR-Designer_New_Value")); private ValueEditorPane valueEditor = ValueEditorPaneFactory.createBasicValueEditorPane(NEW_PANE_WIDTH); private UICheckBox[] hyperlinkCheckBoxes = null; private ElementCasePane elementCasePane = null; private int selectionType = CellSelection.NORMAL; private CellSelection cellSelection; private FloatSelection floatSelection; private boolean isAllHasWidget; private boolean isAllHasHyperlink; private String[] selectedPathArray; private UIObserverListener observerListener = new UIObserverListener() { @Override public void doChange() { if (elementCasePane == null || cellSelection == null) { return; } if (setAuthorityStyle(NEW_VALUE)) { elementCasePane.fireTargetModified(); } } }; private ItemListener newValuelistener = new ItemListener() { @Override public void itemStateChanged(ItemEvent e) { if (elementCasePane == null || cellSelection == null) { return; } if (setAuthorityStyle(NEW_VALUE)) { valueEditor.setEnabled(newValue.isSelected()); doAfterAuthority(); } } }; private ItemListener columnRowAuthorityListener = new ItemListener() { public void itemStateChanged(ItemEvent e) { if (elementCasePane == null) { return; } boolean isDone = false; if (selectionType == CellSelection.CHOOSE_COLUMN) { isDone = setAuthorityColumn(); } else { isDone = setAuthorityRow(); } if (isDone) { doAfterAuthority(); } } }; private ItemListener floatElementAuthorityListener = new ItemListener() { public void itemStateChanged(ItemEvent e) { if (elementCasePane == null || floatSelection == null) { return; } if (setLFloatAuthorityStyle()) { doAfterAuthority(); } } }; private ItemListener cellRolesAuthorityListener = new ItemListener() { public void itemStateChanged(ItemEvent e) { if (elementCasePane == null || cellSelection == null) { return; } if (setAuthorityStyle(CELL)) { doAfterAuthority(); } } }; private ItemListener widgetVisibleRoleAuthorityListener = new ItemListener() { public void itemStateChanged(ItemEvent e) { if (elementCasePane == null || cellSelection == null) { return; } if (setAuthorityStyle(WIDGET_VISIBLE)) { doAfterAuthority(); } } }; private ItemListener widgetUsableAuthorityListener = new ItemListener() { public void itemStateChanged(ItemEvent e) { if (elementCasePane == null || cellSelection == null) { return; } if (setAuthorityStyle(WIDGET_USABLE)) { doAfterAuthority(); } } }; public ElementCasePaneAuthorityEditPane(ElementCasePane elementCasePane) { super(elementCasePane); this.elementCasePane = elementCasePane; initCheckBoxesState(); initListener(); } private void doAfterAuthority() { elementCasePane.repaint(); elementCasePane.fireTargetModified(); RolesAlreadyEditedPane.getInstance().refreshDockingView(); RolesAlreadyEditedPane.getInstance().setReportAndFSSelectedRoles(); RolesAlreadyEditedPane.getInstance().repaint(); checkCheckBoxes(); } private boolean setAuthorityColumn() { initSelectedselectedPathArray(); String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); if (ComparatorUtils.equals(selectedRoles, Inter.getLocText("FR-Designer_Role"))) { return false; } if (selectedRoles == null) { return false; } if (selectedPathArray == null) { return false; } final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); boolean isVisible = !gridColumnRowVisible.isSelected(); for (int t = 0; t= 0; j--) { for (int i = cellRectangle.width - 1; i >= 0; i--) { int column = i + cellRectangle.x; int row = j + cellRectangle.y; TemplateCellElement editCellElement = elementCase.getTemplateCellElement(column, row); if (editCellElement == null) { editCellElement = new DefaultTemplateCellElement(column, row); elementCase.addCellElement(editCellElement); } else { // 对于合并的格子,我们不多次计算的权限. if (editCellElement.getColumn() != column || editCellElement.getRow() != row) { continue; } } if (type == CELL) { editCellElement.changeAuthorityState(selectedPathArray[t], cellElementVisibleCheckBoxes.isSelected()); } else if (type == NEW_VALUE) { editCellElement.changeNewValueAuthorityState(selectedPathArray[t], newValue.isSelected(), valueEditor.update()); } else if (type == WIDGET_VISIBLE) { Widget widget = editCellElement.getWidget(); widget.changeVisibleAuthorityState(selectedPathArray[t], widgetVisible.isSelected()); } else { Widget widget = editCellElement.getWidget(); widget.changeUsableAuthorityState(selectedPathArray[t], widgetAvailable.isSelected()); } } } } } return true; } private void initSelectedselectedPathArray () { TreePath[] selectionPaths = ReportAndFSManagePane.getInstance().getRoleTree().getCheckBoxTreeSelectionModel().getSelectionPaths(); if (selectionPaths.length == 1){ if(((ExpandMutableTreeNode)(selectionPaths[0].getLastPathComponent())).getChildCount() > 0){ ExpandMutableTreeNode node = (ExpandMutableTreeNode) ((ExpandMutableTreeNode)(selectionPaths[0].getLastPathComponent())).getLastChild(); System.out.printf(node.getUserObject().toString()); selectedPathArray = new String[node.getChildCount()]; for (int i = 0; i < node.getChildCount(); i++) { ExpandMutableTreeNode n = (ExpandMutableTreeNode) node.getChildAt(i); String nodeName = n.getUserObject().toString(); selectedPathArray[i] = nodeName; } } else { selectedPathArray = pathToString(selectionPaths); } } else { selectedPathArray = pathToString(selectionPaths); } } protected String[] pathToString(TreePath[] path) { String roles = StringUtils.EMPTY; if(path == null || path.length == 0){ return null; } for(TreePath tempPath:path){ String temp = tempPath.toString(); boolean isTrue = temp.length() > 0 && temp.charAt(0) == '[' && temp.endsWith("]"); if (isTrue) { temp = temp.substring(1, temp.length() - 1); String[] selectedRoles = temp.split(","); String role = selectedRoles[2].trim(); if(roles.isEmpty()){ roles = role; }else{ roles = roles + "," + role; } } } String[] selectedRole = roles.split(","); return selectedRole; } /** * 选中的单元格的乐见状态以第一个单元格为齐 */ public void initCheckBoxesState() { final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); if (cellSelection == null) { cellElementVisibleCheckBoxes.setSelected(true); } else { Rectangle cellRectangle = cellSelection.getCellRectangle(0); DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(cellRectangle.x, cellRectangle.y); if (cellElement == null) { cellElement = new DefaultTemplateCellElement(cellRectangle.x, cellRectangle.y); } boolean firstCellDoneaAuthority = cellElement.isDoneAuthority( ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName()); cellElementVisibleCheckBoxes.setSelected(!firstCellDoneaAuthority); } widgetAvailable.setEnabled(cellElementVisibleCheckBoxes.isSelected()); widgetVisible.setEnabled(cellElementVisibleCheckBoxes.isSelected()); } private void initListener() { cellElementVisibleCheckBoxes.addItemListener(cellRolesAuthorityListener); widgetVisible.addItemListener(widgetVisibleRoleAuthorityListener); widgetAvailable.addItemListener(widgetUsableAuthorityListener); floatElementVisibleCheckBoxes.addItemListener(floatElementAuthorityListener); gridColumnRowVisible.addItemListener(columnRowAuthorityListener); newValue.addItemListener(newValuelistener); valueEditor.registerChangeListener(observerListener); } private void removeListener() { cellElementVisibleCheckBoxes.removeItemListener(cellRolesAuthorityListener); widgetVisible.removeItemListener(widgetVisibleRoleAuthorityListener); widgetAvailable.removeItemListener(widgetUsableAuthorityListener); floatElementVisibleCheckBoxes.removeItemListener(floatElementAuthorityListener); gridColumnRowVisible.removeItemListener(columnRowAuthorityListener); newValue.removeItemListener(newValuelistener); valueEditor.registerChangeListener(null); } private void addHyperlinkListener() { cellElementVisibleCheckBoxes.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { if (hyperlinkCheckBoxes != null) { for (int i = 0; i < hyperlinkCheckBoxes.length; i++) { hyperlinkCheckBoxes[i].setEnabled(cellElementVisibleCheckBoxes.isSelected()); if (!cellElementVisibleCheckBoxes.isSelected()) { hyperlinkCheckBoxes[i].setSelected(false); } } } } }); for (int i = 0; i < hyperlinkCheckBoxes.length; i++) { hyperlinkCheckBoxes[i].addItemListener(cellRolesAuthorityListener); } } /** * 更新适合的类型 */ public void populateType() { if (selectionType == CellSelection.NORMAL) { type.setText(Inter.getLocText("FR-Designer_Cell")); } else if (selectionType == CellSelection.CHOOSE_ROW) { type.setText(Inter.getLocText("FR-Designer_Row")); } else if (selectionType == CellSelection.CHOOSE_COLUMN) { type.setText(Inter.getLocText("FR-Designer_Column")); } else { type.setText(Inter.getLocText("M_Insert-Float")); } } /** * 名字 */ public void populateName() { if (selectionType == CellSelection.NORMAL) { name.setText(getCellSelectionName()); } else if (selectionType == CellSelection.CHOOSE_ROW || selectionType == CellSelection.CHOOSE_COLUMN) { name.setText(getCellColumnRowName()); } else { name.setText(getFloatSelectionName()); } } private String getCellSelectionName() { String nameText = ""; int count = cellSelection.getCellRectangleCount(); for (int rect = 0; rect < count; rect++) { nameText += ","; Rectangle cellRectangle = cellSelection.getCellRectangle(rect); ColumnRow beginCR = ColumnRow.valueOf(cellRectangle.x, cellRectangle.y); nameText += beginCR.toString(); if (cellRectangle.width * cellRectangle.height != 1) { ColumnRow endCR = ColumnRow.valueOf(cellRectangle.width + cellRectangle.x - 1, cellRectangle.height + cellRectangle.y - 1); nameText += ":" + endCR.toString(); } } return nameText.substring(1); } private String getCellColumnRowName() { int count = cellSelection.getCellRectangleCount(); String nameText = ""; ColumnRow cr = ColumnRow.valueOf(cellSelection.getColumn(), cellSelection.getRow()); if (cellSelection.getSelectedType() == CellSelection.CHOOSE_COLUMN && count == 1) { if (cellSelection.getColumnSpan() == 1) { nameText = cr.toString().substring(0, 1); } else { ColumnRow endCr = ColumnRow.valueOf(cellSelection.getColumn() + cellSelection.getColumnSpan() - 1, cellSelection.getRow() + cellSelection.getRowSpan() - 1); nameText = cr.toString().substring(0, 1) + "-" + endCr.toString().substring(0, 1); } } else if (cellSelection.getSelectedType() == CellSelection.CHOOSE_ROW && count == 1) { if (cellSelection.getRowSpan() == 1) { nameText = cr.toString().substring(1); } else { ColumnRow endCr = ColumnRow.valueOf(cellSelection.getColumn() + cellSelection.getColumnSpan() - 1, cellSelection.getRow() + cellSelection.getRowSpan() - 1); nameText = cr.toString().substring(1) + "-" + endCr.toString().substring(1); } } return nameText; } private String getFloatSelectionName() { return floatSelection.getSelectedFloatName(); } private void mutilRect(CellSelection cellSelection) { isAllHasWidget = true; isAllHasHyperlink = true; int count = cellSelection.getCellRectangleCount(); final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); for (int rect = 0; rect < count; rect++) { Rectangle cellRectangle = cellSelection.getCellRectangle(rect); for (int j = 0; j < cellRectangle.height; j++) { for (int i = 0; i < cellRectangle.width; i++) { int column = i + cellRectangle.x; int row = j + cellRectangle.y; DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(column, row); if (cellElement == null) { cellElement = new DefaultTemplateCellElement(cellSelection.getColumn(), cellSelection.getRow()); } if (cellElement.getCellWidgetAttr() == null) { isAllHasWidget = false; } if (cellElement.getNameHyperlinkGroup() == null) { isAllHasHyperlink = false; } } } } } /** * 更新适合的pane * * @return 返回Pane */ public JPanel populateCheckPane() { checkPane.removeAll(); if (selectionType == CellSelection.NORMAL) { populateCellSelectionCheckPane(checkPane); } else if (selectionType == CellSelection.CHOOSE_COLUMN || selectionType == CellSelection.CHOOSE_ROW) { populateColumnRowCheckPane(checkPane); } else if (selectionType == FLOAT_SELECTION) { populateFloatSelectionCheckPane(checkPane); } checkPane.setBorder(BorderFactory.createEmptyBorder(ALIGNMENT_GAP, 0, 0, 0)); return checkPane; } private void populateColumnRowCheckPane(JPanel checkPane) { double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{gridColumnRowVisible} }; double[] rowSize = {p}; double[] columnSize = {f}; int[][] rowCount = {{1}}; checkPane.add( TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM) , BorderLayout.WEST); } private void populateFloatSelectionCheckPane(JPanel checkPane) { checkPane.add(populateFloatElementCheckPane(), BorderLayout.WEST); } private void populateCellSelectionCheckPane(JPanel checkPane) { if (elementCasePane.isSelectedOneCell()) { //只选中了一个单元格 final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(cellSelection.getColumn(), cellSelection.getRow()); if (cellElement == null) { cellElement = new DefaultTemplateCellElement(cellSelection.getColumn(), cellSelection.getRow()); } //单元格带控件 if (cellElement.getCellWidgetAttr() != null) { checkPane.add(populateWidgetCheckPane(), BorderLayout.WEST); } else { checkPane.add(populatCellCheckPane(), BorderLayout.WEST); } } else { //批量选中单元格 mutilRect(cellSelection); if (!isAllHasWidget && !isAllHasHyperlink) { checkPane.add(populateMutilCellCheckPane(), BorderLayout.WEST); } else if (isAllHasWidget) { checkPane.add(populateMutilWidgetCheckPane(), BorderLayout.WEST); } } } /** * 对单元格区域进行操作时的权限编辑页面 ,对应的角色的populate */ public void populateDetials() { //做模式标记,此时鼠标焦点是在报表主体,为下一次退出权限编辑时做准备 HistoryTemplateListPane.getInstance().getCurrentEditingTemplate().setAuthorityMode(false); TemplateElementCase templateElementCase = elementCasePane.getEditingElementCase(); if (templateElementCase instanceof WorkSheet) { ((WorkSheet) templateElementCase).setPaintSelection(true); } signelSelection(); Selection selection = elementCasePane.getSelection(); if (selection instanceof CellSelection) { selectionType = CellSelection.NORMAL; this.cellSelection = ((CellSelection) selection).clone(); this.floatSelection = null; judgeChooseCR(); } else if (selection instanceof FloatSelection) { selectionType = FLOAT_SELECTION; cellSelection = null; floatSelection = new FloatSelection(((FloatSelection) selection).getSelectedFloatName()); } populateType(); populateName(); populateCheckPane(); checkCheckBoxes(); } //判断是否选择的行列 private void judgeChooseCR() { if (cellSelection.getSelectedType() == CellSelection.CHOOSE_COLUMN && cellSelection.getCellRectangleCount() == 1) { selectionType = CellSelection.CHOOSE_COLUMN; } if (cellSelection.getSelectedType() == CellSelection.CHOOSE_ROW && cellSelection.getCellRectangleCount() == 1) { selectionType = CellSelection.CHOOSE_ROW; } } //实现单选 private void signelSelection() { JTemplate jTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate(); if (jTemplate.isJWorkBook()) { //清工具栏 JComponent component = DesignerContext.getDesignerFrame().getToolbarComponent(); if (component instanceof AuthorityEditToolBarComponent) { ((AuthorityEditToolBarComponent) component).removeSelection(); } //清参数面板 jTemplate.removeParameterPaneSelection(); } } private JPanel populateFloatElementCheckPane() { double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{new UILabel(Inter.getLocText("M_Insert-Float"), SwingConstants.LEFT), floatElementVisibleCheckBoxes} }; double[] rowSize = {p}; double[] columnSize = {p, f}; int[][] rowCount = {{1, 1}}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } private JPanel populateWidgetCheckPane() { double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes}, new Component[]{null, newValue}, new Component[]{null, valueEditor}, new Component[]{new UILabel(Inter.getLocText("FR-Designer_Widget"), SwingConstants.LEFT), widgetVisible}, new Component[]{null, widgetAvailable} }; double[] rowSize = {p, p, p, p, p}; double[] columnSize = {p, f}; int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } private JPanel populateMutilWidgetCheckPane() { double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes}, new Component[]{new UILabel(Inter.getLocText("FR-Designer_Widget"), SwingConstants.LEFT), widgetVisible}, new Component[]{null, widgetAvailable} }; double[] rowSize = {p, p, p}; double[] columnSize = {p, f}; int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } private JPanel populateMutilCellCheckPane() { double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{cellElementVisibleCheckBoxes}, }; double[] rowSize = {p}; double[] columnSize = {f}; int[][] rowCount = {{1}}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } private JPanel populatCellCheckPane() { double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[][]{ new Component[]{cellElementVisibleCheckBoxes}, new Component[]{newValue}, new Component[]{valueEditor} }; double[] rowSize = {p, p, p}; double[] columnSize = {f}; int[][] rowCount = {{1}, {1}, {1}}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } public TemplateCellElement getFirstCell() { final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); Rectangle cellRectangle = cellSelection.getCellRectangle(0); // 从最后循环起以保证最后一个修改标准单元格(originalStyle)。 TemplateCellElement firstCell = null; for (int j = cellRectangle.height - 1; j >= 0; j--) { for (int i = cellRectangle.width - 1; i >= 0; i--) { int column = i + cellRectangle.x; int row = j + cellRectangle.y; TemplateCellElement editCellElement = elementCase.getTemplateCellElement(column, row); if (editCellElement != null) { // 对于合并的格子,我们不多次计算的权限. if (editCellElement.getColumn() != column || editCellElement.getRow() != row) { continue; } firstCell = editCellElement; } } } return firstCell; } private void checkCheckBoxes() { String selected = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); removeListener(); if (selectionType == CellSelection.NORMAL) { checkCellSelectionCkeckboxes(selected); } else if (selectionType == CellSelection.CHOOSE_COLUMN || selectionType == CellSelection.CHOOSE_ROW) { checkColumnRowCheckBoxes(selected); } else if (selectionType == FLOAT_SELECTION) { checkFloatSelectionCkeckboxes(selected); } initListener(); } private void checkCellSelectionCkeckboxes(String selected) { TemplateCellElement firstCell = getFirstCell(); if (firstCell == null) { resetCellElementCheckBoxes(); return; } cellElementVisibleCheckBoxes.setSelected(!firstCell.isDoneAuthority(selected)); newValue.setEnabled(!firstCell.isDoneAuthority(selected)); if (!firstCell.isDoneAuthority(selected)) { newValue.setSelected(firstCell.isDoneNewValueAuthority(selected)); if (newValue.isSelected()) { valueEditor.setEnabled(true); valueEditor.populate(firstCell.getCellPrivilegeControl().getNewValueMap().get(selected)); } else { valueEditor.setEnabled(false); } } else { newValue.setSelected(false); valueEditor.setEnabled(false); } populateWidgetButton(firstCell.getWidget(), selected, firstCell); } private void populateWidgetButton(Widget widget, String selected, TemplateCellElement firstCell){ if(widget == null){ return; } if(widget.isVisible()){ widgetVisible.setSelected(!widget.isDoneVisibleAuthority(selected)); widgetVisible.setEnabled(!firstCell.isDoneAuthority(selected)); }else{ widgetVisible.setSelected(widget.isVisibleAuthority(selected)); } if(widget.isEnabled()){ widgetAvailable.setSelected(!widget.isDoneUsableAuthority(selected)); widgetAvailable.setEnabled(!widget.isDoneVisibleAuthority(selected)); }else{ widgetAvailable.setSelected(widget.isUsableAuthority(selected)); } } private void resetCellElementCheckBoxes() { cellElementVisibleCheckBoxes.setSelected(true); widgetVisible.setSelected(true); widgetVisible.setEnabled(true); widgetAvailable.setSelected(true); widgetAvailable.setEnabled(true); newValue.setSelected(false); valueEditor.setEnabled(false); } private void checkColumnRowCheckBoxes(String selected) { if (cellSelection == null) { gridColumnRowVisible.setSelected(false); return; } TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); boolean isInside = selectionType == CellSelection.CHOOSE_COLUMN ? elementCase.getColumnPrivilegeControl(cellSelection.getColumn()).checkInvisible(selected) : elementCase.getRowPrivilegeControl(cellSelection.getRow()).checkInvisible(selected); gridColumnRowVisible.setSelected(isInside); } private void checkFloatSelectionCkeckboxes(String selected) { String name = floatSelection.getSelectedFloatName(); TemplateElementCase ec = elementCasePane.getEditingElementCase(); FloatElement fe = ec.getFloatElement(name); floatElementVisibleCheckBoxes.setSelected(!fe.isDoneAuthority(selected)); } private JPanel populateHyperlinkCheckPane(AbstractCellElement cellElement) { NameJavaScriptGroup linkGroup = cellElement.getNameHyperlinkGroup(); //超链接的个数+单元格可见的操作 hyperlinkCheckBoxes = new UICheckBox[linkGroup.size()]; double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[hyperlinkCheckBoxes.length + 1][]; if (linkGroup.size() == 1) { components[0] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes}; components[1] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(Inter.getLocText("FR-Designer_Visible"))}; } else { components[0] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes = new UICheckBox(Inter.getLocText("FR-Designer_Visible"))}; components[1] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(linkGroup.getNameHyperlink(0).getName() + Inter.getLocText("FR-Designer_Visible"))}; for (int i = 1; i < hyperlinkCheckBoxes.length; i++) { components[i + 1] = new Component[]{null, hyperlinkCheckBoxes[i] = new UICheckBox(linkGroup.getNameHyperlink(i).getName() + Inter.getLocText("FR-Designer_Visible"))}; } } for (int i = 0; i < hyperlinkCheckBoxes.length; i++) { hyperlinkCheckBoxes[i].setEnabled(cellElementVisibleCheckBoxes.isSelected()); } addHyperlinkListener(); double[] rowSize = new double[hyperlinkCheckBoxes.length + 1]; int[][] rowCount = new int[hyperlinkCheckBoxes.length + 1][]; for (int i = 0; i < hyperlinkCheckBoxes.length + 1; i++) { rowSize[i] = p; rowCount[i] = new int[]{1, 1}; } double[] columnSize = {p, f}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } private JPanel populateMutilHyperlinkCheckPane() { //超链接的个数+单元格可见的操作 hyperlinkCheckBoxes = new UICheckBox[1]; double f = TableLayout.FILL; double p = TableLayout.PREFERRED; Component[][] components = new Component[2][]; components[0] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes}; components[1] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(Inter.getLocText("FR-Designer_Visible"))}; hyperlinkCheckBoxes[0].setEnabled(cellElementVisibleCheckBoxes.isSelected()); addHyperlinkListener(); double[] rowSize = {p, p}; double[] columnSize = {p, f}; int[][] rowCount = {{1, 1}, {1, 1}}; return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); } } \ No newline at end of file +package com.fr.design.mainframe; + +import com.fr.design.constants.LayoutConstants; +import com.fr.design.editor.ValueEditorPane; +import com.fr.design.editor.ValueEditorPaneFactory; +import com.fr.design.event.UIObserverListener; +import com.fr.design.file.HistoryTemplateListPane; +import com.fr.design.gui.icheckbox.UICheckBox; +import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; +import com.fr.design.layout.TableLayout; +import com.fr.design.layout.TableLayoutHelper; +import com.fr.design.mainframe.toolbar.AuthorityEditToolBarComponent; +import com.fr.design.roleAuthority.ReportAndFSManagePane; +import com.fr.design.roleAuthority.RolesAlreadyEditedPane; +import com.fr.form.ui.Widget; +import com.fr.general.ComparatorUtils; +import com.fr.general.Inter; +import com.fr.grid.selection.CellSelection; +import com.fr.grid.selection.FloatSelection; +import com.fr.grid.selection.Selection; +import com.fr.js.NameJavaScriptGroup; +import com.fr.report.cell.AbstractCellElement; +import com.fr.report.cell.DefaultTemplateCellElement; +import com.fr.report.cell.FloatElement; +import com.fr.report.cell.TemplateCellElement; +import com.fr.report.elementcase.TemplateElementCase; +import com.fr.report.worksheet.WorkSheet; +import com.fr.stable.ColumnRow; +import com.fr.stable.StringUtils; + +import javax.swing.*; +import javax.swing.tree.TreePath; +import java.awt.*; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.util.ArrayList; + +/** + * Author : daisy + * Date: 13-9-4 + * Time: 下午4:01 + */ +public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane { + private static final int WIDGET_VISIBLE = 0; + private static final int WIDGET_USABLE = 1; + private static final int CELL = 2; + private static final int HYPER_LINK = 3; + private static final int FLOAT_SELECTION = 3; + private static final int NEW_VALUE = 4; + //新值下面的编辑器的宽度 + private static final int NEW_PANE_WIDTH = 120; + + + private UICheckBox floatElementVisibleCheckBoxes = new UICheckBox(Inter.getLocText("FR-Designer_Visible")); + private UICheckBox cellElementVisibleCheckBoxes = new UICheckBox(Inter.getLocText("FR-Designer_Visible")); + private UICheckBox widgetVisible = new UICheckBox(Inter.getLocText("FR-Designer_Visible")); + private UICheckBox widgetAvailable = new UICheckBox(Inter.getLocText("FR-Designer_Enabled")); + private UICheckBox gridColumnRowVisible = new UICheckBox(Inter.getLocText("FR-Designer_Hide")); + private UICheckBox newValue = new UICheckBox(Inter.getLocText("FR-Designer_New_Value")); + private ValueEditorPane valueEditor = ValueEditorPaneFactory.createBasicValueEditorPane(NEW_PANE_WIDTH); + private UICheckBox[] hyperlinkCheckBoxes = null; + private ElementCasePane elementCasePane = null; + private int selectionType = CellSelection.NORMAL; + private CellSelection cellSelection; + private FloatSelection floatSelection; + private boolean isAllHasWidget; + private boolean isAllHasHyperlink; + private String[] selectedPathArray; + private UIObserverListener observerListener = new UIObserverListener() { + @Override + public void doChange() { + if (elementCasePane == null || cellSelection == null) { + return; + } + if (setAuthorityStyle(NEW_VALUE)) { + elementCasePane.fireTargetModified(); + } + + } + }; + private ItemListener newValuelistener = new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + if (elementCasePane == null || cellSelection == null) { + return; + } + if (setAuthorityStyle(NEW_VALUE)) { + valueEditor.setEnabled(newValue.isSelected()); + doAfterAuthority(); + } + } + }; + private ItemListener columnRowAuthorityListener = new ItemListener() { + public void itemStateChanged(ItemEvent e) { + if (elementCasePane == null) { + return; + } + boolean isDone = false; + if (selectionType == CellSelection.CHOOSE_COLUMN) { + isDone = setAuthorityColumn(); + } else { + isDone = setAuthorityRow(); + } + if (isDone) { + doAfterAuthority(); + } + } + }; + private ItemListener floatElementAuthorityListener = new ItemListener() { + public void itemStateChanged(ItemEvent e) { + if (elementCasePane == null || floatSelection == null) { + return; + } + if (setLFloatAuthorityStyle()) { + doAfterAuthority(); + } + } + }; + private ItemListener cellRolesAuthorityListener = new ItemListener() { + public void itemStateChanged(ItemEvent e) { + if (elementCasePane == null || cellSelection == null) { + return; + } + if (setAuthorityStyle(CELL)) { + doAfterAuthority(); + } + } + }; + private ItemListener widgetVisibleRoleAuthorityListener = new ItemListener() { + public void itemStateChanged(ItemEvent e) { + if (elementCasePane == null || cellSelection == null) { + return; + } + if (setAuthorityStyle(WIDGET_VISIBLE)) { + doAfterAuthority(); + } + } + }; + private ItemListener widgetUsableAuthorityListener = new ItemListener() { + public void itemStateChanged(ItemEvent e) { + if (elementCasePane == null || cellSelection == null) { + return; + } + + if (setAuthorityStyle(WIDGET_USABLE)) { + doAfterAuthority(); + } + } + }; + + public ElementCasePaneAuthorityEditPane(ElementCasePane elementCasePane) { + super(elementCasePane); + this.elementCasePane = elementCasePane; + initCheckBoxesState(); + initListener(); + } + + private void doAfterAuthority() { + elementCasePane.repaint(); + elementCasePane.fireTargetModified(); + RolesAlreadyEditedPane.getInstance().refreshDockingView(); + RolesAlreadyEditedPane.getInstance().setReportAndFSSelectedRoles(); + RolesAlreadyEditedPane.getInstance().repaint(); + checkCheckBoxes(); + } + + private boolean setAuthorityColumn() { + initSelectedPathArray(); + String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); + if (ComparatorUtils.equals(selectedRoles, Inter.getLocText("FR-Designer_Role"))) { + return false; + } + if (selectedRoles == null) { + return false; + } + if (selectedPathArray == null) { + return false; + } + final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); + boolean isVisible = !gridColumnRowVisible.isSelected(); + for (int t = 0; t < selectedPathArray.length; t++) { + if (!isVisible) { + for (int col = cellSelection.getColumn(); col < cellSelection.getColumn() + cellSelection.getColumnSpan(); col++) { + elementCase.addColumnPrivilegeControl(col, selectedPathArray[t]); + } + } else { + for (int col = cellSelection.getColumn(); col < cellSelection.getColumn() + cellSelection.getColumnSpan(); col++) { + elementCase.removeColumnPrivilegeControl(col, selectedPathArray[t]); + } + } + } + + return true; + } + + private boolean setAuthorityRow() { + initSelectedPathArray(); + String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); + if (ComparatorUtils.equals(selectedRoles, Inter.getLocText("FR-Designer_Role"))) { + return false; + } + if (selectedRoles == null) { + return false; + } + if (selectedPathArray == null) { + return false; + } + final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); + boolean isVisible = !gridColumnRowVisible.isSelected(); + for (int t = 0; t < selectedPathArray.length; t++) { + if (!isVisible) { + for (int row = cellSelection.getRow(); row < cellSelection.getRow() + cellSelection.getRowSpan(); row++) { + elementCase.addRowPrivilegeControl(row, selectedPathArray[t]); + } + } else { + for (int row = cellSelection.getRow(); row < cellSelection.getRow() + cellSelection.getRowSpan(); row++) { + elementCase.removeRowPrivilegeControl(row, selectedPathArray[t]); + } + } + } + + + return true; + } + + private boolean setLFloatAuthorityStyle() { + initSelectedPathArray(); + String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); + if (ComparatorUtils.equals(selectedRoles, Inter.getLocText("FR-Designer_Role"))) { + return false; + } + if (selectedRoles == null) { + return false; + } + if (selectedPathArray == null) { + return false; + } + String name = floatSelection.getSelectedFloatName(); + TemplateElementCase ec = elementCasePane.getEditingElementCase(); + FloatElement fe = ec.getFloatElement(name); + for (int t = 0; t < selectedPathArray.length; t++) { + fe.changeAuthorityState(selectedPathArray[t], floatElementVisibleCheckBoxes.isSelected()); + } + + return true; + } + + private boolean setAuthorityStyle(int type) { + initSelectedPathArray(); + String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); + if (ComparatorUtils.equals(selectedRoles, Inter.getLocText("FR-Designer_Role")) || + selectedRoles == null || selectedPathArray == null) { + return false; + } + final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); + int cellRectangleCount = cellSelection.getCellRectangleCount(); + for (int t = 0; t < selectedPathArray.length; t++) { + + for (int rec = 0; rec < cellRectangleCount; rec++) { + Rectangle cellRectangle = cellSelection.getCellRectangle(rec); + // 从最后循环起以保证最后一个修改标准单元格(originalStyle)。 + for (int j = cellRectangle.height - 1; j >= 0; j--) { + for (int i = cellRectangle.width - 1; i >= 0; i--) { + int column = i + cellRectangle.x; + int row = j + cellRectangle.y; + TemplateCellElement editCellElement = elementCase.getTemplateCellElement(column, row); + if (editCellElement == null) { + editCellElement = new DefaultTemplateCellElement(column, row); + elementCase.addCellElement(editCellElement); + } else { + // 对于合并的格子,我们不多次计算的权限. + if (editCellElement.getColumn() != column + || editCellElement.getRow() != row) { + continue; + } + } + if (type == CELL) { + editCellElement.changeAuthorityState(selectedPathArray[t], cellElementVisibleCheckBoxes.isSelected()); + } else if (type == NEW_VALUE) { + editCellElement.changeNewValueAuthorityState(selectedPathArray[t], newValue.isSelected(), valueEditor.update()); + } else if (type == WIDGET_VISIBLE) { + Widget widget = editCellElement.getWidget(); + widget.changeVisibleAuthorityState(selectedPathArray[t], widgetVisible.isSelected()); + } else { + Widget widget = editCellElement.getWidget(); + widget.changeUsableAuthorityState(selectedPathArray[t], widgetAvailable.isSelected()); + } + + } + } + } + } + return true; + } + + /** + * @see AuthorityEditToolBarPane initSelectedPathArray + */ + private void initSelectedPathArray() { + TreePath[] selectionPaths = ReportAndFSManagePane.getInstance().getRoleTree().getCheckBoxTreeSelectionModel().getSelectionPaths(); + if (selectionPaths.length == 1) { + if (((ExpandMutableTreeNode) (selectionPaths[0].getLastPathComponent())).getChildCount() > 0) { + ExpandMutableTreeNode node = (ExpandMutableTreeNode) ((ExpandMutableTreeNode) (selectionPaths[0].getLastPathComponent())).getLastChild(); + selectedPathArray = new String[node.getChildCount()]; + for (int i = 0; i < node.getChildCount(); i++) { + ExpandMutableTreeNode n = (ExpandMutableTreeNode) node.getChildAt(i); + String nodeName = n.getUserObject().toString(); + selectedPathArray[i] = nodeName; + } + } else { + selectedPathArray = pathToString(selectionPaths); + } + } else { + selectedPathArray = pathToString(selectionPaths); + } + + } + + public static String[] pathToString(TreePath[] path) { + java.util.List roles = new ArrayList(); + if (path != null && path.length > 0) { + for (TreePath tempPath : path) { + String temp = tempPath.toString(); + boolean isTrue = temp.length() > 0 && temp.charAt(0) == '[' && temp.endsWith("]"); + if (isTrue) { + temp = temp.substring(1, temp.length() - 1); + String[] selectedRoles = temp.split("," + StringUtils.BLANK); + String role = selectedRoles[2].trim(); + roles.add(role); + } + + } + } + return roles.toArray(new String[0]); + } + + /** + * 选中的单元格的乐见状态以第一个单元格为齐 + */ + public void initCheckBoxesState() { + final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); + if (cellSelection == null) { + cellElementVisibleCheckBoxes.setSelected(true); + } else { + Rectangle cellRectangle = cellSelection.getCellRectangle(0); + DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(cellRectangle.x, cellRectangle.y); + if (cellElement == null) { + cellElement = new DefaultTemplateCellElement(cellRectangle.x, cellRectangle.y); + } + boolean firstCellDoneaAuthority = cellElement.isDoneAuthority( + ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName()); + cellElementVisibleCheckBoxes.setSelected(!firstCellDoneaAuthority); + } + widgetAvailable.setEnabled(cellElementVisibleCheckBoxes.isSelected()); + widgetVisible.setEnabled(cellElementVisibleCheckBoxes.isSelected()); + } + + private void initListener() { + cellElementVisibleCheckBoxes.addItemListener(cellRolesAuthorityListener); + widgetVisible.addItemListener(widgetVisibleRoleAuthorityListener); + widgetAvailable.addItemListener(widgetUsableAuthorityListener); + floatElementVisibleCheckBoxes.addItemListener(floatElementAuthorityListener); + gridColumnRowVisible.addItemListener(columnRowAuthorityListener); + newValue.addItemListener(newValuelistener); + valueEditor.registerChangeListener(observerListener); + } + + private void removeListener() { + cellElementVisibleCheckBoxes.removeItemListener(cellRolesAuthorityListener); + widgetVisible.removeItemListener(widgetVisibleRoleAuthorityListener); + widgetAvailable.removeItemListener(widgetUsableAuthorityListener); + floatElementVisibleCheckBoxes.removeItemListener(floatElementAuthorityListener); + gridColumnRowVisible.removeItemListener(columnRowAuthorityListener); + newValue.removeItemListener(newValuelistener); + valueEditor.registerChangeListener(null); + } + + private void addHyperlinkListener() { + cellElementVisibleCheckBoxes.addItemListener(new ItemListener() { + public void itemStateChanged(ItemEvent e) { + if (hyperlinkCheckBoxes != null) { + for (int i = 0; i < hyperlinkCheckBoxes.length; i++) { + hyperlinkCheckBoxes[i].setEnabled(cellElementVisibleCheckBoxes.isSelected()); + if (!cellElementVisibleCheckBoxes.isSelected()) { + hyperlinkCheckBoxes[i].setSelected(false); + } + } + } + } + }); + for (int i = 0; i < hyperlinkCheckBoxes.length; i++) { + hyperlinkCheckBoxes[i].addItemListener(cellRolesAuthorityListener); + } + } + + /** + * 更新适合的类型 + */ + public void populateType() { + if (selectionType == CellSelection.NORMAL) { + type.setText(Inter.getLocText("FR-Designer_Cell")); + } else if (selectionType == CellSelection.CHOOSE_ROW) { + type.setText(Inter.getLocText("FR-Designer_Row")); + } else if (selectionType == CellSelection.CHOOSE_COLUMN) { + type.setText(Inter.getLocText("FR-Designer_Column")); + } else { + type.setText(Inter.getLocText("M_Insert-Float")); + } + } + + /** + * 名字 + */ + public void populateName() { + if (selectionType == CellSelection.NORMAL) { + name.setText(getCellSelectionName()); + } else if (selectionType == CellSelection.CHOOSE_ROW || selectionType == CellSelection.CHOOSE_COLUMN) { + name.setText(getCellColumnRowName()); + } else { + name.setText(getFloatSelectionName()); + } + } + + private String getCellSelectionName() { + String nameText = ""; + int count = cellSelection.getCellRectangleCount(); + for (int rect = 0; rect < count; rect++) { + nameText += ","; + Rectangle cellRectangle = cellSelection.getCellRectangle(rect); + ColumnRow beginCR = ColumnRow.valueOf(cellRectangle.x, cellRectangle.y); + nameText += beginCR.toString(); + if (cellRectangle.width * cellRectangle.height != 1) { + ColumnRow endCR = ColumnRow.valueOf(cellRectangle.width + cellRectangle.x - 1, cellRectangle.height + cellRectangle.y - 1); + nameText += ":" + endCR.toString(); + } + } + return nameText.substring(1); + } + + private String getCellColumnRowName() { + int count = cellSelection.getCellRectangleCount(); + String nameText = ""; + ColumnRow cr = ColumnRow.valueOf(cellSelection.getColumn(), cellSelection.getRow()); + if (cellSelection.getSelectedType() == CellSelection.CHOOSE_COLUMN && count == 1) { + if (cellSelection.getColumnSpan() == 1) { + nameText = cr.toString().substring(0, 1); + } else { + ColumnRow endCr = ColumnRow.valueOf(cellSelection.getColumn() + cellSelection.getColumnSpan() - 1, + cellSelection.getRow() + cellSelection.getRowSpan() - 1); + nameText = cr.toString().substring(0, 1) + "-" + endCr.toString().substring(0, 1); + } + } else if (cellSelection.getSelectedType() == CellSelection.CHOOSE_ROW && count == 1) { + if (cellSelection.getRowSpan() == 1) { + nameText = cr.toString().substring(1); + } else { + ColumnRow endCr = ColumnRow.valueOf(cellSelection.getColumn() + cellSelection.getColumnSpan() - 1, + cellSelection.getRow() + cellSelection.getRowSpan() - 1); + nameText = cr.toString().substring(1) + "-" + endCr.toString().substring(1); + } + } + return nameText; + } + + private String getFloatSelectionName() { + return floatSelection.getSelectedFloatName(); + } + + private void mutilRect(CellSelection cellSelection) { + isAllHasWidget = true; + isAllHasHyperlink = true; + int count = cellSelection.getCellRectangleCount(); + final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); + for (int rect = 0; rect < count; rect++) { + Rectangle cellRectangle = cellSelection.getCellRectangle(rect); + for (int j = 0; j < cellRectangle.height; j++) { + for (int i = 0; i < cellRectangle.width; i++) { + int column = i + cellRectangle.x; + int row = j + cellRectangle.y; + DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(column, row); + if (cellElement == null) { + cellElement = new DefaultTemplateCellElement(cellSelection.getColumn(), cellSelection.getRow()); + } + if (cellElement.getCellWidgetAttr() == null) { + isAllHasWidget = false; + } + if (cellElement.getNameHyperlinkGroup() == null) { + isAllHasHyperlink = false; + } + } + } + } + } + + /** + * 更新适合的pane + * + * @return 返回Pane + */ + public JPanel populateCheckPane() { + checkPane.removeAll(); + if (selectionType == CellSelection.NORMAL) { + populateCellSelectionCheckPane(checkPane); + } else if (selectionType == CellSelection.CHOOSE_COLUMN || selectionType == CellSelection.CHOOSE_ROW) { + populateColumnRowCheckPane(checkPane); + } else if (selectionType == FLOAT_SELECTION) { + populateFloatSelectionCheckPane(checkPane); + } + checkPane.setBorder(BorderFactory.createEmptyBorder(ALIGNMENT_GAP, 0, 0, 0)); + return checkPane; + } + + private void populateColumnRowCheckPane(JPanel checkPane) { + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{gridColumnRowVisible} + }; + double[] rowSize = {p}; + double[] columnSize = {f}; + int[][] rowCount = {{1}}; + checkPane.add( + TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM) + , BorderLayout.WEST); + } + + private void populateFloatSelectionCheckPane(JPanel checkPane) { + checkPane.add(populateFloatElementCheckPane(), BorderLayout.WEST); + } + + private void populateCellSelectionCheckPane(JPanel checkPane) { + if (elementCasePane.isSelectedOneCell()) { + //只选中了一个单元格 + final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); + DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(cellSelection.getColumn(), cellSelection.getRow()); + if (cellElement == null) { + cellElement = new DefaultTemplateCellElement(cellSelection.getColumn(), cellSelection.getRow()); + } + //单元格带控件 + if (cellElement.getCellWidgetAttr() != null) { + checkPane.add(populateWidgetCheckPane(), BorderLayout.WEST); + } else { + checkPane.add(populatCellCheckPane(), BorderLayout.WEST); + } + } else { + //批量选中单元格 + mutilRect(cellSelection); + if (!isAllHasWidget && !isAllHasHyperlink) { + checkPane.add(populateMutilCellCheckPane(), BorderLayout.WEST); + } else if (isAllHasWidget) { + checkPane.add(populateMutilWidgetCheckPane(), BorderLayout.WEST); + } + } + } + + /** + * 对单元格区域进行操作时的权限编辑页面 ,对应的角色的populate + */ + public void populateDetials() { + //做模式标记,此时鼠标焦点是在报表主体,为下一次退出权限编辑时做准备 + HistoryTemplateListPane.getInstance().getCurrentEditingTemplate().setAuthorityMode(false); + TemplateElementCase templateElementCase = elementCasePane.getEditingElementCase(); + if (templateElementCase instanceof WorkSheet) { + ((WorkSheet) templateElementCase).setPaintSelection(true); + } + signelSelection(); + Selection selection = elementCasePane.getSelection(); + if (selection instanceof CellSelection) { + selectionType = CellSelection.NORMAL; + this.cellSelection = ((CellSelection) selection).clone(); + this.floatSelection = null; + judgeChooseCR(); + } else if (selection instanceof FloatSelection) { + selectionType = FLOAT_SELECTION; + cellSelection = null; + floatSelection = new FloatSelection(((FloatSelection) selection).getSelectedFloatName()); + } + populateType(); + populateName(); + populateCheckPane(); + checkCheckBoxes(); + } + + //判断是否选择的行列 + private void judgeChooseCR() { + if (cellSelection.getSelectedType() == CellSelection.CHOOSE_COLUMN && cellSelection.getCellRectangleCount() == 1) { + selectionType = CellSelection.CHOOSE_COLUMN; + } + if (cellSelection.getSelectedType() == CellSelection.CHOOSE_ROW && cellSelection.getCellRectangleCount() == 1) { + selectionType = CellSelection.CHOOSE_ROW; + } + } + + //实现单选 + private void signelSelection() { + JTemplate jTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate(); + if (jTemplate.isJWorkBook()) { + //清工具栏 + JComponent component = DesignerContext.getDesignerFrame().getToolbarComponent(); + if (component instanceof AuthorityEditToolBarComponent) { + ((AuthorityEditToolBarComponent) component).removeSelection(); + } + //清参数面板 + jTemplate.removeParameterPaneSelection(); + } + } + + private JPanel populateFloatElementCheckPane() { + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{new UILabel(Inter.getLocText("M_Insert-Float"), SwingConstants.LEFT), floatElementVisibleCheckBoxes} + }; + double[] rowSize = {p}; + double[] columnSize = {p, f}; + int[][] rowCount = {{1, 1}}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + } + + private JPanel populateWidgetCheckPane() { + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes}, + new Component[]{null, newValue}, + new Component[]{null, valueEditor}, + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Widget"), SwingConstants.LEFT), widgetVisible}, + new Component[]{null, widgetAvailable} + }; + double[] rowSize = {p, p, p, p, p}; + double[] columnSize = {p, f}; + int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + } + + private JPanel populateMutilWidgetCheckPane() { + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes}, + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Widget"), SwingConstants.LEFT), widgetVisible}, + new Component[]{null, widgetAvailable} + }; + double[] rowSize = {p, p, p}; + double[] columnSize = {p, f}; + int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + } + + private JPanel populateMutilCellCheckPane() { + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{cellElementVisibleCheckBoxes}, + }; + double[] rowSize = {p}; + double[] columnSize = {f}; + int[][] rowCount = {{1}}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + } + + private JPanel populatCellCheckPane() { + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[][]{ + new Component[]{cellElementVisibleCheckBoxes}, + new Component[]{newValue}, + new Component[]{valueEditor} + }; + double[] rowSize = {p, p, p}; + double[] columnSize = {f}; + int[][] rowCount = {{1}, {1}, {1}}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + } + + public TemplateCellElement getFirstCell() { + final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); + Rectangle cellRectangle = cellSelection.getCellRectangle(0); + // 从最后循环起以保证最后一个修改标准单元格(originalStyle)。 + TemplateCellElement firstCell = null; + for (int j = cellRectangle.height - 1; j >= 0; j--) { + for (int i = cellRectangle.width - 1; i >= 0; i--) { + int column = i + cellRectangle.x; + int row = j + cellRectangle.y; + TemplateCellElement editCellElement = elementCase.getTemplateCellElement(column, row); + if (editCellElement != null) { + // 对于合并的格子,我们不多次计算的权限. + if (editCellElement.getColumn() != column || editCellElement.getRow() != row) { + continue; + } + firstCell = editCellElement; + } + } + } + return firstCell; + } + + private void checkCheckBoxes() { + String selected = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName(); + removeListener(); + if (selectionType == CellSelection.NORMAL) { + checkCellSelectionCkeckboxes(selected); + } else if (selectionType == CellSelection.CHOOSE_COLUMN || selectionType == CellSelection.CHOOSE_ROW) { + checkColumnRowCheckBoxes(selected); + } else if (selectionType == FLOAT_SELECTION) { + checkFloatSelectionCkeckboxes(selected); + } + initListener(); + } + + private void checkCellSelectionCkeckboxes(String selected) { + TemplateCellElement firstCell = getFirstCell(); + if (firstCell == null) { + resetCellElementCheckBoxes(); + return; + } + cellElementVisibleCheckBoxes.setSelected(!firstCell.isDoneAuthority(selected)); + newValue.setEnabled(!firstCell.isDoneAuthority(selected)); + if (!firstCell.isDoneAuthority(selected)) { + newValue.setSelected(firstCell.isDoneNewValueAuthority(selected)); + if (newValue.isSelected()) { + valueEditor.setEnabled(true); + valueEditor.populate(firstCell.getCellPrivilegeControl().getNewValueMap().get(selected)); + } else { + valueEditor.setEnabled(false); + } + } else { + newValue.setSelected(false); + valueEditor.setEnabled(false); + } + populateWidgetButton(firstCell.getWidget(), selected, firstCell); + } + + private void populateWidgetButton(Widget widget, String selected, TemplateCellElement firstCell) { + if (widget != null) { + if (widget.isVisible()) { + widgetVisible.setSelected(!widget.isDoneVisibleAuthority(selected)); + widgetVisible.setEnabled(!firstCell.isDoneAuthority(selected)); + } else { + widgetVisible.setSelected(widget.isVisibleAuthority(selected)); + } + if (widget.isEnabled()) { + widgetAvailable.setSelected(!widget.isDoneUsableAuthority(selected)); + widgetAvailable.setEnabled(!widget.isDoneVisibleAuthority(selected)); + } else { + widgetAvailable.setSelected(widget.isUsableAuthority(selected)); + } + } + } + + private void resetCellElementCheckBoxes() { + cellElementVisibleCheckBoxes.setSelected(true); + widgetVisible.setSelected(true); + widgetVisible.setEnabled(true); + widgetAvailable.setSelected(true); + widgetAvailable.setEnabled(true); + newValue.setSelected(false); + valueEditor.setEnabled(false); + } + + private void checkColumnRowCheckBoxes(String selected) { + if (cellSelection == null) { + gridColumnRowVisible.setSelected(false); + return; + } + TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); + boolean isInside = selectionType == CellSelection.CHOOSE_COLUMN ? + elementCase.getColumnPrivilegeControl(cellSelection.getColumn()).checkInvisible(selected) : + elementCase.getRowPrivilegeControl(cellSelection.getRow()).checkInvisible(selected); + + gridColumnRowVisible.setSelected(isInside); + } + + private void checkFloatSelectionCkeckboxes(String selected) { + String name = floatSelection.getSelectedFloatName(); + TemplateElementCase ec = elementCasePane.getEditingElementCase(); + FloatElement fe = ec.getFloatElement(name); + floatElementVisibleCheckBoxes.setSelected(!fe.isDoneAuthority(selected)); + } + + private JPanel populateHyperlinkCheckPane(AbstractCellElement cellElement) { + NameJavaScriptGroup linkGroup = cellElement.getNameHyperlinkGroup(); + //超链接的个数+单元格可见的操作 + hyperlinkCheckBoxes = new UICheckBox[linkGroup.size()]; + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[hyperlinkCheckBoxes.length + 1][]; + if (linkGroup.size() == 1) { + components[0] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes}; + components[1] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(Inter.getLocText("FR-Designer_Visible"))}; + + } else { + components[0] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes = new UICheckBox(Inter.getLocText("FR-Designer_Visible"))}; + components[1] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(linkGroup.getNameHyperlink(0).getName() + Inter.getLocText("FR-Designer_Visible"))}; + for (int i = 1; i < hyperlinkCheckBoxes.length; i++) { + components[i + 1] = new Component[]{null, hyperlinkCheckBoxes[i] = new UICheckBox(linkGroup.getNameHyperlink(i).getName() + Inter.getLocText("FR-Designer_Visible"))}; + } + } + for (int i = 0; i < hyperlinkCheckBoxes.length; i++) { + hyperlinkCheckBoxes[i].setEnabled(cellElementVisibleCheckBoxes.isSelected()); + } + addHyperlinkListener(); + double[] rowSize = new double[hyperlinkCheckBoxes.length + 1]; + int[][] rowCount = new int[hyperlinkCheckBoxes.length + 1][]; + for (int i = 0; i < hyperlinkCheckBoxes.length + 1; i++) { + rowSize[i] = p; + rowCount[i] = new int[]{1, 1}; + } + double[] columnSize = {p, f}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + + } + + private JPanel populateMutilHyperlinkCheckPane() { + //超链接的个数+单元格可见的操作 + hyperlinkCheckBoxes = new UICheckBox[1]; + double f = TableLayout.FILL; + double p = TableLayout.PREFERRED; + Component[][] components = new Component[2][]; + components[0] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes}; + components[1] = new Component[]{new UILabel(Inter.getLocText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(Inter.getLocText("FR-Designer_Visible"))}; + hyperlinkCheckBoxes[0].setEnabled(cellElementVisibleCheckBoxes.isSelected()); + addHyperlinkListener(); + double[] rowSize = {p, p}; + double[] columnSize = {p, f}; + int[][] rowCount = {{1, 1}, {1, 1}}; + return TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM); + } +} \ No newline at end of file diff --git a/designer/src/com/fr/design/mainframe/bbs/UserInfoLabel.java b/designer/src/com/fr/design/mainframe/bbs/UserInfoLabel.java index f6e3d3e7c..90d84059b 100644 --- a/designer/src/com/fr/design/mainframe/bbs/UserInfoLabel.java +++ b/designer/src/com/fr/design/mainframe/bbs/UserInfoLabel.java @@ -5,7 +5,6 @@ package com.fr.design.mainframe.bbs; import com.fr.base.FRContext; import com.fr.design.DesignerEnvManager; -import com.fr.design.dialog.UIDialog; import com.fr.design.extra.*; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.imenu.UIMenuItem; @@ -103,17 +102,13 @@ public class UserInfoLabel extends UILabel { if (StableUtils.getMajorJavaVersion() == 8) { PluginWebBridge.getHelper().setUILabel(UserInfoLabel.this); } - QQLoginWebBridge.getHelper().setUILabelInPlugin(UserInfoLabel.this); + LoginWebBridge.getHelper().setUILabelInPlugin(UserInfoLabel.this); UserLoginContext.addLoginContextListener(new LoginContextListener() { @Override public void showLoginContext() { - LoginPane managerPane = new LoginPane(); - UIDialog qqdlg = new LoginDialog(DesignerContext.getDesignerFrame(), managerPane); - LoginWebBridge.getHelper().setDialogHandle(qqdlg); + WebViewDlgHelper.createLoginDialog(); LoginWebBridge.getHelper().setUILabel(UserInfoLabel.this); - QQLoginWebBridge.getHelper().setLoginlabel(); - qqdlg.setVisible(true); clearLoginInformation(); updateInfoPane(); } diff --git a/designer/src/com/fr/design/report/freeze/RepeatAndFreezeSettingPane.java b/designer/src/com/fr/design/report/freeze/RepeatAndFreezeSettingPane.java index 46bc378ae..af5906c33 100644 --- a/designer/src/com/fr/design/report/freeze/RepeatAndFreezeSettingPane.java +++ b/designer/src/com/fr/design/report/freeze/RepeatAndFreezeSettingPane.java @@ -10,7 +10,7 @@ import javax.swing.event.ChangeListener; import com.fr.base.FRContext; import com.fr.design.dialog.BasicPane; -import com.fr.design.extra.WebDialog; +import com.fr.design.extra.WebViewDlgHelper; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.ActionLabel; import com.fr.design.gui.ilable.UILabel; @@ -553,7 +553,7 @@ public class RepeatAndFreezeSettingPane extends BasicPane { public void actionPerformed(ActionEvent e) { try { //Desktop.getDesktop().browse(new URI(url)); - WebDialog.createPluginDialog(); + WebViewDlgHelper.createPluginDialog(); RepeatAndFreezeSettingPane.this.getTopLevelAncestor().setVisible(false); } catch (Exception exp) { diff --git a/designer/src/com/fr/design/widget/CellWidgetCardPane.java b/designer/src/com/fr/design/widget/CellWidgetCardPane.java index 8ba9d3235..d286cc190 100644 --- a/designer/src/com/fr/design/widget/CellWidgetCardPane.java +++ b/designer/src/com/fr/design/widget/CellWidgetCardPane.java @@ -67,7 +67,12 @@ public class CellWidgetCardPane extends BasicPane { treeTabPane = FRGUIPaneFactory.createBorderLayout_L_Pane(); widgetPropertyPane = new BasicWidgetPropertySettingPane(); - attriTabPane.add(widgetPropertyPane, BorderLayout.NORTH); + JPanel northPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); + northPane.setBorder(BorderFactory.createEmptyBorder(5, 8, 0, 8)); + JPanel basic = FRGUIPaneFactory.createTitledBorderPane(Inter.getLocText("FR-Designer_Form_Basic_Properties")); + northPane.add(basic); + basic.add(widgetPropertyPane); + attriTabPane.add(northPane, BorderLayout.NORTH); attriCardPane = FRGUIPaneFactory.createCardLayout_S_Pane(); attriTabPane.add(attriCardPane, BorderLayout.CENTER); attriCardLayout = (CardLayout) attriCardPane.getLayout(); @@ -88,15 +93,6 @@ public class CellWidgetCardPane extends BasicPane { this.tabbedPane.setEnabled(true); } - attriTabPane.remove(widgetPropertyPane); - widgetPropertyPane = new BasicWidgetPropertySettingPane(); - JPanel northPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - northPane.setBorder(BorderFactory.createEmptyBorder(5, 8, 0, 8)); - JPanel basic = FRGUIPaneFactory.createTitledBorderPane(Inter.getLocText("FR-Designer_Form_Basic_Properties")); - northPane.add(basic); - basic.add(widgetPropertyPane); - attriTabPane.add(northPane, BorderLayout.NORTH); - WidgetDefinePaneFactory.RN rn = WidgetDefinePaneFactory.createWidgetDefinePane(cellWidget, new Operator() { @Override public void did(DataCreatorUI ui, String cardName) { diff --git a/designer_base/src/com/fr/design/actions/server/ConnectionListAction.java b/designer_base/src/com/fr/design/actions/server/ConnectionListAction.java index e24826b50..68e605757 100644 --- a/designer_base/src/com/fr/design/actions/server/ConnectionListAction.java +++ b/designer_base/src/com/fr/design/actions/server/ConnectionListAction.java @@ -1,171 +1,176 @@ -package com.fr.design.actions.server; - -import com.fr.base.BaseUtils; -import com.fr.base.Env; -import com.fr.base.FRContext; -import com.fr.base.ModifiedTable; -import com.fr.data.impl.Connection; -import com.fr.dav.LocalEnv; -import com.fr.design.actions.UpdateAction; -import com.fr.design.data.datapane.connect.ConnectionManagerPane; -import com.fr.design.dialog.BasicDialog; -import com.fr.design.dialog.DialogActionAdapter; -import com.fr.design.mainframe.DesignerContext; -import com.fr.design.mainframe.DesignerFrame; -import com.fr.design.menu.MenuKeySet; -import com.fr.file.DatasourceManager; -import com.fr.file.DatasourceManagerProvider; -import com.fr.general.Inter; - -import javax.swing.*; -import java.awt.event.ActionEvent; -import java.util.HashMap; - -/** - * DatasourceList Action - */ -public class ConnectionListAction extends UpdateAction { - private static final int BYTENUM = 1444; - - public ConnectionListAction() { - this.setMenuKeySet(DEFINE_DATA_CONNECTION); - this.setName(getMenuKeySet().getMenuKeySetName()); - this.setMnemonic(getMenuKeySet().getMnemonic()); - this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_web/connection.png")); - } - - public static final MenuKeySet DEFINE_DATA_CONNECTION = new MenuKeySet() { - @Override - public char getMnemonic() { - return 'D'; - } - - @Override - public String getMenuName() { - return Inter.getLocText("Server-Define_Data_Connection"); - } - - @Override - public KeyStroke getKeyStroke() { - return null; - } - }; - - /** - * 执行动作 - * - * @param evt 事件 - */ - public void actionPerformed(ActionEvent evt) { - DesignerFrame designerFrame = DesignerContext.getDesignerFrame(); - final DatasourceManagerProvider datasourceManager = DatasourceManager.getProviderInstance(); - final DatasourceManager backupManager = datasourceManager.getBackUpManager(); - final ConnectionManagerPane databaseManagerPane = new ConnectionManagerPane() { - public void complete() { - populate(datasourceManager); - } - - protected void renameConnection(String oldName, String newName) { - datasourceManager.getConnectionLocalModifyTable().rename(oldName, newName); - } - }; - final BasicDialog databaseListDialog = databaseManagerPane.showLargeWindow(designerFrame, null); - databaseListDialog.addDialogActionListener(new DialogActionAdapter() { - public void doOk() { - if (!databaseManagerPane.isNamePermitted()) { - databaseListDialog.setDoOKSucceed(false); - return; - } - if (!doWithDatasourceManager(datasourceManager, backupManager, databaseManagerPane, databaseListDialog)) { - //如果更新失败,则不关闭对话框,也不写xml文件,并且将对话框定位在请重命名的那个对象页面 - return; - } - // marks:保存数据 - writeFile(datasourceManager); - } - - public void doCancel() { - datasourceManager.synchronizedWithServer(); - } - }); - databaseListDialog.setVisible(true); - } - - - private void writeFile(DatasourceManagerProvider datasourceManager) { - Env currentEnv = FRContext.getCurrentEnv(); - try { - boolean isSuccess = currentEnv.writeResource(datasourceManager); - if (!isSuccess) { - throw new RuntimeException(Inter.getLocText("FR-Designer_Already_exist")); - } - } catch (Exception e) { - throw new RuntimeException(Inter.getLocText("FR-Designer_Already_exist")); - } - DesignerContext.getDesignerBean("databasename").refreshBeanElement(); - } - - /** - * 是否正常更新完datasourceManager - * - * @param datasourceManager - * @param databaseManagerPane - * @return - */ - private boolean doWithDatasourceManager(DatasourceManagerProvider datasourceManager, DatasourceManager backupManager, - ConnectionManagerPane databaseManagerPane, BasicDialog databaseListDialog) { - databaseManagerPane.update(datasourceManager); - HashMap modifyDetails = datasourceManager.getConnectionModifyDetails(); - modifyDetails.clear(); - Env currentEnv = FRContext.getCurrentEnv(); - ModifiedTable localModifiedTable = datasourceManager.checkConnectionModifyTable(backupManager, currentEnv.getUserID()); - boolean isFailed = false; - if (currentEnv.isSupportLocalFileOperate() && !((LocalEnv) currentEnv).isNoRemoteUser()) { - //如果是本地,并且有远程用户时则更新自己的修改表 - datasourceManager.updateSelfConnectionTotalModifiedTable(localModifiedTable, ModifiedTable.LOCAL_MODIFIER); - } else { - if (!currentEnv.isSupportLocalFileOperate()) { - //如果是远程,则去取服务器的最新的修改表,检查有没有冲突 - ModifiedTable currentServerModifyTable = currentEnv.getDataSourceModifiedTables(DatasourceManager.CONNECTION); - if (localModifiedTable.checkModifiedTableConflictWithServer(currentServerModifyTable, currentEnv.getUserID())) { - //有冲突,进行提示 - String title = Inter.getLocText(new String[]{"Select", "Single", "Setting"}); - int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), localModifiedTable.getWaringMessage(), title, JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); - if (returnVal == JOptionPane.YES_OPTION) { - //点击是,进行相应刷新去冲突 - datasourceManager.synchronizedWithServer(backupManager, DatasourceManager.CONNECTION); - //要是有重命名冲突的,则对详细的修改表先进行修改 - datasourceManager.doWithConnectionConflict(localModifiedTable); - localModifiedTable.removeConfilct(); - modifyDetails.clear(); - //更新面板 - databaseManagerPane.populate(datasourceManager); - } else { - //更新失败,继续停留页面 - isFailed = true; - } - - } - } - } - //存在请重命名则不能更新 - int index = datasourceManager.isConnectionMapContainsRename(); - if (index != -1) { - isFailed = true; - databaseManagerPane.setSelectedIndex(index); - } - databaseListDialog.setDoOKSucceed(!isFailed); - //如果修改成功,则去远程端增量修改修改表 - if (!isFailed && !currentEnv.isSupportLocalFileOperate()) { - currentEnv.writeDataSourceModifiedTables(localModifiedTable, DatasourceManager.CONNECTION); - localModifiedTable.clear(); - modifyDetails.clear(); - } - return !isFailed; - } - - - public void update() { - this.setEnabled(true); - } +package com.fr.design.actions.server; + +import com.fr.base.BaseUtils; +import com.fr.base.Env; +import com.fr.base.FRContext; +import com.fr.base.ModifiedTable; +import com.fr.data.impl.Connection; +import com.fr.dav.LocalEnv; +import com.fr.design.actions.UpdateAction; +import com.fr.design.data.datapane.connect.ConnectionManagerPane; +import com.fr.design.data.datapane.connect.ConnectionShowPane; +import com.fr.design.dialog.BasicDialog; +import com.fr.design.dialog.DialogActionAdapter; +import com.fr.design.mainframe.DesignerContext; +import com.fr.design.mainframe.DesignerFrame; +import com.fr.design.menu.MenuKeySet; +import com.fr.file.DatasourceManager; +import com.fr.file.DatasourceManagerProvider; +import com.fr.general.Inter; + +import javax.swing.*; +import java.awt.event.ActionEvent; +import java.util.HashMap; + +/** + * DatasourceList Action + */ +public class ConnectionListAction extends UpdateAction { + + public ConnectionListAction() { + this.setMenuKeySet(DEFINE_DATA_CONNECTION); + this.setName(getMenuKeySet().getMenuKeySetName()); + this.setMnemonic(getMenuKeySet().getMnemonic()); + this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_web/connection.png")); + } + + public static final MenuKeySet DEFINE_DATA_CONNECTION = new MenuKeySet() { + @Override + public char getMnemonic() { + return 'D'; + } + + @Override + public String getMenuName() { + return Inter.getLocText("Server-Define_Data_Connection"); + } + + @Override + public KeyStroke getKeyStroke() { + return null; + } + }; + + /** + * 执行动作 + * + * @param evt 事件 + */ + public void actionPerformed(ActionEvent evt) { + DesignerFrame designerFrame = DesignerContext.getDesignerFrame(); + final DatasourceManagerProvider datasourceManager = DatasourceManager.getProviderInstance(); + final DatasourceManager backupManager = datasourceManager.getBackUpManager(); + final ConnectionManagerPane databaseManagerPane = new ConnectionManagerPane() { + public void complete() { + populate(datasourceManager); + } + + protected void renameConnection(String oldName, String newName) { + datasourceManager.getConnectionLocalModifyTable().rename(oldName, newName); + } + }; + final BasicDialog databaseListDialog = databaseManagerPane.showLargeWindow(designerFrame, null); + databaseListDialog.addDialogActionListener(new DialogActionAdapter() { + public void doOk() { + if (!databaseManagerPane.isNamePermitted()) { + databaseListDialog.setDoOKSucceed(false); + return; + } + if (!doWithDatasourceManager(datasourceManager, backupManager, databaseManagerPane, databaseListDialog)) { + //如果更新失败,则不关闭对话框,也不写xml文件,并且将对话框定位在请重命名的那个对象页面 + return; + } + // marks:保存数据 + writeFile(datasourceManager); + } + + public void doCancel() { + datasourceManager.synchronizedWithServer(); + } + }); + databaseListDialog.setVisible(true); + } + + + /** + * @param datasourceManager + */ + public static void writeFile(DatasourceManagerProvider datasourceManager) { + Env currentEnv = FRContext.getCurrentEnv(); + try { + boolean isSuccess = currentEnv.writeResource(datasourceManager); + if (!isSuccess) { + throw new RuntimeException(Inter.getLocText("FR-Designer_Already_exist")); + } + } catch (Exception e) { + throw new RuntimeException(Inter.getLocText("FR-Designer_Already_exist")); + } + DesignerContext.getDesignerBean("databasename").refreshBeanElement(); + } + + /** + * 更新datasourceManager + * + * @param datasourceManager datasource管理对象 + * @param backupManager datasource管理对象备份 + * @param connectionShowPane datasource面板 + * @param databaseListDialog datasource管理对话框 + * @return boolean 是否更新成功 + */ + public static boolean doWithDatasourceManager(DatasourceManagerProvider datasourceManager, DatasourceManager + backupManager, ConnectionShowPane connectionShowPane, BasicDialog databaseListDialog) { + connectionShowPane.update(datasourceManager); + HashMap modifyDetails = datasourceManager.getConnectionModifyDetails(); + modifyDetails.clear(); + Env currentEnv = FRContext.getCurrentEnv(); + ModifiedTable localModifiedTable = datasourceManager.checkConnectionModifyTable(backupManager, currentEnv.getUserID()); + boolean isFailed = false; + if (currentEnv.isSupportLocalFileOperate() && !((LocalEnv) currentEnv).isNoRemoteUser()) { + //如果是本地,并且有远程用户时则更新自己的修改表 + datasourceManager.updateSelfConnectionTotalModifiedTable(localModifiedTable, ModifiedTable.LOCAL_MODIFIER); + } else { + if (!currentEnv.isSupportLocalFileOperate()) { + //如果是远程,则去取服务器的最新的修改表,检查有没有冲突 + ModifiedTable currentServerModifyTable = currentEnv.getDataSourceModifiedTables(DatasourceManager.CONNECTION); + if (localModifiedTable.checkModifiedTableConflictWithServer(currentServerModifyTable, currentEnv.getUserID())) { + //有冲突,进行提示 + String title = Inter.getLocText(new String[]{"Select", "Single", "Setting"}); + int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), localModifiedTable.getWaringMessage(), title, JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); + if (returnVal == JOptionPane.YES_OPTION) { + //点击是,进行相应刷新去冲突 + datasourceManager.synchronizedWithServer(backupManager, DatasourceManager.CONNECTION); + //要是有重命名冲突的,则对详细的修改表先进行修改 + datasourceManager.doWithConnectionConflict(localModifiedTable); + localModifiedTable.removeConfilct(); + modifyDetails.clear(); + //更新面板 + connectionShowPane.populate(datasourceManager); + } else { + //更新失败,继续停留页面 + isFailed = true; + } + + } + } + } + //存在请重命名则不能更新 + int index = datasourceManager.isConnectionMapContainsRename(); + if (index != -1) { + isFailed = true; + connectionShowPane.setSelectedIndex(index); + } + databaseListDialog.setDoOKSucceed(!isFailed); + //如果修改成功,则去远程端增量修改修改表 + if (!isFailed && !currentEnv.isSupportLocalFileOperate()) { + currentEnv.writeDataSourceModifiedTables(localModifiedTable, DatasourceManager.CONNECTION); + localModifiedTable.clear(); + modifyDetails.clear(); + } + return !isFailed; + } + + + public void update() { + this.setEnabled(true); + } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/actions/server/PluginManagerAction.java b/designer_base/src/com/fr/design/actions/server/PluginManagerAction.java index 08dc91b07..bd77bfa0c 100644 --- a/designer_base/src/com/fr/design/actions/server/PluginManagerAction.java +++ b/designer_base/src/com/fr/design/actions/server/PluginManagerAction.java @@ -2,7 +2,7 @@ package com.fr.design.actions.server; import com.fr.base.BaseUtils; import com.fr.design.actions.UpdateAction; -import com.fr.design.extra.WebDialog; +import com.fr.design.extra.WebViewDlgHelper; import com.fr.design.menu.MenuKeySet; import com.fr.general.Inter; @@ -25,7 +25,7 @@ public class PluginManagerAction extends UpdateAction { @Override public void actionPerformed(ActionEvent e) { - WebDialog.createPluginDialog(); + WebViewDlgHelper.createPluginDialog(); } public static final MenuKeySet PLUGIN_MANAGER = new MenuKeySet() { diff --git a/designer_base/src/com/fr/design/beans/location/MoveUtils.java b/designer_base/src/com/fr/design/beans/location/MoveUtils.java index d89848446..d3dc94a08 100644 --- a/designer_base/src/com/fr/design/beans/location/MoveUtils.java +++ b/designer_base/src/com/fr/design/beans/location/MoveUtils.java @@ -18,9 +18,7 @@ public class MoveUtils { public static final int SORPTION_UNIT = 5; private static final int EQUIDISTANTLINE_UNIT = 4; - public static WidgetForbidWindow widgetForbidWindow = new WidgetForbidWindow(); - - public static ArrayList equidistantLines = new ArrayList<>(); + private static ArrayList equidistantLines = new ArrayList<>(); private MoveUtils() { @@ -259,8 +257,7 @@ public class MoveUtils { equidistantLineInfo.setReference(bounds.y); equidistantLineInfo.setDirection(SwingConstants.BOTTOM); } - } - else if ((leftMiddleY > bounds.getY()) && (leftMiddleY < (bounds.getY() + bounds.getHeight()))){ + } else if ((leftMiddleY > bounds.getY()) && (leftMiddleY < (bounds.getY() + bounds.getHeight()))) { //当前操作rec在bounds的右侧 if (left > (bounds.getX() + bounds.getWidth())){ equidistantLineInfo.setDistance(left - (bounds.x + bounds.width)); @@ -279,13 +276,6 @@ public class MoveUtils { } } - public static void displayForbidWindow(int x, int y) { - widgetForbidWindow.showWindow(x, y); - } - - public static void hideForbidWindow() { - widgetForbidWindow.hideWindow(); - } /** * 吸附 @@ -318,25 +308,16 @@ public class MoveUtils { RectangleIterator iterator = designer.createRectangleIterator(); java.util.List cacheRecs = new ArrayList(); - //是否存在控件重叠 - boolean isWidgetsIntersects = false; - while (iterator.hasNext()) { - Rectangle bounds = iterator.nextRectangle(); - cacheRecs.add(bounds); - boolean isIntersects = operatingRectangle.intersects(bounds); - findX(px, bounds, left, right, width); - findY(py, bounds, top, bottom, height); - - if(!isParameterLayout){ - if(isIntersects) { - isWidgetsIntersects = true; - } - else{ - findEquidistantLine(bounds, left, top, height, width); - } - } - } - showForbiddenWindow(designer, x, y, isWidgetsIntersects); + while (iterator.hasNext()) { + Rectangle bounds = iterator.nextRectangle(); + cacheRecs.add(bounds); + findX(px, bounds, left, right, width); + findY(py, bounds, top, bottom, height); + + if (!isParameterLayout) { + findEquidistantLine(bounds, left, top, height, width); + } + } createXAbsorptionline(px, designer, width, cacheRecs); createYAbsorptionline(py, designer, height, cacheRecs); @@ -353,18 +334,6 @@ public class MoveUtils { return sorptionPoint; } - public static void showForbiddenWindow(RectangleDesigner designer, int x, int y, boolean isIntersects){ - if (isIntersects){ - if(designer.getDesignerLocationOnScreen() != null) { - displayForbidWindow(x + designer.getDesignerLocationOnScreen().x, y + designer.getDesignerLocationOnScreen().y); - } - designer.setWidgetsIntersected(true); - } - else{ - designer.setWidgetsIntersected(false); - hideForbidWindow(); - } - } private static void createXAbsorptionline(PlacePointing px, RectangleDesigner designer, int width, java.util.List cacheRecs) { Absorptionline line = null; diff --git a/designer_base/src/com/fr/design/beans/location/WidgetForbidWindow.java b/designer_base/src/com/fr/design/beans/location/WidgetForbidWindow.java deleted file mode 100644 index 7c645d0ad..000000000 --- a/designer_base/src/com/fr/design/beans/location/WidgetForbidWindow.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.fr.design.beans.location; - -import com.fr.base.BaseUtils; -import com.fr.design.gui.ibutton.UIButton; -import com.fr.design.icon.IconPathConstants; -import com.fr.general.Inter; - -import javax.swing.*; - -/** - * Created by zhouping on 2016/7/24. - */ -public class WidgetForbidWindow extends JWindow { - - private static final int WIDTH = 150; - private static final int HEIGHT = 20; - - private UIButton promptButton = new UIButton(Inter.getLocText("FR-Designer_Forbid_Widgets_Intersects"), BaseUtils.readIcon(IconPathConstants.FORBID_ICON_PATH)); - - /** - * 构造函数 - */ - public WidgetForbidWindow() { - this.add(promptButton); - this.setSize(WIDTH, HEIGHT); - } - - /** - * 在指定位置显示窗口, 默认将window的中心点放到指定位置上 - * - * @param x x坐标 - * @param y y坐标 - */ - public void showWindow(int x, int y) { - this.setLocation(x - WIDTH / 2, y - HEIGHT / 2); - this.setVisible(true); - } - - /** - * 隐藏当前窗口 - */ - public void hideWindow() { - this.setVisible(false); - } -} diff --git a/designer_base/src/com/fr/design/data/datapane/connect/ConnectionComboBoxPanel.java b/designer_base/src/com/fr/design/data/datapane/connect/ConnectionComboBoxPanel.java index cc75b7ca2..c80970bd9 100644 --- a/designer_base/src/com/fr/design/data/datapane/connect/ConnectionComboBoxPanel.java +++ b/designer_base/src/com/fr/design/data/datapane/connect/ConnectionComboBoxPanel.java @@ -1,128 +1,140 @@ -package com.fr.design.data.datapane.connect; - -import com.fr.base.Env; -import com.fr.base.FRContext; -import com.fr.data.impl.AbstractDatabaseConnection; -import com.fr.data.impl.Connection; -import com.fr.data.impl.NameDatabaseConnection; -import com.fr.design.DesignerEnvManager; -import com.fr.design.dialog.BasicDialog; -import com.fr.design.dialog.DialogActionAdapter; -import com.fr.file.DatasourceManager; -import com.fr.file.DatasourceManagerProvider; -import com.fr.general.ComparatorUtils; -import com.fr.stable.StringUtils; - -import javax.swing.*; -import java.awt.event.ItemEvent; -import java.awt.event.ItemListener; -import java.util.ArrayList; -import java.util.List; - -/** - * 选择数据连接的下拉框 - * - * @editor zhou - * @since 2012-3-28下午3:02:30 - */ -public class ConnectionComboBoxPanel extends ItemEditableComboBoxPanel { - /** - * - */ - private static final long serialVersionUID = 1L; - private Class cls; // 所取的Connection都是cls及其子类 - private java.util.List nameList = new ArrayList(); - - public ConnectionComboBoxPanel(Class cls) { - super(); - - this.cls = cls; - - // alex:添加item change监听,当改变时改变DesignerEnvManager中的最近选中的数据连接 - this.itemComboBox.addItemListener(new ItemListener() { - public void itemStateChanged(ItemEvent e) { - String selected = ConnectionComboBoxPanel.this.getSelectedItem(); - if (StringUtils.isNotBlank(selected)) { - DesignerEnvManager.getEnvManager().setRecentSelectedConnection(selected); - } - } - }); - refreshItems(); - } - - /* - * 刷新ComboBox.items - */ - protected java.util.Iterator items() { - nameList = new ArrayList(); - - DatasourceManagerProvider mgr = DatasourceManager.getProviderInstance(); - java.util.Iterator nameIt = mgr.getConnectionNameIterator(); - while (nameIt.hasNext()) { - String conName = nameIt.next(); - Connection connection = mgr.getConnection(conName); - filterConnection(connection, conName, nameList); - } - - return nameList.iterator(); - } - - protected void filterConnection(Connection connection, String conName, List nameList) { - connection.addConnection(nameList, conName, new Class[]{AbstractDatabaseConnection.class}); - } - - - public int getConnectionSize() { - return nameList.size(); - } - - public String getConnection(int i) { - return nameList.get(i); - } - - /* - * 弹出对话框编辑Items - */ - protected void editItems() { - final ConnectionListPane connectionListPane = new ConnectionListPane(); - final DatasourceManagerProvider datasourceManager = DatasourceManager.getProviderInstance(); - connectionListPane.populate(datasourceManager); - BasicDialog connectionListDialog = connectionListPane.showLargeWindow( - SwingUtilities.getWindowAncestor(ConnectionComboBoxPanel.this), new DialogActionAdapter() { - public void doOk() { - connectionListPane.update(datasourceManager); - // marks:保存数据 - Env currentEnv = FRContext.getCurrentEnv(); - try { - currentEnv.writeResource(datasourceManager); - } catch (Exception ex) { - FRContext.getLogger().error(ex.getMessage(), ex); - } - } - }); - connectionListDialog.setVisible(true); - refreshItems(); - } - - public void populate(com.fr.data.impl.Connection connection) { - editButton.setEnabled(FRContext.getCurrentEnv().isRoot()); - if (connection instanceof NameDatabaseConnection) { - this.setSelectedItem(((NameDatabaseConnection) connection).getName()); - } else { - String s = DesignerEnvManager.getEnvManager().getRecentSelectedConnection(); - if (StringUtils.isNotBlank(s)) { - for (int i = 0; i < this.getConnectionSize(); i++) { - String t = this.getConnection(i); - if (ComparatorUtils.equals(s, t)) { - this.setSelectedItem(s); - break; - } - } - } - // alex:如果这个ComboBox还是没有选中,那么选中第一个 - if (StringUtils.isBlank(this.getSelectedItem()) && this.getConnectionSize() > 0) { - this.setSelectedItem(this.getConnection(0)); - } - } - } +package com.fr.design.data.datapane.connect; + +import com.fr.base.FRContext; +import com.fr.data.impl.AbstractDatabaseConnection; +import com.fr.data.impl.Connection; +import com.fr.data.impl.NameDatabaseConnection; +import com.fr.design.DesignerEnvManager; +import com.fr.design.actions.server.ConnectionListAction; +import com.fr.design.dialog.BasicDialog; +import com.fr.design.dialog.DialogActionAdapter; +import com.fr.file.DatasourceManager; +import com.fr.file.DatasourceManagerProvider; +import com.fr.general.ComparatorUtils; +import com.fr.stable.StringUtils; + +import javax.swing.*; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +/** + * 选择数据连接的下拉框 + * + * @editor zhou + * @since 2012-3-28下午3:02:30 + */ +public class ConnectionComboBoxPanel extends ItemEditableComboBoxPanel { + /** + * + */ + private static final long serialVersionUID = 1L; + private Class cls; // 所取的Connection都是cls及其子类 + private List nameList = new ArrayList(); + + public ConnectionComboBoxPanel(Class cls) { + super(); + + this.cls = cls; + + // alex:添加item change监听,当改变时改变DesignerEnvManager中的最近选中的数据连接 + this.itemComboBox.addItemListener(new ItemListener() { + public void itemStateChanged(ItemEvent e) { + String selected = ConnectionComboBoxPanel.this.getSelectedItem(); + if (StringUtils.isNotBlank(selected)) { + DesignerEnvManager.getEnvManager().setRecentSelectedConnection(selected); + } + } + }); + refreshItems(); + } + + /* + * 刷新ComboBox.items + */ + protected Iterator items() { + nameList = new ArrayList(); + + DatasourceManagerProvider mgr = DatasourceManager.getProviderInstance(); + Iterator nameIt = mgr.getConnectionNameIterator(); + while (nameIt.hasNext()) { + String conName = nameIt.next(); + Connection connection = mgr.getConnection(conName); + filterConnection(connection, conName, nameList); + } + + return nameList.iterator(); + } + + protected void filterConnection(Connection connection, String conName, List nameList) { + connection.addConnection(nameList, conName, new Class[]{AbstractDatabaseConnection.class}); + } + + public int getConnectionSize() { + return nameList.size(); + } + + public String getConnection(int i) { + return nameList.get(i); + } + + /* + * 弹出对话框编辑Items + */ + protected void editItems() { + final ConnectionListPane connectionListPane = new ConnectionListPane(); + final DatasourceManagerProvider datasourceManager = DatasourceManager.getProviderInstance(); + final DatasourceManager backupManager = datasourceManager.getBackUpManager(); + connectionListPane.populate(datasourceManager); + final BasicDialog connectionListDialog = connectionListPane.showLargeWindow( + SwingUtilities.getWindowAncestor(ConnectionComboBoxPanel.this), null); + connectionListDialog.addDialogActionListener(new DialogActionAdapter() { + public void doOk() { + if (!connectionListPane.isNamePermitted()) { + connectionListDialog.setDoOKSucceed(false); + return; + } + if (!ConnectionListAction.doWithDatasourceManager(datasourceManager, backupManager, connectionListPane, + connectionListDialog)) { + //如果更新失败,则不关闭对话框,也不写xml文件,并且将对话框定位在请重命名的那个对象页面 + return; + } + // marks:保存数据 + ConnectionListAction.writeFile(datasourceManager); + } + + public void doCancel() { + datasourceManager.synchronizedWithServer(); + } + }); + connectionListDialog.setVisible(true); + refreshItems(); + } + + /** + * @param connection 数据库链接 + */ + public void populate(Connection connection) { + editButton.setEnabled(FRContext.getCurrentEnv().isRoot()); + if (connection instanceof NameDatabaseConnection) { + this.setSelectedItem(((NameDatabaseConnection) connection).getName()); + } else { + String s = DesignerEnvManager.getEnvManager().getRecentSelectedConnection(); + if (StringUtils.isNotBlank(s)) { + for (int i = 0; i < this.getConnectionSize(); i++) { + String t = this.getConnection(i); + if (ComparatorUtils.equals(s, t)) { + this.setSelectedItem(s); + break; + } + } + } + // alex:如果这个ComboBox还是没有选中,那么选中第一个 + if (StringUtils.isBlank(this.getSelectedItem()) && this.getConnectionSize() > 0) { + this.setSelectedItem(this.getConnection(0)); + } + } + } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/data/datapane/connect/ConnectionListPane.java b/designer_base/src/com/fr/design/data/datapane/connect/ConnectionListPane.java index 8d0f2aa39..1cdf1cb1a 100644 --- a/designer_base/src/com/fr/design/data/datapane/connect/ConnectionListPane.java +++ b/designer_base/src/com/fr/design/data/datapane/connect/ConnectionListPane.java @@ -1,163 +1,163 @@ -package com.fr.design.data.datapane.connect; - -import com.fr.data.impl.Connection; -import com.fr.data.impl.JDBCDatabaseConnection; -import com.fr.data.impl.JNDIDatabaseConnection; -import com.fr.design.ExtraDesignClassManager; -import com.fr.design.fun.ConnectionProvider; -import com.fr.design.gui.controlpane.JListControlPane; -import com.fr.design.gui.controlpane.NameObjectCreator; -import com.fr.design.gui.controlpane.NameableCreator; -import com.fr.file.DatasourceManagerProvider; -import com.fr.general.ComparatorUtils; -import com.fr.general.Inter; -import com.fr.general.NameObject; -import com.fr.stable.ArrayUtils; -import com.fr.stable.Nameable; -import com.fr.stable.StringUtils; -import com.fr.stable.core.PropertyChangeAdapter; - -import javax.swing.*; -import java.util.*; - -/** - * Connection List Pane. - */ -public class ConnectionListPane extends JListControlPane { - public static final String TITLE_NAME = Inter.getLocText("Server-Define_Data_Connection"); - private boolean isNamePermitted = true; - private HashMap renameMap = new HashMap(); - - public ConnectionListPane() { - renameMap.clear(); - this.addEditingListner(new PropertyChangeAdapter() { - public void propertyChange() { - isNamePermitted = true; - String[] allListNames = nameableList.getAllNames(); - allListNames[nameableList.getSelectedIndex()] = StringUtils.EMPTY; - String tempName = getEditingName(); - if (StringUtils.isEmpty(tempName)) { - String[] warning = new String[]{"NOT_NULL_Des", "Please_Rename"}; - String[] sign = new String[]{",", "!"}; - nameableList.stopEditing(); - JOptionPane.showMessageDialog(SwingUtilities.getWindowAncestor(ConnectionListPane.this), Inter.getLocText(warning, sign)); - setWarnigText(editingIndex); - isNamePermitted = false; - return; - } - if (!ComparatorUtils.equals(tempName, selectedName) - && isNameRepeted(new List[]{Arrays.asList(allListNames)}, tempName)) { - isNamePermitted = false; - nameableList.stopEditing(); - String message = Inter.getLocText(new String[]{"Utils-has_been_existed", "DashBoard-ConnectionList", "Please_Rename"}, new String[]{"", tempName + ",", "!"}); - JOptionPane.showMessageDialog(SwingUtilities.getWindowAncestor(ConnectionListPane.this), message); - setWarnigText(editingIndex); - } - if (isNamePermitted && !ComparatorUtils.equals(tempName, selectedName)) { - rename(selectedName, tempName); - } - - } - }); - } - - - protected void rename(String oldName, String newName) { - if (renameMap.containsKey(selectedName)) { - renameMap.remove(selectedName); - } - renameMap.put(selectedName, newName); - } - - /** - * 名字是否允许 - * - * @return 是/否 - */ - public boolean isNamePermitted() { - return isNamePermitted; - } - - /** - * 检查按钮可用状态 Check button enabled. - */ - public void checkButtonEnabled() { - super.checkButtonEnabled(); - isNamePermitted = !isContainsRename(); - } - - - public HashMap getRenameMap() { - return renameMap; - } - - /** - * 创建菜单项 - * - * @return 菜单项 - */ - public NameableCreator[] createNameableCreators() { - NameableCreator[] creators = new NameableCreator[]{new NameObjectCreator( - "JDBC", - "/com/fr/design/images/data/source/jdbcTableData.png", - JDBCDatabaseConnection.class, - DatabaseConnectionPane.JDBC.class - ), new NameObjectCreator( - "JNDI", - "/com/fr/design/images/data/source/jdbcTableData.png", - JNDIDatabaseConnection.class, - DatabaseConnectionPane.JNDI.class - )}; - Set pluginCreators = ExtraDesignClassManager.getInstance().getArray(ConnectionProvider.XML_TAG); - for (ConnectionProvider provider : pluginCreators) { - NameObjectCreator creator = new NameObjectCreator( - provider.nameForConnection(), - provider.iconPathForConnection(), - provider.classForConnection(), - provider.appearanceForConnection() - ); - creators = ArrayUtils.add(creators, creator); - } - - return creators; - } - - @Override - protected String title4PopupWindow() { - return TITLE_NAME; - } - - /** - * Populate. - * - * @param datasourceManager the new datasourceManager. - */ - public void populate(DatasourceManagerProvider datasourceManager) { - Iterator nameIt = datasourceManager.getConnectionNameIterator(); - - List nameObjectList = new ArrayList(); - while (nameIt.hasNext()) { - String name = nameIt.next(); - nameObjectList.add(new NameObject(name, datasourceManager.getConnection(name))); - } - this.populate(nameObjectList.toArray(new NameObject[nameObjectList.size()])); - - } - - /** - * Update. - */ - public void update(DatasourceManagerProvider datasourceManager) { - // Nameable[]居然不能强转成NameObject[],一定要这么写... - Nameable[] res = this.update(); - NameObject[] res_array = new NameObject[res.length]; - java.util.Arrays.asList(res).toArray(res_array); - - datasourceManager.clearAllConnection(); - - for (int i = 0; i < res_array.length; i++) { - NameObject nameObject = res_array[i]; - datasourceManager.putConnection(nameObject.getName(), (Connection) nameObject.getObject()); - } - } +package com.fr.design.data.datapane.connect; + +import com.fr.data.impl.Connection; +import com.fr.data.impl.JDBCDatabaseConnection; +import com.fr.data.impl.JNDIDatabaseConnection; +import com.fr.design.ExtraDesignClassManager; +import com.fr.design.fun.ConnectionProvider; +import com.fr.design.gui.controlpane.JListControlPane; +import com.fr.design.gui.controlpane.NameObjectCreator; +import com.fr.design.gui.controlpane.NameableCreator; +import com.fr.file.DatasourceManagerProvider; +import com.fr.general.ComparatorUtils; +import com.fr.general.Inter; +import com.fr.general.NameObject; +import com.fr.stable.ArrayUtils; +import com.fr.stable.Nameable; +import com.fr.stable.StringUtils; +import com.fr.stable.core.PropertyChangeAdapter; + +import javax.swing.*; +import java.util.*; + +/** + * Connection List Pane. + */ +public class ConnectionListPane extends JListControlPane implements ConnectionShowPane { + public static final String TITLE_NAME = Inter.getLocText("Server-Define_Data_Connection"); + private boolean isNamePermitted = true; + private HashMap renameMap = new HashMap(); + + public ConnectionListPane() { + renameMap.clear(); + this.addEditingListner(new PropertyChangeAdapter() { + public void propertyChange() { + isNamePermitted = true; + String[] allListNames = nameableList.getAllNames(); + allListNames[nameableList.getSelectedIndex()] = StringUtils.EMPTY; + String tempName = getEditingName(); + if (StringUtils.isEmpty(tempName)) { + String[] warning = new String[]{"NOT_NULL_Des", "Please_Rename"}; + String[] sign = new String[]{",", "!"}; + nameableList.stopEditing(); + JOptionPane.showMessageDialog(SwingUtilities.getWindowAncestor(ConnectionListPane.this), Inter.getLocText(warning, sign)); + setWarnigText(editingIndex); + isNamePermitted = false; + return; + } + if (!ComparatorUtils.equals(tempName, selectedName) + && isNameRepeted(new List[]{Arrays.asList(allListNames)}, tempName)) { + isNamePermitted = false; + nameableList.stopEditing(); + String message = Inter.getLocText(new String[]{"Utils-has_been_existed", "DashBoard-ConnectionList", "Please_Rename"}, new String[]{"", tempName + ",", "!"}); + JOptionPane.showMessageDialog(SwingUtilities.getWindowAncestor(ConnectionListPane.this), message); + setWarnigText(editingIndex); + } + if (isNamePermitted && !ComparatorUtils.equals(tempName, selectedName)) { + rename(selectedName, tempName); + } + + } + }); + } + + + protected void rename(String oldName, String newName) { + if (renameMap.containsKey(selectedName)) { + renameMap.remove(selectedName); + } + renameMap.put(selectedName, newName); + } + + /** + * 名字是否允许 + * + * @return 是/否 + */ + public boolean isNamePermitted() { + return isNamePermitted; + } + + /** + * 检查按钮可用状态 Check button enabled. + */ + public void checkButtonEnabled() { + super.checkButtonEnabled(); + isNamePermitted = !isContainsRename(); + } + + + public HashMap getRenameMap() { + return renameMap; + } + + /** + * 创建菜单项 + * + * @return 菜单项 + */ + public NameableCreator[] createNameableCreators() { + NameableCreator[] creators = new NameableCreator[]{new NameObjectCreator( + "JDBC", + "/com/fr/design/images/data/source/jdbcTableData.png", + JDBCDatabaseConnection.class, + DatabaseConnectionPane.JDBC.class + ), new NameObjectCreator( + "JNDI", + "/com/fr/design/images/data/source/jdbcTableData.png", + JNDIDatabaseConnection.class, + DatabaseConnectionPane.JNDI.class + )}; + Set pluginCreators = ExtraDesignClassManager.getInstance().getArray(ConnectionProvider.XML_TAG); + for (ConnectionProvider provider : pluginCreators) { + NameObjectCreator creator = new NameObjectCreator( + provider.nameForConnection(), + provider.iconPathForConnection(), + provider.classForConnection(), + provider.appearanceForConnection() + ); + creators = ArrayUtils.add(creators, creator); + } + + return creators; + } + + @Override + protected String title4PopupWindow() { + return TITLE_NAME; + } + + /** + * Populate. + * + * @param datasourceManager the new datasourceManager. + */ + public void populate(DatasourceManagerProvider datasourceManager) { + Iterator nameIt = datasourceManager.getConnectionNameIterator(); + + List nameObjectList = new ArrayList(); + while (nameIt.hasNext()) { + String name = nameIt.next(); + nameObjectList.add(new NameObject(name, datasourceManager.getConnection(name))); + } + this.populate(nameObjectList.toArray(new NameObject[nameObjectList.size()])); + + } + + /** + * Update. + */ + public void update(DatasourceManagerProvider datasourceManager) { + // Nameable[]居然不能强转成NameObject[],一定要这么写... + Nameable[] res = this.update(); + NameObject[] res_array = new NameObject[res.length]; + java.util.Arrays.asList(res).toArray(res_array); + + datasourceManager.clearAllConnection(); + + for (int i = 0; i < res_array.length; i++) { + NameObject nameObject = res_array[i]; + datasourceManager.putConnection(nameObject.getName(), (Connection) nameObject.getObject()); + } + } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/data/datapane/connect/ConnectionManagerPane.java b/designer_base/src/com/fr/design/data/datapane/connect/ConnectionManagerPane.java index ace69ff69..70d4933fa 100644 --- a/designer_base/src/com/fr/design/data/datapane/connect/ConnectionManagerPane.java +++ b/designer_base/src/com/fr/design/data/datapane/connect/ConnectionManagerPane.java @@ -1,78 +1,79 @@ -package com.fr.design.data.datapane.connect; - -import com.fr.base.FRContext; -import com.fr.design.gui.frpane.LoadingBasicPane; -import com.fr.design.gui.ilable.UILabel; -import com.fr.design.gui.itextfield.UITextField; -import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.file.DatasourceManagerProvider; -import com.fr.general.Inter; -import com.fr.stable.project.ProjectConstants; - -import javax.swing.*; -import java.awt.*; -import java.io.File; -import java.util.HashMap; - -public class ConnectionManagerPane extends LoadingBasicPane { - private UITextField connectionTextField; - private ConnectionListPane connectionListPane; - - protected void initComponents(JPanel container) { - container.setLayout(FRGUIPaneFactory.createBorderLayout()); - - JPanel connectionPathPane = FRGUIPaneFactory.createBorderLayout_L_Pane(); - container.add(connectionPathPane, BorderLayout.NORTH); - - connectionPathPane.setBorder(BorderFactory.createEmptyBorder(6, 2, 2, 2)); - - connectionPathPane.add(new UILabel(Inter.getLocText("FR-Designer_Save_Path") + ":"), BorderLayout.WEST); - this.connectionTextField = new UITextField(); - connectionPathPane.add(connectionTextField, BorderLayout.CENTER); - this.connectionTextField.setEditable(false); - connectionListPane = new ConnectionListPane(){ - protected void rename(String oldName,String newName) { - super.rename(oldName,newName); - renameConnection(oldName,newName); - } - }; - container.add(connectionListPane, BorderLayout.CENTER); - } - - @Override - protected String title4PopupWindow() { - return Inter.getLocText("Server-Define_Data_Connection"); - } - - public HashMap getRenameMap() { - return connectionListPane.getRenameMap(); - } - - public void populate(DatasourceManagerProvider datasourceManager) { - this.connectionTextField.setText(FRContext.getCurrentEnv().getPath() + File.separator + ProjectConstants.RESOURCES_NAME - + File.separator + datasourceManager.fileName()); - this.connectionListPane.populate(datasourceManager); - } - - public void update(DatasourceManagerProvider datasourceManager) { - this.connectionListPane.update(datasourceManager); - } - - /** - * 设置选中项 - * - * @param index 选中项的序列号 - */ - public void setSelectedIndex(int index) { - this.connectionListPane.setSelectedIndex(index); - } - - /** - * 名字是否允许 - * @return 允许返回true - */ - public boolean isNamePermitted() { - return connectionListPane.isNamePermitted(); - } - +package com.fr.design.data.datapane.connect; + +import com.fr.base.FRContext; +import com.fr.design.gui.frpane.LoadingBasicPane; +import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.itextfield.UITextField; +import com.fr.design.layout.FRGUIPaneFactory; +import com.fr.file.DatasourceManagerProvider; +import com.fr.general.Inter; +import com.fr.stable.project.ProjectConstants; + +import javax.swing.*; +import java.awt.*; +import java.io.File; +import java.util.HashMap; + +public class ConnectionManagerPane extends LoadingBasicPane implements ConnectionShowPane { + private UITextField connectionTextField; + private ConnectionListPane connectionListPane; + + protected void initComponents(JPanel container) { + container.setLayout(FRGUIPaneFactory.createBorderLayout()); + + JPanel connectionPathPane = FRGUIPaneFactory.createBorderLayout_L_Pane(); + container.add(connectionPathPane, BorderLayout.NORTH); + + connectionPathPane.setBorder(BorderFactory.createEmptyBorder(6, 2, 2, 2)); + + connectionPathPane.add(new UILabel(Inter.getLocText("FR-Designer_Save_Path") + ":"), BorderLayout.WEST); + this.connectionTextField = new UITextField(); + connectionPathPane.add(connectionTextField, BorderLayout.CENTER); + this.connectionTextField.setEditable(false); + connectionListPane = new ConnectionListPane() { + protected void rename(String oldName, String newName) { + super.rename(oldName, newName); + renameConnection(oldName, newName); + } + }; + container.add(connectionListPane, BorderLayout.CENTER); + } + + @Override + protected String title4PopupWindow() { + return Inter.getLocText("Server-Define_Data_Connection"); + } + + public HashMap getRenameMap() { + return connectionListPane.getRenameMap(); + } + + public void populate(DatasourceManagerProvider datasourceManager) { + this.connectionTextField.setText(FRContext.getCurrentEnv().getPath() + File.separator + ProjectConstants.RESOURCES_NAME + + File.separator + datasourceManager.fileName()); + this.connectionListPane.populate(datasourceManager); + } + + public void update(DatasourceManagerProvider datasourceManager) { + this.connectionListPane.update(datasourceManager); + } + + /** + * 设置选中项 + * + * @param index 选中项的序列号 + */ + public void setSelectedIndex(int index) { + this.connectionListPane.setSelectedIndex(index); + } + + /** + * 名字是否允许 + * + * @return 允许返回true + */ + public boolean isNamePermitted() { + return connectionListPane.isNamePermitted(); + } + } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/data/datapane/connect/ConnectionShowPane.java b/designer_base/src/com/fr/design/data/datapane/connect/ConnectionShowPane.java new file mode 100644 index 000000000..ce857ddc6 --- /dev/null +++ b/designer_base/src/com/fr/design/data/datapane/connect/ConnectionShowPane.java @@ -0,0 +1,15 @@ +package com.fr.design.data.datapane.connect; + +import com.fr.file.DatasourceManagerProvider; + +/** + * Created by yaoh.wu on 2017/4/22. + * 数据链接显示面板 + */ +public interface ConnectionShowPane { + void update(DatasourceManagerProvider datasourceManager); + + void populate(DatasourceManagerProvider datasourceManager); + + void setSelectedIndex(int index); +} diff --git a/designer/src/com/fr/design/mainframe/bbs/LoginDialog.java b/designer_base/src/com/fr/design/extra/LoginDialog.java similarity index 59% rename from designer/src/com/fr/design/mainframe/bbs/LoginDialog.java rename to designer_base/src/com/fr/design/extra/LoginDialog.java index e3013e487..32d4dca03 100644 --- a/designer/src/com/fr/design/mainframe/bbs/LoginDialog.java +++ b/designer_base/src/com/fr/design/extra/LoginDialog.java @@ -1,32 +1,29 @@ -package com.fr.design.mainframe.bbs; +package com.fr.design.extra; -import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.UIDialog; import com.fr.design.utils.gui.GUICoreUtils; -import com.fr.general.Inter; -import com.fr.general.SiteCenter; -import com.fr.general.http.HttpClient; -import com.fr.stable.StringUtils; +import com.fr.stable.StableUtils; import javax.swing.*; import java.awt.*; /** - * Created by zhaohehe on 16/7/26. + * Created by vito on 2017/5/5. */ public class LoginDialog extends UIDialog { private static final Dimension DEFAULT_SHOP = new Dimension(401, 201); - - public LoginDialog(Frame frame, BasicPane pane) { + + public LoginDialog(Frame frame, Component pane) { super(frame); - setUndecorated(true); + if (StableUtils.getMajorJavaVersion() == 8) { + setUndecorated(true); + } JPanel panel = (JPanel) getContentPane(); panel.setLayout(new BorderLayout()); add(pane, BorderLayout.CENTER); setSize(DEFAULT_SHOP); GUICoreUtils.centerWindow(this); setResizable(false); - setTitle(Inter.getLocText("FR-Designer-Plugin_Manager")); } @Override diff --git a/designer_base/src/com/fr/design/extra/LoginPane.java b/designer_base/src/com/fr/design/extra/LoginPane.java deleted file mode 100644 index 41a2ce8ce..000000000 --- a/designer_base/src/com/fr/design/extra/LoginPane.java +++ /dev/null @@ -1,152 +0,0 @@ -package com.fr.design.extra; - -import com.fr.base.FRContext; -import com.fr.design.DesignerEnvManager; -import com.fr.design.RestartHelper; -import com.fr.design.dialog.BasicPane; -import com.fr.design.gui.frpane.UITabbedPane; -import com.fr.general.ComparatorUtils; -import com.fr.general.IOUtils; -import com.fr.general.Inter; -import com.fr.general.SiteCenter; -import com.fr.general.http.HttpClient; -import com.fr.plugin.PluginVerifyException; -import com.fr.stable.StableUtils; - -import javax.swing.*; -import java.awt.*; -import java.io.File; -import java.net.HttpURLConnection; -import java.net.URL; -import java.util.concurrent.ExecutionException; - -/** - * Created by zhaohehe on 16/7/27. - */ -public class LoginPane extends BasicPane { - private static final String LATEST = "latest"; - - public LoginPane() { - setLayout(new BorderLayout()); - if (StableUtils.getMajorJavaVersion() == 8) { - String installHome; - if (StableUtils.isDebug()) { - URL url = ClassLoader.getSystemResource(""); - installHome = url.getPath(); - addPane(installHome); - } else { - installHome = StableUtils.getInstallHome(); - File file = new File(StableUtils.pathJoin(installHome, "scripts")); - if (!file.exists()) { - int rv = JOptionPane.showConfirmDialog( - this, - Inter.getLocText("FR-Designer-Plugin_Shop_Need_Install"), - Inter.getLocText("FR-Designer-Plugin_Warning"), - JOptionPane.OK_CANCEL_OPTION, - JOptionPane.INFORMATION_MESSAGE - ); - if (rv == JOptionPane.OK_OPTION) { - downloadShopScripts(); - } - } else { - addPane(installHome); - updateShopScripts(); - } - } - } else { - initTraditionalStore(); - } - } - - private void addPane(String installHome) { - LoginWebPane webPane = new LoginWebPane(new File(installHome).getAbsolutePath(),LoginPane.this); - add(webPane, BorderLayout.CENTER); - } - - @Override - protected String title4PopupWindow() { - return Inter.getLocText("FR-Designer-Plugin_Manager"); - } - - private void downloadShopScripts() { - new SwingWorker() { - @Override - protected Boolean doInBackground() throws Exception { - String id = "shop_scripts"; - String username = DesignerEnvManager.getEnvManager().getBBSName(); - String password = DesignerEnvManager.getEnvManager().getBBSPassword(); - try { - PluginHelper.downloadPluginFile(id, username, password, new Process() { - @Override - public void process(Double integer) { - } - }); - } catch (PluginVerifyException e) { - JOptionPane.showMessageDialog(LoginPane.this, e.getMessage(), Inter.getLocText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE); - return false; - } catch (Exception e) { - FRContext.getLogger().error(e.getMessage(), e); - return false; - } - return true; - } - - @Override - protected void done() { - try { - if (get()) { - IOUtils.unzip(new File(StableUtils.pathJoin(PluginHelper.DOWNLOAD_PATH, PluginHelper.TEMP_FILE)), StableUtils.getInstallHome()); - int rv = JOptionPane.showOptionDialog( - LoginPane.this, - Inter.getLocText("FR-Designer-Plugin_Shop_Installed"), - Inter.getLocText("FR-Designer-Plugin_Warning"), - JOptionPane.YES_NO_OPTION, - JOptionPane.INFORMATION_MESSAGE, - null, - new String[]{Inter.getLocText("FR-Designer-Basic_Restart_Designer"), Inter.getLocText("FR-Designer-Basic_Restart_Designer_Later")}, - null - ); - if (rv == JOptionPane.OK_OPTION) { - RestartHelper.restart(); - } - } - } catch (InterruptedException | ExecutionException e) { - FRContext.getLogger().error(e.getMessage(), e); - } - } - }.execute(); - } - - private void updateShopScripts() { - new SwingWorker() { - @Override - protected Void doInBackground() throws Exception { - HttpClient httpClient = new HttpClient(SiteCenter.getInstance().acquireUrlByKind("store.version") + "&version=" + PluginStoreConstants.VERSION); - if (httpClient.getResponseCode() == HttpURLConnection.HTTP_OK) { - if (!ComparatorUtils.equals(httpClient.getResponseText(), LATEST)) { - int rv = JOptionPane.showConfirmDialog( - LoginPane.this, - Inter.getLocText("FR-Designer-Plugin_Shop_Need_Update"), - Inter.getLocText("FR-Designer-Plugin_Warning"), - JOptionPane.OK_CANCEL_OPTION, - JOptionPane.INFORMATION_MESSAGE - ); - if (rv == JOptionPane.OK_OPTION) { - downloadShopScripts(); - } - } - } - return null; - } - }.execute(); - } - - private void initTraditionalStore() { - UITabbedPane tabbedPane = new UITabbedPane(); - add(tabbedPane, BorderLayout.CENTER); - PluginInstalledPane installedPane = new PluginInstalledPane(); - tabbedPane.addTab(installedPane.tabTitle(), installedPane); - tabbedPane.addTab(Inter.getLocText("FR-Designer-Plugin_Update"), new PluginUpdatePane(tabbedPane)); - tabbedPane.addTab(Inter.getLocText("FR-Designer-Plugin_All_Plugins"), new PluginFromStorePane(tabbedPane)); - } -} \ No newline at end of file diff --git a/designer_base/src/com/fr/design/extra/LoginWebBridge.java b/designer_base/src/com/fr/design/extra/LoginWebBridge.java index 41ed99beb..6592e1601 100644 --- a/designer_base/src/com/fr/design/extra/LoginWebBridge.java +++ b/designer_base/src/com/fr/design/extra/LoginWebBridge.java @@ -6,7 +6,6 @@ import com.fr.design.dialog.UIDialog; import com.fr.design.extra.ucenter.Client; import com.fr.design.extra.ucenter.XMLHelper; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.mainframe.DesignerContext; import com.fr.general.SiteCenter; import com.fr.general.http.HttpClient; import com.fr.json.JSONObject; @@ -14,10 +13,10 @@ import com.fr.stable.EncodeConstants; import com.fr.stable.StringUtils; import javafx.scene.web.WebEngine; -import java.io.UnsupportedEncodingException; -import java.net.URI; import javax.swing.*; import java.awt.*; +import java.io.UnsupportedEncodingException; +import java.net.URI; import java.net.URLEncoder; import java.util.HashMap; import java.util.LinkedList; @@ -47,50 +46,48 @@ public class LoginWebBridge { //用户名,密码为空 private static final String LOGIN_INFO_EMPTY = "-5"; private static final int TIME_OUT = 10000; + private static final String LOGIN_SUCCESS = "ok"; + private static final String LOGIN_FAILED = "failed"; - private static com.fr.design.extra.LoginWebBridge helper; + private static LoginWebBridge helper; + private UILabel pluginuiLabel; private UIDialog uiDialog; + private UIDialog qqDialog; private UILabel uiLabel; private String userName; - public int getMessageCount() { - return messageCount; - } - - /** - * 测试论坛网络连接 - * @return - */ - private boolean testConnection() { - HttpClient client = new HttpClient(SiteCenter.getInstance().acquireUrlByKind("bbs.test")); - return client.isServerAlive(); + public LoginWebBridge() { + String username = DesignerEnvManager.getEnvManager().getBBSName(); + setUserName(username, uiLabel); } - public static com.fr.design.extra.LoginWebBridge getHelper() { + public static LoginWebBridge getHelper() { if (helper != null) { return helper; } - synchronized (com.fr.design.extra.LoginWebBridge.class) { + synchronized (LoginWebBridge.class) { if (helper == null) { - helper = new com.fr.design.extra.LoginWebBridge(); + helper = new LoginWebBridge(); } return helper; } } - public static com.fr.design.extra.LoginWebBridge getHelper(WebEngine webEngine) { - getHelper(); - helper.setEngine(webEngine); - return helper; + public int getMessageCount() { + return messageCount; } - private WebEngine webEngine; + public void setUILabelInPlugin(UILabel uiLabel) { + this.pluginuiLabel = uiLabel; + } - public void setEngine(WebEngine webEngine) { - this.webEngine = webEngine; + public void setQqDialog(UIDialog qqDialog) { + closeQQWindow(); + this.qqDialog = qqDialog; } public void setDialogHandle(UIDialog uiDialog) { + closeWindow(); this.uiDialog = uiDialog; } @@ -98,50 +95,56 @@ public class LoginWebBridge { this.uiLabel = uiLabel; } - public LoginWebBridge() { - String username = DesignerEnvManager.getEnvManager().getBBSName(); - setUserName(username, uiLabel); - } - /** * 设置显示的用户名 + * * @param userName 登录用户名 - * @param label label显示 + * @param label label显示 */ public void setUserName(String userName, UILabel label) { if (uiLabel == null) { this.uiLabel = label; } - if(StringUtils.isEmpty(userName)){ + if (StringUtils.isEmpty(userName)) { return; } - if(!StringUtils.isEmpty(this.userName)){ + if (StringUtils.isNotEmpty(this.userName)) { updateMessageCount(); } this.userName = userName; } + /** + * 测试论坛网络连接 + * + * @return + */ + private boolean testConnection() { + HttpClient client = new HttpClient(SiteCenter.getInstance().acquireUrlByKind("bbs.test")); + return client.isServerAlive(); + } + /** * 定时取后台论坛消息 */ - public void updateMessageCount(){ + public void updateMessageCount() { //启动获取消息更新的线程 //登陆状态, 根据存起来的用户名密码, 每1分钟发起一次请求, 更新消息条数. Thread updateMessageThread = new Thread(new Runnable() { @Override public void run() { sleep(CHECK_MESSAGE_TIME); - while(StringUtils.isNotEmpty(DesignerEnvManager.getEnvManager().getBBSName())){ + while (StringUtils.isNotEmpty(DesignerEnvManager.getEnvManager().getBBSName())) { HashMap para = new HashMap<>(); int uid = DesignerEnvManager.getEnvManager().getBbsUid(); para.put("uid", String.valueOf(uid)); HttpClient getMessage = new HttpClient(SiteCenter.getInstance().acquireUrlByKind("bbs.message"), para); getMessage.asGet(); - if(getMessage.isServerAlive()){ + if (getMessage.isServerAlive()) { try { String res = getMessage.getResponseText(); if (res.equals(FAILED_MESSAGE_STATUS)) { - }else { + } else { JSONObject jo = new JSONObject(res); if (jo.getString("status").equals(SUCCESS_MESSAGE_STATUS)) { setMessageCount(Integer.parseInt(jo.getString("message"))); @@ -160,6 +163,7 @@ public class LoginWebBridge { /** * 设置获取的消息长度,并设置显示 + * * @param count */ public void setMessageCount(int count) { @@ -177,7 +181,7 @@ public class LoginWebBridge { uiLabel.setText(sb.toString()); } - private String encode(String str){ + private String encode(String str) { try { return URLEncoder.encode(str, EncodeConstants.ENCODING_UTF_8); } catch (UnsupportedEncodingException e) { @@ -185,7 +189,7 @@ public class LoginWebBridge { } } - private void sleep(long millis){ + private void sleep(long millis) { try { Thread.sleep(millis); } catch (InterruptedException e) { @@ -199,7 +203,7 @@ public class LoginWebBridge { public void registerHref() { try { Desktop.getDesktop().browse(new URI(SiteCenter.getInstance().acquireUrlByKind("bbs.register"))); - }catch (Exception e) { + } catch (Exception e) { FRContext.getLogger().info(e.getMessage()); } } @@ -210,13 +214,14 @@ public class LoginWebBridge { public void forgetHref() { try { Desktop.getDesktop().browse(new URI(SiteCenter.getInstance().acquireUrlByKind("bbs.reset"))); - }catch (Exception e) { + } catch (Exception e) { FRContext.getLogger().info(e.getMessage()); } } /** * 设计器端的用户登录 + * * @param username 用户名 * @param password 密码 * @return 登录信息标志 @@ -227,9 +232,10 @@ public class LoginWebBridge { /** * 插件管理的用户登录部分 + * * @param username 用户名 * @param password 密码 - * @param uiLabel 设计器端的label + * @param uiLabel 设计器端的label * @return 登录信息标志 */ public String pluginManageLogin(String username, String password, UILabel uiLabel) { @@ -238,9 +244,10 @@ public class LoginWebBridge { /** * 登录操作 + * * @param username 用户名 * @param password 密码 - * @param uiLabel 两边的label显示 + * @param uiLabel 两边的label显示 * @return 登录信息标志 */ public String login(String username, String password, UILabel uiLabel) { @@ -271,8 +278,8 @@ public class LoginWebBridge { /** * 更新后台的用户信息 + * * @param username 用户名 - * @param password 密码 */ public void updateUserInfo(String username) { this.userName = username; @@ -280,6 +287,7 @@ public class LoginWebBridge { /** * 关闭窗口并且重新赋值 + * * @param username */ public void loginSuccess(String username, UILabel uiLabel) { @@ -294,13 +302,7 @@ public class LoginWebBridge { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { - //弹出qq登录的窗口 - QQLoginPane managerPane = new QQLoginPane(); - UIDialog qqlog = new QQLoginDialog(DesignerContext.getDesignerFrame(),managerPane); - QQLoginWebBridge.getHelper().setDialogHandle(uiDialog); - QQLoginWebBridge.getHelper().setQQDialogHandle(qqlog); - QQLoginWebBridge.getHelper().setUILabel(uiLabel); - qqlog.setVisible(true); + WebViewDlgHelper.createQQLoginDialog(); } }); } @@ -326,12 +328,55 @@ public class LoginWebBridge { } else { return UNKNOWN_ERROR;//未知错误,-3 } - }else { + } else { return NET_FAILED; } - }catch (Exception e) { + } catch (Exception e) { FRContext.getLogger().info(e.getMessage()); } return UNKNOWN_ERROR; } + + /** + * 关闭QQ授权窗口 + */ + public void closeQQWindow() { + if (qqDialog != null) { + qqDialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); + qqDialog.setVisible(false); + } + } + + /** + * 获取用户信息 + * + * @param userInfo + */ + public void getLoginInfo(String userInfo) { + org.json.JSONObject jo = new org.json.JSONObject(userInfo); + String status = jo.get("status").toString(); + if (status.equals(LOGIN_SUCCESS)) { + String username = jo.get("username").toString(); + int uid = Integer.parseInt(jo.get("uid") == null ? "" : jo.get("uid").toString()); + closeWindow(); + closeQQWindow(); + pluginuiLabel.setText(username); + DesignerEnvManager.getEnvManager().setBBSName(username); + DesignerEnvManager.getEnvManager().setBbsUid(uid); + DesignerEnvManager.getEnvManager().setInShowBBsName(username); + } else if (status.equals(LOGIN_FAILED)) { + //账号没有QQ授权 + closeQQWindow(); + try { + Desktop.getDesktop().browse(new URI(SiteCenter.getInstance().acquireUrlByKind("QQ_binding"))); + } catch (Exception exp) { + } + } + } + + public void openUrlAtLocalWebBrowser(WebEngine eng, String url) { + if (url.indexOf("qqLogin.html") > 0) { + return; + } + } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/extra/LoginWebPane.java b/designer_base/src/com/fr/design/extra/LoginWebPane.java index b49db6ace..ee0a3275a 100644 --- a/designer_base/src/com/fr/design/extra/LoginWebPane.java +++ b/designer_base/src/com/fr/design/extra/LoginWebPane.java @@ -17,11 +17,7 @@ import javax.swing.*; */ public class LoginWebPane extends JFXPanel { - private WebEngine webEngine; - private LoginPane loginPane; - - public LoginWebPane(final String installHome,LoginPane loginPane) { - this.loginPane = loginPane; + public LoginWebPane(final String installHome) { Platform.setImplicitExit(false); Platform.runLater(new Runnable() { @Override @@ -30,7 +26,7 @@ public class LoginWebPane extends JFXPanel { Scene scene = new Scene(root); LoginWebPane.this.setScene(scene); WebView webView = new WebView(); - webEngine = webView.getEngine(); + WebEngine webEngine = webView.getEngine(); webEngine.load("file:///" + installHome + "/scripts/qqLogin/web/login.html"); webEngine.setOnAlert(new EventHandler>() { @Override @@ -39,17 +35,13 @@ public class LoginWebPane extends JFXPanel { } }); JSObject obj = (JSObject) webEngine.executeScript("window"); - obj.setMember("LoginHelper", LoginWebBridge.getHelper(webEngine)); + obj.setMember("LoginHelper", LoginWebBridge.getHelper()); webView.setContextMenuEnabled(false);//屏蔽右键 root.setCenter(webView); } }); } - public void setEngine(WebEngine webEngine) { - this.webEngine = webEngine; - } - private void showAlert(final String message) { SwingUtilities.invokeLater(new Runnable() { @Override diff --git a/designer_base/src/com/fr/design/extra/PluginWebBridge.java b/designer_base/src/com/fr/design/extra/PluginWebBridge.java index 12c3e85c4..f1759f016 100644 --- a/designer_base/src/com/fr/design/extra/PluginWebBridge.java +++ b/designer_base/src/com/fr/design/extra/PluginWebBridge.java @@ -136,6 +136,7 @@ public class PluginWebBridge { } public void setDialogHandle(UIDialog uiDialog) { + closeWindow(); this.uiDialog = uiDialog; } @@ -367,6 +368,7 @@ public class PluginWebBridge { /** * 获取系统登录的用户名 + * * @param callback */ public void getLoginInfo(final JSObject callback) { @@ -381,7 +383,7 @@ public class PluginWebBridge { try { String loginUrl = SiteCenter.getInstance().acquireUrlByKind("bbs.default"); Desktop.getDesktop().browse(new URI(loginUrl)); - }catch (Exception exp) { + } catch (Exception exp) { FRContext.getLogger().info(exp.getMessage()); } } @@ -493,13 +495,14 @@ public class PluginWebBridge { /*-------------------------------登录部分的处理----------------------------------*/ + /** * 注册页面 */ public void registerHref() { try { Desktop.getDesktop().browse(new URI(SiteCenter.getInstance().acquireUrlByKind("bbs.register"))); - }catch (Exception e) { + } catch (Exception e) { FRContext.getLogger().info(e.getMessage()); } } @@ -510,7 +513,7 @@ public class PluginWebBridge { public void forgetHref() { try { Desktop.getDesktop().browse(new URI(SiteCenter.getInstance().acquireUrlByKind("bbs.reset"))); - }catch (Exception e) { + } catch (Exception e) { FRContext.getLogger().info(e.getMessage()); } } @@ -521,6 +524,7 @@ public class PluginWebBridge { /** * 登录操作的回调 + * * @param username * @param password * @return diff --git a/designer_base/src/com/fr/design/extra/QQLoginDialog.java b/designer_base/src/com/fr/design/extra/QQLoginDialog.java index 1a6416174..71224c3a8 100644 --- a/designer_base/src/com/fr/design/extra/QQLoginDialog.java +++ b/designer_base/src/com/fr/design/extra/QQLoginDialog.java @@ -1,6 +1,5 @@ package com.fr.design.extra; -import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.UIDialog; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.Inter; @@ -14,7 +13,7 @@ import java.awt.*; public class QQLoginDialog extends UIDialog { private static final Dimension DEFAULT_SHOP = new Dimension(700, 500); - public QQLoginDialog(Frame frame, BasicPane pane) { + public QQLoginDialog(Frame frame, Component pane) { super(frame); setUndecorated(true); JPanel panel = (JPanel) getContentPane(); @@ -24,7 +23,6 @@ public class QQLoginDialog extends UIDialog { GUICoreUtils.centerWindow(this); setResizable(false); setTitle(Inter.getLocText("FR-Designer-Plugin_Manager")); - } @Override diff --git a/designer_base/src/com/fr/design/extra/QQLoginPane.java b/designer_base/src/com/fr/design/extra/QQLoginPane.java deleted file mode 100644 index 2bbdd7e53..000000000 --- a/designer_base/src/com/fr/design/extra/QQLoginPane.java +++ /dev/null @@ -1,145 +0,0 @@ -package com.fr.design.extra; - -import com.fr.base.FRContext; -import com.fr.design.DesignerEnvManager; -import com.fr.design.RestartHelper; -import com.fr.design.dialog.BasicPane; -import com.fr.general.ComparatorUtils; -import com.fr.general.IOUtils; -import com.fr.general.Inter; -import com.fr.general.SiteCenter; -import com.fr.general.http.HttpClient; -import com.fr.plugin.PluginVerifyException; -import com.fr.stable.StableUtils; - -import javax.swing.*; -import java.awt.*; -import java.io.File; -import java.net.HttpURLConnection; -import java.net.URL; -import java.util.concurrent.ExecutionException; - -/** - * Created by zhaohehe on 16/7/28. - */ -public class QQLoginPane extends BasicPane { - private static final String LATEST = "latest"; - - public QQLoginPane() { - setLayout(new BorderLayout()); - if (StableUtils.getMajorJavaVersion() == 8) { - String installHome; - if (StableUtils.isDebug()) { - URL url = ClassLoader.getSystemResource(""); - installHome = url.getPath(); - addPane(installHome); - } else { - installHome = StableUtils.getInstallHome(); - File file = new File(StableUtils.pathJoin(installHome, "scripts")); - if (!file.exists()) { - int rv = JOptionPane.showConfirmDialog( - this, - Inter.getLocText("FR-Designer-Plugin_Shop_Need_Install"), - Inter.getLocText("FR-Designer-Plugin_Warning"), - JOptionPane.OK_CANCEL_OPTION, - JOptionPane.INFORMATION_MESSAGE - ); - if (rv == JOptionPane.OK_OPTION) { - downloadShopScripts(); - } - } else { - addPane(installHome); - updateShopScripts(); - } - } - } else { - } - } - - private void addPane(String installHome) { - QQLoginWebPane webPane = new QQLoginWebPane(new File(installHome).getAbsolutePath()); - add(webPane, BorderLayout.CENTER); - } - - - @Override - protected String title4PopupWindow() { - return Inter.getLocText("FR-Designer-Plugin_Manager"); - } - - - private void downloadShopScripts() { - new SwingWorker() { - @Override - protected Boolean doInBackground() throws Exception { - String id = "shop_scripts"; - String username = DesignerEnvManager.getEnvManager().getBBSName(); - String password = DesignerEnvManager.getEnvManager().getBBSPassword(); - try { - PluginHelper.downloadPluginFile(id, username, password, new Process() { - @Override - public void process(Double integer) { - } - }); - } catch (PluginVerifyException e) { - JOptionPane.showMessageDialog(QQLoginPane.this, e.getMessage(), Inter.getLocText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE); - return false; - } catch (Exception e) { - FRContext.getLogger().error(e.getMessage(), e); - return false; - } - return true; - } - - @Override - protected void done() { - - try { - if (get()) { - IOUtils.unzip(new File(StableUtils.pathJoin(PluginHelper.DOWNLOAD_PATH, PluginHelper.TEMP_FILE)), StableUtils.getInstallHome()); - int rv = JOptionPane.showOptionDialog( - QQLoginPane.this, - Inter.getLocText("FR-Designer-Plugin_Shop_Installed"), - Inter.getLocText("FR-Designer-Plugin_Warning"), - JOptionPane.YES_NO_OPTION, - JOptionPane.INFORMATION_MESSAGE, - null, - new String[]{Inter.getLocText("FR-Designer-Basic_Restart_Designer"), Inter.getLocText("FR-Designer-Basic_Restart_Designer_Later")}, - null - ); - if (rv == JOptionPane.OK_OPTION) { - RestartHelper.restart(); - } - } - } catch (InterruptedException | ExecutionException e) { - FRContext.getLogger().error(e.getMessage(), e); - } - - } - }.execute(); - } - - private void updateShopScripts() { - new SwingWorker() { - @Override - protected Void doInBackground() throws Exception { - HttpClient httpClient = new HttpClient(SiteCenter.getInstance().acquireUrlByKind("store.version") + "&version=" + PluginStoreConstants.VERSION); - if (httpClient.getResponseCode() == HttpURLConnection.HTTP_OK) { - if (!ComparatorUtils.equals(httpClient.getResponseText(), LATEST)) { - int rv = JOptionPane.showConfirmDialog( - QQLoginPane.this, - Inter.getLocText("FR-Designer-Plugin_Shop_Need_Update"), - Inter.getLocText("FR-Designer-Plugin_Warning"), - JOptionPane.OK_CANCEL_OPTION, - JOptionPane.INFORMATION_MESSAGE - ); - if (rv == JOptionPane.OK_OPTION) { - downloadShopScripts(); - } - } - } - return null; - } - }.execute(); - } -} \ No newline at end of file diff --git a/designer_base/src/com/fr/design/extra/QQLoginWebBridge.java b/designer_base/src/com/fr/design/extra/QQLoginWebBridge.java deleted file mode 100644 index d0bcc27e1..000000000 --- a/designer_base/src/com/fr/design/extra/QQLoginWebBridge.java +++ /dev/null @@ -1,131 +0,0 @@ -package com.fr.design.extra; - -import com.fr.design.DesignerEnvManager; -import com.fr.design.dialog.UIDialog; -import com.fr.design.gui.ilable.UILabel; -import com.fr.general.FRLogger; -import com.fr.general.SiteCenter; -import javafx.scene.web.WebEngine; -import org.json.JSONObject; -import netscape.javascript.JSObject; - -import javax.swing.*; -import java.awt.*; -import java.io.IOException; -import java.net.URI; - -/** - * Created by lp on 2016/8/10. - */ -public class QQLoginWebBridge { - - private static com.fr.design.extra.QQLoginWebBridge helper; - private WebEngine webEngine; - private static String LOGINSUCCESS = "ok"; - private static String LOGINFAILED = "failed"; - private UIDialog uiDialog; - private UILabel uiLabel; - private UILabel pluginuiLabel; - private UIDialog qqDialog; - private String username; - - - private QQLoginWebBridge() { - } - - public static com.fr.design.extra.QQLoginWebBridge getHelper() { - if (helper != null) { - return helper; - } - synchronized (com.fr.design.extra.QQLoginWebBridge.class) { - if (helper == null) { - helper = new com.fr.design.extra.QQLoginWebBridge(); - } - return helper; - } - } - - public void setEngine(WebEngine webEngine) { - this.webEngine = webEngine; - } - - public void setDialogHandle(UIDialog uiDialog) { - this.uiDialog = uiDialog; - } - - public void setQQDialogHandle(UIDialog uiDialog) { - this.qqDialog = uiDialog; - } - - public void setUILabel(UILabel uiLabel) { - this.uiLabel = uiLabel; - } - - public void setUILabelInPlugin(UILabel uiLabel) { - this.pluginuiLabel = uiLabel; - } - - public void setLoginlabel() { - username = DesignerEnvManager.getEnvManager().getBBSName(); - } - - private static JSObject window; - - public static com.fr.design.extra.QQLoginWebBridge getHelper(WebEngine webEngine) { - getHelper(); - helper.setEngine(webEngine); - return helper; - } - - /** - * 关闭QQ授权窗口 - */ - public void closeQQWindow() { - if (qqDialog != null) { - qqDialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); - qqDialog.setVisible(false); - } - } - - /** - * 关闭父窗口 - */ - public void closeParentWindow() { - if (uiDialog != null) { - uiDialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); - uiDialog.setVisible(false); - } - } - - /** - * 获取用户信息 - * @param userInfo - */ - public void getLoginInfo(String userInfo) { - JSONObject jo = new JSONObject(userInfo); - String status = jo.get("status").toString(); - if (status.equals(LOGINSUCCESS)) { - String username = jo.get("username").toString(); - int uid = Integer.parseInt(jo.get("uid") == null ? "" : jo.get("uid").toString()); - closeQQWindow(); - closeParentWindow(); - pluginuiLabel.setText(username); - DesignerEnvManager.getEnvManager().setBBSName(username); - DesignerEnvManager.getEnvManager().setBbsUid(uid); - DesignerEnvManager.getEnvManager().setInShowBBsName(username); - }else if (status.equals(LOGINFAILED)){ - //账号没有QQ授权 - closeQQWindow(); - try { - Desktop.getDesktop().browse(new URI(SiteCenter.getInstance().acquireUrlByKind("QQ_binding"))); - }catch (Exception exp) { - } - } - } - - public void openUrlAtLocalWebBrowser(WebEngine eng, String url) { - if (url.indexOf("qqLogin.html") > 0) { - return; - } - } -} diff --git a/designer_base/src/com/fr/design/extra/QQLoginWebPane.java b/designer_base/src/com/fr/design/extra/QQLoginWebPane.java index 5861bb9ed..f3c96d219 100644 --- a/designer_base/src/com/fr/design/extra/QQLoginWebPane.java +++ b/designer_base/src/com/fr/design/extra/QQLoginWebPane.java @@ -40,6 +40,7 @@ import java.awt.*; public class QQLoginWebPane extends JFXPanel { private WebEngine webEngine; + private String url; private static JSObject window; @@ -50,7 +51,9 @@ public class QQLoginWebPane extends JFXPanel { private static int DEFAULT_CONFIRM_HEIGHT = 160; private static int DEFAULT_OFFEST = 20; - class Delta { double x, y; } + class Delta { + double x, y; + } public QQLoginWebPane(final String installHome) { Platform.setImplicitExit(false); @@ -62,7 +65,8 @@ public class QQLoginWebPane extends JFXPanel { QQLoginWebPane.this.setScene(scene); final WebView webView = new WebView(); webEngine = webView.getEngine(); - webEngine.load("file:///" + installHome + "/scripts/qqLogin/web/qqLogin.html"); + url = "file:///" + installHome + "/scripts/qqLogin/web/qqLogin.html"; + webEngine.load(url); final Stage primaryStage = new Stage(); @@ -76,51 +80,56 @@ public class QQLoginWebPane extends JFXPanel { primaryStage.setX(0); primaryStage.setY(Screen.getPrimary().getBounds().getHeight() + DEFAULT_PRIMARYSTAGE_HEIGHT); primaryStage.show(); - }catch (Exception e) { + } catch (Exception e) { FRContext.getLogger().info(e.getMessage()); } - - webView.getEngine().setConfirmHandler(new Callback() { - @Override public Boolean call(String msg) { - Boolean confirmed = confirm(primaryStage, msg, installHome, webView); - return confirmed; - } - }); - - webEngine.locationProperty().addListener(new ChangeListener() { - @Override - public void changed(ObservableValue observable, final String oldValue, String newValue) { - disableLink(webEngine); - // webView好像默认以手机版显示网页,浏览器里过滤掉这个跳转 - if (ComparatorUtils.equals(newValue, "file:///" + installHome + "/scripts/qqLogin/web/qqLogin.html") || ComparatorUtils.equals(newValue, SiteCenter.getInstance().acquireUrlByKind("bbs.mobile"))) { - return; - } - QQLoginWebBridge.getHelper().openUrlAtLocalWebBrowser(webEngine, newValue); - } - }); - webEngine.setOnAlert(new EventHandler>() { + webEngine.setConfirmHandler(new Callback() { @Override - public void handle(WebEvent event) { - showAlert(event.getData()); + public Boolean call(String msg) { + Boolean confirmed = confirm(primaryStage, msg, webView); + return confirmed; } }); - webEngine.getLoadWorker().stateProperty().addListener( - new ChangeListener() { - public void changed(ObservableValue ov, Worker.State oldState, Worker.State newState) { - if (newState == Worker.State.SUCCEEDED) { - window = (JSObject) webEngine.executeScript("window"); - window.setMember("QQLoginHelper", QQLoginWebBridge.getHelper(webEngine)); - } - } - } - ); - + configWebEngine(); webView.setContextMenuEnabled(false);//屏蔽右键 root.setCenter(webView); } }); } + private void configWebEngine() { + + webEngine.locationProperty().addListener(new ChangeListener() { + @Override + public void changed(ObservableValue observable, final String oldValue, String newValue) { + disableLink(webEngine); + // webView好像默认以手机版显示网页,浏览器里过滤掉这个跳转 + if (ComparatorUtils.equals(newValue, url) || ComparatorUtils.equals(newValue, SiteCenter.getInstance().acquireUrlByKind("bbs.mobile"))) { + return; + } + LoginWebBridge.getHelper().openUrlAtLocalWebBrowser(webEngine, newValue); + } + }); + + webEngine.setOnAlert(new EventHandler>() { + @Override + public void handle(WebEvent event) { + showAlert(event.getData()); + } + }); + + webEngine.getLoadWorker().stateProperty().addListener( + new ChangeListener() { + public void changed(ObservableValue ov, Worker.State oldState, Worker.State newState) { + if (newState == Worker.State.SUCCEEDED) { + window = (JSObject) webEngine.executeScript("window"); + window.setMember("QQLoginHelper", LoginWebBridge.getHelper()); + } + } + } + ); + } + private void showAlert(final String message) { SwingUtilities.invokeLater(new Runnable() { @Override @@ -138,7 +147,7 @@ public class QQLoginWebPane extends JFXPanel { @Override public void run() { eng.executeScript("location.reload()"); - QQLoginWebBridge.getHelper().closeQQWindow(); + LoginWebBridge.getHelper().closeQQWindow(); } }); } catch (Exception e) { @@ -146,12 +155,12 @@ public class QQLoginWebPane extends JFXPanel { } } - private Boolean confirm(final Stage parent, String msg, final String installHome,final WebView webView) { + private Boolean confirm(final Stage parent, String msg, final WebView webView) { final BooleanProperty confirmationResult = new SimpleBooleanProperty(); // initialize the confirmation dialog final Stage dialog = new Stage(StageStyle.UTILITY); - dialog.setX(Toolkit.getDefaultToolkit().getScreenSize().getWidth()/2 - DEFAULT_CONFIRM_WIDTH / 2 + DEFAULT_OFFEST); - dialog.setY(Toolkit.getDefaultToolkit().getScreenSize().getHeight()/2 + DEFAULT_OFFEST); + dialog.setX(Toolkit.getDefaultToolkit().getScreenSize().getWidth() / 2 - DEFAULT_CONFIRM_WIDTH / 2 + DEFAULT_OFFEST); + dialog.setY(Toolkit.getDefaultToolkit().getScreenSize().getHeight() / 2 + DEFAULT_OFFEST); dialog.setHeight(DEFAULT_CONFIRM_HEIGHT); dialog.setWidth(DEFAULT_CONFIRM_WIDTH); dialog.setIconified(false); @@ -162,7 +171,8 @@ public class QQLoginWebPane extends JFXPanel { HBoxBuilder.create().styleClass("modal-dialog").children( LabelBuilder.create().text(msg).build(), ButtonBuilder.create().text(Inter.getLocText("FR-Designer-BBSLogin_Switch-Account")).defaultButton(true).onAction(new EventHandler() { - @Override public void handle(ActionEvent actionEvent) { + @Override + public void handle(ActionEvent actionEvent) { // take action and close the dialog. confirmationResult.set(true); webView.getEngine().reload(); @@ -170,7 +180,8 @@ public class QQLoginWebPane extends JFXPanel { } }).build(), ButtonBuilder.create().text(Inter.getLocText("FR-Engine_Cancel")).cancelButton(true).onAction(new EventHandler() { - @Override public void handle(ActionEvent actionEvent) { + @Override + public void handle(ActionEvent actionEvent) { // abort action and close the dialog. confirmationResult.set(false); dialog.close(); @@ -180,35 +191,39 @@ public class QQLoginWebPane extends JFXPanel { , Color.TRANSPARENT ) ); + configDrag(dialog); + // style and show the dialog. + dialog.getScene().getStylesheets().add(getClass().getResource("modal-dialog.css").toExternalForm()); + dialog.setOnCloseRequest(new EventHandler() { + @Override + public void handle(WindowEvent event) { + event.consume(); + dialog.close(); + } + }); + dialog.showAndWait(); + return confirmationResult.get(); + } + + private void configDrag(final Stage dialog) { // allow the dialog to be dragged around. final Node root = dialog.getScene().getRoot(); final Delta dragDelta = new Delta(); root.setOnMousePressed(new EventHandler() { - @Override public void handle(MouseEvent mouseEvent) { + @Override + public void handle(MouseEvent mouseEvent) { // record a delta distance for the drag and drop operation. dragDelta.x = dialog.getX() - mouseEvent.getScreenX(); dragDelta.y = dialog.getY() - mouseEvent.getScreenY(); } }); root.setOnMouseDragged(new EventHandler() { - @Override public void handle(MouseEvent mouseEvent) { + @Override + public void handle(MouseEvent mouseEvent) { dialog.setX(mouseEvent.getScreenX() + dragDelta.x); dialog.setY(mouseEvent.getScreenY() + dragDelta.y); } }); - // style and show the dialog. - dialog.getScene().getStylesheets().add(getClass().getResource("modal-dialog.css").toExternalForm()); - - dialog.setOnCloseRequest(new EventHandler(){ - @Override - public void handle(WindowEvent event){ - event.consume(); - dialog.close(); - } - }); - - dialog.showAndWait(); - return confirmationResult.get(); } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/extra/ReuseWebBridge.java b/designer_base/src/com/fr/design/extra/ReuseWebBridge.java deleted file mode 100644 index 413f86275..000000000 --- a/designer_base/src/com/fr/design/extra/ReuseWebBridge.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.fr.design.extra; - -import javafx.scene.web.WebEngine; - -/** - * Created by vito on 2016/9/28. - */ -public class ReuseWebBridge { - public static ReuseWebBridge helper; - private WebEngine webEngine; - - public static ReuseWebBridge getHelper() { - if (helper != null) { - return helper; - } - synchronized (ReuseWebBridge.class) { - if (helper == null) { - helper = new ReuseWebBridge(); - } - return helper; - } - } - - public static ReuseWebBridge getHelper(WebEngine webEngine) { - getHelper(); - helper.setEngine(webEngine); - return helper; - } - - private ReuseWebBridge() { - } - - public void setEngine(WebEngine webEngine) { - this.webEngine = webEngine; - } -} diff --git a/designer_base/src/com/fr/design/extra/ReuseWebPane.java b/designer_base/src/com/fr/design/extra/ReuseWebPane.java deleted file mode 100644 index b48957e0f..000000000 --- a/designer_base/src/com/fr/design/extra/ReuseWebPane.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.fr.design.extra; - -import javafx.application.Platform; -import javafx.embed.swing.JFXPanel; -import javafx.event.EventHandler; -import javafx.scene.Scene; -import javafx.scene.layout.BorderPane; -import javafx.scene.web.WebEngine; -import javafx.scene.web.WebEvent; -import javafx.scene.web.WebView; -import netscape.javascript.JSObject; - -import javax.swing.*; - -/** - * Created by vito on 2016/9/28. - */ -public class ReuseWebPane extends JFXPanel { - private WebEngine webEngine; - - public ReuseWebPane(final String mainJs) { - Platform.setImplicitExit(false); - Platform.runLater(new Runnable() { - @Override - public void run() { - BorderPane root = new BorderPane(); - Scene scene = new Scene(root); - ReuseWebPane.this.setScene(scene); - WebView webView = new WebView(); - webEngine = webView.getEngine(); - webEngine.load("file:///" + mainJs); - webEngine.setOnAlert(new EventHandler>() { - @Override - public void handle(WebEvent event) { - showAlert(event.getData()); - } - }); - JSObject obj = (JSObject) webEngine.executeScript("window"); - obj.setMember("ReuseHelper", ReuseWebBridge.getHelper(webEngine)); - webView.setContextMenuEnabled(false);//屏蔽右键 - root.setCenter(webView); - } - }); - } - - private void showAlert(final String message) { - SwingUtilities.invokeLater(new Runnable() { - @Override - public void run() { - JOptionPane.showMessageDialog(ReuseWebPane.this, message); - } - }); - } -} diff --git a/designer_base/src/com/fr/design/extra/WebDialog.java b/designer_base/src/com/fr/design/extra/WebViewDlgHelper.java similarity index 75% rename from designer_base/src/com/fr/design/extra/WebDialog.java rename to designer_base/src/com/fr/design/extra/WebViewDlgHelper.java index ed7d73563..481498fc8 100644 --- a/designer_base/src/com/fr/design/extra/WebDialog.java +++ b/designer_base/src/com/fr/design/extra/WebViewDlgHelper.java @@ -24,14 +24,14 @@ import java.util.concurrent.ExecutionException; /** * Created by vito on 2016/9/28. */ -public class WebDialog { +public class WebViewDlgHelper { private static final String LATEST = "latest"; private static final String SHOP_SCRIPTS = "shop_scripts"; private static final int VERSION_8 = 8; + // 调试时,使用installHome = ClassLoader.getSystemResource("").getPath()代替下面 private static String installHome = StableUtils.getInstallHome(); public static void createPluginDialog() { - UIDialog dlg; if (StableUtils.getMajorJavaVersion() >= VERSION_8) { String relativePath = "/scripts/store/web/index.html"; String mainJsPath = StableUtils.pathJoin(new File(installHome).getAbsolutePath(), relativePath); @@ -49,10 +49,7 @@ public class WebDialog { } } else { updateShopScripts(SHOP_SCRIPTS); - BasicPane managerPane = new ShopManagerPane(new PluginWebPane(mainJsPath)); - dlg = new ShopDialog(DesignerContext.getDesignerFrame(), managerPane); - PluginWebBridge.getHelper().setDialogHandle(dlg); - dlg.setVisible(true); + showPluginDlg(mainJsPath); } } else { BasicPane traditionalStorePane = new BasicPane() { @@ -63,21 +60,62 @@ public class WebDialog { }; traditionalStorePane.setLayout(new BorderLayout()); traditionalStorePane.add(initTraditionalStore(), BorderLayout.CENTER); - dlg = new ShopDialog(DesignerContext.getDesignerFrame(), traditionalStorePane); + UIDialog dlg = new ShopDialog(DesignerContext.getDesignerFrame(), traditionalStorePane); dlg.setVisible(true); } } /** * 以关键词打开设计器商店 - *

- * // * @param keyword 关键词 + * + * @param keyword 关键词 */ - public void createPluginDialog(String keyword) { + public static void createPluginDialog(String keyword) { PluginWebBridge.getHelper().openWithSearch(keyword); createPluginDialog(); } + public static void createLoginDialog() { + if (StableUtils.getMajorJavaVersion() == VERSION_8) { + File file = new File(StableUtils.pathJoin(installHome, "scripts")); + if (!file.exists()) { + int rv = JOptionPane.showConfirmDialog( + null, + Inter.getLocText("FR-Designer-Plugin_Shop_Need_Install"), + Inter.getLocText("FR-Designer-Plugin_Warning"), + JOptionPane.OK_CANCEL_OPTION, + JOptionPane.INFORMATION_MESSAGE + ); + if (rv == JOptionPane.OK_OPTION) { + downloadShopScripts(SHOP_SCRIPTS); + } + } else { + showLoginDlg(); + updateShopScripts(SHOP_SCRIPTS); + } + } + } + + public static void createQQLoginDialog() { + QQLoginWebPane webPane = new QQLoginWebPane(new File(installHome).getAbsolutePath()); + UIDialog qqlog = new QQLoginDialog(DesignerContext.getDesignerFrame(), webPane); + LoginWebBridge.getHelper().setQqDialog(qqlog); + qqlog.setVisible(true); + } + + private static void showPluginDlg(String mainJsPath) { + BasicPane managerPane = new ShopManagerPane(new PluginWebPane(mainJsPath)); + UIDialog dlg = new ShopDialog(DesignerContext.getDesignerFrame(), managerPane); + PluginWebBridge.getHelper().setDialogHandle(dlg); + dlg.setVisible(true); + } + + private static void showLoginDlg() { + LoginWebPane webPane = new LoginWebPane(new File(installHome).getAbsolutePath()); + UIDialog qqdlg = new LoginDialog(DesignerContext.getDesignerFrame(), webPane); + LoginWebBridge.getHelper().setDialogHandle(qqdlg); + qqdlg.setVisible(true); + } private static Component initTraditionalStore() { UITabbedPane tabbedPane = new UITabbedPane(); diff --git a/designer_base/src/com/fr/design/formula/VariableResolverAdapter.java b/designer_base/src/com/fr/design/formula/VariableResolverAdapter.java index eb80600ac..623b1cbf4 100644 --- a/designer_base/src/com/fr/design/formula/VariableResolverAdapter.java +++ b/designer_base/src/com/fr/design/formula/VariableResolverAdapter.java @@ -4,12 +4,16 @@ import com.fr.base.ConfigManager; import com.fr.base.Parameter; import com.fr.design.DesignModelAdapter; import com.fr.base.ConfigManagerProvider; +import com.fr.plugin.ExtraClassManager; import com.fr.script.ScriptConstants; +import com.fr.stable.ArrayUtils; import com.fr.stable.Constants; +import com.fr.stable.fun.BuiltInParametersProvider; import com.fr.stable.script.CalculatorProvider; import java.util.ArrayList; import java.util.List; +import java.util.Set; public abstract class VariableResolverAdapter implements VariableResolver { private static final int TABLE_DATA_PARA = 0; @@ -21,7 +25,7 @@ public abstract class VariableResolverAdapter implements VariableResolver { * @return 内置参数 */ public String[] resolveCurReportVariables() { - return new String[] { ScriptConstants.SUMMARY_TAG + "page_number", + String [] variables = new String[] { ScriptConstants.SUMMARY_TAG + "page_number", ScriptConstants.SUMMARY_TAG + "totalPage_number", // 下面是权限相关的参数 ScriptConstants.DETAIL_TAG + Constants.P.PRIVILEGE_USERNAME, ScriptConstants.DETAIL_TAG + Constants.P.PRIVILEGE_AUTHORITY, @@ -32,6 +36,13 @@ public abstract class VariableResolverAdapter implements VariableResolver { CalculatorProvider.REPORT_NAME, CalculatorProvider.FORMLET_NAME, CalculatorProvider.SERVLET_URL, CalculatorProvider.SERVER_SCHEMA, CalculatorProvider.SERVER_NAME, CalculatorProvider.SERVER_PORT, CalculatorProvider.SERVER_URL, CalculatorProvider.CONTEXT_PATH, CalculatorProvider.SESSION_ID }; + Set set = ExtraClassManager.getInstance().getArray(BuiltInParametersProvider.XML_TAG); + for (BuiltInParametersProvider provider : set) { + return (String[]) ArrayUtils.addAll(variables, new String []{ + ScriptConstants.DETAIL_TAG + provider.getParametersName() + }); + } + return variables; } private Parameter[] getCurrentModeParameters(int type) { diff --git a/designer_base/src/com/fr/design/gui/style/BorderPane.java b/designer_base/src/com/fr/design/gui/style/BorderPane.java index 60989aedd..cb37f1c1a 100644 --- a/designer_base/src/com/fr/design/gui/style/BorderPane.java +++ b/designer_base/src/com/fr/design/gui/style/BorderPane.java @@ -51,34 +51,16 @@ public class BorderPane extends AbstractBasicStylePane { } protected void initComponents() { - topToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/top.png")); - leftToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/left.png")); - bottomToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/bottom.png")); - rightToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/right.png")); - horizontalToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/horizontal.png")); - verticalToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/vertical.png")); - this.currentLineCombo = new LineComboBox(CoreConstants.UNDERLINE_STYLE_ARRAY); - this.currentLineColorPane = new NewColorSelectBox(100); - + initButtonsWithIcon(); this.setLayout(new BorderLayout(0, 6)); - - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - - double[] columnSize1 = {p, f}; - double[] rowSize1 = {p, p}; - - + double p = TableLayout.PREFERRED, f = TableLayout.FILL; + double[] columnSize1 = {p, f}, rowSize1 = {p, p}; Component[][] components1 = new Component[][]{ - new Component[]{new UILabel(Inter.getLocText("Style") + ":"), currentLineCombo}, - new Component[]{new UILabel(Inter.getLocText("Color") + ":"), currentLineColorPane}, + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Style") + ":"), currentLineCombo}, + new Component[]{new UILabel(Inter.getLocText("FR-Designer_Color") + ":"), currentLineColorPane}, }; - JPanel northPane = TableLayoutHelper.createTableLayoutPane(components1, rowSize1, columnSize1); - - - double[] columnSize2 = {p, f}; - double[] rowSize2 = {p, p}; + double[] columnSize2 = {p, f}, rowSize2 = {p, p}; JPanel externalPane = new JPanel(new GridLayout(0, 4)); externalPane.add(topToggleButton); externalPane.add(leftToggleButton); @@ -87,23 +69,15 @@ public class BorderPane extends AbstractBasicStylePane { JPanel insidePane = new JPanel(new GridLayout(0, 2)); insidePane.add(horizontalToggleButton); insidePane.add(verticalToggleButton); - - Component[][] components2 = new Component[][]{ new Component[]{outerToggleButton = new UIToggleButton(BaseUtils.readIcon("com/fr/design/images/m_format/out.png")), innerToggleButton = new UIToggleButton(BaseUtils.readIcon("com/fr/design/images/m_format/in.png"))}, new Component[]{externalPane, insidePane,} }; JPanel centerPane = TableLayoutHelper.createTableLayoutPane(components2, rowSize2, columnSize2); - this.setLayout(new BorderLayout(0, 6)); this.add(northPane, BorderLayout.NORTH); this.add(centerPane, BorderLayout.CENTER); - - - this.currentLineColorPane.setSelectObject(Color.BLACK); - outerToggleButton.addChangeListener(new ChangeListener() { - @Override public void stateChanged(ChangeEvent e) { boolean value = outerToggleButton.isSelected(); @@ -113,9 +87,7 @@ public class BorderPane extends AbstractBasicStylePane { rightToggleButton.setSelected(value); } }); - innerToggleButton.addChangeListener(new ChangeListener() { - @Override public void stateChanged(ChangeEvent e) { boolean value = innerToggleButton.isSelected(); @@ -123,12 +95,22 @@ public class BorderPane extends AbstractBasicStylePane { verticalToggleButton.setSelected(value); } }); + } + private void initButtonsWithIcon(){ + topToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/top.png")); + leftToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/left.png")); + bottomToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/bottom.png")); + rightToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/right.png")); + horizontalToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/horizontal.png")); + verticalToggleButton = new UIToggleButton(BaseUtils.readIcon("/com/fr/base/images/dialog/border/vertical.png")); + this.currentLineCombo = new LineComboBox(CoreConstants.UNDERLINE_STYLE_ARRAY); + this.currentLineColorPane = new NewColorSelectBox(100); } @Override public String title4PopupWindow() { - return Inter.getLocText("Border"); + return Inter.getLocText("FR-Designer_Border"); } public void populate(Style style) { diff --git a/designer_base/src/com/fr/design/images/control/tab/end.png b/designer_base/src/com/fr/design/images/control/tab/end.png new file mode 100644 index 000000000..da848239f Binary files /dev/null and b/designer_base/src/com/fr/design/images/control/tab/end.png differ diff --git a/designer_base/src/com/fr/design/images/control/tab/end_not.png b/designer_base/src/com/fr/design/images/control/tab/end_not.png new file mode 100644 index 000000000..1f08bdf35 Binary files /dev/null and b/designer_base/src/com/fr/design/images/control/tab/end_not.png differ diff --git a/designer_base/src/com/fr/design/images/control/tab/first.png b/designer_base/src/com/fr/design/images/control/tab/first.png new file mode 100644 index 000000000..5bdb04402 Binary files /dev/null and b/designer_base/src/com/fr/design/images/control/tab/first.png differ diff --git a/designer_base/src/com/fr/design/images/control/tab/first_not.png b/designer_base/src/com/fr/design/images/control/tab/first_not.png new file mode 100644 index 000000000..50d048a19 Binary files /dev/null and b/designer_base/src/com/fr/design/images/control/tab/first_not.png differ diff --git a/designer_base/src/com/fr/design/images/control/tab/next.png b/designer_base/src/com/fr/design/images/control/tab/next.png new file mode 100644 index 000000000..495a51805 Binary files /dev/null and b/designer_base/src/com/fr/design/images/control/tab/next.png differ diff --git a/designer_base/src/com/fr/design/images/control/tab/next_not.png b/designer_base/src/com/fr/design/images/control/tab/next_not.png new file mode 100644 index 000000000..f002a0b9e Binary files /dev/null and b/designer_base/src/com/fr/design/images/control/tab/next_not.png differ diff --git a/designer_base/src/com/fr/design/images/control/tab/prev.png b/designer_base/src/com/fr/design/images/control/tab/prev.png new file mode 100644 index 000000000..5923d5794 Binary files /dev/null and b/designer_base/src/com/fr/design/images/control/tab/prev.png differ diff --git a/designer_base/src/com/fr/design/images/control/tab/prev_not.png b/designer_base/src/com/fr/design/images/control/tab/prev_not.png new file mode 100644 index 000000000..2530395fd Binary files /dev/null and b/designer_base/src/com/fr/design/images/control/tab/prev_not.png differ diff --git a/designer_base/src/com/fr/design/locale/designer.properties b/designer_base/src/com/fr/design/locale/designer.properties index 94733eaad..182239ee8 100644 --- a/designer_base/src/com/fr/design/locale/designer.properties +++ b/designer_base/src/com/fr/design/locale/designer.properties @@ -516,7 +516,6 @@ FR-Designer_Create_Tree= FR-Designer_Set_Callback_Function= FR-Designer_ConfirmDialog_Content= FR-Designer_ConfirmDialog_Title= - FR-Designer_FormulaPane_Tips=Tips\:You_Can_Input_B1_To_Input_The_Data_Of_The_First_Row_Second_Column FR-Designer_FormulaPane_Variables=Variables FR-Designer_FormulaPane_Formula_Description=Formula_Description @@ -525,13 +524,11 @@ FR-Designer_FormulaPane_Search=Search FR-Designer_Tab_carousel= FR-Designer_setCarousel= FR-Designer_carouselInterval= - FR-Designer_ClassName_panel=ClassName FR-Designer_Description_panel=Description FR-Designer_Edit_panel=Edit FR-Designer_Property_panel=Property FR-Designer_Select_panel=Select - FR-Designer_LayoutTable_Column_Width=160 FR-Designer_Set_BG_Of_Current_Row=Set BG of the row being edited FR-Designer_Unload_Check=Prompt users when leave without submitting @@ -547,7 +544,6 @@ FR-Designer_PageSetup_Page=Page FR-Designer_Custom_Job_Description=Description FR-Designer_Property=Property FR-Designer_ClassName=Class Name - FR-Designer_Polyblock_Edit=Polyblock Edit FR-Designer_Function_Description_Area_Text=The class must inherit 'com.fr.script.AbstractFunction'. The compiled class should be copied to\nJ2EE server '{R1}' directory.\nAdd the source code(.java file) into the same folder if need.\nExample: {R2}} FR-Designer_PageSetup_Horizontal=Horizontal @@ -588,7 +584,1410 @@ FR-Designer-Move_Tab_First=move to first FR-Designer-Move_Tab_End=move to end FR-Designer-Move_Tab_Next=move to next FR-Designer-Move_Tab_Prev=move to previous +FR-Designer_Too_Large_To_Paste=too large to paste +FR-Designer_Too_Small_To_Paste=Too small to paste FR-Designer_AxisReversed=AxisValue FR-Designer_Logarithmic=Logarithmic FR-Designer_Chart_Log_Base=Log Base -FR-Designer_Chart_F_Radar_Axis=Chart_F_Radar_Axis \ No newline at end of file +FR-Designer_Chart_F_Radar_Axis=Chart_F_Radar_Axis +FR-Designer_Style=Style +FR-Designer_Color=Color +FR-Designer_Border=Border +FR-Designer_Background-Pattern=Pattern +FR-Designer_Properties_Mobile= +FR-Designer_Edit_Button_ToolBar= +FR-Designer_Remove_Button_ToolBar= +FR-Designer_Get-CubeGetting= +FR-Designer_Oracle= +FR-Designer_Validate= +CellWrite-InsertRow_NULL=Null +DashBoard-ChartFloat=Chart +contact_info=Contact information (optional) +Page_Setup=Page_Setup +CellWrite-Print_Export= +Cannot_Get_Date=Can not get date +FR-Designer_Modify=Modify +M-Write_Preview=Write Preview +FR-Base_RWA-Key= +China=China +Set_Legend_Sytle=Set_Legend_Sytle +FR-Designer_Number=Number +FR-Designer-Widget-Style_Common= +M-Save_As=Save As +Following_parameters_are_not_generated=The following parameters are not generated +FR-Designer-Basic_Activation_Key_Copy_OK=Key has been copy to clipboard +Utils-Current_Sheet=Current Sheet +ConditionB-is_less_than=Is less than +BorderLayout-West=West +AnalysisLine=Analysis Line +Layer_Report_Warnning_info=Warnning info for LayerReport +Tree-Width=Tree Width +alert_word= +PageSetup-Paper_Size=Paper Size +M-Page_Setup=Page Setup +DashBoard-FormBook=Form +X-Coordinate=X Coordinate +Style-Line_Spacing=Line Spacing +FR-Designer_Plugin_Should_Update_Title=Warning +Server-Define_Data_Connection=Define Data Connection +BarInside=Bar Inside +Border-Color=Border-Color +NotAllow= +Utils-File_type=File type +FR-Designer-Plugin_Install_From_Local=Install plugin from local file +Summary_Method=Summary Method +Select_Specified_Grouping=Select Specified Grouping +HF-Number_of_Page=Total Number of Page +FR-Designer-Tree_Height=Tree Height +Owner=Owner +Home=Home +FR-Server_Embedded_Server_Stop=Server in Design-Stop +FR-Designer-Plugin_Detecting_Update=Detecting update +HF-Whether_to_define_the_selected_type=Whether to define the selected type +StyleAlignment-Right=Right +FR-Designer_Alignment-Style=Alignment-Style +PageSetup-Title_Start_Column=Title Columns +Tree-Mutiple_Selection_Or_Not=Mutiple Selection +FR-Designer-Plugin_Search=Search +Choose_Role=Choose Role +Append_Delete_Row_Message=WarningThe specify cell should set the expand-attribute,otherwise it won't work. +Form-ComboBox=ComboBox +PageSetup-Footer=Footer +Sorting=Sorting +DBCP_TEST_WHILE_IDLE=TestWhileIdle +DS-Embedded_TableData=Embedded Table Data +FR-Designer_No-Privilege=No Privilege +FRFont-Subscript=Subscript +Background_Settings=Background Setting +FormulaD-Invalid_Formula=Invalid Formula +FR-Base_Margin= +FR-Designer-Plugin_Shop_Installed= +M_Edit-Send_to_Back=Send to Back +Email-Can_Preview_Report_Content=Preview the report contents +FR-Designer-FRFont_Italic= +CellWrite-Print_Background=Print Background +Wizard=Wizard +Preference-Is_Drag_Permited=Is Drag Permitted +FR-Designer_Release_Lock= +Form-Delimiter=Delimiter +wrong=wrong +FR-Menu-Server_Chart_PreStyle=Chart PreStyle +Form-Button=Button +FormulaD-Valid_Formula=Valid Formula +ParameterD-Parameter_Interface=Parameter Interface +At_least_one_visual_worksheet=Workbook to have at least one visual worksheet, if you want to delete, please insert a new worksheet +Need_Min_Value=Need Min Value +Allow_Blank=All Blank +CellWrite-InsertRow_DEFAULT=Default value +Widget-Load_By_Complete=Load By Complete +FR-Designer-Basic_Only_Submit_Current_Sheet= +Sort-Sort_Order=Order +File-File_Size_Limit=File Size Limit +PrintP-Print=Print (T) +FR-Designer-StyleAlignment_Center= +Preference-Setting_Colors=Setting Colors +Judge=Judge +Image-Adjust= +Collect-User_Information_DES= +FR-Designer_Plugin_Normal_Update_From_Local=Update from local file +BackgroundTexture-Canvas=Canvas +BarOutSide=Bar Out Side +Preview_ToolTips=Preview ToolTips +FRFont-Family=Family +FR-Lic_does_not_Support_Remote= +InterfaceStyle=InterfaceStyle +RWA-Key=Primary Key +WF-Name=Name +RWA-Click_Cell_To_Edit_Value=Click Cell to Edit Value +Utils-Row_Height=Row Height +ReportD-Excel_Export=ReportD Excel Export +Form-Please_Select_A_Kind_Of_Form_Container=Select Form Container +Column_Does_Not_Exsit=Column Does Not Exsit +M_Insert-Hyperlink=Hyperlink +can_not_include_underline=can not contain "_" +FR-Designer-Plugin_Jar_Expired= +FR-Background_Image_Extend=Extend Image +TopDownShade=Top Down Shade +FR-Base_Right= +DataBinding=Data Binding +ConnectionPool_Attr=Connection Pool Attributes +Connect_SQL_Cannot_Null=Connect SQL Cannot be Null +DBCP_MAX_ACTIVE=MaxActive +M_Window-Preference=Preference +ToolBar_Top=Top ToolBar +FR-Designer_Indent-Pixel=Pixel +FR-Designer_Unit_MM=MM +IDLE= +FRFont-Underline=Underline +FR-Designer-Plugin_Read_Plugin_List_Error=Error to read plugin list +Type_Set=Type Set +M_Format_A-Cell_Attributes=Other Attributes +CellWrite-Show_As_Image=Show As Image +ShowAsDownload= +Form-ComboCheckBox=ComboCheckBox +BackgroundTexture-WovenMat=Woven Mat +BindColumn-Custom_Data_Appearance=Customize Data Appearance +Actived=Actived +Env-Local_Directory=Local Directory +Form-Colon=Colon +Preference-Vertical_Scroll_Bar_Visible=Vertical Scroll Bar Visible +Utils-Show_Cell_Value=Show Cell Value +FR-Designer_ReportColumns-Repeat_Row= +SpecifiedG-Specified_Group=Specified Group +RWA-Smart_Add_Cells=Smart Add Cells +HF-Left_Section=Left Section +M_Report-Report_Background=Report Background +Image-Extend=Extend +FS_BI= +ToolBar_Bottom=Bottom ToolBar +Hgap=Hgap +FR-Designer_Enter-New-FileName= +Verify_Fail=Verify Fail +CellWrite-InsertRow_Policy=Policy of Insert Row +FR-Designer-Plugin_Illegal_Plugin_Zip=Illegal plugin zip +RCodeVersion=VER +Convert=Convert +Please_Drag=Please Drag +FR-Designer-Widget-Style_Preview= +mobile_number=Mobile Number +FR-Designer_Form-ComboCheckBox=ComboCheckBox +CacheValidateTime=Cache Validate Time +Hyperlink-Extends_Report_Parameters=Extends Report Parameters +FR-Designer_Values-Editor= +Export-Excel=Excel +Utils-Left_to_Right=Left to Right +ExpandD-Vertical_Extendable=Enable to Insert Cell to Display Field Data Vertically +Utils-Report_Runtime_Env=Report Workspace +Utils-Right_to_Left=Right to Left +Utils-Beyond_the_top_side_of_Border=Beyond the top side of border +Exception_StackTrace=Exception_StackTrace +Corresponding_Fields=Corresponding_Fields +Form-CheckBox=CheckBox +Utils-Current_Row=Current Row +BuildIn=Build-in +BindColumn-Results_Filter=Result Filter +FR-Designer-Plugin_Manager=Plugin Manager +M_File-Export-CSV=CSV +Data_Filter=Data Filter +ReportServerP-Edit_Printer=Edit Printer +FR-Designer_Datasource-Stored_Procedure=Stored Procedure +RESTART=RESTART +FormulaD-Function_name=Function Name +ChooseOneButton=chose one toolbutton +Priority=Priority +Datasource-Datasource=Data Source +FR-Designer_Width= +Cannot-Add_To_This_Area=Cannot Add To This Area +Run= +Set_Submit_Condition=Set Submit Condition +FR-Base_Value= +fileLocked_undeleted=Template is locked, you can not delete\! Click OK to refresh the list of templates +Web_Apply=Web Application +Refresh_Database=Refresh database +Set_Row_Title_End=Set_Column_Title_End +FR-Utils-New_Folder=New Folder +BiasD-From-upper_left_to_lower_right=Upper left to lower right +CapsLock= +StyleFormat-Sample=Sample +RWA-Smart_Add_Cell_Group=Smart Add Cell Group +MConfig-CancelButton=Cancel +Function-Choose_Function_Class=Choose Function Class +LatLng=Lat and Lng +DS-Server_TableData=Server Table Data +BackgroundTexture-GreenMarble=Green Marble +read_time_out=Load Timeout +JavaScript-Commit_to_Database=Commit to Database +DS-Relation_TableData=Relation Table Data +CellWrite-Page_Before_Row=Page Break Before Row +FR-Designer-Plugin_Load_Plugins_From_Server=Loading plugins from store +D-Dispaly_Divide_Result_Set_into_Groups=Divide result set into groups +Closed=Closed +RWA-Help=helpdetail +FR-Designer-Widget-Style_Custom= +FR-Designer-Widget-Style_Render_Style= +Highlight-Barcode=BarCode +FR-Designer_Connect_SQL_Cannot_Null=Connect SQL Cannot be Null +trigger= +M-Data_Analysis=Data Analysis +Function-The_selected_file_cannot_be_null=The select file cannot be empty +No-Privilege=No Privilege +ReportColumns-Repeat_Column=Repeat Column +SecondGraduationUnit=SecondGraduationUnit +Form-Widget_Property_Value=Widget Property Value +GIVE-NAME=Give_Name +FR-Designer_Rename= +Utils-Merge_Cell=Merge Cells +Style-Spacing_After=Spacing After +Enlarge_Or_Reduce=Enlarge Or Reduce +Tree-Height=Tree Height +RCodeErrorCorrect=ERC +Enter-New-FileName=Enter New File Name +try_resending=Please try resending +M-Open_Report=Open... +Please_Select=Please Select +InRow=InRow +Form-TextArea=TextArea +FR-Designer_Https_Enable= +Widget-Custom_Widget_Config=Custom Widget +already_exists=already exists +Original_Marked_Filed=Original Marked Filed +BackgroundTexture-Sand=Beach +Values=Values +Not_use_a_cell_attribute_table_editing=You may not use a cell attribute table editing +Root=Root +cycle=cycle +open-new-form-tip=open new form tip +Support-Current_Auto_Complete_Shortcut=Current Shortcut +GROUPING_MODE=Grouping +DBCP_MAX_IDLE=MaxIdle +BackgroundTexture-BlueTissuePaper=Blue Tissue Paper +ReportD-Export_Hided_Row=ReportD Export Hided Row +FR-Custom_styles_lost= +Env-Des2=Position should be a Servlet like "http\://localhost\:8080/WebReport/ReportServer" +Env-Des1=Please select the WEB-INF directory of Report Server +PageSetup-Placement_Center_on_Page=Page Center +sure_to_delete=sure to delete +Already_exists_not_add_repeat=Already exists, do not add repeat +Axis_Title=Axis title +FR-Designer-Plugin_Install_Failed=Install failed +FR-Designer-Widget-Style_Frame= +MainGraduationUnit=MainGraduationUnit +Second_Axis=Second Axis +Classifier-Ge= +MSBold=MSBold +Form-Design_Size=Form Design Size +FR-App-Template_Save= +ExpandD-Horizontal_Extendable=Display Field Data Horizontal +RP_Authority_Edit=Authority +Warnning=Warning +RoleName_Can_Not_Be_Null=RoleName_Can_Not_Be_Null +Application=Applications +Formula_Dictionary_Display_Examples_Html=the real value is \ +ECP-error_pwd= +FR-Hyperlink_ChartHyperlink= +M_Edit-FormatBrush=Format Painter +Indent-Pixel=Pixel +FR-Designer-Widget-Style_Border_Line= +Widget-Default_Widget_Config=Default Widget +Version-does-not-support= +StyleAlignment-Right_To_Left=Right To Left +Style-Spacing_Before=Spacing Before +Has_Existed=Has Existed +FR-Designer_DisplayNothingBeforeQuery=Display Nothing Before Query +Still=Still +JS_WARNING2=information +JS_WARNING1=information +Connectionline=Connectionline +Utils-Insert_Record=Insert Record +Set-Parameter-Name= +More-information=More information +Parameter-Boolean=Boolean +FRFont-Strikethrough=Strikethrough +Server-version-tip=You are currently connected to the server version is less than the designer version number you are using to continue to connect you to edit some of the properties may not be able to effectively save. If the need to connect, please send your designer version and the server version is consistent +Form-All_Files=All Files +DBCP_NUM_TEST_PER_EVCTION_RUN=NumTestsPerEvictionRun +FR-Designer-FRFont_Family= +Device= +M_Insert-Cell=Cell Element +Present-Formula_Present=Formula Present +FRFont-Superscript=Superscript +CellWrite-Page_Before_Column=Page Break Before Column +Golden=Golden +Preference-Support_Cell_Editor_Definition=Support Cell Editor Definition +M-Page_Preview=Page Preview +HJS-CC_to=Copied to +Tree-Select_Leaf_Only=Select Leaf Only +Pointer-A-Tick-Order=pointer and tick value +Pink=Pink +StyleAlignment-Distibuted=Distributed +Odd=Odd +already-saved=already saved +FR-Hyperlink_Chart_Cell= +Style-Left_Indent=Left Indent +Offline=Offline +Form-Hierarchy_Tree_Next=Next +Needle=Needle +GoogleMap=Google Map +Running=Running +M_Edit-Unmerge_Cell=Unmerge Cell +Out_Border_Line=Out Border Line +Style-Spacing=Spacing +FR-Utils_Submit= +ReportServerP-Previous=Previous +StyleAlignment-Text_Style=Text Style +RelatedChart=RelatedChart +ProcessManager=ProcessManager +Cancel_Repeat_Attributes=Cancel_Repeat_Attributes +FR-App-File_Message= +Datasource-Stored_Procedure=Stored Procedure +RWA-Row_Offset=Row Offset +M_Format-Style=Style +detail_description=Detailed description +FR-Designer-Widget-Style_Title_Content= +ParameterD-Report_Parameter=Report Parameter +HF-Edit_Header=Edit Page Header +Sytle-FRFont=Font +FR-Designer_Finish_Export=Finish_Export +MultiFileUpload=MultiFile Upload +HF-Page_Number=Page Number +Style-Right_Indent=Right Indent +Desktop=Desktop +FR-Server-All_Error= +ConditionB-Operator=Operator +Today=Today +Form-Widget_Name=Widget Name +Covered_All=Covered All +Day=Day +External=External +Black_Font=Black Font +LOG-Report_Server_IS_Started=Report Server is Started +Tips\:You_Can_Input_B1_To_Input_The_Data_Of_The_First_Row_Second_Column=Tips\:You_Can_Input_B1_To_Input_The_Data_Of_The_First_Row_Second_Column +FR-Designer_ChooseOneButton=chose one toolbutton +Widget-Sizing=Sizing +NO_Border_Line=NO Border Line +Cell_Data=cell data +StyleAlignment-Vertical_Text=Vertical Text +Label=Label +Orange=Orange +zeroMarginWarn=The printer exist the physical margins
report page margin settings the small can
can print content insufficiency.
  +Widget-Date_Selector_Return_Type=Return Type +Utils-Switch_To_Template_Reportlet=Switch To Template Reportlet +satisfy= +FR-Designer_WidgetDisplyPosition=Widget DisplyPosition +FR-Base_Top= +FR-Designer_Form-CheckBox=CheckBox +Reportlet-Parameter_Type=Parameter Type +sending=sending... +FR-Designer-FRFont_Foreground= +FR-Import-Export_SVG= +M_Edit-Clear_Contents=Contents +Session=Session +Widget-Load_Type=Load Type +template_unsaved=template can not be saved +check_communication=please check the network communication is normal and that the server is running +List-Need_Head=Need Head +FR-Designer-Plugin_Has_Been_Installed=Plugin has been installed +FR-Widget_Tree_And_Table= +FR-Base_Help= +FR-Designer-Plugin_Update_Successful=Update successfully +August=August +LOG-Is_Being_Openned=Is Being Openned +BackgroundTexture-Oak=Oak +Multi_nam_formula= +TurnOn=TurnOn +HJS-Send_Successfully=Send Successfully +Mon=Mon +Inner_Parameter=Inner Parameter +Required=Required +Summary=Summary +template_unopened=unable to open template +FR-Base_Bottom= +DataFunction-Min=Minimum +StyleFormat-Percent=Percent +FR-App-All_Custom= +M_Insert-Data_Column=Insert Data Column +PLEASE=PLEASE +Numbers=Numbers +Release_Lock=Release Lock +Background-Background_is_NULL=No Background +FR-Designer_Sytle-FRFont=Font +Gradation=Gradation +The_current_list_is_empty=The current list is empty +Formula_Dictionary_Display_Examples=the real value is \ +Schedule-Template_Parameter=Template Parameter +JSShow=Show In Action +Level_coordinates=Level coordinates +MainGraduationLine=Main Graduation Line +Hyperlink-Web_link=Web link +StyleAlignment-between_-90_and_90=between -90 and 90 +FormulaD-Custom_Function=Custom Function +FR-Designer_Integer=Integer +PageSetup-Finis_Start_Row=Finis Rows +RWA-Remove_Field=Remove Field +Form-Desin_Width=Form Design Width +No-tableData=No tableData +Page_Total=Page_Total +FR-Designer-Plugin_Connect_Server_Error=Error to connect plugin store +Import-Excel_Source=Excel Source +Utils-Left_to_Right_a=Left to Right +ExpandD-Expand_Attribute=Attribute to Insert Cell to Display Field Data +Report-Write_Attributes=Write Attribute +Utils-Current_Column=Current Column +Need_Max_Value=Need Max Value +Report_Not_Exist=Report_Not_Exist +HF-Insert_Content=Insert Content +UpParent=Up Parent +PageSetup-Page=Page +Utils-Move_Up=Move Up +BackgroundTexture-PurpleMesh=Purple Mesh +Export-Word=Word +ServerM-Widget_Manager=Widget Manager +FR-Designer-Basic_Activation_Key=Activation Key\: +FR-App-Template_Report_Not_Exist= +Protected=Protected +Skip=skip +FR-Designer_PageSetup-Vertically=Vertically +revert= +PageSetup-Predefined= +Border-Style-Radius=RoundBorder +IntPart= +ExpandD-Data_Column=Data Column +Sort-Ascending=Ascending +FR-Designer-Widget_Style= +parameter_name_exist=The parameter name already exists +FR-Designer_Layer-Build=Layer-Build +Please_Rename=Please_Rename +Form-Editing_Listeners=Editing Listener +RWA-Smart_Add_Fields=Smart Add Fields +FR-Designer-Tree_Width=Tree Width +Record=Record +Poly-Report_Component=Poly Report Component +Options=Options +NS-war-remote= +Sche-Minute=Minute +Three_Rows_Of_Three_Grid=Three rows of three grid +WorkSheet=Worksheet +FR-Designer-Widget_Size= +BindColumn-Select=Select +FR-Widget_Mobile_Terminal= +FR-Background_Image_Titled=Titled Image +SetPrinterOffset=SetPrinterOffset +FR-Designer-Plugin_Installed=Installed +FR-Designer-Hyperlink_Name= +FR-Designer_Form-Button=Button +Black=Black +FR-Designer-Widget-Style_Border_Color= +Set_Submit_Event=Set Submit Event +PDF-Print_isPopup=Is Popup +LayerPageReport_CountPerPage=Data count per page +Display_Modes=Display Modes +RowSpan=RowSpan +Datasource-Test_Connection=Test Connection +Function-Function_Manager=Function Manager +Host_Name=Host Name +CellWrite-Show_As_HTML=Show As HTML +FR-Designer-Widget-Style_Shadow= +FR-Designer_Parameter_String=String +Form-SupportTag=SupportTag +ReportD-Report_Write_Attributes=Report Write Attributes +DataFunction-Count=Count +Top_And_Thick_Bottom_Border_Line=Top And Thick Bottom Border Line +Client=Client +BindColumn-Result_Serial_Number_Start_From_1=Serial Number Starts From One +History=History +Already_exists= +Datasource-Original_Charset=Original Char Set +FR-Base_Left= +ReportServerP-Next=Next +BindColumn-Top_N=Top N +Animation_Special=Specially good effect +Widget-Chart_Widget_Config=Chart Widget +FR-Designer-Plugin_Cannot_Update_Not_Install=FR-Designer-Plugin_Cannot_Update_Not_Install +After_Changed_Some_Attributes_Are_Different=After_Changed_Some_Attributes_Are_Different +PieStyle=Pie Style +HF-Are_you_sure_to_delete_it=Are you sure to delete it +Utils-Design-File_Open= +FR-Utils_Label= +Data-Label=Data Label +M_Insert-Text=Insert Text +Form-View_Tree=Tree View +M_Insert-Chart=Insert Chart +HF-Even_Page=Even Page +ReportServerP-Report_server_parameter=Report Server Parameter +JavaScript-Form_Submit=Form Submit +Horizontal-Split_Layout=Horizontal Split Layout +BorderLayout-Center=Center +INFO-Reset_Webapp=Reset Webapp +FR-Designer_Text=Text +IN_and_INOUT_type_not_as_cursor=IN and INOUT type not as cursor +Main_Axis=Main Axis +M_Edit-Cut=Cut +Utils-The_Name_has_been_existed=The Name has been existed +FR-Background_Image=Image +Character=character +Unit_Thousand=Thousand +Test=Test +Utils-Would_you_like_to_save= +HF-Header_and_Footer=Header and Footer +LIST_MODE=List Mode +HF-Insert_Image=Insert Image +FR-Designer-Widget-Style_Standard= +FR-Designer_Form-List=List +BackgroundTexture-Denim=Denim +Execute_Report_by_Layer_Engine=Execute Report by Layer Engine +M_Edit-Bring_Forward=Bring to Forward +Choose_All=Choose All +Form-RadioGroup=Radio Group +FR-Base_Remove= +FR-Remote_Connect2Server_Again= +Semicolon=semicolon +StyleFormat-Category=Category +Report_Template=Report Template +Utils-Beyond_the_right_side_of_Border=Beyond The Right Side Of The Border +BackgroundTexture-Papyrus=Papyrus +LayerPageReport_PageEngine=Execute for page +Schedule-The_selected_file_must_be_end_with_filter=The selected file must end with '.cpt' or '.class' or '.frm' +Provide=Provide +FormulaD-Math_&_Trig=Math and Trig Function +FR-Designer-StyleAlignment_Right= +Error_TableDataNameRepeat=\ already exsits in ServerTableData or the name is repeated. +Choose_None=Choose None +File-tree=File tree +FRFont-bold=bold +FR-Designer_Set_Submit_Condition= +Form-Change_Widget_Name=Change Widget Name +ReportColumns-Report_Columns=Report Columns +Can_not_use_FormatBursh= +CellElement-Property_Table=CellElement Property Table +Dictionary-Dynamic_SQL=Dynamic SQL +FR-Designer_Form-CheckBoxGroup=CheckBoxGroup +DBCP_TIME_BETWEEN_EVICTIONRUNSMILLIS=TimeBetweenEvictionRunsMillis +ReportD-Export_Hided_Column=Export hided column +Preference-Support_Undo=Support Undo +FR-mobile_report_analysis= +Month=Month +Utils-Column_Width=Column Width +Collect-Use_Designer=Use Designer +Widget-User_Defined_Editor=User Defined Editor +Unit_Ten_Thousand=Unit_Ten_Thousand +Data_Setting=Data Setting +ECP_input_pwd= +period= +Note=Note +Multiline=Multiline +Datasource-Convert_Charset=Convert Char Set +DashBoard-ConnectionList=ConnectionList +Utils-Submit_Forcibly=Submit Forcibly +Parent_Marked_Field=Parent Marked Field +Logout=Logout +FR-Designer_Show_Blank_Row= +FR-Base_Format= +FR-App-Export_png= +Delete_Column=Delete Column +SecondGraduationLine=Second Graduation Line +SpecifiedG-Groups=Groups +CONTINUUM_MODE=Continuum Grouing +Datasource-Connection_failed=Connection Failed +CategoryName=CategoryName +DBCP_INITIAL_SIZE=InitialSize +Colors=Colors +FR-Import-Export_CSV= +FR-Designer-StyleAlignment_Left= +BackgroundTexture-PaperBag=Paper Bag +RWA-BuildIn_SQL=BuildIn SQL +SingleLayer=SingleLayer +Or-you=or you +FR-Designer_Certificate_Path= +Utils-Last_Page=Last Page +BarCodeD-Drawing_Text=Drawing Barcode Text +Warning-Template_Do_Not_Exsit=Template Do Not Exsit +BindColumn-Group=Group +Export-SVG=SVG +Plane3D=Plane 3D +SessionID= +FR-Designer_Height= +HF-Odd_Page=Odd Page +About-All_Rights_Reserved=All Rights Reserved +Utils-Current_Cell=Current Cell +Web_Preview_Message=Please save the template in the current Runtime Environment folder +FR-Hyperlink_Chart_Float= +Dic-Data_Query=Data Query +CellWrite-Print_Content=Print Content of Cell +Privilege-Selected_None_Of_Any_Items=Selected None Of Any Items +FRFont-Size=Size +Function-J2EE_server=J2EE server +FR-Designer_Allow_Blank=All Blank +Build_Tree_Accord_Parent_Marked_Filed=Build Tree according parent's marked filed +Preference-Horizontal_Scroll_Bar_Visible=Horizontal Scroll Bar Visible +Scope=Scope +Save_All_Records_In_Memory=Save All Records in Memory +FreezeWarning1=FreezeWarning +FlowLayout=FlowLayout +M_Report-Report_Footer=Report Footer +FR-Action_Add= +BorderLayout-East=East +feedback_tip=Please enter a description of the problem of not more than 400 words +FS_Start_Date=Start Date +FR-ConditionB_Operator= +Printer-Alias=Alias +DS-Class_Name=Class Name +FR-Designer-Plugin_Has_Been_Disabled=Plugin has been disabled +Sort-Original=Original +Utils-Top_to_Bottom_a=Top to Bottom +Parameter-String=String +InnerRadis=InnerRadis +Want_To_Cover_It=Want To Cover It +Divided_stage=Divided stage +Seriously=Seriously +ReportServerP-PDF=PDF +Utils-Switch_To_Class_Reportlet=Switch To Class Reportlet +FR-Designer_Show_Blank_Column= +M_Edit-Redo=Redo +Visibility=Visibility +Series_Use_Default=Series_Use_Default +Has_Selected=Has Selected +BackgroundTexture-Walnut=Walnut +FormulaD-Function_category=Function Category +Interface=Interface +FR-Designer-Beyond_Bounds= +seconds=seconds +Auto-Build=Auto-Build +FR-Designer-Plugin_Install_Successful=Install successful +Template_Path=Template_Path +FR-Designer-FRFont_Bold= +Poly_Name=Poly Name +WorkBook=WorkBook +Hyperlink-Self_Window=Self Window +FR-Designer-Widget-Style_Title= +FR-Designer-FRFont_Size= +M_File-Export-SVG=SVG +Capacity=Capacity +Rose_Red=Rose Red +StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=The value of rotation must between -90 and 90 degrees +HF-Move_Left=To the left +Cell_Group=Cell Group +Week=Week +PageSetup-Orientation=Orientation +M-Open_Recent=Open Recent +NNormal=Noraml +Integer=Integer +Select_The_Source_To_Save=Select Source to Save +Transition=Transition +FR-Designer_Get_Lock= +one_record_exists_in_many_groups=One record exists in many groups +FR-Designer_Cover_None= +DeciPart= +ExpandD-Up_Father_Cell=Upper Parent Cell +Deep=Deep +FRFont-Shadow=Shadow +Reportlet=Reportlet +Calendar=Calendar +DateFormat-Custom_Warning=Note\: Custom date format does not support the format checking +Unit_MM=MM +Server-Start=Start +CellPage-Can_Break_On_Paginate=Can Break On Paginate +Build_Tree_Accord_Marked_Filed_Length=Build Tree according marked filed's length +ComboCheckBox-Start_Symbol=Start Symbol +Real=Real +RWA-Batch_Modify_Cells=Batch Modify Cells +FR-Designer_Build-Way=Build-Way +Read=Read +StyleAlignment-Degrees=Degrees +M_Format_A-Border=Border +Utils-Delete_Record=Delete Record +Reload=Reload +Image-Select_Picture=Select Picture +RWA-Submit=Submit +the_template=this template +FR-Designer_Component_Scale=Component Scale +FRFont-italic=italic +Year=Year +HF-Move_Right=To the right +Data-Check= +Unknown=Unknown +Submit_Style=Submit Style +Left_Border_Line=Left Border Line +Brown=Brown +Select_A_Tree_DataSource_To_Build=Select a tree data source to build +Overlapping=Overlapping +DS-Class_TableData=Class Table Data +FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=Illegal plugin,cannot be installed +DisplayNothingBeforeQuery=Display Nothing Before Query +Y_Axis=Y Axis +FormulaD-Most_Recently_Used=Most Recently Used +FormulaD-Input_formula_in_the_text_area_below=Input formula in the text area below +Build-Way=Build-Way +M_Edit-Undo=Undo +Line-Style=Line-Style +Datasource-Other_Attributes=Other Attributes +M_Server-Global_Parameters=Global Parameters +Suffix=Suffix +Image-Image_Files=Image Files +EditRC-Entire_row=Entire row(R) +HF-First_Page=First Page +BackgroundTexture-Granite=Granite +DataList=DataList +Recursion=Recursion +BarStyle=Bar Style +FR-Designer-Min_Width=Min-Width +Utils-Report-Env_Directory=Report Workspace +D-ChartArea=Chart Area +Only= +FR-Base_No= +SpecifiedG-Put_all_others_together=Put all others together +HF-NewLine_Des=Click on the move or delete button to operate newline +WLayout-Border-ThreeContainer=With north, west, and in the three border layout containerIncluding the northern block may need to adjust the height of the western block may need to adjust the width. +Parameter_Name=Parameter Name +FR-Base_Table= +Des-Remove_WorkSheet=The report to be deleted may contain data. If you want to delete report, please click on Yes button. +Rotation=Rotation +Undefined=Undefined +Support-Auto_Complete_Shortcut=Auto Complete Shortcut +Set_Column_Title_End=Set_Row_Title_End +Submit_Url=Submit Url +ReportServerP-Are_you_sure_to_delete_the_selected_printer=Are you sure to delete the selected printer +long_data_can_not_show_fully=Long data can not be fully demonstrated +Utils-Beyond_the_bottom_side_of_Border=Beyond The Bottom Side Of The Border +FR-Import-Export_PDF= +Form-CheckBoxGroup=CheckBoxGroup +Click-Me=Click-Me +Hyperlink-Self=Self Frame(S) +Tree-Select_Leaf_Only_Tips=Tree-Select_Leaf_Only_Tips +StyleAlignment-Text_Rotation=Text Rotation +Format-Error=Format Error +Server-Stop=Stop +Preference-Setting_Grid=Setting Grid +ReportServerP-Add_Printer=Add printer +FR-Designer-Plugin_Active=Active +Utils-File_name=File name +NOT_NULL_Des=Can not be null +Right_Border_Line=Right Border Line +EditRC-Entire_column=Entire column(C) +PageSetup-Top_to_bottom=Top to bottom +Click-Get_Default_URL=Click To Get Default URL +StyleAlignment-Wrap_Text=Wrap Text +Remove_All_Button=Remove_All_Button +FR-Designer_Component_Interval=Components Interval +ReportColumns-Columns_vertically=Columns vertically +ReportGUI-Print_Background=Print Background +Export-CSV=CSV +M_Edit-Paste=Paste +FR-Designer-Basic_Restart_Designer=Restart designer +ReportServerP-PDF2-INFO=The PDF Button Info +FormulaD-Check_Valid=Check Valid +server_disconnected=server disconnected +ParameterD-Parameter_name_cannot_be_null=Parameter name cannot be empty +FR-Designer-Plugin_Version_Is_Lower_Than_Current=The version of plugin is lower than current +RWA-NotChange_Unmodified=NotChangeUnmodified +User_Information=User_Information +Custom_styles_lost= +PageSetup-Margin=Margin +M-New_FormBook=FormBook +Widget-TreeNode=TreeNode +Form-Url=URL +Utils-Beyond_the_left_side_of_Border=Beyond the left side of border +Float_Element_Name=Float Element Name +Purple=Purple +DashBoard-Potence=Permissions +M-Close_Template=Close Template(C) +paper= +Not_Exsit=not exist in WorkSheet. +Utils-Insert_Row=Insert Row +Utils-Delete_Row=Delete Row +not_support_authority_edit=this element does not support authority edit +Formula_Tips=The formula must be from the beginning of the "\ +FR-Action_Copy= +Compile_Success=Compile Success +BackgroundTexture-RecycledPaper=Recycled Paper +StyleAlignment-Single_Line=Single Line +Utils-Move_Down=Move Down +Please_Set_Repeat_First=please set repeat Columns and Rows first +Writer-ShortCuts_Setting= +Verify-Data_Verify=Verify Data +FR-mobile_analysis_style= +Confirm-Delete-File= +PageSetup-Header=Header +JavaScrit-Asynch=Asyn +ReportServerP-Toolbar=Toolbar +Utils-Top_to_Bottom=Top to Bottom +Platform=Platform +FR-Designer-FRFont_Underline= +Show_in_Containing_Folder=Show in Containing Folder +BackgroundTexture-WaterDroplets=Water Drip +FR-Designer-Dependence_Install_Failed=install failed +Layout-Padding=Padding +roles_already_authority_edited=Configured role +WidgetDisplyPosition=Widget DisplyPosition +SpecifiedG-Force_Group=Force Group +FormulaD-Formula_Definition=Formula Definition +I-xyScatterStyle_Marker= +Hour= +ColorMatch=ColorMatch +M_Edit-Order=Order +BackgroundTexture-Bouquet=Bouquet +Verify-Error_Information=Error Information +LayerData=LayerData +Rename=Rename +Widget-Load_By_Async=Load By Async +Shape=Shape +BindColumn-This_Condition_has_been_existed=The Condition Already Exists +NS-exception_readError= +Set_Column_Title_Start=Set_Row_Title_Start +Fri=Fri +M_Report-Report_Parameter=Report Parameter +REPORTLETS= +WLayout-Card-ToolTip=Card layout, you can add a number of other components in the layout container. +M-Popup_ChartType=Chart Type +Please-Wait=Please Wait +FR-Designer-Form-ToolBar_Widget= +Widget-Array=Array +FieldBinding=Field Binding +Top_Bottom_Border_Line=Top bottom border line +M-Others=Others... +Hyperlink-Link_Opened_in=Link Opened in +FR-Utils_WorkBook= +M_Insert-Float=Float Element +Out_Thick_Border_Line=Out Thick Border Line +FR-App-File_Lookup_range= +ReportColumns-Columns_to=Columns to +Transparent=Transparent +Parameter-Integer=Integer +PDF-Print_Setting=PDF Print Setting +Server-Embedded_Server=Embedded Server +M_Server-Server_Config_Manager=Server Configuration Manager +FR-Utils-Would_you_like_to_cover_the_current_file=Would you like to cover the current file +CellWrite-InsertRow_COPY=The Original Value +Edit_String_To_Formula=Edit String To Formula +Edit-Column_Count=Column Count +Father=Father +ReportColumns-Columns_after=Columns after +FR-Designer_Undo= +DBCP_MIN_IDLE=MinIdle +M-Data_Analysis_Settings=Data Analysis Settings +M-Form_Preview=Form Preview +Form-Basic_Properties=Basic Properties +quote= +Thu=Thu +Collect-Collect_User_Information=Collect User information +Layer-Build=Layer-Build +FR-Designer-FRFont_Line_Style= +BackgroundTexture-BrownMarble=Brown Marble +PageSetup-Page_Setup=Page Setup +Form-Semicolon=Semicolon +ECP_re_input= +ExpandD-Sort_After_Expand=Sort After Expand +FR-Designer-Dependence_Install_Succeed=install succeed +Env-Configure_Workspace=Configure Workspace +feedback_info=We welcome your comments and suggestions, please fill out the information too much detail, we will contact you as soon as possible +Ratio=Ratio +DBCP_TEST_ON_BORROW=TestOnBorrow +FR-Designer_layerIndex= +WEB-Write_Setting=Write Setting +M-New_WorkBook=New WorkBook +FR-Designer-Plugin_Has_Been_Actived=Plugin is now active +Datasource-Maximum_Number_of_Preview_Rows=Maximum Number of Preview Rows +ExpandD-Cell_Expand_Attributes=Attribute to Insert Cell to Display Data +Select_the_repeated_row_and_column=Select the repeated rows and columns +FormulaD-Date_&_Time=Date and Time Function +Max-Mem-Row-Count=Use disk cache when records more than +BorderLayout-South=South +Export-Text=Text +JavaScript-Synch=Synch +FR-App-All_Warning= +M_Edit-Send_Backward=Send to Backward +Form-Layout=Layout +FR-Designer-Plugin_Shop_Need_Update= +FR-Designer_WorkBook=WorkBook +UpBarBorderStyleAndColor=UpBarBorderStyleAndColor +GridLayout=GridLayout +Utils-Default_Value=Default Value +Widget-Comb_Widget_Config=Comb Widget +Import-Excel2007_Source=Excel2007 Source +Y-Coordinate=Y Coordinate +FR-Base_SimSun_Not_Found= +FR-Designer_Seriously= +Upload=Upload +Form-Widget_Property_Table=Widget Property Table +Des-Merger_Cell=The Selected Area Contains multiple values, if you merge them, only the data at the upper left corner will be reserved. +FR-Designer-Basic_Copy_Build_NO=Double click to copy build NO. +FR-Base_TurnOn= +FR-Base_Rows= +Form-Remove_Repeat=Remove Repeat +Yes=Yes +Datasource-JNDI_Name=JNDI Name +Utils-Delete_Column=Delete Column +HF-Delete_it=Delete it +JavaScript-Dynamic_Parameters=Dynamic Parameters +px=px +FR-App-Report_Template= +Verify-Message=Message +Plan=Plan +Vertical-Split_Layout=Vertical Split Layout +ParameterD-Delay_Playing=Delay Playing +TurnOff=TurnOff +FR-Please_Rename= +Select_Data_Set=Select Data Set +Name_has_Colon= +ReportColumns-Columns_horizontally=Columns horizontally +FR-Base_Yes= +ReportColumns-Repeat_Row=Repeat Row +Print_Setting=Print Setting +Registration-User_Name=User Name +Datasource-User_Defined=User Defined +FR-Designer-Plugin_DownLoadMessage=Plugin need dependence support,need to install ({R1} m)? +Delay=Delay +FR-Designer-All_MSBold= +Utils-Now_create_connection=Connecting to database +FR-Template-Path_chooseRightPath= +FR-Remote_Re_Connect_to_Server= +Nation=Nation +DBCP_MAX_WAIT=MaxWait +FR-App-Template_Form= +Address= +Sub_Report=Sub Report +FR-Import-Export_Word= +FR-Server_Version_Tip= +StyleAlignment-Left_To_Right=Left To Right +Verify-ToolTips=Not meet formula,Error message prompt +BackgroundTexture-Stationery=Letter Paper +FR-Designer_RWA-Help= +M_Insert-Barcode=Barcode +Bounds=Bounds +FR-Designer-Undo_All_Authority_Operations= +Datasource-Context=Context +CellWrite-Page_After_Column=Page Break After Column +FR-Designer_Cancel= +Button-Group-Display-Columns=Display Column Count +Widget-Height=Height +Examples=Examples +Formula_Dictionary_Display_Example=the real value is \ +StyleAlignment-Horizontal=Horizontal +HyperLink_Must_Alone_Reset=HyperLink_Must_Alone_Reset +ExpandD-Expand_Direction=Display Data Direction +Include=Include +Export-Excel-Page=Page +FR-Designer-Min_Height=Min-Height +Filed=filed +ReportServerP-Import_Css=Import Css +M_Insert-Formula=Insert Formula +FR-Designer_Auto-Build= +FRFont-Foreground=Foreground +Bubble-Width=Bubble Width +Form-Hierarchy_Tree=Hierarchy Tree +WLayout-Border-LayoutContainer=With central and northern two border layout container.Including the northern block may need to adjust the height +Preference-JDK_Home=JDK Home +Utils-Insert_Column=Insert Column +FR-Designer_ToolBar_Top= +BindColumn-The_Conditions_of_FatherCell=The Conditions of Parent Cell +Links=Links +M_Report-Report_Header=Report Header +Sub_Report_Description=The sub-report should exist in the runtime environment of its parent, and the two can not be the same +T_Insert-Float=Insert Float Element +BackgroundTexture-FishFossil=Fish Fossil +My_Computer=My Computer +FORMLET= +HF-Undefined=Undefined +Widget-User_Defined_Widget_Config=User Defined Widget +Report-Write_Attributes_Group_Warning=Group is set to the cell number of cells in each field must be the same +Form-Single_quote=Single Quote +Compile_Success_And_Then_Save=Compile Success And Then Save +FR-Designer_Layout-Padding=Padding +Layout_Container=Layout Container +Admin=Admin +Form-EC_toolbar= +FR-App-All_Auto= +Utils-Available_Columns=Available Columns +Form-Change_Widget_Name_Discription=Change Widget Name Discription +FR-Module_Designer= +FR-Import-Export_Text= +Values-Editor=Values ??Editor +FR-Designer_Yes= +ExpandD-Expandable=Ability to Insert Cell to Display Data +Tree-Return_Full_Path=Tree-Return_Full_Path +FRFont-bolditalic=bolditalic +FR-Base_StyleFormat_Sample=Sample +Area_Value=Area Value +FR-Designer-Plugin_Disable=Disable +Utils-Are_you_sure_to_remove_the_selected_item=Are you sure to remove the selected item +Face_Write=Write +Poly-Report_Block=Poly Report Block +Vgap=Vgap +FR-Designer_HyperLink_Must_Alone_Reset=HyperLink_Must_Alone_Reset +DS-Class=Class +FR-Hyperlink_Please_Select_Reportlet= +FS_Report_Type=Report Type +HF-New_Line=New Line +Privilege=Privilege +Export-Offline-Html=Export Offline HTML +FR-Designer_open-new-form-tip=open new form tip +FR-Designer-Widget-Style_Frame_Style= +Present-No_Present=No Present +FR-Designer_Form-Password=Password +X_Axis=X Axis +FR-mobile_html_analysis= +M_Edit-Bring_to_Front=Bring to Front +Null_Value_Show=Null_Value_Show +Datasource-JNDI_DES=Note\: .jar files containing INITIAL_CONTEXT_FACTORY class need to be copied into the Directory of $installed/lib. +PrintP-Print_Preview=Print Preview +Form-Hierarchy_Tree_Last=Last +Has_been_gone= +RWA-Add_Field=Add Field +newNode=add Node +PageSetup-Shrink_to_fit_content=Shrink to fit content +FR-Designer_Date=Date +Column_Multiple=Column Multiple +FR-App-All_File= +Sort-Descending=Descending +FR-Designer-Plugin_Delete=Delete +Above=Above +Utils-The-Chart= +FRFont-plain=plain +Calculating=Calculating +Form-Object=Form Object +May=May +FR-Designer_Plugin_Normal_Update=Update +FR-Hyperlink_Reportlet= +M_Edit-Copy=Copy +Sub_Report_Message2=The parent-report is not in the current runtime environment +Sub_Report_Message3=Can not choose itself +Sub_Report_Message1=Please choose the currect path +Form-Allow_CustomData=Allow Custom Data +FR-Server_Version_Tip_MoreInfo= +FR-Designer_Server-version-tip-moreInfo=Your own team of our FineReport Designer version number of the product as well as the deployment server version number is consistent, in order to avoid the problems caused by inconsistent versions of risk.If you open a template produced higher Designer version, may open the error may be missing the original template properties. If you create the template used Designer Version higher than your final deployment with the server version, the server may not be able to properly load the template you create. +Get_Lock=Get Lock +HF-Edit_Footer=Edit page Footer +Datasource-New_Charset=New Char Set +Preference-Custom=Custom +BackgroundTexture-Newsprint=Newsprint +ConditionB-Add_bracket=Add bracket +Datasource-Connection_successfully=Connection successfully +Function-The_class_must_implement_the_interface=The class must be interface +FR-Designer_ChartF-Transparency=Transparency +Crimson=Crimson +FR-Hyperlink_Dialog= +FR-Designer_Covered_All= +Hyperlink-New_Window=New Window +Style_Name=Style Name +CSS_warning=CSS_warning +FR-Base_Column= +Three_Rows_Of_Two_Grid=Three rows of two grid +DBCP_VALIDATION_QUERY=ValidationQuery +M_Edit-Clear_Formats=Formats +Parameter_Setting=Parameter Setting +Related=Related +BorderLayout-Constraints=Constraints +Write_Preview=Write Preview +PageSetup-Page_Order=Page Order on print +Verify-Verify_Formula=Verify Formula +State=State +FR-Designer-Widget-Style_Body_Background= +FR-App-Privilege_No= +Please_Drag_ParaPane= +Come_True=Come_True +ISEMPTY=IS_EMPTY +Background-Texture=Texture +FR-Designer_Verify-Message=Message +Locked= +Utils-Design-Action_Cancel= +Image-Titled=Titled +Gradient-Direction=Gradient Direction +Green=Green +Report_Engine=Report Engine +Return-String=Return String +Margin=Margin +Pitch_Percentage=Pitch percentage +FR-Base_TurnOff= +Utils-has_been_existed=has been existed +HF-Insert_Formula=Insert Formula +Utils-Exit_Designer=Exit Designer +Formula_Dictionary_Display=For every value($$$) in the actual values above, it's display value is +PageSetup-Left_to_right=Left to right +Utils-Import_Excel_Data=Import Excel Data +M-Save=Save +redo=redo +Status=Status +Draw= +FR-Designer_Message= +Records=Records +FR-Designer_ComboBox=ComboBox +Driver=Driver +Template_Parameters=Template_Parameters +Form-Remove_Repeat_Data=Remove Repeated Data +ECP_decode= +Area_Name=Area Name +Others=Others +Merge=Merge +BackgroundTexture-Parchment=Parchment +BindColumn-Bottom_N=Last N +Frame= +Bottom_Border_Line=Bottom Border Line +Muiti_In= +FR-Designer-Dependence_Install_Online=install online +Use_Default_ToolBar=Use_Default_ToolBar +M_Server-Platform_Manager=Platform_Manager +PageSetup-inches=inches +Form-Widget_Property=Widget Property +FR-Layout_Padding= +Schema=Schema +Server_Path=Servlet Path +Condition_Display=Condition Display +FR-Server-Design_template_unopened= +Function-Function_Class_Name=Function Class Name +Schedule-Template=Template +Tree_Data_Field=Tree Data Field +Border-Style-Normal=Rectangular +Top_And_Double_Bottom_Border_Line=Top And Double Bottom Border Line +FR-Server_Embedded_Server_Start=Server in Design-Start +FR-Designer-Basic_Restart_Designer_Later=Restart later +StyleAlignment-Top=Top +ReportServerP-First=First +Not_Exist=Not Exist +FR-Remote_File_is_Locked= +Apply=Apply +Sytle-Indentation=Indentation +Parameter-Float=Float +HF-Center_Section=Center Section +Form-Double_quotes=Double Quotes +M_File-Export-Word=Word +M_File-Export-Text=Text File +PageSetup-First_Page_Number=The Number of First Page +Execute= +Task=Task +Custom_Button_Type_Submit=Submit +FR-Designer-Widget_Settings= +IS_Need_Password=IS Need Password +PageSetup-Horizontally=Horizontally +No_Editor_Property_Definition=No Editor Property Definition +Env-Remote_Server=Remote Server +FR-Utils_Background= +FR-Designer-Plugin_Warning=Warning +Server-version-info=You open the template file is open there will be an error made ??by the later design or the risk of losing the original template attribute. Please upgrade to your designer if need to open this template +CellWrite-Page_After_Row=Page Break After Row +HF-Right_Section=Right Section +PageSetup-Title_Start_Row=Title Rows +From= +Preference-Grid_Line_Color=GridLine Color +RowTo=RowTo +FR-Designer_ReportColumns-Repeat_Column= +M_Server-Function_Manager=Function Manager +KeyWord= +DS-Multi_Dimensional_Database= +BiasD-Slope_Line=Slope Line +Tue=Tue +ReportServerP-Last=Last +FR-Base_Columns= +SpecifiedG-Leave_in_their_own_groups=Leave in their own groups +LOG-Please_Wait=Please Waiting +Form-ToolBar=Form ToolBar +FR-Base_sure_remove_item= +Component_Scale=Component Scale +Hyperlink-Use_CJK_to_encode_parameter=Use CJK to encode parameter +LOG-Has_Been_Openned=Report Has Been Openned +FR-Designer-Dependence= +ECP_error_pwd= +REPORTLET= +RWA-Column_Offset=Column Offset +Forecast=forecast +Light_Orange=Light orange +StyleAlignment-Vertical=Vertical +Form-List=List +ParameterD-Show_Parameter_Window=Show Parameter Window +FR-Designer_Set_Submit_Event= +Value_Percent=Value In Percent +DBCP_MIN_EVICTABLE_IDLE_TIMEMILLIS=MinEvictableIdleTimeMillis +Function-The_class_must_be_located_in=The class must be located in +FR-Action_Sort= +DataFunction-Average=Average +FR-Designer_Show_in_Containing_Folder= +M_File-Export-Excel=Excel +DataFunction-Max=Maximum +FR-Designer_Form-Widget_Name=Widget Name +FS_End_Date=End Date +Export-Excel-Simple=Simple +ColumnTo=ColumnTo +SpecifiedG-Discard_all_others=Discard all others +DS-TableData=TableData +Form-DataTable=DataTable +Sub_Report_ToolTips=ToolTips of Sub Report +Right_Top=Right_Top +M_Edit-Merge_Cell=Merge Cell +FR-Designer_Restore_Default=Restore Default +Component_Interval=Components Interval +Cover_None=Cover None +Datasource-From_Database=From Database +Folder=Folder +Form-Allow_Edit=Allow Edit +M_Edit-Clear=Clear +ParentCell_Setting=Parent Cell Setting +Only_selected_cell_can_paste_only=Only selected cell can paste only +M_Report-Report_Columns=Report Columns +Unit_Hundred=Hundred +FR-Designer_DataTable-Build= +Widget-Form_Widget_Config=Form Widget +Server-version-tip-moreInfo=Your own team of our FineReport Designer version number of the product as well as the deployment server version number is consistent, in order to avoid the problems caused by inconsistent versions of risk.If you open a template produced higher Designer version, may open the error may be missing the original template properties. If you create the template used Designer Version higher than your final deployment with the server version, the server may not be able to properly load the template you create. +Actions=Actions +FR-Designer-Dependence_Connect_Server_Error=connect error +High=High +HJS-Send_Failed=Send Failed +HJS-Message=Message +File-Allow_Upload_Files=Allow Upload Files +FR-Designer-Form-ToolBar_Chart= +Thick_Bottom_Border_Line=Thick Bottom Border Line +FR-Action_Remove= +FRFont-Style=Style +Select_DataColumn=Select Data Column +StartValue= +SINGLE_FILE_UPLOAD= +BackgroundTexture-Cork=Cork +M_Format-Data_Map=Data Map +FR-mobile_native_analysis= +HighLight=HighLight +FR-Designer_Dropdown-More-Preview=Drop-down for more preview +local=local +FR-Designer_Gradation=Gradation +PageSetup-Finis_Start_Column=Finis Columns +Env-Invalid_User_and_Password=Invalid User Or Password +FR-Designer-Plugin_All_Plugins=All plugins +FR-Designer_Prepare_Export=Prepare_Export +DBCP_TEST_ON_RETURN=TestOnReturn +no-alternatives=no alternatives +FR-Designer_Submmit_WClass= +M_Insert-Slope_Line=Insert Slope Line +FR-Designer-Plugin_Plugin_Description=Description +ExpandD-Not_Expand=Not to Insert Cell to Display Data +Utils-Bottom_to_Top=Bottom to Top +Collect-Click\!_Get_user_information_code=Click\! Get user information code +FR-Already_exist= +Send=Send +M_Edit-Clear_All=All +Brown_Orange=Brown Orange +PageSetup-Portrait=Portrait +FR-Designer_Form-RadioGroup=Radio Group +FR-Utils-App_AllFiles=All Files +Popup=Popup +Server_Charset=Server_Charset +CellWrite-Repeat_Content_When_Paging=Repeat Content in New Page +Utils-No_Pagination=No Pagination +Form-NullLayout=NullLayout +ConditionB-Remove_bracket=Remove bracket +email=email +Minute= +FR-Designer-Plugin_Update=Plugins to update +alraedy_close=already closed +ComboCheckBox-End_Symbol=End Symbol +DataColumn=Data Column +Form-Password=Password +FR-Background_Image_Adjust=Adjust Image +Export-Excel-PageToSheet=Page To Sheet +Edit-Row_Count=Row Count +DS-Report_TableData=Report Table Data +Sche-Hour=Hour +Group_Count=Group Count +EndValue=End Value +FR-Designer_Sytle-Indentation=Indentation +DownBarBorderStyleAndColor=DownBarBorderStyleAndColor +World=World +FR-Designer-Basic_Cancel=Cancel +Finally=Finally +Low=Low +Please_Input_The_Key=Please Input the key the map use +Smart=Smart +Preference-Predefined=Predefined +Current_custom_global= +FR-Designer-Plugin_Shop_Need_Install= +WEB-Pagination_Setting=Pagination Setting +RCodeDrawPix=PIX +FR-Designer-Widget-Style_Alpha= +BorderLayout-North=North +HJS-Current_Page=Current Page +Compile=Compile +Show_Blank_Row=Show Blank Row +TableData_Dynamic_Parameter_Setting=Dynamic Parameter-Setting +FR-Background_Image_Default=Default Image +BackgroundTexture-WhiteMarble=White Marble +DataFunction-Sum=Sum +Collect-The_user_information_code_is_invalid=The user information code is invalid +Preference-Locale=Locale +M_File-Export-PDF=PDF +BiasD-From-lower_left_to_upper_right=Lower left to upper right +Border-Style=Border-Style +Sort=Sort +Image-Image_Layout=Image Layout +Panel=Panel +FR-Designer-Basic_Copy_Build_NO_OK=Build No. has been copyed +All_Border_Line=All Border Line +FR-Utils-Please_Input_a_New_Name=Please Input a New Name +FR-Base_Formula_Plugin=Plugin Function +Two_Rows_Of_Three_Grid=Two rows of three grid +FR-Designer_Certificate_Pass= +Bubble-Series_Name=Series Name +M-New_Multi_Report=Multi Report +BackgroundTexture-PinkTissuePaper=Pink Tissue Paper +Preference-Support_Default_Parent_Calculate=Support Default Parent Calculate +Show_Blank_Column=Show Blank Column +BaiduMap=Baidu Map +Report-Web_Attributes=Web Attributes +FR-Designer_StyleAlignment-Wrap_Text=Wrap Text +Need=Need +Parameter-Double=Double +Config_Servlet=Config Servlet +Form-Comma=Comma +Verify=Verify +PageSetup-Landscape=Landscape +Weeks=Weeks +FR-Designer-Widget-Style_Title_Background= +Preference-Pagination_Line_Color=Pagination Line Color +Test_URL=Test URL +Fill_blank_Data=Fill blank Data +ReportServerP-The_name_of_printer_cannot_be_null=The name of printer cannot be empty +FR-Designer-Basic_Copy_Activation_Key=Double click to copy key to clipboard +Continuum=Continuum +BackgroundTexture-MediumWood=Medium Wood +Datasource-Column_Index=Column Index +Function-Function_File=Function File +Form-Component_Bounds=Component Bounds +Utils-Submit=Submit +Conditions_formula= +M_Insert-Image=Insert Image +FR-Designer-Plugin_Will_Be_Delete=Delete plugin +FormulaD-Functions=Functions +Mobile_Terminal=The mobile terminal +CheckBox=CheckBox +FR-Designer-Plugin_Install=Install +Sun=Sun +FR-Designer_ToolBar_Bottom=Bottom ToolBar +Widget-Width=Width +Series_Name=S_N +Set_Row_Title_Start=Set_Column_Title_Start +HF-Default_Page=Default Page +Env_Des=Env_Des +Widget-User_Defined=User Defined +Url_location=url +Disk_File=Disk File +Inside=Inside +FR-Designer_filedChosen= +ServerM-Predefined_Styles=Predefined Styles +is_need_word_adjust= +Background-Null=No Background +PageSetup-Vertically=Vertically +FR-Designer_Root=Root +FR-Designer_Form-TextArea=TextArea +ReportServerP-Import_JavaScript=Import JavaScript +Form-TableTree=Table Tree +Opened=Opened +M_Edit-Delete=Delete +Widget-Form_Widget_Container=Form Container +BindColumn-Summary=Summary +Sche-Second=Second +Server-Open_Service_Manager=Open Service Manager +FRFont-Effects=Effects +OtherGroup_Name=The name of other group +Specify=Specify +Highlight-Click_to_Choose_Property_To_Modify=Click to Choose Property to Modify +triggered= +Double_Bottom_BorderLine=Double Bottom BorderLine +M_Insert-Sub_Report=Insert Sub Report +Unit_Ten=Ten +Polybolck=Polybolck +Select_sort_order=Select sort order +HJS-Mail_to=To +StyleAlignment-Left=Left +Two_Rows_Of_Two_Grid=Two rows of two grid +FR-Designer-Form-Please_Drag_ParaPane= +Milliseconds=Milliseconds +DataFunction-None=None +Delivery=Delivery +ColumnSpan=ColumnSpan +StyleAlignment-Bottom=Bottom +Read_failure=The read failure may source file is corrupted +Verify-Verify=Verify +FR-Designer-Widget-Style_Title_Format= +FR-Designer_Edit_String_To_Formula= +FR-Base_UnSignIn= +Every= +CellWrite-Preview_Cell_Content=Preview Content of Cell +FormulaD-Data_Fields=Data Fields +FR-Designer_Role=Role +FR-Designer_Permissions=Permissions +FR-Designer_Form_Button=Button +FR-Designer_WF_Name=Name \ No newline at end of file diff --git a/designer_base/src/com/fr/design/locale/designer_en_US.properties b/designer_base/src/com/fr/design/locale/designer_en_US.properties index 5bc73972e..4c0135daf 100644 --- a/designer_base/src/com/fr/design/locale/designer_en_US.properties +++ b/designer_base/src/com/fr/design/locale/designer_en_US.properties @@ -516,7 +516,6 @@ FR-Designer_Create_Tree=Build Tree FR-Designer_Set_Callback_Function=Set Callback Function FR-Designer_ConfirmDialog_Content=Confirm to delete Tab Control FR-Designer_ConfirmDialog_Title=FineReport 8.0 - FR-Designer_FormulaPane_Tips=Tips\:You can input B1 to get the data in the second cell of the first row FR-Designer_FormulaPane_Variables=Variables FR-Designer_FormulaPane_Formula_Description=Formula Description @@ -525,13 +524,11 @@ FR-Designer_FormulaPane_Search=Search FR-Designer_Tab_carousel=Tab carousel FR-Designer_setCarousel=Start FR-Designer_carouselInterval=Interval - FR-Designer_ClassName_panel=Class Name FR-Designer_Description_panel=Description FR-Designer_Edit_panel=Edit FR-Designer_Property_panel=Property FR-Designer_Select_panel=Sel - FR-Designer_LayoutTable_Column_Width=250 FR-Designer_Set_BG_Of_Current_Row=Set BG of the row being edited FR-Designer_Unload_Check=Prompt users when leave without submitting @@ -547,7 +544,6 @@ FR-Designer_PageSetup_Page=Page FR-Designer_Custom_Job_Description=Description FR-Designer_Property=Property FR-Designer_ClassName=Class Name - FR-Designer_Polyblock_Edit=Aggregation block edition FR-Designer_Function_Description_Area_Text=The class must inherit 'com.fr.script.AbstractFunction'. The compiled class should be copied to\nJ2EE server '{R1}' directory.\nAdd the source code(.java file) into the same folder if need.\nExample: {R2}} FR-Designer_PageSetup_Horizontal=Horizontal @@ -588,7 +584,1411 @@ FR-Designer-Move_Tab_First=move to first FR-Designer-Move_Tab_End=move to end FR-Designer-Move_Tab_Next=move to next FR-Designer-Move_Tab_Prev=move to previous +FR-Designer_Too_Large_To_Paste=Too large to paste! +FR-Designer_Too_Small_To_Paste=Too small to paste! FR-Designer_AxisReversed=Axis in reverse order FR-Designer_Logarithmic=Log scale FR-Designer_Chart_Log_Base=Log Base -FR-Designer_Chart_F_Radar_Axis=Value Axis \ No newline at end of file +FR-Designer_Chart_F_Radar_Axis=Value Axis +FR-Designer_Style=Style +FR-Designer_Color=Color +FR-Designer_Border=Border +FR-Designer_Background-Pattern=Pattern +FR-Designer_SimpleDetail_Report= +FR-Designer_SimpleCross_Report= +FR-Designer_Edit_Button_ToolBar=Edit Button ToolBar +FR-Designer_Remove_Button_ToolBar=Remove Button ToolBar +FR-Designer_Get-CubeGetting= +FR-Designer_DoubleLayer_Report= +FR-Designer_Get-Cube= +CellWrite-InsertRow_NULL=Null +DashBoard-ChartFloat=Chart +contact_info=Contact information (optional) +Page_Setup=Page Setup +CellWrite-Print_Export=Print/Export +Cannot_Get_Date=Can not get date +FR-Designer_Modify=Modify +M-Write_Preview=Filling Preview +FR-Base_RWA-Key=Key +China=China +Set_Legend_Sytle=Set Legend Format +FR-Designer_Number=Number +FR-Designer-Widget-Style_Common=Common +M-Save_As=Save As +Following_parameters_are_not_generated=The following parameters are not generated +FR-Designer-Basic_Activation_Key_Copy_OK=Key has been copy to clipboard +Utils-Current_Sheet=Current Sheet +ConditionB-is_less_than=less than +BorderLayout-West=West +AnalysisLine=Line +Layer_Report_Warnning_info=Line report engine is suitable for large data.
Many report features will no longer support if use it,
more information in helpdocument. +Tree-Width=Tree Width +alert_word=Export without fixed height, cell hight will change according to the content and pagination position will different from the preview result. +PageSetup-Paper_Size=Paper Size +M-Page_Setup=Page Setup +DashBoard-FormBook=Form +X-Coordinate=Horizontal axis +Style-Line_Spacing=Line Spacing +FR-Designer_Plugin_Should_Update_Title=Warning +Server-Define_Data_Connection=Define Data Connection +BarInside=Bar Inside +Border-Color=Border Color +NotAllow=Invalid +Utils-File_type=File type +FR-Designer-Plugin_Install_From_Local=Install plugin from local file +Summary_Method=Summary Method +Select_Specified_Grouping=Select custom group +HF-Number_of_Page=Total Number of Page +FR-Designer-Tree_Height=Tree Height +Owner=Owner +Home=Home +FR-Server_Embedded_Server_Stop=Built-in server-Stop +FR-Designer-Plugin_Detecting_Update=Checking for updates +HF-Whether_to_define_the_selected_type=Whether to define the selected type +StyleAlignment-Right=Right +FR-Designer_Alignment-Style=Alignment Style +PageSetup-Title_Start_Column=Duplicate Title Columns +Tree-Mutiple_Selection_Or_Not=MultiSelect +FR-Designer-Plugin_Search=Search +Choose_Role=Access Control +Append_Delete_Row_Message=Warning! Please set extended properties of the specified cell. +Form-ComboBox=Drop-down Boxes +PageSetup-Footer=Footer +Sorting=Sorting +DBCP_TEST_WHILE_IDLE=Open Idle Connections Recyclers Test +DS-Embedded_TableData=Built-in Data Set +FR-Designer_No-Privilege=No Privilege +FRFont-Subscript=Subscript +Background_Settings=Background Settings +FormulaD-Invalid_Formula=Invalid Formula +FR-Base_Margin=Margin +FR-Designer-Plugin_Shop_Installed=Plug-shop installed, whether to start immediately? +M_Edit-Send_to_Back=Send to Bottom +Email-Can_Preview_Report_Content=Preview Report Content in the Body +FR-Designer-FRFont_Italic=Italic +CellWrite-Print_Background=Cell Background +Wizard=Wizard +Preference-Is_Drag_Permited=Support drag-and-drop +FR-Designer_Release_Lock=Unlock +Form-Delimiter=Separator +wrong=wrong +FR-Menu-Server_Chart_PreStyle=Chart Predefined colors +Form-Button=Button +FormulaD-Valid_Formula=Valid Formula +ParameterD-Parameter_Interface=Parameter Interface +At_least_one_visual_worksheet=A workbook must contain at least one visible worksheet. If you want to delete, please insert a new worksheet. +Need_Min_Value=Need Min Value +Allow_Blank=Allow Null +CellWrite-InsertRow_DEFAULT=Default +Widget-Load_By_Complete=Full load +FR-Designer-Basic_Only_Submit_Current_Sheet=Submit Current Sheet Only +Sort-Sort_Order=Sort +File-File_Size_Limit=File Size Limit +PrintP-Print=Print (T) +FR-Designer-StyleAlignment_Center=Center +Preference-Setting_Colors=Colors Setting +Judge=Judge +Image-Adjust=Adaptive +Collect-User_Information_DES=Simply click on the "get activation code" button above, a new browser window will pop up. Then visit the product's official website to obtain an completely free activation code, the entire process takes only 3 minutes +FR-Designer_Plugin_Normal_Update_From_Local=Update from local file +BackgroundTexture-Canvas=Canvas +BarOutSide=Bar Outside +Preview_ToolTips=Preview ToolTips +FRFont-Family=Name +FR-Lic_does_not_Support_Remote=Current lic does not support remote design, please update the lic +InterfaceStyle=Style +RWA-Key=Key +WF-Name=Name +RWA-Click_Cell_To_Edit_Value=Click Cell to Edit Value +Utils-Row_Height=Row Height +ReportD-Excel_Export=Export Attributes +Form-Please_Select_A_Kind_Of_Form_Container=Select A Form Container +Column_Does_Not_Exsit=Column Does Not Exsit +M_Insert-Hyperlink=Hyperlink +can_not_include_underline=Can not contain "_" +FR-Designer-Plugin_Jar_Expired=Jar Expired +FR-Background_Image_Extend=Extend Image +TopDownShade=Gradient(vertical) +FR-Base_Right=Right +DataBinding=Data Binding +ConnectionPool_Attr=Connection Pool Attributes +Connect_SQL_Cannot_Null=Data Connection and SQL Cannot be Null +DBCP_MAX_ACTIVE=Max Active Connections +M_Window-Preference=Options +ToolBar_Top=Top ToolBar +FR-Designer_Indent-Pixel=Pixel +FR-Designer_Unit_MM=MM +IDLE=Idle +FRFont-Underline=Underline +FR-Designer-Plugin_Read_Plugin_List_Error=Error when reading plugin list +Type_Set=Type Setting +M_Format_A-Cell_Attributes=Other Attributes +CellWrite-Show_As_Image=Show As Image +ShowAsDownload=Display the binary content using download link +Form-ComboCheckBox=Drop-down CheckBox +BackgroundTexture-WovenMat=Woven Mat +BindColumn-Custom_Data_Appearance=Custom displays +Actived=Active +Env-Local_Directory=Local Directory +Form-Colon=Colon +Preference-Vertical_Scroll_Bar_Visible=Vertical Scroll Bar Visible +Utils-Show_Cell_Value=Show Cell Value +FR-Designer_ReportColumns-Repeat_Row=Copy row sequence +SpecifiedG-Specified_Group=Custom Group +RWA-Smart_Add_Cells=Smart Add Cells +HF-Left_Section=Left Section +M_Report-Report_Background=Report Background +Image-Extend=Stretch +FS_BI=Decision-making platform +ToolBar_Bottom=Bottom ToolBar +Hgap=Horizontal gap +FR-Designer_Enter-New-FileName=Enter New File Name +Verify_Fail=Validate Failed +CellWrite-InsertRow_Policy=Policy of Insert Row +FR-Designer-Plugin_Illegal_Plugin_Zip=Illegal plugin zip +RCodeVersion=Version +Convert=Convert +Please_Drag=Please drag in row fields, column fields and rollup fields +FR-Designer-Widget-Style_Preview=Preview +mobile_number=Mobile Number +FR-Designer_Form-ComboCheckBox=Dropdown CheckBox +CacheValidateTime=Cache valid time +Hyperlink-Extends_Report_Parameters=Inherit Report Parameters +FR-Designer_Values-Editor=Values Editor +Export-Excel=Excel +Utils-Left_to_Right=Landscape +ExpandD-Vertical_Extendable=Vertically +Utils-Report_Runtime_Env=Report working directory +Utils-Right_to_Left=From right to left +Utils-Beyond_the_top_side_of_Border=Beyond top border +Exception_StackTrace=Exception StackTrace +Corresponding_Fields=Corresponding Fields +Form-CheckBox=CheckBox +Utils-Current_Row=Current Row +BuildIn=Built-in +BindColumn-Results_Filter=Result Filter +FR-Designer-Plugin_Manager=Plugin Management +M_File-Export-CSV=CSV(comma delimited) +Data_Filter=Data Filter +ReportServerP-Edit_Printer=Edit Printer +FR-Designer_Datasource-Stored_Procedure=Stored Procedure +RESTART=Restart +FormulaD-Function_name=Function Name +ChooseOneButton=Please chose one control +Priority=Priority +Datasource-Datasource=Data Source +FR-Designer_Width=W +Cannot-Add_To_This_Area=Cannot Add To This Area +Run=Run +Set_Submit_Condition=Submit Condition +FR-Base_Value=Value +fileLocked_undeleted=Template is locked, you can not delete\! Click OK to refresh the templates list +Web_Apply=Web Application +Refresh_Database=Refresh database +Set_Row_Title_End=Set Duplicate End Rows +FR-Utils-New_Folder=New Folder +BiasD-From-upper_left_to_lower_right=upper left-lower right +CapsLock=CapsLock +StyleFormat-Sample=Sample +RWA-Smart_Add_Cell_Group=Smart Add Cell Group +MConfig-CancelButton=Cancel +Function-Choose_Function_Class=Choose Function Class +LatLng=Lat and Lng +DS-Server_TableData=Server Data Set +BackgroundTexture-GreenMarble=Green Marble +read_time_out=Load Timeout +JavaScript-Commit_to_Database=Commit to DB +DS-Relation_TableData=Linked Data Set +CellWrite-Page_Before_Row=Before Row +FR-Designer-Plugin_Load_Plugins_From_Server=Loading data from plugins store +D-Dispaly_Divide_Result_Set_into_Groups=Grouping on Result Set +Closed=Closed +RWA-Help=Set "No update if no modidy", so if cell is not modified, the record will not update; it improves filling and submit performance when data is large. +FR-Designer-Widget-Style_Custom=Custom +FR-Designer-Widget-Style_Render_Style=Rendering style +Highlight-Barcode=BarCode +FR-Designer_Connect_SQL_Cannot_Null=Data connection and SQL panel cannot be Null +trigger=trigger +M-Data_Analysis=Data Analysis +Function-The_selected_file_cannot_be_null=The select file cannot be null +No-Privilege=No Privilege +ReportColumns-Repeat_Column=Copy column sequence +SecondGraduationUnit=Minor Graduation Unit +Form-Widget_Property_Value=Attribute Value +GIVE-NAME=Give Name +FR-Designer_Rename=Rename +Utils-Merge_Cell=Merge Cells +Style-Spacing_After=After Paragraph +Enlarge_Or_Reduce=Zoom +Tree-Height=Tree Height +RCodeErrorCorrect=Error-correction +Enter-New-FileName=Enter New File Name +try_resending=Please try resending +M-Open_Report=Open... +Please_Select=Please Select +InRow=InRow +Form-TextArea=Text Fields +FR-Designer_Https_Enable=Start https +Widget-Custom_Widget_Config=Custom control +already_exists=Already exists +Original_Marked_Filed=Original Tag Field +BackgroundTexture-Sand=Beach +Values=Values +Not_use_a_cell_attribute_table_editing=You may not use a cell attribute table editing +Root=Root node +cycle=Cycle +open-new-form-tip=open new form tip +Support-Current_Auto_Complete_Shortcut=Current Shortcut key +GROUPING_MODE=Ordinary Grouping +DBCP_MAX_IDLE=Max Idle Connections +BackgroundTexture-BlueTissuePaper=Blue Sandpaper +ReportD-Export_Hided_Row=Export hidden Row +FR-Custom_styles_lost=Custom style lost +Env-Des2=Servlet position should like "http\://localhost\:8080/WebReport/ReportServer",contains host name, port, web application and servlet. Input the upper items and the system will automatically generate a servlet position for you. +Env-Des1=Please select the WEB-INF directory where the Report Server is in +PageSetup-Placement_Center_on_Page=Center on Page +sure_to_delete=sure to delete +Already_exists_not_add_repeat=Already exist, please do not repeat +Axis_Title=Axis title +FR-Designer-Plugin_Install_Failed=Install failed +FR-Designer-Widget-Style_Frame=Frame +MainGraduationUnit=Major Graduation Unit +Second_Axis=Secondary Axis +Classifier-Ge=Piece +MSBold=MS YaHei +Form-Design_Size=Form Design Size +FR-App-Template_Save=Save +ExpandD-Horizontal_Extendable=Horizontally +RP_Authority_Edit=Permission +Warnning=Warning +RoleName_Can_Not_Be_Null=Role name can not be null or duplicate +Application=Applications +Formula_Dictionary_Display_Examples_Html=Real value range is \ +ECP-error_pwd=Password Error +FR-Hyperlink_ChartHyperlink=Chart Hyperlink +M_Edit-FormatBrush=Format Painter +Indent-Pixel=Pixel +FR-Designer-Widget-Style_Border_Line=Border weight +Widget-Default_Widget_Config=Basic control +Version-does-not-support=Current lic does not support remote design, please update the lic +StyleAlignment-Right_To_Left=Right To Left +Style-Spacing_Before=Above Paragraph +Has_Existed=Already Exist +FR-Designer_DisplayNothingBeforeQuery=Display Nothing Before Query +Still=Still +JS_WARNING2=\ Ex: http\://localhost\:8075/WebReport/demo.js +JS_WARNING1= \ WebReport is a relative report project directory, there is a test.js in WebReport\\js,
 the relative path is js/test.js +Connectionline=Connection Modes +Utils-Insert_Record=Insert Record +Set-Parameter-Name=Set parameter name first +More-information=More information +Parameter-Boolean=Boolean +FRFont-Strikethrough=Strikethrough +Server-version-tip=The version of the server you are connecting is older than the Designer, continue to connect, some attributes you are editing may not be saved. Please conform the versions of FineReport Designer and the deployment server are consistent. +Form-All_Files=All Files +DBCP_NUM_TEST_PER_EVCTION_RUN=Recycled and Tested Idle Connections +FR-Designer-FRFont_Family=Name +Device=Device +M_Insert-Cell=Cell Element +Present-Formula_Present=Formula Present +FRFont-Superscript=Superscript +CellWrite-Page_Before_Column=Before Column +Golden=Golden +Preference-Support_Cell_Editor_Definition=Support Cell Editor +M-Page_Preview=Page Break Preview +HJS-CC_to=CC +Tree-Select_Leaf_Only=Only return leaf node +Pointer-A-Tick-Order=Pointer value and unit value' s order of magnitude +Pink=Pink +StyleAlignment-Distibuted=Justify +Odd=Odd +already-saved=Already saved +FR-Hyperlink_Chart_Cell=Chart Hyperlink-Link Cell +Style-Left_Indent=Left Indent +Offline=Offline +Form-Hierarchy_Tree_Next=Next +Needle=Pointer +GoogleMap=Google Map +Running=Running +M_Edit-Unmerge_Cell=Un-merge Cell +Out_Border_Line=Outside Border +Style-Spacing=Spacing +FR-Utils_Submit=Submit +ReportServerP-Previous=Previous +StyleAlignment-Text_Style=Text control +RelatedChart=Linkage between charts and tables +ProcessManager=Process Management +Cancel_Repeat_Attributes=Cancel duplicate rows and columns +FR-App-File_Message=Message +Datasource-Stored_Procedure=Stored Procedure +RWA-Row_Offset=Row Offset +M_Format-Style=Style +detail_description=Detailed description +FR-Designer-Widget-Style_Title_Content=Title Content +ParameterD-Report_Parameter=Report Parameter +HF-Edit_Header=Edit Page header +Sytle-FRFont=Font +FR-Designer_Finish_Export=Export Finished +MultiFileUpload=MultiFile Upload +HF-Page_Number=Page Number +Style-Right_Indent=Right Indent +Desktop=Desktop +FR-Server-All_Error=Error +ConditionB-Operator=Operator +Today=Today +Form-Widget_Name=Control Name +Covered_All=Override All +Day=Day +External=External +Black_Font=Black Font +LOG-Report_Server_IS_Started=Report Server is Started +Tips\:You_Can_Input_B1_To_Input_The_Data_Of_The_First_Row_Second_Column=Tips\:You can input B1 to get the data in the second cell of the first row +FR-Designer_ChooseOneButton=Please chose one control +Widget-Sizing=Sizing +NO_Border_Line=NO Border +Cell_Data=Cell data +StyleAlignment-Vertical_Text=Vertical Text +Label=Label +Orange=Orange +zeroMarginWarn=The printer exist the physical margins
report page margin settings the small can
can print content insufficiency.
  +Widget-Date_Selector_Return_Type=Return value type +Utils-Switch_To_Template_Reportlet=Switch to template web report +satisfy=satisfy +FR-Designer_WidgetDisplyPosition=Control DisplyPosition +FR-Base_Top=Top +FR-Designer_Form-CheckBox=CheckBox +Reportlet-Parameter_Type=Parameter passing mode +sending=sending... +FR-Designer-FRFont_Foreground=Foreground +FR-Import-Export_SVG=SVG +M_Edit-Clear_Contents=Content +Session=Session +Widget-Load_Type=Load +template_unsaved=template can not be saved +check_communication=Please check the network communication is normal and the server is running +List-Need_Head=Need List Head +FR-Designer-Plugin_Has_Been_Installed=Plugin has been installed,switch to plugin updates to update it. +FR-Widget_Tree_And_Table=Control tree and control table +FR-Base_Help=Help +FR-Designer-Plugin_Update_Successful=Update successfully, restart the sever to enable it +August=August +LOG-Is_Being_Openned=Is Being Openned +BackgroundTexture-Oak=Oak +Multi_nam_formula=\ data set name\: +TurnOn=TurnOn +HJS-Send_Successfully=Send Successfully +Mon=Mon +Inner_Parameter=Built-in Parameter +Required=Required +Summary=Summary +template_unopened=unable to open template +FR-Base_Bottom=Bottom +DataFunction-Min=Minimum +StyleFormat-Percent=Percentage +FR-App-All_Custom=Custom +M_Insert-Data_Column=Insert Data Column +PLEASE=Please +Numbers=Numbers +Release_Lock=Unlock +Background-Background_is_NULL=No Background +FR-Designer_Sytle-FRFont=Font +Gradation=Gradation +The_current_list_is_empty=The current list is empty +Formula_Dictionary_Display_Examples=\Real value range is \ +Schedule-Template_Parameter=Template Parameter +JSShow=Dynamic display +Level_coordinates=Hierarchy coordinate +MainGraduationLine=Major Graduation Line +Hyperlink-Web_link=Web link +StyleAlignment-between_-90_and_90=between -90 and 90 +FormulaD-Custom_Function=Custom Function +FR-Designer_Integer=Integer +PageSetup-Finis_Start_Row=Duplicate Last Row +RWA-Remove_Field=Remove Field +Form-Desin_Width=Form Design Width +No-tableData=Return no dataset +Page_Total=Total +FR-Designer-Plugin_Connect_Server_Error=Error to connect plugin store, try again later +Import-Excel_Source=Excel Source Files +Utils-Left_to_Right_a=From left to right +ExpandD-Expand_Attribute=Extension Attributes +Report-Write_Attributes=Filling Attribute +Utils-Current_Column=Current Column +Need_Max_Value=Need Max Value +Report_Not_Exist=Report Not Exist +HF-Insert_Content=Insert +UpParent=Upper parent cell +PageSetup-Page=Page +Utils-Move_Up=Move Up +BackgroundTexture-PurpleMesh=Purple Grid +Export-Word=Word +ServerM-Widget_Manager=Control management +FR-Designer-Basic_Activation_Key=Activation Key\: +FR-App-Template_Report_Not_Exist=Report Not Exist\! +Protected=Protect +Skip=skip +FR-Designer_PageSetup-Vertically=Vertically +revert=revert +PageSetup-Predefined=Predefine +Border-Style-Radius=Border-radius +IntPart=Integer part +ExpandD-Data_Column=Data Column +Sort-Ascending=Ascending +FR-Designer-Widget_Style=Style +parameter_name_exist=The parameter name already exists +FR-Designer_Layer-Build=Layered Build +Please_Rename=Please Rename +Form-Editing_Listeners=Event editing +RWA-Smart_Add_Fields=Smart Add Fields +FR-Designer-Tree_Width=Tree Width +Record=Record +Poly-Report_Component=Aggregate Report Component +Options=Options +NS-war-remote=Error codes\:1117 Compression deployment does not support remote design +Sche-Minute=Minute +Three_Rows_Of_Three_Grid=A grid with 3 rows and 3 columns +WorkSheet=Free Report +FR-Designer-Widget_Size=Control Size +BindColumn-Select=List +FR-Widget_Mobile_Terminal=Mobile Terminal +FR-Background_Image_Titled=Titled Image +SetPrinterOffset=Printer Offset +FR-Designer-Plugin_Installed=Installed +FR-Designer-Hyperlink_Name=Name +FR-Designer_Form-Button=Button +Black=Black +FR-Designer-Widget-Style_Border_Color=Border Color +Set_Submit_Event=Set Submit Event +PDF-Print_isPopup=Whether display a popup settings box +LayerPageReport_CountPerPage=Number of records per page +Display_Modes=Display Modes +RowSpan=Row Span +Datasource-Test_Connection=Test Connection +Function-Function_Manager=Function Manager +Host_Name=Host Name +CellWrite-Show_As_HTML=Show As HTML +FR-Designer-Widget-Style_Shadow=Shade +FR-Designer_Parameter_String=String +Form-SupportTag=Displayed as label +ReportD-Report_Write_Attributes=Report filling attributes +DataFunction-Count=Count +Top_And_Thick_Bottom_Border_Line=Top and thick bottom border +Client=Client +BindColumn-Result_Serial_Number_Start_From_1=Serial Number Starts From 1 +History=History +Already_exists=Already exist, please input again +Datasource-Original_Charset=Original Code +FR-Base_Left=Left +ReportServerP-Next=Next +BindColumn-Top_N=Top N +Animation_Special=Special Effect +Widget-Chart_Widget_Config=Chart control +FR-Designer-Plugin_Cannot_Update_Not_Install=Cannot update, please confirm it is installed correctly +After_Changed_Some_Attributes_Are_Different=Some attributes will be changed after conversion, whether to continue? +PieStyle=Pie Style +HF-Are_you_sure_to_delete_it=Are you sure to delete it +Utils-Design-File_Open=Open +FR-Utils_Label=Label +Data-Label=Label +M_Insert-Text=Insert Text +Form-View_Tree=View Tree +M_Insert-Chart=Insert Chart +HF-Even_Page=Even Page +ReportServerP-Report_server_parameter=Report Server Parameter +JavaScript-Form_Submit=Form Submit +Horizontal-Split_Layout=Horizontal partitioning layout +BorderLayout-Center=Center +INFO-Reset_Webapp=Reset Application Server +FR-Designer_Text=Text +IN_and_INOUT_type_not_as_cursor=IN and INOUT type canot be cursor +Main_Axis=Primary axis +M_Edit-Cut=Cut +Utils-The_Name_has_been_existed=The name already exists +FR-Background_Image=Image +Character=character +Unit_Thousand=Thousand +Test=Test +Utils-Would_you_like_to_save=Would you like to save +HF-Header_and_Footer=Header and Footer +LIST_MODE=List Mode +HF-Insert_Image=Insert Image +FR-Designer-Widget-Style_Standard=Standard +FR-Designer_Form-List=List +BackgroundTexture-Denim=Denim +Execute_Report_by_Layer_Engine=Execute report by line report engine +M_Edit-Bring_Forward=Bring to Forward +Choose_All=Select All +Form-RadioGroup=Radio Button Group +FR-Base_Remove=Delete +FR-Remote_Connect2Server_Again=Connection break, whether to reconnect the sever +Semicolon=Semicolon +StyleFormat-Category=Category +Report_Template=Report Template +Utils-Beyond_the_right_side_of_Border=Beyond right border +BackgroundTexture-Papyrus=Papyrus +LayerPageReport_PageEngine=Use page-based computations and separately execute report +Schedule-The_selected_file_must_be_end_with_filter=The selected file must end with '.cpt' or '.class' or '.frm' +Provide=Provide +FormulaD-Math_&_Trig=Math and Trig +FR-Designer-StyleAlignment_Right=Right +Error_TableDataNameRepeat=\ already exsits in Server DataSet or the name is repeated. +Choose_None=Deselect +File-tree=File tree +FRFont-bold=Bold +FR-Designer_Set_Submit_Condition=Submit Condition +Form-Change_Widget_Name=Change Control Name +ReportColumns-Report_Columns=Multi-columns/lines display +Can_not_use_FormatBursh=Can't use format painter in multiple selections +CellElement-Property_Table=Cell Attribute Table +Dictionary-Dynamic_SQL=Dynamic SQL +FR-Designer_Form-CheckBoxGroup=CheckBoxGroup +DBCP_TIME_BETWEEN_EVICTIONRUNSMILLIS=Sleep Time of Idle Connections Recyclers +ReportD-Export_Hided_Column=Export hidden column +Preference-Support_Undo=Support Undo +FR-mobile_report_analysis=report analysis +Month=Month +Utils-Column_Width=Column-W +Collect-Use_Designer=Use Designer +Widget-User_Defined_Editor=Predefine editor, you can only change its properties in control mangement menu. +Unit_Ten_Thousand=Ten Thousand +Data_Setting=Data Setting +ECP_input_pwd=Enter your password\: +period=period +Note=Note +Multiline=Multi-line edit +Datasource-Convert_Charset=Encoding Conversion +DashBoard-ConnectionList=Data Connection +Utils-Submit_Forcibly=Submit forcibly +Parent_Marked_Field=Parent Tag Field +Logout=Logout +FR-Designer_Show_Blank_Row=Supplement blank line +FR-Base_Format=Format +FR-App-Export_png=png +Delete_Column=Delete Column +SecondGraduationLine=Minor Graduation Line +SpecifiedG-Groups=Groups +CONTINUUM_MODE=Continous grouping +Datasource-Connection_failed=Connection Failed +CategoryName=Category Name +DBCP_INITIAL_SIZE=Initialize Connections +Colors=Colors +FR-Import-Export_CSV=CSV(comma delimited) +FR-Designer-StyleAlignment_Left=Left +BackgroundTexture-PaperBag=Paper Bag +RWA-BuildIn_SQL=Built-in SQL +SingleLayer=Single Layer +Or-you=or you +FR-Designer_Certificate_Path=Certificate Path +Utils-Last_Page=Last Page +BarCodeD-Drawing_Text=Display Barcode Text +Warning-Template_Do_Not_Exsit=Template do not exsit +BindColumn-Group=Group +Export-SVG=SVG +Plane3D=Plane 3D +SessionID=sessionID is session ID parameter in current template +FR-Designer_Height=H +HF-Odd_Page=Odd Page +About-All_Rights_Reserved=All Rights Reserved +Utils-Current_Cell=Current Cell +Web_Preview_Message=Please save the template in the current runtime environment directory +FR-Hyperlink_Chart_Float=Chart Hyperlink-Floating Elements +Dic-Data_Query=Data Query +CellWrite-Print_Content=Content of Cell +Privilege-Selected_None_Of_Any_Items=Selected None +FRFont-Size=Size +Function-J2EE_server=J2EE server +FR-Designer_Allow_Blank=Allow NULLs +Build_Tree_Accord_Parent_Marked_Filed=Build Tree according to the parent tag field of the selected data set +Preference-Horizontal_Scroll_Bar_Visible=Horizontal Scroll Bar Visible +Scope=Scope +Save_All_Records_In_Memory=Save All Records in Memory +FreezeWarning1=Initial value can't greater than end value +FlowLayout=Fluid Layout +M_Report-Report_Footer=Report Footer +FR-Action_Add=Add +BorderLayout-East=East +feedback_tip=Please enter a description of the problem, not more than 400 words +FS_Start_Date=Start Date +FR-ConditionB_Operator=Operator +Printer-Alias=Alias +DS-Class_Name=Class Name +FR-Designer-Plugin_Has_Been_Disabled=Plugin has been disabled, restart the designer and sever to enable it and the sever need to be manually restarted +Sort-Original=Unsort +Utils-Top_to_Bottom_a=From top to bottom +Parameter-String=String +InnerRadis=Inner radius size +Want_To_Cover_It=Whether to override it +Divided_stage=Divided Stage +Seriously=Seriously +ReportServerP-PDF=PDF +Utils-Switch_To_Class_Reportlet=Switch to class web report +FR-Designer_Show_Blank_Column=Supplement blank column +M_Edit-Redo=Redo +Visibility=Visibility +Series_Use_Default=Series Default Use +Has_Selected=Already Selected +BackgroundTexture-Walnut=Walnut +FormulaD-Function_category=Function Type +Interface=Interface +FR-Designer-Beyond_Bounds=Can't go beyond the border +seconds=s +Auto-Build=Automated Build +FR-Designer-Plugin_Install_Successful=Plugin will takes effect when designer and sever are restarted and the sever need to be manually restarted +Template_Path=Template Path +FR-Designer-FRFont_Bold=Bold +Poly_Name=Aggregation block name +WorkBook=WorkBook +Hyperlink-Self_Window=Current Window +FR-Designer-Widget-Style_Title=Title +FR-Designer-FRFont_Size=Size +M_File-Export-SVG=SVG +Capacity=Capacity +Rose_Red=Rose Red +StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=Rotation value must between -90 and 90 degrees +HF-Move_Left=Left shift +Cell_Group=Cell Group +Week=Week +PageSetup-Orientation=Orientation +M-Open_Recent=Open Recent +NNormal= +Integer=Integer +Select_The_Source_To_Save=Select Source to Save +Transition=Branch +FR-Designer_Get_Lock=Lock +one_record_exists_in_many_groups=One record exists in many groups +FR-Designer_Cover_None=Override None +DeciPart=Decimal part +ExpandD-Up_Father_Cell=Upper Parent Cell +Deep=Deep +FRFont-Shadow=Shade +Reportlet=Web Report +Calendar=Calendar +DateFormat-Custom_Warning=Note\: Custom date format does not support the format checking +Unit_MM=MM +Server-Start=Start +CellPage-Can_Break_On_Paginate=Can break when paging +Build_Tree_Accord_Marked_Filed_Length=Build tree according to tag field's length +ComboCheckBox-Start_Symbol=Initializer +Real=Real +RWA-Batch_Modify_Cells=Batch Modify Cells +FR-Designer_Build-Way=Build Way +Read=Read +StyleAlignment-Degrees=Degrees +M_Format_A-Border=Border +Utils-Delete_Record=Delete Record +Reload=Reload +Image-Select_Picture=SelectImage +RWA-Submit=Submit +the_template=this template +FR-Designer_Component_Scale=Component Scale +FRFont-italic=Italic +Year=Year +HF-Move_Right=Right shift +Data-Check=Data Monitor +Unknown=Unknown +Submit_Style=Submit way +Left_Border_Line=Left Border +Brown=Brown +Select_A_Tree_DataSource_To_Build=Select a tree data set to build +Overlapping=Overlapping +DS-Class_TableData=Class Data Set +FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=Illegal plugin,cannot be installed +DisplayNothingBeforeQuery=Display Nothing Before Query +Y_Axis=Y Axis +FormulaD-Most_Recently_Used=Rencently used +FormulaD-Input_formula_in_the_text_area_below=Input formula in the text area below +Build-Way=Build Way +M_Edit-Undo=Undo +Line-Style=Line-Style +Datasource-Other_Attributes=Other Attributes +M_Server-Global_Parameters=Global Parameters +Suffix=Suffix +Image-Image_Files=Image Files +EditRC-Entire_row=Entire row(R) +HF-First_Page=Home Page +BackgroundTexture-Granite=Granite +DataList=Data Link +Recursion=Recursion +BarStyle=Bar +FR-Designer-Min_Width=Min-Width +Utils-Report-Env_Directory=Report working directory +D-ChartArea=Chart Area +Only=Only +FR-Base_No=No +SpecifiedG-Put_all_others_together=Merger all others +HF-NewLine_Des=Click on the move or delete button to operate line breaks +WLayout-Border-ThreeContainer=You have the central, northern and western border layout containers.You can adjust the height of the northern one and the width of the western one. +Parameter_Name=Parameter Name +FR-Base_Table=Table +Des-Remove_WorkSheet=The report to be deleted may contain data. If you want to delete report, please click on Yes button. +Rotation=Rotation +Undefined=Undefined +Support-Auto_Complete_Shortcut=Auto complete shortcut key +Set_Column_Title_End=Set Duplicate End Column +Submit_Url=Submit Url +ReportServerP-Are_you_sure_to_delete_the_selected_printer=Are you sure to delete the selected printer +long_data_can_not_show_fully=Long data can not be fully demonstrated +Utils-Beyond_the_bottom_side_of_Border=Beyond bottom border +FR-Import-Export_PDF=PDF +Form-CheckBoxGroup=CheckBoxGroup +Click-Me=Click Me +Hyperlink-Self=Open link in original page(S) +Tree-Select_Leaf_Only_Tips=If unchecked, only return current node, not contain its child nodes +StyleAlignment-Text_Rotation=Text orientation +Format-Error=Entered value is not in the correct format +Server-Stop=Stop +Preference-Setting_Grid=Grid Setting +ReportServerP-Add_Printer=Add printer +FR-Designer-Plugin_Active=Enable +Utils-File_name=File name +NOT_NULL_Des=NOT NULL +Right_Border_Line=Right Border +EditRC-Entire_column=Entire column(C) +PageSetup-Top_to_bottom=Down, then over +Click-Get_Default_URL=Click To Get Default URL +StyleAlignment-Wrap_Text=Word wrap +Remove_All_Button=Remove all buttons +FR-Designer_Component_Interval=Component Interval +ReportColumns-Columns_vertically=Fixed columns per line +ReportGUI-Print_Background=Print/export background +Export-CSV=CSV +M_Edit-Paste=Paste +FR-Designer-Basic_Restart_Designer=Restart designer +ReportServerP-PDF2-INFO=Only used in LINUX/UNIX when Chinese font is not installed +FormulaD-Check_Valid=Validity Checks +server_disconnected=server disconnected +ParameterD-Parameter_name_cannot_be_null=Parameter name cannot be empty +FR-Designer-Plugin_Version_Is_Lower_Than_Current=The version of plugin update package is lower than the current +RWA-NotChange_Unmodified=No modify, no update +User_Information=User Information +Custom_styles_lost=Custom Style is Missing +PageSetup-Margin=Margin +M-New_FormBook=New Form +Widget-TreeNode=Tree node button +Form-Url=URL +Utils-Beyond_the_left_side_of_Border=Beyond left border +Float_Element_Name=Float Element Name +Purple=Purple +DashBoard-Potence=Permissions +M-Close_Template=Close Template(C) +paper=Page +Not_Exsit=Not exist in report +Utils-Insert_Row=Insert Row +Utils-Delete_Row=Delete Row +not_support_authority_edit=this element does not support authority edit +Formula_Tips=The formula must be begin with "\ +FR-Action_Copy=Copy +Compile_Success=Compile Successfully +BackgroundTexture-RecycledPaper=Recycled Paper +StyleAlignment-Single_Line=Single Line +Utils-Move_Down=Move Down +Please_Set_Repeat_First=Please set duplicate title row and column first +Writer-ShortCuts_Setting=Filling Shortcut key setting +Verify-Data_Verify=Data validation +FR-mobile_analysis_style=analysis style +Confirm-Delete-File=Whether to delete the selected file +PageSetup-Header=Header +JavaScrit-Asynch=Asyn +ReportServerP-Toolbar=Toolbar +Utils-Top_to_Bottom=Portrait +Platform=Platform +FR-Designer-FRFont_Underline=Underline +Show_in_Containing_Folder=Open the folders where it stored in +BackgroundTexture-WaterDroplets=Water Drop +FR-Designer-Dependence_Install_Failed=install failed +Layout-Padding=Padding +roles_already_authority_edited=Configured role +WidgetDisplyPosition=Control disply position +SpecifiedG-Force_Group=Mandatory Group +FormulaD-Formula_Definition=Formula Definition +I-xyScatterStyle_Marker=Scatter +Hour=Hour +ColorMatch=Color +M_Edit-Order=Re-order +BackgroundTexture-Bouquet=Bouquet +Verify-Error_Information=Validate Error Information +LayerData=Underlying Data +Rename=Rename +Widget-Load_By_Async=Async load +Shape=Shape +BindColumn-This_Condition_has_been_existed=The Condition Already Exists +NS-exception_readError=Error codes\:1305 Template file parsing error +Set_Column_Title_Start=Set Duplicate Title Columns +Fri=Fri +M_Report-Report_Parameter=Report Parameter +REPORTLETS=Parameter of access path to multi-templates +WLayout-Card-ToolTip=Card layout, you can add multiple components in it. +M-Popup_ChartType=Chart Type +Please-Wait=Please Wait +FR-Designer-Form-ToolBar_Widget=Control +Widget-Array=Array +FieldBinding=Bound Field +Top_Bottom_Border_Line=Top and bottom border +M-Others=Others... +Hyperlink-Link_Opened_in=Link Opened in +FR-Utils_WorkBook=WorkBook +M_Insert-Float=Float Element +Out_Thick_Border_Line=Thick Border +FR-App-File_Lookup_range=Search range +ReportColumns-Columns_to=Split To +Transparent=Transparent +Parameter-Integer=Integer +PDF-Print_Setting=PDF Print Setting +Server-Embedded_Server=Built-in server +M_Server-Server_Config_Manager=Server Configuration Manager +FR-Utils-Would_you_like_to_cover_the_current_file=Would you like to override the current file +CellWrite-InsertRow_COPY=Original +Edit_String_To_Formula=Edit String To Formula +Edit-Column_Count=Number of columns +Father=Father +ReportColumns-Columns_after=Over +FR-Designer_Undo=Undo +DBCP_MIN_IDLE=Min Idle Connections +M-Data_Analysis_Settings=Data Analysis Settings +M-Form_Preview=Form Preview +Form-Basic_Properties=Basic Property +quote=quote +Thu=Thu +Collect-Collect_User_Information=Collect User information +Layer-Build=Layered Build +FR-Designer-FRFont_Line_Style=LineType +BackgroundTexture-BrownMarble=Brown Marble +PageSetup-Page_Setup=Page Setting +Form-Semicolon=Semicolon +ECP_re_input=Password Error, please re-enter +ExpandD-Sort_After_Expand=After Extension +FR-Designer-Dependence_Install_Succeed=install succeed +Env-Configure_Workspace=Configure working directory +feedback_info=We welcome your comments and suggestions, please fill out the information as detailed as possible, we will contact you soon +Ratio=Ratio +DBCP_TEST_ON_BORROW=Test before Getting Connections +FR-Designer_layerIndex= +WEB-Write_Setting=Filling Settings +M-New_WorkBook=New WorkBook +FR-Designer-Plugin_Has_Been_Actived=Plugin is now active, restart the designer and sever to enable it and the sever need to be manually restarted +Datasource-Maximum_Number_of_Preview_Rows=Maximum Number of Preview Rows +ExpandD-Cell_Expand_Attributes=Extension Attributes +Select_the_repeated_row_and_column=Select rows and columns need to duplicate +FormulaD-Date_&_Time=Date and Time Function +Max-Mem-Row-Count=Cache to disk when records more than +BorderLayout-South=South +Export-Text=Text(tab delimited) +JavaScript-Synch=Synch +FR-App-All_Warning=Alert +M_Edit-Send_Backward=Send to Backward +Form-Layout=Layout +FR-Designer-Plugin_Shop_Need_Update=Plugin store a new version, whether to update? +FR-Designer_WorkBook=WorkBook +UpBarBorderStyleAndColor=UpBar Border Style And Color +GridLayout=Grid Layout +Utils-Default_Value=Default Value +Widget-Comb_Widget_Config=Combination control +Import-Excel2007_Source=Excel2007 Source Files +Y-Coordinate=Vertical Coordinate +FR-Base_SimSun_Not_Found=Cannot find the song typeface, please set the system default language as the designer typeface +FR-Designer_Seriously=Seriously +Upload=Upload +Form-Widget_Property_Table=Attribute Table +Des-Merger_Cell=The selected area contains multiple data, if you merge them, only the data at the upper left corner will be reserved. +FR-Designer-Basic_Copy_Build_NO=Double click to copy build NO. +FR-Base_TurnOn=Turn On +FR-Base_Rows=Row +Form-Remove_Repeat=Remove duplicates +Yes=Yes +Datasource-JNDI_Name=JNDI Name +Utils-Delete_Column=Delete Column +HF-Delete_it=Delete it +JavaScript-Dynamic_Parameters=Dynamic Parameters +px=px +FR-App-Report_Template=Report Template +Verify-Message=Error Message +Plan=Plan +Vertical-Split_Layout=Vertical Split Layout +ParameterD-Delay_Playing=Display Nothing Before Query +TurnOff=TurnOff +FR-Please_Rename=Please Rename +Select_Data_Set=Select Data Set +Name_has_Colon=Name\: +ReportColumns-Columns_horizontally=Fixed lines per column +FR-Base_Yes=Yes +ReportColumns-Repeat_Row=Copy row sequence +Print_Setting=Print Setting +Registration-User_Name=User Name +Datasource-User_Defined=Custom +FR-Designer-Plugin_DownLoadMessage=Plugin need dependence support,need to install ({R1} m)? +Delay=Delay +FR-Designer-All_MSBold=MS YaHei +Utils-Now_create_connection=Creating data connection +FR-Template-Path_chooseRightPath=Please choose a right path +FR-Remote_Re_Connect_to_Server=The server is down, whether to reconnect it +Nation=Country +DBCP_MAX_WAIT=Max wait time +FR-App-Template_Form=Form +Address=Address +Sub_Report=Sub Report +FR-Import-Export_Word=Word +FR-Server_Version_Tip=The version of the server you are connecting is older than the Designer, continue to connect, some attributes you are editing may not be saved. Please conform the versions of FineReport Designer and the deployment server are consistent. +StyleAlignment-Left_To_Right=Left To Right +Verify-ToolTips=If not meet formula, throw up validation error message +BackgroundTexture-Stationery=Letter Paper +FR-Designer_RWA-Help=Set "No update if no modidy", so if cell is not modified, the record will not update; it improves filling and submit performance when data is large. +M_Insert-Barcode=Barcode +Bounds=Bounds +FR-Designer-Undo_All_Authority_Operations=Undo all the privilege edit operations +Datasource-Context=Context +CellWrite-Page_After_Column=After Column +FR-Designer_Cancel=Cancel +Button-Group-Display-Columns=Number of columns displayed +Widget-Height=Control Height +Examples=Examples +Formula_Dictionary_Display_Example=Real value range is \ +StyleAlignment-Horizontal=Horizontal +HyperLink_Must_Alone_Reset=Multiple hyperlink +ExpandD-Expand_Direction=Extension Direction +Include=Include +Export-Excel-Page=Page Break +FR-Designer-Min_Height=Min-Height +Filed=Field +ReportServerP-Import_Css=Reference Css +M_Insert-Formula=Insert Formula +FR-Designer_Auto-Build=Automated Build +FRFont-Foreground=Foreground +Bubble-Width=Bubble Width +Form-Hierarchy_Tree=Hierarchy Tree +WLayout-Border-LayoutContainer=You have the central and northern border layout containers.You can adjust the height of the northern one +Preference-JDK_Home=JDK Home +Utils-Insert_Column=Insert Column +FR-Designer_ToolBar_Top=Top ToolBar +BindColumn-The_Conditions_of_FatherCell=The Conditions of Parent Cell +Links=Links +M_Report-Report_Header=Report Header +Sub_Report_Description=The sub-report should exist in the runtime environment of its parent, and they can not be the same template +T_Insert-Float=Insert Float Element +BackgroundTexture-FishFossil=Fish Fossil +My_Computer=My Computer +FORMLET=Path parameter when accessing different forms +HF-Undefined=Undefined +Widget-User_Defined_Widget_Config=Predefined control +Report-Write_Attributes_Group_Warning=Number of cells in each field in all cell group must be the same +Form-Single_quote=Single Quote +Compile_Success_And_Then_Save=Compile Successfully And Then Save +FR-Designer_Layout-Padding=Padding +Layout_Container=Layout Container +Admin=Admin +Form-EC_toolbar=Report toolbar +FR-App-All_Auto=Automatic +Utils-Available_Columns=Available Columns +Form-Change_Widget_Name_Discription=Input New Control Name +FR-Module_Designer=Designer module +FR-Import-Export_Text=Text(tab delimited) +Values-Editor=Values Editor +FR-Designer_Yes=Yes +ExpandD-Expandable=Extensibility +Tree-Return_Full_Path=Return full hierarchical path +FRFont-bolditalic=BoldItalic +FR-Base_StyleFormat_Sample=Sample +Area_Value=Area Value +FR-Designer-Plugin_Disable=Disable +Utils-Are_you_sure_to_remove_the_selected_item=Are you sure to remove the selected item +Face_Write=Filling +Poly-Report_Block=Report type aggregation block +Vgap=Vertical gap +FR-Designer_HyperLink_Must_Alone_Reset=HyperLink_Must_Alone_Reset +DS-Class=Class +FR-Hyperlink_Please_Select_Reportlet=Please select webreport +FS_Report_Type=Report Type +HF-New_Line=Line breaks +Privilege=Permission +Export-Offline-Html=Output offline HTML report +FR-Designer_open-new-form-tip=The form is created by the designer older than 711 vision, it cannot be opened. Please use the corresponding designer. +FR-Designer-Widget-Style_Frame_Style=Frame Style +Present-No_Present=Cancel Present Settings +FR-Designer_Form-Password=Password +X_Axis=X Axis +FR-mobile_html_analysis=Html5 analysis +M_Edit-Bring_to_Front=Bring to Top +Null_Value_Show=Show if null +Datasource-JNDI_DES=Note\: .jar files containing INITIAL_CONTEXT_FACTORY need to be copied into the installation directory in the /lib directory +PrintP-Print_Preview=Print Preview +Form-Hierarchy_Tree_Last=Last +Has_been_gone=\ Has been lost,whether to add the style +RWA-Add_Field=Add Field +newNode=add Node +PageSetup-Shrink_to_fit_content=Automatically adjust according to cell content +FR-Designer_Date=Date +Column_Multiple=Line Numbers +FR-App-All_File=File +Sort-Descending=Descending +FR-Designer-Plugin_Delete=Delete +Above=Above Version +Utils-The-Chart=Chart +FRFont-plain=General +Calculating=Calculating +Form-Object=Form Object\: +May=May +FR-Designer_Plugin_Normal_Update=Update +FR-Hyperlink_Reportlet=Webreport +M_Edit-Copy=Copy +Sub_Report_Message2=The parent-report is not in the current runtime environment +Sub_Report_Message3=Can not choose itself +Sub_Report_Message1=Please choose the currect path +Form-Allow_CustomData=Allow custom data +FR-Server_Version_Tip_MoreInfo=Conform the version numbers of FineReport Designer and the deployment server are consistent, in order to avoid the problems caused by inconsistent versions. If you open the template produced by higher designer vision, error may occurs or the original template properties missed. If the Designer Version you used to create the template is higher than the final deployment server version, the server may not be able to properly load the template. +FR-Designer_Server-version-tip-moreInfo=Conform the version numbers of FineReport Designer and the deployment server are consistent, in order to avoid the problems caused by inconsistent versions. If you open the template produced by higher designer vision, error may occurs or the original template properties missed. If the Designer Version you used to create the template is higher than the final deployment server version, the server may not be able to properly load the template. +Get_Lock=Lock +HF-Edit_Footer=Edit page footer +Datasource-New_Charset=New Code +Preference-Custom=Custom +BackgroundTexture-Newsprint=Newsprint +ConditionB-Add_bracket=Add Parentheses +Datasource-Connection_successfully=Connection successfully +Function-The_class_must_implement_the_interface=The class must implement the interface +FR-Designer_ChartF-Transparency=Transparent +Crimson=Crimson +FR-Hyperlink_Dialog=Dialog +FR-Designer_Covered_All=Override All +Hyperlink-New_Window=New Window +Style_Name=Format Name +CSS_warning= \ Relative report project directory like WebReport, if reference a css files named test.css
 in WebReport\\css, then the relative path is css/test.css +FR-Base_Column=Column +Three_Rows_Of_Two_Grid=A grid with 3 rows and 2 columns +DBCP_VALIDATION_QUERY=SQL Validation Query +M_Edit-Clear_Formats=Format +Parameter_Setting=Parameter Setting +Related=Linkage +BorderLayout-Constraints=Placement +Write_Preview=Filling Preview +PageSetup-Page_Order=Print Order +Verify-Verify_Formula=Validation formula +State=State +FR-Designer-Widget-Style_Body_Background=Body Background +FR-App-Privilege_No=No Permission +Please_Drag_ParaPane= +Come_True=Implement +ISEMPTY=Is null +Background-Texture=Texture +FR-Designer_Verify-Message=Wrong Message +Locked=(Locked) +Utils-Design-Action_Cancel=Cancel +Image-Titled=Tile +Gradient-Direction=Gradient Direction +Green=Green +Report_Engine=Report Engine +Return-String=Return String +Margin=Margin +Pitch_Percentage=Space percentage +FR-Base_TurnOff=Turn Off +Utils-has_been_existed=Already exists +HF-Insert_Formula=Insert Formula +Utils-Exit_Designer=Exit Designer +Formula_Dictionary_Display=Every value($$$) in the actual values above, it's display value is +PageSetup-Left_to_right=Over, then down +Utils-Import_Excel_Data=Import Excel Data +M-Save=Save +redo=redo +Status=Status +Draw=Draw +FR-Designer_Message=Message +Records=Records +FR-Designer_ComboBox=Drop-down Boxes +Driver=Driver +Template_Parameters=Template Parameters +Form-Remove_Repeat_Data=Remove Repeated Data +ECP_decode=Report Decryption +Area_Name=Area Name +Others=Others +Merge=Merge +BackgroundTexture-Parchment=Parchment +BindColumn-Bottom_N=Last N +Frame=Frame +Bottom_Border_Line=Bottom Border +Muiti_In=Multi-level Drill-down +FR-Designer-Dependence_Install_Online=install online +Use_Default_ToolBar=Use default toolbar +M_Server-Platform_Manager=Platform Management +PageSetup-inches=inches +Form-Widget_Property=Attribute name +FR-Layout_Padding=Padding +Schema=Theme +Server_Path=Host location +Condition_Display=Condition Display +FR-Server-Design_template_unopened=Can't open the template +Function-Function_Class_Name=Function Class Name +Schedule-Template=Template name +Tree_Data_Field=Tree Data Field +Border-Style-Normal=Rectangular Border +Top_And_Double_Bottom_Border_Line=Top and bottom double border +FR-Server_Embedded_Server_Start=Built-in server-Open +FR-Designer-Basic_Restart_Designer_Later=Restart later +StyleAlignment-Top=Top +ReportServerP-First=First +Not_Exist=Not Exist +FR-Remote_File_is_Locked=Someone else is editing the report, please try later +Apply=Apply +Sytle-Indentation=Indentation +Parameter-Float=Single-precision +HF-Center_Section=Center Section +Form-Double_quotes=Double Quote +M_File-Export-Word=Word +M_File-Export-Text=Text File(tab delimited) +PageSetup-First_Page_Number=Starting page number +Execute=Execute +Task=Task +Custom_Button_Type_Submit=Submit +FR-Designer-Widget_Settings=Control Setting +IS_Need_Password=Need Password +PageSetup-Horizontally=Horizontally +No_Editor_Property_Definition=No Editor Property Definition +Env-Remote_Server=Remote Server +FR-Utils_Background=BG +FR-Designer-Plugin_Warning=Alert +Server-version-info=The current template file is designed by higher vision designer. Open it may result in losing original attributes or error. Please upgrade your designer. +CellWrite-Page_After_Row=After Row +HF-Right_Section=Right Section +PageSetup-Title_Start_Row=Duplicate Title Rows +From=From +Preference-Grid_Line_Color=GridLine Color +RowTo=Row To +FR-Designer_ReportColumns-Repeat_Column=Copy column sequence +M_Server-Function_Manager=Function Manager +KeyWord=KeyWord +DS-Multi_Dimensional_Database=Multi-dimensional Database +BiasD-Slope_Line=Slope Line +Tue=Tue +ReportServerP-Last=Last +FR-Base_Columns=Columns +SpecifiedG-Leave_in_their_own_groups=Leave in their own groups +LOG-Please_Wait=Please Waiting +Form-ToolBar=Form ToolBar +FR-Base_sure_remove_item=Are you sure to delete the selected item +Component_Scale=Component Scale +Hyperlink-Use_CJK_to_encode_parameter=Use CJK to process parameter +LOG-Has_Been_Openned=Report Has Been Openned +FR-Designer-Dependence= +ECP_error_pwd=Password Error +REPORTLET=Parameter of access path to template +RWA-Column_Offset=Column Offset +Forecast=Forecast +Light_Orange=Light orange +StyleAlignment-Vertical=Vert +Form-List=List +ParameterD-Show_Parameter_Window=Show Parameter Panel +FR-Designer_Set_Submit_Event=Set Submit Event +Value_Percent=Value Percentage +DBCP_MIN_EVICTABLE_IDLE_TIMEMILLIS=Keep Min Idle Time Value +Function-The_class_must_be_located_in=The class must be located in +FR-Action_Sort=Sort +DataFunction-Average=Average +FR-Designer_Show_in_Containing_Folder=Open the folders where it stored in +M_File-Export-Excel=Excel +DataFunction-Max=Maximum +FR-Designer_Form-Widget_Name=Control Name +FS_End_Date=End Date +Export-Excel-Simple=Original +ColumnTo=Column TO +SpecifiedG-Discard_all_others=Discard all others +DS-TableData=Data Set +Form-DataTable=DataTable +Sub_Report_ToolTips=Sub Report ToolTips +Right_Top=Upper right +M_Edit-Merge_Cell=Merge Cell +FR-Designer_Restore_Default=Back to default\ +Component_Interval=Components Interval +Cover_None=Override None +Datasource-From_Database=DB table +Folder=Directory +Form-Allow_Edit=Allow Edit +M_Edit-Clear=Clear +ParentCell_Setting=Parent Cell Setting +Only_selected_cell_can_paste_only=Paste when cell is selected +M_Report-Report_Columns=Multi-columns/lines +Unit_Hundred=Hundred +FR-Designer_DataTable-Build= +Widget-Form_Widget_Config=Form control +Server-version-tip-moreInfo=Conform the version numbers of FineReport Designer and the deployment server are consistent, in order to avoid the problems caused by inconsistent versions. If you open the template produced by higher designer vision, error may occurs or the original template properties missed. If the Designer Version you used to create the template is higher than the final deployment server version, the server may not be able to properly load the template. +Actions=Task +FR-Designer-Dependence_Connect_Server_Error=connect error +High=High +HJS-Send_Failed=Send Failed +HJS-Message=Message +File-Allow_Upload_Files=Uploaded files +FR-Designer-Form-ToolBar_Chart=Chart +Thick_Bottom_Border_Line=Thick Bottom Border +FR-Action_Remove=Delete +FRFont-Style=Style +Select_DataColumn=Select Data Column +StartValue=Start Value +SINGLE_FILE_UPLOAD=Only support single file upload +BackgroundTexture-Cork=Cork +M_Format-Data_Map=Data Dictionary +FR-mobile_native_analysis=native analysis +HighLight=High Light +FR-Designer_Dropdown-More-Preview= +local=local +FR-Designer_Gradation=Gradation +PageSetup-Finis_Start_Column=Duplicate Last Column +Env-Invalid_User_and_Password=Invalid User Or Password +FR-Designer-Plugin_All_Plugins=All plugins +FR-Designer_Prepare_Export=Ready to export, please wait +DBCP_TEST_ON_RETURN=Test before Returning Connections +no-alternatives=no alternatives +FR-Designer_Submmit_WClass=Submmit By Custom Class +M_Insert-Slope_Line=Insert Slope Line +FR-Designer-Plugin_Plugin_Description=Description +ExpandD-Not_Expand=No extend +Utils-Bottom_to_Top=From the bottom up +Collect-Click\!_Get_user_information_code=Get Activation Code +FR-Already_exist=Current environment is already exist\: +Send=Send +M_Edit-Clear_All=All +Brown_Orange=Brown Orange +PageSetup-Portrait=Portrait +FR-Designer_Form-RadioGroup=Radio Button Group +FR-Utils-App_AllFiles=All Files +Popup=Popup +Server_Charset=Server code +CellWrite-Repeat_Content_When_Paging=Repeat Content in New Page +Utils-No_Pagination=No Page Break +Form-NullLayout=Absolute positioning +ConditionB-Remove_bracket=Remove Parentheses +email=Email +Minute=Minute +FR-Designer-Plugin_Update=Plugins update +alraedy_close=Already closed +ComboCheckBox-End_Symbol=Terminator +DataColumn=Data Column +Form-Password=Password +FR-Background_Image_Adjust=Adjust Image +Export-Excel-PageToSheet=One Page Per Sheet +Edit-Row_Count=Number of rows +DS-Report_TableData=Report Data Set +Sche-Hour=Hour +Group_Count=Group Count +EndValue=End Value +FR-Designer_Sytle-Indentation=Indentation +DownBarBorderStyleAndColor=Downcolumn Border Style And Color +World=World +FR-Designer-Basic_Cancel=Cancel +Finally=Finally +Low=Low +Please_Input_The_Key=Please Input the key the map use +Smart=Smart +Preference-Predefined=Predefined +Current_custom_global=Custom Global Styles of Current Report +FR-Designer-Plugin_Shop_Need_Install=You are not add-ons store of resources, whether to download? +WEB-Pagination_Setting=Page Break Preview +RCodeDrawPix=PIX +FR-Designer-Widget-Style_Alpha=Opacity +BorderLayout-North=North +HJS-Current_Page=Current Page +Compile=Compile +Show_Blank_Row=Supplement blank line +TableData_Dynamic_Parameter_Setting=Dynamic parameter injections +FR-Background_Image_Default=Default Image +BackgroundTexture-WhiteMarble=White Marble +DataFunction-Sum=Sum +Collect-The_user_information_code_is_invalid=The activation code is invalid, please visit the website to get a new one +Preference-Locale=Internationalization +M_File-Export-PDF=PDF +BiasD-From-lower_left_to_upper_right=lower left-upper right +Border-Style=Border Style +Sort=Sort +Image-Image_Layout=Image Layout +Panel=Panel +FR-Designer-Basic_Copy_Build_NO_OK=Build No. has been copyed +All_Border_Line=All Border +FR-Utils-Please_Input_a_New_Name=Input a New Name +FR-Base_Formula_Plugin=Plugin Function +Two_Rows_Of_Three_Grid=A grid with 2 rows and 3 columns +FR-Designer_Certificate_Pass=Certificate Password\ +Bubble-Series_Name=Series Name +M-New_Multi_Report=New Aggregate Report +BackgroundTexture-PinkTissuePaper=Pink Sandpaper +Preference-Support_Default_Parent_Calculate=Default Parent Grid Calculate +Show_Blank_Column=Supplement blank column +BaiduMap=Baidu Map +Report-Web_Attributes=Web Attributes +FR-Designer_StyleAlignment-Wrap_Text=Word wrap +Need=Need +Parameter-Double=Double-precision +Config_Servlet=Config Remote Server +Form-Comma=Comma +Verify=Validation +PageSetup-Landscape=Landscape +Weeks=Weeks +FR-Designer-Widget-Style_Title_Background=Title Background +Preference-Pagination_Line_Color=Pagination Line Color +Test_URL=Test URL +Fill_blank_Data=Supplement blank data +ReportServerP-The_name_of_printer_cannot_be_null=Printer name cannot be empty +FR-Designer-Basic_Copy_Activation_Key=Double click to copy key to clipboard +Continuum=Proximal continuum +BackgroundTexture-MediumWood=Dark Wood +Datasource-Column_Index=Column Ordinal +Function-Function_File=Function File +Form-Component_Bounds=Component Bounds +Utils-Submit=Submit +Conditions_formula=Condition Formula +M_Insert-Image=Insert Image +FR-Designer-Plugin_Will_Be_Delete=Plugin will be deleted, restart the designer and sever to enable it and the sever need to be manually restarted +FormulaD-Functions=Functions +Mobile_Terminal=Mobile terminal +CheckBox=CheckBox +FR-Designer-Plugin_Install=Install +Sun=Sun +FR-Designer_ToolBar_Bottom=Bottom ToolBar +Widget-Width=Control width +Series_Name=Series name +Set_Row_Title_Start=Set Duplicate Title Rows +HF-Default_Page=Default Page +Env_Des=Username and password must be correspond with sign-on environment, if permissions are enabled +Widget-User_Defined=Predefine +Url_location=Absolute path +Disk_File=Disk File +Inside=Inside +FR-Designer_filedChosen= +ServerM-Predefined_Styles=Predefined Styles +is_need_word_adjust=Word Auto Adjust +Background-Null=No Background +PageSetup-Vertically=Vertically center +FR-Designer_Root=Root node +FR-Designer_Form-TextArea=Text field +ReportServerP-Import_JavaScript=Reference JavaScript +Form-TableTree=Table Tree +Opened=Opened +M_Edit-Delete=Delete +Widget-Form_Widget_Container=Form Container +BindColumn-Summary=Summary +Sche-Second=Second +Server-Open_Service_Manager=Open Service Manager +FRFont-Effects=Special Effects +OtherGroup_Name=The name of other group +Specify=Specify +Highlight-Click_to_Choose_Property_To_Modify=Click to Choose Property to Modify +triggered=triggered +Double_Bottom_BorderLine=Bottom Double Border +M_Insert-Sub_Report=Insert SubReport +Unit_Ten=Ten +Polybolck=Aggregation block +Select_sort_order=Select sort order +HJS-Mail_to=To +StyleAlignment-Left=Left +Two_Rows_Of_Two_Grid=A grid with 2 rows and 2 columns +FR-Designer-Form-Please_Drag_ParaPane=Drag to parameter panel +Milliseconds=Milliseconds +DataFunction-None=None +Delivery=Delivery +ColumnSpan=Column Span +StyleAlignment-Bottom=Bottom +Read_failure=Load failed. Source file may be corrupted +Verify-Verify=Data validation +FR-Designer-Widget-Style_Title_Format=Title Format +FR-Designer_Edit_String_To_Formula=Edit String To Formula +FR-Base_UnSignIn=\ Not Logged In +Every=Every +CellWrite-Preview_Cell_Content=Content of Cell +FormulaD-Data_Fields=Data Items +FR-Designer_Role=Role +FR-Designer_Permissions=Permissions +FR-Designer_Form_Button=Button +FR-Designer_WF_Name=Name \ No newline at end of file diff --git a/designer_base/src/com/fr/design/locale/designer_ja_JP.properties b/designer_base/src/com/fr/design/locale/designer_ja_JP.properties index 1a7ee9322..d5d9dac39 100644 --- a/designer_base/src/com/fr/design/locale/designer_ja_JP.properties +++ b/designer_base/src/com/fr/design/locale/designer_ja_JP.properties @@ -521,7 +521,6 @@ FR-Designer_PageSetup_Page=\u30DA\u30FC\u30B8 FR-Designer_Custom_Job_Description=\u8A18\u8FF0 FR-Designer_Property=\u5C5E\u6027 FR-Designer_ClassName=\u985E\u540D - FR-Designer_Polyblock_Edit=\u30A2\u30B0\u30EA\u30B2\u30FC\u30B7\u30E7\u30F3\u30D6\u30ED\u30C3\u30AF\u7DE8\u96C6 FR-Designer_Function_Description_Area_Text=\u3053\u306E\u30AF\u30E9\u30B9\u306F\u7D99\u627F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059"com.fr.script.AbstractFunction"\u3002\u3092\u7D99\u627F\u3059\u3079\u304D\u3067\u3059\u3002\u30B3\u30F3\u30D1\u30A4\u30EB\u5F8C\u306E\u985E\u30D5\u30A1\u30A4\u30EB\u3092\nJ2EE\u30B5\u30FC\u30D0\u30FC "{R1}" \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3002\u306B\u30B3\u30D4\u30FC\u3057\u3066\u3001class\u306B\u5BFE\u5FDC\u3059\u308Bjava\u30D5\u30A1\u30A4\u30EB\u3082\u5F53\u76EE\u6B21\u306B\u7F6E\u3044\u3066\u304F\u3060\u3055\u3044\u3002\n\u4F8B\u3048\u3070\uFF1A{R2} FR-Designer_PageSetup_Horizontal=\u6A2A\u65B9\u5411 @@ -553,9 +552,1434 @@ FR-Designer_Background_Clear= FR-Designer_Background_Image_Select= FR-Designer_Initial_Background_Tips= FR-Designer_Mouse_Move_Tips= +FR-Designer_Too_Large_To_Paste=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30B5\u30A4\u30BA\u306F\u30DC\u30FC\u30C0\u30FC\u306B\u8D85\u3048\u305F\u306E\u3067\u3001\u8CBC\u308A\u4ED8\u3051\u3067\u304D\u307E\u305B\u3093\uFF01 +FR-Designer_Too_Small_To_Paste=\u8A72\u5F53\u51E6\u306B\u8CBC\u308A\u4ED8\u3051\u3067\u304D\u307E\u305B\u3093\u3001\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u30B5\u30A4\u30BA\u306F\u9AD8\u3059\u304E\uFF01 FR-Designer_Mouse_Click_Tips= FR-Designer_Plugin_Should_Update_Please_Contact_Developer= FR-Designer_AxisReversed=\u8EF8\u9006\u9806 FR-Designer_Logarithmic=\u5BFE\u6570\u76EE\u76DB\u308A FR-Designer_Chart_Log_Base=\u5E95\u6570 -FR-Designer_Chart_F_Radar_Axis=\u5782\u76F4\u8EF8 \ No newline at end of file +FR-Designer_Chart_F_Radar_Axis=\u5782\u76F4\u8EF8 +FR-Designer_Style=\u30B9\u30BF\u30A4\u30EB +FR-Designer_Color=\u8272 +FR-Designer_Border=\u67A0 +FR-Designer_Background-Pattern=\u30D1\u30BF\u30FC\u30F3 +FR-Designer_Printer_Native_Button=\u30ED\u30FC\u30AB\u30EB\u5370\u5237 +FR-Designer_SimpleDetail_Report=\u7C21\u5358\u660E\u7D30\u8868 +FR-Designer_Reset=\u30EA\u30BB\u30C3\u30C8 +FR-Designer_WidgetOrder=\u30A6\u30A3\u30B8\u30A7\u30C3\u30C8\u306E\u9806\u756A +FR-Designer_Button-OK=\u5206\u304B\u308A\u307E\u3057\u305F +FR-Designer_Mobile-Warning=\u6700\u5927\u306E\u9AD8\u3055\u306F\u8868\u793A\u30A8\u30EA\u30A2\u306E80\uFF05\u4EE5\u4E0A\u306B\u306A\u308A\u307E\u305B\u3093 +FR-Designer_Mobile_Form_Analysis_Annotation=\u8AAC\u660E\:\u8A72\u5F53\u8A2D\u5B9A\u3088\u308A\u3001\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9\u306E\u30A2\u30D7\u30EA\u3067\u306E\u89E3\u6790\u30E2\u30FC\u30C9\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u3059\u3002 +FR-Designer-Invalid_Page_Number=\u7121\u52B9\u306A\u30DA\u30FC\u30B8\u756A\u53F7 +FR-Designer_Form-Forzen-Speed=\u3001\u305D\u3057\u3066\u6A2A\u65B9\u5411\u81EA\u5DF1\u9069\u5FDC\u307E\u305F\u306F2\u65B9\u5411\u81EA\u52D5\u9069\u5FDC\u3092\u5229\u7528\u3057\u3001\u5E33\u7968\u8868\u793A\u306E\u30B9\u30D4\u30FC\u30C9\u3092\u4E0A\u3052\u3067\u304D\u307E\u3059\u3002 +FR-Designer_Properties_Mobile=\u30B9\u30DE\u30FC\u30C8\u30D5\u30A9\u30F3\u5C5E\u6027 +FR-Designer_AllCategories=\u5168\u3066\u306E\u7A2E\u985E +FR-Designer-Selected_Widget=\u5F53\u306E\u30A6\u30A3\u30B8\u30A7\u30C3\u30C8 +FR-Designer_SimpleCross_Report=\u7C21\u5358\u30AF\u30ED\u30FC\u30B9\u8868 +FR-Designer_Log=\u30ED\u30B0 +FR-Designer_Form-Fit-Tip=\u81EA\u5DF1\u9069\u5FDC\u30D7\u30E9\u30B0\u30A4\u30F3 +FR-Designer_Button-Cancel=\u53D6\u308A\u6D88\u3057 +FR-Designer_LocalWidget=\u30ED\u30FC\u30AB\u30EB\u30A6\u30A3\u30B8\u30A7\u30C3\u30C8\u30E9\u30A4\u30D6\u30E9\u30EA +FR-Designer_Alert=\u30A2\u30E9\u30FC\u30C8 +FR-Designer_TableData-Default-Para=\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u306E\u30C7\u30D5\u30A9\u30EB\u30C8\u30D1\u30E9\u30E1\u30FC\u30BF +FR-Designer_Edit_Button_ToolBar=\u30DC\u30BF\u30F3\u306E\u30C4\u30FC\u30EB\u30D0\u30FC\u3092\u7DE8\u96C6 +FR-Designer-Plugin_Please_Update_Jar=jar\u30D1\u30C3\u30AF\u3092\u30A2\u30C3\u30D7\u30C7\u30FC\u30C8\u3057\u3066\u304F\u3060\u3055\u3044 +FR-Designer_Form-Frozen-Tip=\u30D5\u30EA\u30FC\u30BA\u3092\u4F7F\u3046\u6642\u3001\u5F8C\u8A18\u306E\u30D7\u30E9\u30B0\u30A4\u30F3\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066\u304F\u3060\u3055\u3044\uFF1A +FR-Designer_Remove_Button_ToolBar=\u30DC\u30BF\u30F3\u306E\u30C4\u30FC\u30EB\u30D0\u30FC\u3092\u524A\u9664 +FR-Designer_Normal=\u6B63\u5E38 +FR-Designer_Install_Template=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB +FR-Designer_Copy=\u30B3\u30D4\u30FC +FR-Designer_Allow-Blank=\u7A7A\u306B\u8A31\u3059 +FR-Designer_Clear_All=\u5168\u3066\u3092\u30AF\u30EA\u30A2 +FR-Designer_Delete_Template=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u524A\u9664 +FR-Designer_Mobile_Report_Analysis_Annotation=\u8AAC\u660E\:\u8A72\u5F53\u5C5E\u6027\u3088\u308A\u3001\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9\u306E\u30A2\u30D7\u30EA\u3067\u306E\u89E3\u6790\u30E2\u30FC\u30C9\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u3059\u3001\u9801\u5206\u3051\u30D7\u30EC\u30D3\u30E5\u30FC\u3060\u3051\u3092\u652F\u6301\u3001\u66F8\u304D\u8FBC\u307F\u306B\u8A2D\u5B9A\u3059\u308B\u6642\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002 +FR-Designer_DoubleLayer_Report=\u4E8C\u968E\u30BF\u30A4\u30C8\u30EB +FR-Designer_Validate=\u691C\u8A3C +CellWrite-InsertRow_NULL=Null\u5024 +DashBoard-ChartFloat=\u30B0\u30E9\u30D5 +contact_info=\u304A\u554F\u3044\u5408\u308F\u305B\u60C5\u5831\uFF08\u4EFB\u610F\uFF09 +Page_Setup=\u30DA\u30FC\u30B8\u8A2D\u5B9A +CellWrite-Print_Export=\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3092\u5370\u5237 +Cannot_Get_Date=\u65E5\u6642\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093 +FR-Designer_Modify=\u6539\u6B63 +M-Write_Preview=\u5831\u544A\u30D7\u30EC\u30D3\u30E5\u30FC +FR-Base_RWA-Key=\u30E1\u30A4\u30F3\u30AD\u30FC +China=\u4E2D\u56FD +Set_Legend_Sytle=\u51E1\u4F8B\u66F8\u5F0F\u3092\u8A2D\u5B9A +FR-Designer_Number=\u6570\u5B57 +FR-Designer-Widget-Style_Common=\u666E\u901A +M-Save_As=\u540D\u524D\u3092\u3064\u3051\u3066\u4FDD\u5B58 +Following_parameters_are_not_generated=\u4EE5\u4E0B\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u306F\u751F\u6210\u3055\u308C\u307E\u305B\u3093 +FR-Designer-Basic_Activation_Key_Copy_OK=\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3057\u305F +Utils-Current_Sheet=\u30AB\u30EC\u30F3\u30C8\u30B7\u30FC\u30C8 +ConditionB-is_less_than=\u3088\u308A\u5C0F\u3055\u3044 +BorderLayout-West=\u897F\u90E8\u306E +AnalysisLine=\u5206\u6790\u30E9\u30A4\u30F3 +Layer_Report_Warnning_info=\u30E9\u30A4\u30F3\u30A8\u30F3\u30B8\u30F3\u306F\u5927\u30C7\u30FC\u30BF\u91CF\u306E\u72B6\u6CC1\u4E0B\u3067\u9069\u7528\u3055\u308C\u307E\u3059\u3002
+Tree-Width=\u5E45 +alert_word=\u884C\u306E\u9AD8\u3055\u3092\u56FA\u5B9A\u305B\u305A\u5C0E\u51FA\u3092\u9078\u629E\u3057\u305F\u6B73\u3001\u5C0E\u51FA\u3057\u305Fword\u306E\u7DE8\u96C6\u306F\u3001\u30BB +PageSetup-Paper_Size=\u7D19\u30B5\u30A4\u30BA +M-Page_Setup=\u30DA\u30FC\u30B8\u306E\u8A2D\u5B9A +DashBoard-FormBook=\u8868 +X-Coordinate=\u6A2A\u5EA7\u6A19 +Style-Line_Spacing=\u884C\u9593\u9694\u8DDD\u96E2 +FR-Designer_Plugin_Should_Update_Title=Warning +Server-Define_Data_Connection=\u30C7\u30FC\u30BF\u63A5\u7D9A\u5B9A\u7FA9 +BarInside=\u67F1\u5B50\u5185\u4FA7 +Border-Color=\u67A0\u7DDA\u8272 +NotAllow=\u975E\u5408\u6CD5 +Utils-File_type=\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7 +FR-Designer-Plugin_Install_From_Local=\u30ED\u30FC\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3059\u308B +Summary_Method=\u53D6\u308A\u307E\u3068\u3081\u65B9\u6CD5 +Select_Specified_Grouping=\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u30B0\u30EB\u30FC\u30D7\u5206\u3051\u3092\u9078\u629E +HF-Number_of_Page=\u7DCF\u30DA\u30FC\u30B8\u6570 +FR-Designer-Tree_Height=\u9AD8\u3055 +Owner=\u30AA\u30FC\u30CA\u30FC +Home=\u30E1\u30A4\u30F3\u30DA\u30FC\u30B8 +FR-Server_Embedded_Server_Stop=\u5185\u8535\u30B5\u30FC\u30D0\u30FC-\u4E00\u6642\u505C\u6B62 +FR-Designer-Plugin_Detecting_Update=\u66F4\u65B0\u3092\u30C1\u30A7\u30C3\u30AF\u3057\u3066\u3044\u307E\u3059 +HF-Whether_to_define_the_selected_type=\u9078\u629E\u3055\u308C\u305F\u30BF\u30A4\u30D7\u3092\u5B9A\u7FA9\u3057\u307E\u3059\u304B +StyleAlignment-Right=\u53F3\u8A70\u3081 +FR-Designer_Alignment-Style=\u30A2\u30E9\u30A4\u30F3\u30E1\u30F3\u30C8 +PageSetup-Title_Start_Column=\u91CD\u8907\u3059\u308B\u6A19\u984C\u5217 +Tree-Mutiple_Selection_Or_Not=\u8907\u6570\u9078\u629E +FR-Designer-Plugin_Search=\u691C\u7D22 +Choose_Role=\u6A29\u9650\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +Append_Delete_Row_Message=\u6CE8\u610F\uFF01\u6307\u5B9A\u3055\u308C\u305F\u30BB\u30EB\u306F\u3001\u62E1\u5F35\u5C5E\u6027\u3092\u8A2D\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059 +Form-ComboBox=\u30B3\u30F3\u30DC\u30DC\u30C3\u30AF\u30B9 +PageSetup-Footer=\u30DA\u30FC\u30B8\u30D5\u30C3\u30BF\u30FC +Sorting=\u30BD\u30FC\u30C6\u30A3\u30F3\u30B0 +DBCP_TEST_WHILE_IDLE=\u30A2\u30A4\u30C9\u30EB\u30EA\u30B5\u30A4\u30AF\u30EB\u30E6\u30CB\u30C3\u30C8\u691C\u67FB +DS-Embedded_TableData=\u5185\u8535\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8 +FR-Designer_No-Privilege=\u30A2\u30AF\u30BB\u30B9\u304C\u62D2\u5426\u3055\u308C\u307E\u3057\u305F +FRFont-Subscript=\u4E0B\u4ED8\u304D +Background_Settings=\u80CC\u666F\u8A2D\u5B9A +FormulaD-Invalid_Formula=\u7121\u52B9\u306A\u516C\u5F0F +FR-Base_Margin=\u30DE\u30FC\u30B8\u30F3 +FR-Designer-Plugin_Shop_Installed=\u30D7\u30E9\u30B0\u30A4\u30F3\u30B7\u30E7\u30C3\u30D7\u304C\u3059\u3050\u306B\u958B\u59CB\u3059\u308B\u304B\u3069\u3046\u304B\u3001\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u3066\u3044\u307E\u3059\u304B\uFF1F +M_Edit-Send_to_Back=\u6700\u80CC\u9762\u3078\u79FB\u52D5(K) +Email-Can_Preview_Report_Content=\u30C6\u30AD\u30B9\u30C8\u30D7\u30EC\u30D3\u30E5\u30FC\u30EC\u30DD\u30FC\u30C8\u306E\u5185\u5BB9 +FR-Designer-FRFont_Italic=\u50BE\u659C +CellWrite-Print_Background=\u30BB\u30EB\u80CC\u666F\u3092\u5370\u5237\u3059\u308B +Wizard=\u30A6\u30A3\u30B6\u30FC\u30C9 +Preference-Is_Drag_Permited=\u30C9\u30E9\u30C3\u30B0\u3092\u30B5\u30DD\u30FC\u30C8\u3059\u308B +FR-Designer_Release_Lock=\u30A2\u30F3\u30ED\u30C3\u30AF +Form-Delimiter=\u533A\u5207\u308A\u7B26 +wrong=\u9593\u9055\u3063\u305F +FR-Menu-Server_Chart_PreStyle=\u30B0\u30E9\u30D5\u30D7\u30EC\u5B9A\u7FA9\u914D\u8272 +Form-Button=\u30DC\u30BF\u30F3 +FormulaD-Valid_Formula=\u6709\u52B9\u306A\u516C\u5F0F +ParameterD-Parameter_Interface=\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9 +At_least_one_visual_worksheet=\u5C11\u306A\u304F\u3068\u3082\u4E00\u3064\u306E\u30D3\u30B8\u30E5\u30A2\u30EB\u30EF\u30FC\u30AF\u3092\u6301\u3063\u3066\u3044\u308B\u30EF\u30FC\u30AF\u30D6\u30C3\u30AF\u306B\u306F\u3001\u524A\u9664\u3057\u305F\u3044\u5834\u5408\u306F\u3001\u65B0\u3057\u3044\u30EF\u30FC\u30AF\u30B7\u30FC\u30C8\u3092\u633F\u5165\u3057\u3066\u304F\u3060\u3055\u3044 +Need_Min_Value=\u6700\u5C0F\u5024\u304C\u5FC5\u8981 +Allow_Blank=\u7A7A\u6B04\u3042\u308A +CellWrite-InsertRow_DEFAULT=\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u306F +Widget-Load_By_Complete=\u5B8C\u5168\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +FR-Designer-Basic_Only_Submit_Current_Sheet= +Sort-Sort_Order=\u30BD\u30FC\u30C8\u9806 +File-File_Size_Limit=\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u3092\u5236\u9650\u3059\u308B +PrintP-Print=\u5370\u5237(T) +FR-Designer-StyleAlignment_Center=\u4E2D\u592E\u63C3\u3048 +Preference-Setting_Colors=\u8272\u306E\u8A2D\u5B9A +Judge=\u88C1\u5224\u5B98 +Image-Adjust=\u9069\u5FDC +Collect-User_Information_DES=\u30A2\u30AF\u30C6\u30A3\u30D9\u30FC\u30C8\u30B3\u30FC\u30C9\u306F\u4F7F\u7528\u8005\u60C5\u5831\u306E\u53CE\u96C6\u306E\u305F\u3081\u3060\u3051\u306B\u7528\u3044\u3089\u308C\u307E\u3059\u3002\u4E0A\u306E\u300C\u30A2\u30AF\u30C6\u30A3\u30D9\u30FC\u30C8\u30B3\u30FC\u30C9\u53D6\u5F97\u300D\u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u3068\u3001\u65B0\u305F\u306A\u30A6\u30A3\u30F3\u30C9\u30A6\u304C\u73FE\u308C\u307E\u3059\u3002\u88FD\u54C1 +FR-Designer_Plugin_Normal_Update_From_Local=\u30ED\u30FC\u30AB\u30EB\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u66F4\u65B0 +BackgroundTexture-Canvas=\u30AD\u30E3\u30F3\u30D0\u30B9 +BarOutSide=\u5916\u306E\u67F1 +Preview_ToolTips=\u30D7\u30EC\u30D3\u30E5\u30FC\u63D0\u793A +FRFont-Family=\u540D\u79F0 +FR-Lic_does_not_Support_Remote=\u73FE\u5728\u4F7F\u7528\u3057\u3066\u3044\u308Blic\u306F\u9060\u9694\u30C7\u30B6\u30A4\u30F3\u6A5F\u80FD\u306B\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B +InterfaceStyle=\u30B9\u30BF\u30A4\u30EB +RWA-Key=\u4E3B\u30AD\u30FC +WF-Name=\u540D\u79F0 +RWA-Click_Cell_To_Edit_Value=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30BB\u30EB\u4FEE\u6B63\u5024 +Utils-Row_Height=\u884C\u306E\u9AD8\u3055 +ReportD-Excel_Export=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u5C0E\u51FA\u5C5E\u6027 +Form-Please_Select_A_Kind_Of_Form_Container=\u4E00\u7A2E\u306E\u8868\u30B3\u30F3\u30C6\u30CA\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +Column_Does_Not_Exsit=\u5217\u304C\u5B58\u5728\u3057\u307E\u305B\u3093 +M_Insert-Hyperlink=\u30CF\u30A4\u30D1\u30FC\u30EA\u30F3\u30AF +can_not_include_underline=_\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093 +FR-Designer-Plugin_Jar_Expired=\u65E7Jar\u30D1\u30C3\u30AF +FR-Background_Image_Extend=\u62E1\u5F35 +TopDownShade=\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3\u30C0\u30A6\u30F3 +FR-Base_Right=\u53F3 +DataBinding=\u30C7\u30FC\u30BF\u30D0\u30F3\u30C7\u30A3\u30F3\u30B0 +ConnectionPool_Attr=\u63A5\u7D9A\u30D7\u30FC\u30EB\u5C5E\u6027 +Connect_SQL_Cannot_Null=\u30C7\u30FC\u30BF\u63A5\u7D9A\u3068SQL\u30D1\u30CD\u30EB\u306F\u7A7A\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093 +DBCP_MAX_ACTIVE=\u6700\u5927\u30A2\u30AF\u30C6\u30A3\u30D6\u63A5\u7D9A\u6570 +M_Window-Preference=\u30AA\u30D7\u30B7\u30E7\u30F3 +ToolBar_Top=\u30D8\u30C3\u30C0\u30FC\u30C4\u30FC\u30EB\u30D0\u30FC +FR-Designer_Indent-Pixel=\u753B\u7D20 +FR-Designer_Unit_MM=\u30DF\u30EA\u30E1\u30FC\u30C8\u30EB +IDLE=\u30A2\u30A4\u30C9\u30EB +FRFont-Underline=\u4E0B\u7DDA +FR-Designer-Plugin_Read_Plugin_List_Error=\u30D7\u30E9\u30B0\u30A4\u30F3\u30EA\u30B9\u30C8\u306E\u8AAD\u307F\u53D6\u308A\u6642\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E +Type_Set=\u30BF\u30A4\u30D7\u8A2D\u5B9A +M_Format_A-Cell_Attributes=\u305D\u306E\u4ED6\u5C5E\u6027 +CellWrite-Show_As_Image=\u753B\u50CF\u3067\u5185\u5BB9\u3092\u8868\u793A +ShowAsDownload=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u30EA\u30F3\u30AF\u3067\uFF12\u9032\u6CD5\u306E\u5185\u5BB9\u3092\u8868\u793A +Form-ComboCheckBox=\u30C1\u30A7\u30C3\u30AF\u30DC\u30C3\u30AF\u30B9 +BackgroundTexture-WovenMat=\u7E54\u7269 +BindColumn-Custom_Data_Appearance=\u30E6\u30FC\u30B6\u30FC\u5B9A\u7FA9\u306F\u8868\u793A\u3059\u308A\u307E\u3059 +Actived=\u6D3B\u52D5\u7684 +Env-Local_Directory=\u30ED\u30FC\u30AB\u30EB\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA +Form-Colon=\u30B3\u30ED\u30F3 +Preference-Vertical_Scroll_Bar_Visible=\u7E26\u30B9\u30AF\u30ED\u30FC\u30EB\u30D0\u30FC\u306F\u53EF\u8996 +Utils-Show_Cell_Value=\u30BB\u30EB\u5024\u3092\u8868\u793A +FR-Designer_ReportColumns-Repeat_Row=\u884C\u9806\u5E8F\u3092\u30B3\u30D4\u30FC +SpecifiedG-Specified_Group=\u30B0\u30EB\u30FC\u30D4\u30F3\u30B0\u306E\u30E6\u30FC\u30B6\u5B9A\u7FA9 +RWA-Smart_Add_Cells=\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u8FFD\u52A0\u30BB\u30EB +HF-Left_Section=\u5DE6\u5074\u30BB\u30AF\u30B7\u30E7\u30F3 +M_Report-Report_Background=\u5E33\u7968\u80CC\u666F +Image-Extend=\u62E1\u5F35 +FS_BI=\u51B3\u7B56\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0 +ToolBar_Bottom=\u30D5\u30C3\u30BF\u30FC\u30C4\u30FC\u30EB\u30D0\u30FC +Hgap=\u6C34\u5E73\u9593\u9699 +FR-Designer_Enter-New-FileName=\u65B0\u3057\u3044\u30D5\u30A1\u30A4\u30EB\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044 +Verify_Fail=\u70B9\u691C\u306B\u5931\u6557\u3057\u307E\u3057\u305F +CellWrite-InsertRow_Policy=\u884C\u6226\u7565\u3092\u633F\u5165 +FR-Designer-Plugin_Illegal_Plugin_Zip=\u5408\u6CD5\u7684\u306A\u30D7\u30E9\u30B0\u30A4\u30F3\u30D1\u30C3\u30AF\u3067\u306F\u3042\u308A\u307E\u305B\u3093 +RCodeVersion=\u30D0\u30FC\u30B8\u30E7\u30F3 +Convert=\u5909\u63DB +Please_Drag=\u884C\u5217\u30D5\u30A3\u30FC\u30EB\u30C9\u3001\u53D6\u308A\u307E\u3068\u3081\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u5F15\u3063\u8FBC\u3081\u3066\u304F\u3060\u3055\u3044 +FR-Designer-Widget-Style_Preview=\u30D7\u30EC\u30D3\u30E5\u30FC +mobile_number=\u643A\u5E2F\u96FB\u8A71\u756A\u53F7 +FR-Designer_Form-ComboCheckBox=\u30C1\u30A7\u30C3\u30AF\u30DC\u30C3\u30AF\u30B9 +CacheValidateTime=\u5E33\u7968\u30AD\u30E3\u30C3\u30B7\u30F3\u30B0\u6709\u52B9\u6642\u9593 +Hyperlink-Extends_Report_Parameters=\u5E33\u7968\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u7D99\u627F\u3059\u308B +FR-Designer_Values-Editor=\u5024\u30A8\u30C7\u30A3\u30BF +Export-Excel=Excel +Utils-Left_to_Right=\u5DE6\u304B\u3089\u53F3\u3078 +ExpandD-Vertical_Extendable=\u7E26\u5E83\u304C\u308B +Utils-Report_Runtime_Env=\u5E33\u7968\u4F5C\u696D\u76EE\u6B21 +Utils-Right_to_Left=\u53F3\u304B\u3089\u5DE6\u3078 +Utils-Beyond_the_top_side_of_Border=\u4E0A\u30DC\u30FC\u30C0\u30FC\u8D85\u3048 +Exception_StackTrace=\u30A8\u30E9\u30FC\u7570\u5E38\u30B9\u30BF\u30C3\u30AF\u60C5\u5831 +Corresponding_Fields=\u5BFE\u5FDC\u3059\u308B\u30D5\u30A3\u30FC\u30EB\u30C9 +Form-CheckBox=\u30D5\u30EC\u30FC\u30E0\u3092\u8907\u6570\u9078\u629E +Utils-Current_Row=\u30AB\u30EC\u30F3\u30C8\u884C +BuildIn=\u5185\u8535 +BindColumn-Results_Filter=\u7D50\u679C\u30BB\u30C3\u30C8\u306E\u30D5\u30A3\u30EB\u30BF +FR-Designer-Plugin_Manager=\u30D7\u30E9\u30B0\u30A4\u30F3\u7BA1\u7406 +M_File-Export-CSV=CSV\u66F8\u5F0F(\u30B3\u30F3\u30DE\u3067\u5206\u5272) +Data_Filter=\u30C7\u30FC\u30BF\u9078\u5225 +ReportServerP-Edit_Printer=\u30D7\u30EA\u30F3\u30BF\u30FC\u7DE8\u96C6 +FR-Designer_Datasource-Stored_Procedure=\u30B9\u30C8\u30A2\u30C9 \u30D7\u30ED\u30B7\u30FC\u30B8\u30E3 +RESTART=\u518D\u8D77\u52D5 +FormulaD-Function_name=\u95A2\u6570\u540D +ChooseOneButton=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u3092\u4E00\u3064\u9078\u629E\u3057\u3066\u304B\u3089\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044 +Priority=\u512A\u5148\u30E9\u30F3\u30AF +Datasource-Datasource=\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9 +FR-Designer_Width=\u5E83\u3055 +Cannot-Add_To_This_Area=\u5730\u57DF\u306B\u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093 +Run=\u904B\u884C +Set_Submit_Condition=\u6761\u4EF6\u3092\u8A2D\u7F6E\u306B\u63D0\u51FA\u3059\u308B\u3053\u3068\u306B\u3057\u305F +FR-Base_Value=\u5024 +fileLocked_undeleted=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u304C\u30ED\u30C3\u30AF\u3055\u308C\u3066\u3044\u308B\u3001\u3042\u306A\u305F\u304C\u524A\u9664\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\uFF01 +Web_Apply=WEB\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3 +Refresh_Database=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u5237\u65B0 +Set_Row_Title_End=\u91CD\u8907\u3059\u308B\u7D42\u4E86\u884C\u3092\u8A2D\u5B9A +FR-Utils-New_Folder=\u30D5\u30A1\u30A4\u30EB\u65B0\u898F\u4F5C\u6210 +BiasD-From-upper_left_to_lower_right=\u5DE6\u4E0A\u5074\u304B\u3089\u53F3\u4E0B\u5074\u3078\u5E83\u304C\u308B +CapsLock=Caps Lock\u30AD\u30FC\u304C\u30AA\u30F3\u306B\u306A\u3063\u3066\u3044\u308B +StyleFormat-Sample=\u4F8B +RWA-Smart_Add_Cell_Group=\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u6DFB\u52A0\u30EC\u30A4\u30E4\u30FC\u7D44 +MConfig-CancelButton=\u30AD\u30E3\u30F3\u30BB\u30EB +Function-Choose_Function_Class=\u95A2\u6570\u30AF\u30E9\u30B9\u3092\u9078\u629E\u3059\u308B +LatLng=\u5EA7\u6A19 +DS-Server_TableData=\u30B5\u30FC\u30D0\u30FC\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8 +BackgroundTexture-GreenMarble=\u7DD1\u8272\u306E\u5927\u7406\u77F3 +read_time_out=\u30ED\u30FC\u30C9\u306E\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 +JavaScript-Commit_to_Database=\u5165\u5EAB\u63D0\u51FA +DS-Relation_TableData=\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u95A2\u9023\u4ED8\u3051 +CellWrite-Page_Before_Row=\u884C\u524D\u306E\u6539\u9801 +FR-Designer-Plugin_Load_Plugins_From_Server=\u30D7\u30E9\u30B0\u30A4\u30F3\u30DE\u30FC\u30B1\u30C3\u30C8\u304B\u3089\u30C7\u30FC\u30BF\u53D6\u5F97\u4E2D +D-Dispaly_Divide_Result_Set_into_Groups=resultset\u306E\u30B0\u30EB\u30FC\u30D7\u5206\u3051 +Closed=\u9589\u9396\u6E08\u307F +RWA-Help=\u8A2D\u7F6E\u5F8C\u306E\u6539\u6B63\u3092\u66F4\u65B0\u3057\u306A\u3044\u3068\u3001\u7533\u544A\u30D7\u30EC\u30D3\u30E5\u30FC\u30EC\u30DD\u30FC\u30C8\u306B\u8A18\u9332\u3055\u308C\u3066\u3044\u306A\u3044\u6240\u5728\u30EC\u30A4\u30E4 +FR-Designer-Widget-Style_Custom= +FR-Designer-Widget-Style_Render_Style=\u307C\u304B\u3057\u30B9\u30BF\u30A4\u30EB +Highlight-Barcode=\u30D0\u30FC\u30B3\u30FC\u30C9 +FR-Designer_Connect_SQL_Cannot_Null=\u30C7\u30FC\u30BF\u63A5\u7D9A\u3068SQL\u30D1\u30CD\u30EB\u306F\u7A7A\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093 +trigger=\u6A19\u984C +M-Data_Analysis=\u30C7\u30FC\u30BF\u5206\u6790 +Function-The_selected_file_cannot_be_null=\u9078\u629E\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u306F\u7A7A\u5024\u306B\u306A\u3063\u3066\u306F\u3044\u3051\u307E\u305B\u3093 +No-Privilege=\u30A2\u30AF\u30BB\u30B9\u304C\u62D2\u5426\u3055\u308C\u307E\u3057\u305F +ReportColumns-Repeat_Column=\u5217\u756A\u53F7\u306E\u7E70\u308A\u8FD4\u3057 +SecondGraduationUnit=\u4E8C\u6B21\u7684\u76EE\u76DB\u308A\u5358\u4F4D +Form-Widget_Property_Value=\u5C5E\u6027\u5024 +GIVE-NAME=\u547D\u540D +FR-Designer_Rename=\u540D\u79F0\u306E\u5909\u66F4 +Utils-Merge_Cell=\u30BB\u30EB\u3092\u7D50\u5408\u3059\u308B +Style-Spacing_After=\u6BB5\u5F8C +Enlarge_Or_Reduce=\u30BA\u30FC\u30E0 +Tree-Height=\u9AD8\u3055 +RCodeErrorCorrect=\u30A8\u30E9\u30FC\u8A02\u6B63 +Enter-New-FileName=\u65B0\u3057\u3044\u30D5\u30A1\u30A4\u30EB\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044 +try_resending=\u30C8\u30EA\u30AC\u30FC\u3055\u308C\u308B +M-Open_Report=\u3092\u958B\u304F... +Please_Select=\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +InRow=\u884C(R) +Form-TextArea=\u6587\u66F8\u57DF +FR-Designer_Https_Enable=https\u4F7F\u7528\u958B\u59CB +Widget-Custom_Widget_Config=\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +already_exists=\u3053\u3053\u306F\u3059\u3067\u306B\u5B58\u5728\u3057\u3066\u3044\u307E\u3059 +Original_Marked_Filed=\u521D\u671F\u30BF\u30B0\u30D5\u30A3\u30FC\u30EB\u30C9 +BackgroundTexture-Sand=\u7802\u6D5C +Values=\u5024 +Not_use_a_cell_attribute_table_editing=\u3042\u306A\u305F\u304C\u7DE8\u96C6\u3059\u308B\u30BB\u30EB\u306E\u5C5E\u6027\u30C6\u30FC\u30D6\u30EB\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068 +Root=\u30EB\u30FC\u30C8\u30CE\u30FC\u30C9 +cycle=\u5468\u671F +open-new-form-tip=711\u4EE5\u4E0B\u306E\u751F\u7523\u306E\u305F\u3081\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u73FE\u5728\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306F\u3001\u4E92\u63DB\u6027\u304C\u306A\u3044\u3068 +Support-Current_Auto_Complete_Shortcut=\u73FE\u5728\u306E\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC +GROUPING_MODE=\u666E\u901A\u30B0\u30EB\u30FC\u30D7\u5206\u3051 +DBCP_MAX_IDLE=\u6700\u5927\u30A2\u30A4\u30C9\u30EB\u63A5\u7D9A\u6570 +BackgroundTexture-BlueTissuePaper=\u9752\u3044\u30B5\u30F3\u30C9\u30DA\u30FC\u30D1\u30FC +ReportD-Export_Hided_Row=\u96A0\u3057\u305F\u884C\u3092\u5C0E\u51FA +FR-Custom_styles_lost=\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u30B9\u30BF\u30A4\u30EB\u306F\u5931\u308F\u308C\u307E\u3057\u305F +Env-Des2=Servlet\u306E\u4F4D\u7F6E\u306F\u30DB\u30B9\u30C8\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u540D\u3001\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3001WEB\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3001 +Env-Des1=\u5E33\u7968\u30B5\u30FC\u30D0\u30FC\u304C\u3042\u308BWEB-INF\u76EE\u6B21\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +PageSetup-Placement_Center_on_Page=\u4E2D\u592E\u63C3\u3048 +sure_to_delete=\u524A\u9664\u3092\u78BA\u8A8D\u3057\u307E\u3059 +Already_exists_not_add_repeat=\u3059\u3067\u306B\u5B58\u5728\u3057\u3066\u3044\u308B\u3001\u30EA\u30D4\u30FC\u30C8\u3092\u8FFD\u52A0\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044 +Axis_Title=\u8EF8\u306E\u8868\u984C +FR-Designer-Plugin_Install_Failed=\u30D7\u30E9\u30B0\u30A4\u30F3\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306B\u5931\u6557\u3057\u307E\u3057\u305F +FR-Designer-Widget-Style_Frame=\u30D5\u30EC\u30FC\u30E0 +MainGraduationUnit=\u4E3B\u306A\u76EE\u76DB\u308A\u5358\u4F4D +Second_Axis=\u6B21\u5EA7\u6A19\u8EF8 +Classifier-Ge=\u500B +MSBold=\u5FAE\u8EDF\u96C5\u9ED2 +Form-Design_Size=\u30C7\u30B6\u30A4\u30F3\u30B5\u30A4\u30BA +FR-App-Template_Save=\u4FDD\u5B58 +ExpandD-Horizontal_Extendable=\u6A2A\u5E83\u304C\u308B +RP_Authority_Edit=\u6A29\u9650\u7DE8\u96C6 +Warnning=\u30EA\u30DE\u30A4\u30F3\u30C9 +RoleName_Can_Not_Be_Null=\u5F79\u5272\u540D\u306F\u7A7A\u6B04\u306B\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u305A\u3001\u91CD\u8907\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u305B\u3093 +Application=\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3 +Formula_Dictionary_Display_Examples_Html=\u5B9F\u969B\u5024\u7BC4\u56F2\u306F\ +ECP-error_pwd=\u30D1\u30B9\u30EF\u30FC\u30C9\u30A8\u30E9\u30FC +FR-Hyperlink_ChartHyperlink=\u30B0\u30E9\u30D5\u30CF\u30A4\u30D1\u30FC\u30EA\u30F3\u30AF +M_Edit-FormatBrush=\u66F8\u5F0F\u30D6\u30E9\u30B7(B) +Indent-Pixel=\u753B\u7D20 +FR-Designer-Widget-Style_Border_Line=\u30D5\u30EC\u30FC\u30E0\u592A\u3055 +Widget-Default_Widget_Config=\u57FA\u672C\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +Version-does-not-support=\u73FE\u5728\u4F7F\u7528\u3057\u3066\u3044\u308Blic\u306F\u9060\u9694\u30C7\u30B6\u30A4\u30F3\u6A5F\u80FD\u306B\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002 +StyleAlignment-Right_To_Left=\u53F3\u304B\u3089\u5DE6\u3078 +Style-Spacing_Before=\u6BB5\u524D +Has_Existed=\u3059\u3067\u306B\u5B58\u5728\u3057\u3066\u3044\u307E\u3059 +FR-Designer_DisplayNothingBeforeQuery=\u30EC\u30DD\u30FC\u30C8\u304C\u8868\u793A\u3055\u308C\u307E\u305B\u3093\u524D\u306B\u5185\u5BB9\u3092\u78BA\u8A8D\u3059\u308B]\u3092\u30AF\u30EA +Still=\u4F9D\u7136\u3068\u3057\u3066 +JS_WARNING2=\ \u4F8B\uFF1Ahttp\://localhost\:8075/WebReport/demo.js +JS_WARNING1= \u76F8\u5BFE\u7684\u5E33\u7968\u5DE5\u7A0B\u306EWebReport\u306E\u76EE\u6B21\u304C\u3001WebReport\\js\u4E0B\u306B\u5F15\u7528\u3059\u308Bjs +Connectionline=\u63A5\u7D9A\u30EF\u30A4\u30E4\u30E2\u30C7\u30EB +Utils-Insert_Record=\u8A18\u9332\u633F\u5165 +Set-Parameter-Name=\u307E\u305A\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u540D\u3092\u8A2D\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 +More-information=\u8A73\u7D30\u60C5\u5831 +Parameter-Boolean=\u8AD6\u7406\u578B +FRFont-Strikethrough=\u53D6\u308A\u6D88\u3057\u7DDA +Server-version-tip=\u3042\u306A\u305F\u306F\u3001\u73FE\u5728\u3001\u3042\u306A\u305F\u306F\u3044\u304F\u3064\u304B\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u304C\u52B9\u679C\u7684\u306B\u4FDD\u5B58\u3059\u308B\u3053\u3068\u304C +Form-All_Files=\u5168\u3066\u306E\u30D5\u30A1\u30A4\u30EB +DBCP_NUM_TEST_PER_EVCTION_RUN=\u30A2\u30A4\u30C9\u30EB\u63A5\u7D9A\u30EA\u30B5\u30A4\u30AF\u30EB\u691C\u67FB\u6570 +FR-Designer-FRFont_Family=\u540D\u524D +Device=\u8A2D\u5099 +M_Insert-Cell=\u30BB\u30EB\u8981\u7D20 +Present-Formula_Present=\u516C\u5F0F\u30D5\u30A9\u30EB\u30E0 +FRFont-Superscript=\u4E0A\u4ED8\u304D +CellWrite-Page_Before_Column=\u5217\u524D\u306E\u6539\u9801 +Golden=\u30B4\u30FC\u30EB\u30C7\u30F3 +Preference-Support_Cell_Editor_Definition=\u30BB\u30EB\u30A8\u30C7\u30A3\u30BF\u30FC\u3092\u30B5\u30DD\u30FC\u30C8\u3059\u308B +M-Page_Preview=\u30DA\u30FC\u30B8\u5225\u30D7\u30EC\u30D3\u30E5\u30FC +HJS-CC_to=CC +Tree-Select_Leaf_Only=\u8449\u30CE\u30FC\u30C9\u306B\u623B\u308B +Pointer-A-Tick-Order=\u30DD\u30A4\u30F3\u30BF\u5024\u3068\u76EE\u76DB\u308A\u5024\u306E\u6570\u91CF\u30E9\u30F3\u30AF +Pink=\u30D4\u30F3\u30AF +StyleAlignment-Distibuted=\u5747\u7B49\u5272\u308A\u4ED8\u3051 +Odd=\u5947\u6570 +already-saved=\u4FDD\u5B58\u3055\u308C\u3066\u3044\u308B +FR-Hyperlink_Chart_Cell=\u30B0\u30E9\u30D5\u30CF\u30A4\u30D1\u30FC\u30EA\u30F3\u30AF-\u9023\u52D5\u30BB\u30EB +Style-Left_Indent=\u5DE6\u30A4\u30F3\u30C7\u30F3\u30C8 +Offline=\u79BB\u7EBF +Form-Hierarchy_Tree_Next=\u6B21 +Needle=\u30DD\u30A4\u30F3\u30BF +GoogleMap=Google\u30DE\u30C3\u30D7 +Running=\u904B\u884C\u4E2D +M_Edit-Unmerge_Cell=\u30BB\u30EB\u3092\u5206\u5272\u3059\u308B +Out_Border_Line=\u5916\u5074\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +Style-Spacing=\u9593\u9694\u8DDD\u96E2 +FR-Utils_Submit=\u63D0\u51FA +ReportServerP-Previous=\u524D\u30DA\u30FC\u30B8 +StyleAlignment-Text_Style=\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB +RelatedChart=\u30B0\u30E9\u30D5\u9023\u52D5 +ProcessManager=\u30D7\u30ED\u30BB\u30B9\u7BA1\u7406 +Cancel_Repeat_Attributes=\u30EA\u30D4\u30FC\u30C8\u30E9\u30F3\u30AF\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3059\u308B\u306B\u306F +FR-App-File_Message=\u60C5\u5831 +Datasource-Stored_Procedure=\u30B9\u30C8\u30A2\u30C9 \u30D7\u30ED\u30B7\u30FC\u30B8\u30E3 +RWA-Row_Offset=\u884C\u30AA\u30D5\u30BB\u30C3\u30C8 +M_Format-Style=\u30B9\u30BF\u30A4\u30EB +detail_description=\u8A73\u7D30\u306A\u8AAC\u660E +FR-Designer-Widget-Style_Title_Content=\u6A19\u984C\u5185\u5BB9 +ParameterD-Report_Parameter=\u5E33\u7968\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC +HF-Edit_Header=\u30D8\u30C3\u30C0\u7DE8\u96C6 +Sytle-FRFont=\u30D5\u30A9\u30F3\u30C8 +FR-Designer_Finish_Export=\u5C0E\u51FA\u5B8C\u4E86 +MultiFileUpload=\u8907\u6570\u30D5\u30A1\u30A4\u30EB\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +HF-Page_Number=\u30DA\u30FC\u30B8\u756A\u53F7 +Style-Right_Indent=\u53F3\u30A4\u30F3\u30C7\u30F3\u30C8 +Desktop=\u30C7\u30B9\u30AF\u30C8\u30C3\u30D7 +FR-Server-All_Error=\u30A8\u30E9\u30FC +ConditionB-Operator=\u64CD\u4F5C +Today=\u4ECA\u65E5 +Form-Widget_Name=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u540D +Covered_All=\u5168\u3066\u8986\u3046 +Day=\u65E5 +External=\u5916\u90E8 +Black_Font=\u592A\u5B57 +LOG-Report_Server_IS_Started=\u5E33\u7968\u30B5\u30FC\u30D0\u30FC\u3082\u3046\u8D77\u52D5\u3055\u308C\u3066\u3044\u307E\u3059 +Tips\:You_Can_Input_B1_To_Input_The_Data_Of_The_First_Row_Second_Column=\u30D2\u30F3\u30C8\:B1\u3092\u5165\u529B +FR-Designer_ChooseOneButton=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u3092\u4E00\u3064\u9078\u629E\u3057\u3066\u304B\u3089\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044 +Widget-Sizing=\u5927\u304D\u3055\u8ABF\u6574 +NO_Border_Line=\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3\u7121\u3057 +Cell_Data=\u30BB\u30EB\u30C7\u30FC\u30BF +StyleAlignment-Vertical_Text=\u6587\u5B57\u3092\u7E26\u306B\u3059\u308B +Label=\u30BF\u30B0 +Orange=\u30AA\u30EC\u30F3\u30B8 +zeroMarginWarn=\u30D7\u30EA\u30F3\u30BF\u306F\u5C0F\u3055\u306A\u7F36
\u30B3\u30F3\u30C6\u30F3\u30C4\u4E0D\u8DB3\u3092\u5370\u5237\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u3001\u7269\u7406\u30DE\u30FC\u30B8\u30F3 +Widget-Date_Selector_Return_Type=\u623B\u308A\u5024\u30BF\u30A4\u30D7 +Utils-Switch_To_Template_Reportlet=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5E33\u7968\u306B\u5207\u308A\u66FF\u3048 +satisfy=\u6761\u4EF6\u3092\u6E80\u305F\u3059 +FR-Designer_WidgetDisplyPosition=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u8868\u793A\u4F4D\u7F6E +FR-Base_Top=\u4E0A +FR-Designer_Form-CheckBox=\u30D5\u30EC\u30FC\u30E0\u3092\u8907\u6570\u9078\u629E +Reportlet-Parameter_Type=\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u4F1D\u9054\u65B9\u6CD5 +sending=\u9001\u4FE1\u4E2D... +FR-Designer-FRFont_Foreground=\u8272 +FR-Import-Export_SVG=SVG\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8 +M_Edit-Clear_Contents=\u5185\u5BB9(C) +Session=\u30BB\u30C3\u30B7\u30E7\u30F3 +Widget-Load_Type=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +template_unsaved=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u304C\u4FDD\u5B58\u3067\u304D\u306A\u3044 +check_communication=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901A\u4FE1\u304C\u6B63\u5E38\u3067\u3042\u308A\u3001\u30B5\u30FC\u30D0\u304C\u52D5\u4F5C\u3057\u3066\u3044\u308B\u3053\u3068\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060 +List-Need_Head=\u30EA\u30B9\u30C8\u30D8\u30C3\u30C9\u304C\u5FC5\u8981\u3067\u3059 +FR-Designer-Plugin_Has_Been_Installed=\u30D7\u30E9\u30B0\u30A4\u30F3\u306F\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u30D7\u30E9\u30B0\u30A4\u30F3\u3092 +FR-Widget_Tree_And_Table=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u30C4\u30EA\u30FC\u3068\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u8868 +FR-Base_Help=\u30D8\u30EB\u30D7 +FR-Designer-Plugin_Update_Successful=\u30D7\u30E9\u30B0\u30A4\u30F3\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u306B\u6210\u529F\u3057\u307E\u3057\u305F\u3002\u30B5\u30FC\u30D0\u30FC\u3092 +August=\u516B\u6708 +LOG-Is_Being_Openned=\u958B\u3044\u3066\u3044\u307E\u3059 +BackgroundTexture-Oak=\u30AA\u30FC\u30AF +Multi_nam_formula=\ \u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u540D\: \u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u6761\u4EF6\: +TurnOn=\u8D77\u52D5 +HJS-Send_Successfully=\u9001\u4FE1\u6210\u529F +Mon=\u6708 +Inner_Parameter=\u5185\u8535\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC +Required=\u8A18\u5165\u5FC5\u9808 +Summary=\u6982\u8981 +template_unopened=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u958B\u304F\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093 +FR-Base_Bottom=\u4E0B +DataFunction-Min=\u6700\u5C0F\u5024 +StyleFormat-Percent=\u30D1\u30FC\u30BB\u30F3\u30C6\u30FC\u30B8 +FR-App-All_Custom=\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA +M_Insert-Data_Column=\u30C7\u30FC\u30BF\u5217 +PLEASE=\u3057\u3066\u304F\u3060\u3055\u3044 +Numbers=\u6841\u6570 +Release_Lock=\u30A2\u30F3\u30ED\u30C3\u30AF +Background-Background_is_NULL=\u80CC\u666F\u306A\u3057 +FR-Designer_Sytle-FRFont=\u30D5\u30A9\u30F3\u30C8 +Gradation=\u69CB\u6210 +The_current_list_is_empty=\u73FE\u5728\u306E\u30EA\u30B9\u30C8\u306F\u7A7A\u3067\u3059 +Formula_Dictionary_Display_Examples=\ \u5B9F\u969B\u5024\u7BC4\u56F2\u306F\ +Schedule-Template_Parameter=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC +JSShow=\u52D5\u614B\u8868\u793A +Level_coordinates=\u30EC\u30D9\u30EB\u306E\u5EA7\u6A19 +MainGraduationLine=\u30E1\u30A4\u30F3\u30B9\u30B1\u30FC\u30EB\u30E9\u30A4\u30F3 +Hyperlink-Web_link=\u30A6\u30A7\u30D6\u30EA\u30F3\u30AF +StyleAlignment-between_-90_and_90=-90\u304B\u308990\u307E\u3067\u306E\u7BC4\u56F2\u3067 +FormulaD-Custom_Function=\u30E6\u30FC\u30B6\u5B9A\u7FA9\u95A2\u6570 +FR-Designer_Integer=\u6574\u6570 +PageSetup-Finis_Start_Row=\u91CD\u8907\u3059\u308B\u7D42\u4E86\u884C +RWA-Remove_Field=\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30EA\u30E0\u30FC\u30D6 +Form-Desin_Width=\u30C7\u30B6\u30A4\u30F3\u5E45 +No-tableData=\u623B\u3057\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u304C\u3042\u308A\u307E\u305B\u3093 +Page_Total=\u5408\u8A08 +FR-Designer-Plugin_Connect_Server_Error=\u30D7\u30E9\u30B0\u30A4\u30F3\u30DE\u30FC\u30B1\u30C3\u30C8\u306B\u63A5\u7D9A\u3067\u304D\u307E\u305B\u3093\u3002\uFF0C\u5F8C\u3067\u518D\u5EA6 +Import-Excel_Source=Excel\u30BD\u30FC\u30B9 +Utils-Left_to_Right_a=\u5DE6\u304B\u3089\u53F3\u3078 +ExpandD-Expand_Attribute=\u5C5E\u6027\u3092\u62E1\u5F35\u3059\u308B +Report-Write_Attributes=\u5E33\u7968\u8A18\u5165\u5C5E\u6027 +Utils-Current_Column=\u30AB\u30EC\u30F3\u30C8\u5217 +Need_Max_Value=\u6700\u5927\u5024\u304C\u5FC5\u8981 +Report_Not_Exist=\u9078\u629E\u3057\u305F\u5E33\u7968\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\uFF01 +HF-Insert_Content=\u30B3\u30F3\u30C6\u30F3\u30C4\u3092\u633F\u5165 +UpParent=\u4E0A\u89AA\u30BB\u30EB +PageSetup-Page=\u30DA\u30FC\u30B8 +Utils-Move_Up=\u4E0A\u3078\u79FB\u52D5 +BackgroundTexture-PurpleMesh=\u7D2B\u8272\u306E\u30E1\u30C3\u30B7\u30E5 +Export-Word=Word\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8 +ServerM-Widget_Manager=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u7BA1\u7406 +FR-Designer-Basic_Activation_Key=\u30C7\u30B6\u30A4\u30CA\u30FC\u6574\u7406\u756A\u53F7\uFF1A +FR-App-Template_Report_Not_Exist=\u9078\u629E\u3057\u305F\u5E33\u7968\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\! +Protected=\u4FDD\u8B77 +Skip=\u30B9\u30AD\u30C3\u30D7 +FR-Designer_PageSetup-Vertically=\u5782\u76F4\u4E2D\u592E\u63C3\u3048 +revert=\u3084\u308A\u76F4\u3059 +PageSetup-Predefined=\u30D7\u30EC\u5B9A\u7FA9 +Border-Style-Radius=\u89D2\u4E38 +IntPart=\u6574\u6570\u90E8\u5206 +ExpandD-Data_Column=\u30C7\u30FC\u30BF\u30B3\u30E9\u30E0 +Sort-Ascending=\u6607\u9806 +FR-Designer-Widget_Style=\u30B9\u30BF\u30A4\u30EB +parameter_name_exist=\u30D1\u30E9\u30E1\u30FC\u30BF\u540D\u306F\u65E2\u306B\u5B58\u5728\u3057\u3066\u3044\u307E\u3059 +FR-Designer_Layer-Build=\u30D5\u30A1\u30BB\u30C3\u30C8\u7D44\u307F\u7ACB\u3066 +Please_Rename=\u518D\u5EA6\u547D\u540D\u3057\u3066\u304F\u3060\u3055\u3044 +Form-Editing_Listeners=\u4E8B\u4EF6\u7DE8\u96C6 +RWA-Smart_Add_Fields=\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u8FFD\u52A0\u30D5\u30A3\u30FC\u30EB\u30C9 +FR-Designer-Tree_Width=\u5E45 +Record=\u8A18\u9332 +Poly-Report_Component=\u805A\u5408\u5E33\u7968\u30A2\u30BB\u30F3\u30D6\u30EA +Options=\u30AA\u30D7\u30B7\u30E7\u30F3 +NS-war-remote=\u30A8\u30E9\u30FC\u30B3\u30FC\u30C9\:1117 \u5727\u7E2E\u914D\u7F6E\u306F\u9060\u9694\u30C7\u30B6\u30A4\u30F3\u306B\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093 +Sche-Minute=\u5206 +Three_Rows_Of_Three_Grid=3\u4E57\u306E3\u3064\u306E\u884C +WorkSheet=\u30EF\u30FC\u30AF\u30B7\u30FC\u30C8 +FR-Designer-Widget_Size=\u5927\u304D\u3055\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +BindColumn-Select=\u30EA\u30B9\u30C8 +FR-Widget_Mobile_Terminal=\u30E2\u30D0\u30A4\u30EB\u7AEF\u672B +FR-Background_Image_Titled=\u5C55\u958B +SetPrinterOffset=\u5B89\u3044\u30D7\u30EA\u30F3\u30BF +FR-Designer-Plugin_Installed=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u6E08\u307F +FR-Designer-Hyperlink_Name=\u540D\u524D +FR-Designer_Form-Button=\u30DC\u30BF\u30F3 +Black=\u30D6\u30E9\u30C3\u30AF +FR-Designer-Widget-Style_Border_Color=\u30D5\u30EC\u30FC\u30E0\u8272 +Set_Submit_Event=\u63D0\u51FA\u4E8B\u4EF6\u3092\u8A2D\u5B9A +PDF-Print_isPopup=\u8A2D\u5B9A\u30A6\u30A3\u30F3\u30C9\u30A6\u3092\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3059\u308B\u304B\u5426\u304B +LayerPageReport_CountPerPage=\u6BCE\u30DA\u30FC\u30B8\u8A18\u9332\u6570 +Display_Modes=\u30E2\u30C7\u30EB\u3092\u8868\u793A +RowSpan=\u884C\u7BC4\u56F2 +Datasource-Test_Connection=\u63A5\u7D9A\u30C6\u30B9\u30C8 +Function-Function_Manager=\u95A2\u6570\u30DE\u30CD\u30FC\u30B8\u30E3\u30FC +Host_Name=\u30DB\u30B9\u30C8\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u540D +CellWrite-Show_As_HTML=HTML\u3067\u5185\u5BB9\u3092\u8868\u793A +FR-Designer-Widget-Style_Shadow=\u9670\u5F71 +FR-Designer_Parameter_String=\u6587\u5B57\u5217 +Form-SupportTag=\u30BF\u30B0\u306B\u8868\u793A +ReportD-Report_Write_Attributes=\u5E33\u7968\u66F8\u5F0F\u5C5E\u6027 +DataFunction-Count=\u4EF6\u6570 +Top_And_Thick_Bottom_Border_Line=\u4E0A\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3\u3068\u7C97\u4E0B\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +Client=\u9867\u5BA2\u5074 +BindColumn-Result_Serial_Number_Start_From_1=\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u306E\u756A\u53F7\u306F1\u304B\u3089 +History=\u6B74\u53F2 +Already_exists=\u3059\u3067\u306B\u5B58\u5728\u3057\u3066\u3044\u308B\u5834\u5408\u3001\u518D\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\uFF01 +Datasource-Original_Charset=\u30AA\u30EA\u30B8\u30CA\u30EB\u6587\u5B57\u30B3\u30FC\u30C9 +FR-Base_Left=\u5DE6 +ReportServerP-Next=\u6B21\u30DA\u30FC\u30B8 +BindColumn-Top_N=\u524D\u306EN\u500B +Animation_Special=\u7279\u5225\u306B\u826F\u3044\u52B9\u679C +Widget-Chart_Widget_Config=\u30B0\u30E9\u30D5\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +FR-Designer-Plugin_Cannot_Update_Not_Install=\u30D7\u30E9\u30B0\u30A4\u30F3\u66F4\u65B0\u3092\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093\u3002\u5F53\u8A72 +After_Changed_Some_Attributes_Are_Different=\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u3044\u304F\u3064\u304B\u306E\u30B9\u30C6\u30FC\u30C8\u30E1\u30F3\u30C8\u306E\u5F8C\u306B\u5909\u63DB\u304C\u7D99\u7D9A\u3059\u308B\u304B\u3069\u3046\u304B\u3001\u5909\u66F4\u3055\u308C\u307E\u3059 +PieStyle=\u30D1\u30A4 +HF-Are_you_sure_to_delete_it=\u5F53\u8A72\u9805\u76EE\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B +Utils-Design-File_Open=\u958B\u304F +FR-Utils_Label=\u30BF\u30B0 +Data-Label=\u30BF\u30B0 +M_Insert-Text=\u30C6\u30AD\u30B9\u30C8 +Form-View_Tree=\u30D3\u30E5\u30FC\u30C4\u30EA\u30FC +M_Insert-Chart=\u56F3 +HF-Even_Page=\u5076\u6570\u30DA\u30FC\u30B8 +ReportServerP-Report_server_parameter=\u5E33\u7968\u30B5\u30FC\u30D0\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC +JavaScript-Form_Submit=\u8868\u63D0\u51FA +Horizontal-Split_Layout=\u6C34\u5E73\u5206\u5272\u914D\u7F6E +BorderLayout-Center=\u4E2D +INFO-Reset_Webapp=\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30B5\u30FC\u30D0\u30FC\u306E\u518D\u8A2D\u5B9A +FR-Designer_Text=\u30C6\u30AD\u30B9\u30C8 +IN_and_INOUT_type_not_as_cursor=IN\u304A\u3088\u3073INOUT\u30BF\u30A4\u30D7\u3067\u306F\u306A\u3044\u30AB\u30FC\u30BD\u30EB\u3068 +Main_Axis=\u30E1\u30A4\u30F3\u5EA7\u6A19\u8EF8 +M_Edit-Cut=\u5207\u308A\u53D6\u308A(T) +Utils-The_Name_has_been_existed=\u5F53\u8A72\u540D\u79F0\u306F\u65E2\u306B\u5B58\u5728\u3057\u3066\u3044\u307E\u3059 +FR-Background_Image=\u753B\u50CF +Character=\u6587\u5B57 +Unit_Thousand=\u5343 +Test=\u30C6\u30B9\u30C8 +Utils-Would_you_like_to_save=\u4FDD\u5B58\u3057\u307E\u3059\u304B +HF-Header_and_Footer=\u30D8\u30C3\u30C0\u30FC\u3068\u30D5\u30C3\u30BF\u30FC +LIST_MODE=\u30EA\u30B9\u30C8 +HF-Insert_Image=\u753B\u50CF\u3092\u633F\u5165 +FR-Designer-Widget-Style_Standard=\u6A19\u6E96 +FR-Designer_Form-List=\u30EA\u30B9\u30C8 +BackgroundTexture-Denim=\u30C7\u30CB\u30E0 +Execute_Report_by_Layer_Engine=\u30E9\u30A4\u30F3\u306E\u30A8\u30F3\u30B8\u30F3\u3067\u5E33\u7968\u3092\u5B9F\u884C\u3059\u308B +M_Edit-Bring_Forward=\u524D\u9762\u3078\u79FB\u52D5(F) +Choose_All=\u5168\u9078\u629E +Form-RadioGroup=\u30E9\u30B8\u30AA\u30DC\u30BF\u30F3\u30B0\u30EB\u30FC\u30D7 +FR-Base_Remove=\u524A\u9664 +FR-Remote_Connect2Server_Again=\u63A5\u7D9A\u304C\u4E2D\u65AD\u3057\u307E\u3057\u305F\u3002\u518D\u5EA6\u30B5\u30FC\u30D0\u30FC\u306B\u63A5\u7D9A\u3057\u307E\u3059\u304B\u3002 +Semicolon=\u5206\u53F7 +StyleFormat-Category=\u5206\u985E +Report_Template=\u5E33\u7968\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +Utils-Beyond_the_right_side_of_Border=\u53F3\u9818\u57DF\u3092\u30AA\u30FC\u30D0\u30FC +BackgroundTexture-Papyrus=\u7D19 +LayerPageReport_PageEngine=\u30DA\u30FC\u30B8\u5225\u306E\u6F14\u7B97\u3092\u4F7F\u7528\u3057\u3066\u5E33\u7968\u3092\u57F7\u884C +Schedule-The_selected_file_must_be_end_with_filter=\u9078\u629E\u30D5\u30A1\u30A4\u30EB\u306F.cpt\u53C8\u306F.class\u53C8\u306F.frm +Provide=\u63D0\u4F9B +FormulaD-Math_&_Trig=\u6570\u5B66\u95A2\u6570\u3068\u4E09\u89D2\u95A2\u6570 +FR-Designer-StyleAlignment_Right=\u53F3\u5BC4\u305B +Error_TableDataNameRepeat=\u3059\u3067\u306B\u30B5\u30FC\u30D0\u30FC\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u306B\u5B58\u5728\u3059\u308B\u304B\u8907\u6570\u306E\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u540D\u304C\u91CD +Choose_None=\u9078\u629E\u3057\u306A\u3044 +File-tree=\u30D5\u30A1\u30A4\u30EB\u30C4\u30EA\u30FC +FRFont-bold=\u592A\u5B57 +FR-Designer_Set_Submit_Condition=\u63D0\u51FA\u6761\u4EF6\u3092\u8A2D\u5B9A +Form-Change_Widget_Name=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u540D\u5909\u66F4 +ReportColumns-Report_Columns=\u5E33\u7968\u30B3\u30E9\u30E0 +Can_not_use_FormatBursh=\u8907\u6570\u9078\u629E\u3057\u305F\u30A8\u30EA\u30A2\u3067\u306F\u66F8\u5F0F\u30D6\u30E9\u30B7\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\! +CellElement-Property_Table=\u30BB\u30EB\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u00B7\u30B7\u30FC\u30C8 +Dictionary-Dynamic_SQL=\u52D5\u614BSQL +FR-Designer_Form-CheckBoxGroup=\u30D5\u30EC\u30FC\u30E0\u30BB\u30C3\u30C8\u3092\u8907\u6570\u9078\u629E +DBCP_TIME_BETWEEN_EVICTIONRUNSMILLIS=\u30A2\u30A4\u30C9\u30EB\u63A5\u7D9A\u30EA\u30B5\u30A4\u30AF\u30EB\u30E6\u30CB\u30C3\u30C8\u4F11\u7720\u6642\u9593 +ReportD-Export_Hided_Column=\u96A0\u3057\u305F\u5217\u3092\u5C0E\u51FA +Preference-Support_Undo=\u5143\u306B\u623B\u3057\u3092\u30B5\u30DD\u30FC\u30C8\u3059\u308B +FR-mobile_report_analysis=\u5831\u544A\u66F8\u306E\u89E3\u6790 +Month=\u6708 +Utils-Column_Width=\u5217\u5E45 +Collect-Use_Designer=\u30C7\u30B6\u30A4\u30CA\u30FC\u3092\u4F7F\u7528 +Widget-User_Defined_Editor=\u30D7\u30EC\u5B9A\u7FA9\u30A8\u30C7\u30A3\u30BF\u3067\u3059\u3002\u5F53\u8A72\u30A8\u30C7\u30A3\u30BF\u306F\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u7BA1\u7406\u30E1\u30CB\u30E5\u30FC +Unit_Ten_Thousand=\u4E07 +Data_Setting=\u30C7\u30FC\u30BF\u8A2D\u5B9A +ECP_input_pwd=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\: +period=\u3002 +Note=\u6CE8 +Multiline=\u8907\u6570\u884C\u7DE8\u96C6 +Datasource-Convert_Charset=\u6587\u5B57\u30B3\u30FC\u30C9\u5909\u63DB +DashBoard-ConnectionList=\u30C7\u30FC\u30BF\u63A5\u7D9A +Utils-Submit_Forcibly=\u5F37\u884C\u63D0\u51FA +Parent_Marked_Field=\u89AA\u30BF\u30B0\u30D5\u30A3\u30FC\u30EB\u30C9 +Logout=\u9000\u51FA +FR-Designer_Show_Blank_Row=\u7A7A\u767D\u884C\u3092\u88DC\u5145 +FR-Base_Format=\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8 +FR-App-Export_png=PNG\u66F8\u5F0F +Delete_Column=\u5217\u524A\u9664 +SecondGraduationLine=\u5C0F\u3055\u306A\u76EE\u76DB\u308A +SpecifiedG-Groups=\u30B0\u30EB\u30FC\u30D7 +CONTINUUM_MODE=\u96A3\u63A5\u3057\u305F\u9023\u7D9A\u3057\u305F\u30D1\u30B1\u30C3\u30C8 +Datasource-Connection_failed=\u63A5\u7D9A\u5931\u6557 +CategoryName=\u30AB\u30C6\u30B4\u30EA\u30FC\u540D +DBCP_INITIAL_SIZE=\u63A5\u7D9A\u6570\u306E\u521D\u671F\u5316 +Colors=\u8272 +FR-Import-Export_CSV=CSV\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8(\u30B3\u30F3\u30DE\u3067\u5206\u5272) +FR-Designer-StyleAlignment_Left=\u5DE6\u5BC4\u305B +BackgroundTexture-PaperBag=\u7D19\u888B +RWA-BuildIn_SQL=\u5185\u8535SQL +SingleLayer=\u5358\u5C64 +Or-you=\u307E\u305F\u306F +FR-Designer_Certificate_Path=\u8A3C\u66F8\u30EB\u30FC\u30C8 +Utils-Last_Page=\u7D42\u4E86\u9801 +BarCodeD-Drawing_Text=\u30D0\u30FC\u30B3\u30FC\u30C9\u30C6\u30AD\u30B9\u30C8\u3092\u8868\u793A\u3059\u308B +Warning-Template_Do_Not_Exsit=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u5B58\u5728\u3057\u307E\u305B\u3093 +BindColumn-Group=\u30B0\u30EB\u30FC\u30D7\u5206\u3051 +Export-SVG=SVG\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8 +Plane3D=\u5E73\u97623D +SessionID=sessionID\u306F\u73FE\u5728\u306E\u30A2\u30AF\u30BB\u30B9\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F1A\u8A71\u30BF\u30B0\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3067\u3059\u3002 +FR-Designer_Height=\u9AD8\u3055 +HF-Odd_Page=\u5947\u6570\u30DA\u30FC\u30B8 +About-All_Rights_Reserved=\u5168\u3066\u306E\u6A29\u5229\u3092\u6240\u6709\u3057\u3066\u3044\u308B +Utils-Current_Cell=\u30AB\u30EC\u30F3\u30C8\u30BB\u30EB +Web_Preview_Message=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30D5\u30A1\u30A4\u30EB\u3092\u73FE\u5728\u306E\u904B\u884C\u74B0\u5883\u306E\u76EE\u6B21\u4E0B\u306B\u4FDD\u5B58\u3057\u3066\u304F\u3060\u3055\u3044 +FR-Hyperlink_Chart_Float=\u30B0\u30E9\u30D5\u30CF\u30A4\u30D1\u30FC\u30EA\u30F3\u30AF-\u9023\u52D5\u30D5\u30ED\u30FC\u8981\u7D20 +Dic-Data_Query=\u30C7\u30FC\u30BF\u30AF\u30A8\u30EA\u30FC +CellWrite-Print_Content=\u30BB\u30EB\u306E\u4E2D\u8EAB\u3092\u5370\u5237\u3059\u308B +Privilege-Selected_None_Of_Any_Items=\u9805\u76EE\u3092\u3072\u3068\u3064\u3082\u9078\u629E\u3057\u3066\u3044\u307E\u305B\u3093 +FRFont-Size=\u30B5\u30A4\u30BA +Function-J2EE_server=J2EE_server +FR-Designer_Allow_Blank=\u7A7A\u6B04\u3042\u308A +Build_Tree_Accord_Parent_Marked_Filed=\u89AA\u30BF\u30B0\u30D5\u30A3\u30FC\u30EB\u30C9\u306F\u3001\u69CB\u7BC9\u3055\u308C\u305F\u30C4\u30EA\u30FC\u3092\u8A2D\u5B9A\u3057\u3001\u9078\u629E\u3057\u305F\u30C7\u30FC\u30BF\u306B\u4F9D\u5B58 +Preference-Horizontal_Scroll_Bar_Visible=\u6C34\u5E73\u30B9\u30AF\u30ED\u30FC\u30EB\u30D0\u30FC\u306F\u53EF\u8996 +Scope=\u30B9\u30B3\u30FC\u30D7 +Save_All_Records_In_Memory=\u5168\u3066\u306E\u8A18\u9332\u306F\u30E1\u30E2\u30EA\u306B\u4FDD\u5B58\u3055\u308C\u3066\u3044\u307E\u3059 +FreezeWarning1=\u521D\u671F\u5024\u306F\u6700\u7D42\u5024\u3088\u308A\u5927\u304D\u304F\u3042\u308A\u307E\u305B\u3093 +FlowLayout=\u30D5\u30ED\u30FC\u914D\u7F6E +M_Report-Report_Footer=\u5E33\u7968\u30D5\u30C3\u30BF\u30FC +FR-Action_Add=\u5897\u52A0 +BorderLayout-East=\u6771 +feedback_tip=\u4EE5\u4E0B400\u306E\u5358\u8A9E\u306E\u554F\u984C\u306E\u8AAC\u660E\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044 +FS_Start_Date=\u958B\u59CB\u65E5\u671F +FR-ConditionB_Operator=\u6F14\u7B97\u5B50 +Printer-Alias=\u5225\u540D +DS-Class_Name=\u30AF\u30E9\u30B9\u540D +FR-Designer-Plugin_Has_Been_Disabled=\u30D7\u30E9\u30B0\u30A4\u30F3\u306F\u4F7F\u7528\u304C\u7981\u6B62\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u30C7\u30B6\u30A4\u30CA\u30FC\u3068\u30B5 +Sort-Original=\u30BD\u30FC\u30C8\u3057\u306A\u3044 +Utils-Top_to_Bottom_a=\u4E0A\u304B\u3089\u4E0B\u3078 +Parameter-String=\u6587\u5B57\u5217 +InnerRadis=\u5185\u5F84\u306E\u5927\u304D\u3055 +Want_To_Cover_It=\u3053\u308C\u3092\u8986\u3044\u307E\u3059\u304B +Divided_stage=\u5206\u5272\u3055\u308C\u305F\u30B9\u30C6\u30FC\u30B8 +Seriously=\u53B3\u91CD +ReportServerP-PDF=PDF +Utils-Switch_To_Class_Reportlet=\u30D7\u30ED\u30B0\u30E9\u30E0\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5E33\u7968\u306B\u5207\u308A\u66FF\u3048 +FR-Designer_Show_Blank_Column=\u7A7A\u767D\u5217\u3092\u88DC\u5145 +M_Edit-Redo=\u518D\u5B9F\u884C +Visibility=\u53EF\u8996\u6027 +Series_Use_Default=\u7CFB\u5217\u30C7\u30D5\u30A9\u30EB\u30C8\u4F7F\u7528 +Has_Selected=\u3082\u3046\u9078\u629E +BackgroundTexture-Walnut=\u30AF\u30EB\u30DF +FormulaD-Function_category=\u95A2\u6570\u30BF\u30A4\u30D7 +Interface=\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 +FR-Designer-Beyond_Bounds= +seconds=\u79D2 +Auto-Build=\u81EA\u52D5\u7684\u306B\u30D3\u30EB\u30C9 +FR-Designer-Plugin_Install_Successful=\u5F53\u8A72\u30D7\u30E9\u30B0\u30A4\u30F3\u30C7\u30B6\u30A4\u30CA\u30FC\u3068\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3059\u308B\u969B\u306B +Template_Path=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30EB\u30FC\u30C8 +FR-Designer-FRFont_Bold=\u592A\u304F\u3059\u308B +Poly_Name=\u805A\u5408\u30E2\u30B8\u30E5\u30FC\u30EB\u540D +WorkBook=\u30EF\u30FC\u30AF\u30D6\u30C3\u30AF +Hyperlink-Self_Window=\u73FE\u5728\u306E\u30A6\u30A3\u30F3\u30C9\u30A6 +FR-Designer-Widget-Style_Title=\u6A19\u984C +FR-Designer-FRFont_Size=\u5927\u304D\u3055 +M_File-Export-SVG=SVG +Capacity=\u5BB9\u91CF +Rose_Red=\u30ED\u30FC\u30BA\u30EC\u30C3\u30C9 +StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=\u56DE\u8EE2\u5024\u306F-90\u304B\u308990\u5EA6 +HF-Move_Left=\u5DE6\u3078\u79FB\u52D5\u3059\u308B +Cell_Group=\u30BB\u30EB\u7D44 +Week=\u5468 +PageSetup-Orientation=\u65B9\u5411 +M-Open_Recent=\u6700\u8FD1\u958B\u3044\u305F\u3082\u306E +NNormal=\u6B63\u5E38 +Integer=\u6574\u6570 +Select_The_Source_To_Save=\u8A18\u61B6\u3059\u308B\u9805\u76EE\u3092\u9078\u629E +Transition=\u5206\u679D +FR-Designer_Get_Lock=\u30ED\u30C3\u30AF +one_record_exists_in_many_groups=\u4E00\u3064\u306E\u8A18\u9332\u306F\u8907\u6570\u30B0\u30EB\u30FC\u30D7\u5185\u306B\u5B58\u5728\u53EF\u80FD +FR-Designer_Cover_None=\u5168\u3066\u8986\u308F\u306A\u3044 +DeciPart=\u5C0F\u6570\u90E8\u5206 +ExpandD-Up_Father_Cell=\u4E0A\u89AA\u30BB\u30EB +Deep=\u6DF1\u3055 +FRFont-Shadow=\u5F71 +Reportlet=\u30CD\u30C3\u30C8\u5E33\u7968 +Calendar=\u30AB\u30EC\u30F3\u30C0\u30FC +DateFormat-Custom_Warning=\u6CE8\uFF1A\u30AB\u30B9\u30BF\u30E0\u65E5\u6642\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u30B5\u30DD\u30FC\u30C8\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u691C\u67FB +Unit_MM=\u30DF\u30EA\u30E1\u30FC\u30C8\u30EB +Server-Start=\u8D77\u52D5 +CellPage-Can_Break_On_Paginate=\u30DA\u30FC\u30B8\u30F3\u30B0\u304C\u5207\u65AD\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u305F\u3068\u304D +Build_Tree_Accord_Marked_Filed_Length=\u69CB\u7BC9\u30C4\u30EA\u30FC\u3092\u8A2D\u5B9A\u3057\u3001\u9078\u629E\u3057\u305F\u30C7\u30FC\u30BF\u306B\u4F9D\u5B58\u3057\u305F\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u9577\u3055\u3092\u30DE\u30FC\u30AF +ComboCheckBox-Start_Symbol=\u958B\u59CB\u6587\u5B57 +Real=\u5B9F\u969B +RWA-Batch_Modify_Cells=\u6279\u91CF\u4FEE\u6B63\u30BB\u30EB +FR-Designer_Build-Way=\u69CB\u7BC9\u65B9\u6CD5 +Read=\u8AAD\u307F\u53D6\u308A +StyleAlignment-Degrees=\u5EA6 +M_Format_A-Border=\u67A0(B) +Utils-Delete_Record=\u8A18\u9332\u524A\u9664 +Reload=\u518D\u30ED\u30FC\u30C9 +Image-Select_Picture=\u753B\u50CF\u3092\u9078\u629E +RWA-Submit=\u63D0\u51FA\u3059\u308B +the_template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +FR-Designer_Component_Scale=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30B9\u30B1\u30FC\u30EB +FRFont-italic=\u659C\u4F53 +Year=\u5E74 +HF-Move_Right=\u53F3\u3078\u79FB\u52D5\u3059\u308B +Data-Check=\u30C7\u30FC\u30BF\u7BA1\u7406\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +Unknown=\u672A\u77E5 +Submit_Style=\u63D0\u51FA\u65B9\u6CD5 +Left_Border_Line=\u5DE6\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +Brown=\u30D6\u30E9\u30A6\u30F3 +Select_A_Tree_DataSource_To_Build=\u30C4\u30EA\u30FC\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u3092\u9078\u629E\u3057\u3066\u7D44\u307F\u7ACB\u3066\u3066\u304F\u3060\u3055\u3044 +Overlapping=\u91CD\u306D\u578B +DS-Class_TableData=\u30AF\u30E9\u30B9\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9 +FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=\u8B58\u5225\u4E0D\u80FD\u306A\u30D7\u30E9\u30B0\u30A4\u30F3\u3067\u3059\u3002\u30A4\u30F3\u30B9 +DisplayNothingBeforeQuery=\u81EA\u52D5\u691C\u7D22\u7121\u3057 +Y_Axis=Y\u8EF8 +FormulaD-Most_Recently_Used=\u5E38\u7528\u95A2\u6570 +FormulaD-Input_formula_in_the_text_area_below=\u30C6\u30AD\u30B9\u30C8\u30DC\u30C3\u30AF\u30B9\u306B\u516C\u5F0F\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044 +Build-Way=\u69CB\u7BC9\u65B9\u6CD5 +M_Edit-Undo=\u5143\u306B\u623B\u3059 +Line-Style=\u7DDA\u5F62 +Datasource-Other_Attributes=\u305D\u306E\u4ED6\u5C5E\u6027 +M_Server-Global_Parameters=\u30B0\u30ED\u30FC\u30D0\u30EB\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC +Suffix=\u5F8C\u7F00 +Image-Image_Files=\u30A4\u30E1\u30FC\u30B8\u30D5\u30A1\u30A4\u30EB +EditRC-Entire_row=\u884C(R) +HF-First_Page=\u30C8\u30C3\u30D7\u30DA\u30FC\u30B8 +BackgroundTexture-Granite=\u307F\u304B\u3052\u77F3 +DataList=\u30C7\u30FC\u30BF\u30C1\u30A7\u30FC\u30F3 +Recursion=\u5E30\u7D0D +BarStyle=\u30B9\u30C8\u30EA\u30C3\u30D7 +FR-Designer-Min_Width= +Utils-Report-Env_Directory=\u5E33\u7968\u4F5C\u696D\u76EE\u6B21 +D-ChartArea=\u30B0\u30E9\u30D5\u30A8\u30EA\u30A2 +Only=\u305F\u3060 +FR-Base_No=\u3044\u3044\u3048 +SpecifiedG-Put_all_others_together=\u4ED6\u306E\u3059\u3079\u3066\u3092\u7D50\u5408\u3059\u308B +HF-NewLine_Des=\u4E0A\u306E\u79FB\u52D5\u3068\u524A\u9664\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u6539\u884C\u30B3\u30FC\u30C9\u3092\u64CD\u4F5C\u3059\u308B +WLayout-Border-ThreeContainer=\u5317\u3001\u897F\u3001\u4E09\u56FD\u5883\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u30B3\u30F3\u30C6\u30CA\u30FC\u3068\u5E45\u3092\u8ABF\u6574\u3059\u308B\u5FC5\u8981\u304C\u3042 +Parameter_Name=\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u540D +FR-Base_Table=\u8868 +Des-Remove_WorkSheet=\u9078\u629E\u3059\u308B\u5E33\u7968\u306B\u306F\u30C7\u30FC\u30BF\u304C\u3042\u308B\u304B\u3082\u3057\u308C\u307E\u305B\u3093\u304C\u3001\u5B8C\u5168\u306B\u524A\u9664\u3059\u308B\u5834\u5408\u3001 +Rotation=\u56DE\u8EE2 +Undefined=\u672A\u5B9A\u7FA9 +Support-Auto_Complete_Shortcut=\u81EA\u52D5\u3067\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u3092\u88DC\u3046 +Set_Column_Title_End=\u91CD\u8907\u3059\u308B\u7D42\u4E86\u5217\u3092\u8A2D\u5B9A +Submit_Url=\u30A2\u30C9\u30EC\u30B9\u63D0\u51FA +ReportServerP-Are_you_sure_to_delete_the_selected_printer=\u9078\u629E\u3055\u308C\u305F\u30D7\u30EA\u30F3\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066 +long_data_can_not_show_fully=\u9577\u3044\u30C7\u30FC\u30BF\u304C\u5341\u5206\u306B\u767A\u63EE\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093 +Utils-Beyond_the_bottom_side_of_Border=\u4E0B\u9818\u57DF\u3092\u30AA\u30FC\u30D0\u30FC +FR-Import-Export_PDF=PDF\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8 +Form-CheckBoxGroup=\u30D5\u30EC\u30FC\u30E0\u30BB\u30C3\u30C8\u3092\u8907\u6570\u9078\u629E +Click-Me=\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u3068\u30B5\u30D7\u30E9\u30A4\u30BA\u304C\u3042\u308A\u307E\u3059\u3088\uFF01 +Hyperlink-Self=\u540C\u3058Frame(S) +Tree-Select_Leaf_Only_Tips=\u30C1\u30A7\u30C3\u30AF\u3057\u306A\u3044\u5834\u5408\u3001\u623B\u308A\u5024\u306F\u5F53\u30CE\u30FC\u30C9\u3060\u3051\u3002 +StyleAlignment-Text_Rotation=\u30C6\u30AD\u30B9\u30C8\u65B9\u5411 +Format-Error=\u5165\u529B\u3057\u305F\u5024\u306E\u66F8\u5F0F\u304C\u4E0D\u6B63\u78BA\u3067\u3059 +Server-Stop=\u4E00\u6642\u505C\u6B62 +Preference-Setting_Grid=\u30B0\u30EA\u30C3\u30C9\u8A2D\u5B9A +ReportServerP-Add_Printer=\u30D7\u30EA\u30F3\u30BF\u30FC\u8FFD\u52A0 +FR-Designer-Plugin_Active=\u4F7F\u7528\u958B\u59CB +Utils-File_name=\u30D5\u30A1\u30A4\u30EB\u540D +NOT_NULL_Des=\u3053\u3053\u306F\u7A7A\u6B04\u306B\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093 +Right_Border_Line=\u53F3\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +EditRC-Entire_column=\u5217(C) +PageSetup-Top_to_bottom=\u4E0A\u304B\u3089\u4E0B\u3078 +Click-Get_Default_URL=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C7\u30D5\u30A9\u30EB\u30C8\u306EURL\u3092\u53D6\u5F97 +StyleAlignment-Wrap_Text=\u81EA\u52D5\u6298\u308A\u8FD4\u3057 +Remove_All_Button=\u5168\u3066\u306E\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30A2 +FR-Designer_Component_Interval=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u9593\u9694 +ReportColumns-Columns_vertically=\u5782\u76F4\u65B9\u5411\u5217 +ReportGUI-Print_Background=\u5370\u5237\u80CC\u666F +Export-CSV=CSV (\u30AB\u30F3\u30DE\u533A\u5207\u308A) +M_Edit-Paste=\u8CBC\u308A\u4ED8\u3051(P) +FR-Designer-Basic_Restart_Designer=\u30C7\u30B6\u30A4\u30CA\u30FC\u3092\u518D\u8D77\u52D5\u3059\u308B +ReportServerP-PDF2-INFO=LINUX/UNIX\u306B\u4E2D\u56FD\u8A9E\u30D5\u30A9\u30F3\u30C8\u304C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u305F\u6642\u306E\u307F\u4F7F\u7528 +FormulaD-Check_Valid=\u6709\u52B9\u6027\u30C1\u30A7\u30C3\u30AF +server_disconnected=\u5207\u65AD\u3055\u308C\u305F +ParameterD-Parameter_name_cannot_be_null=\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u540D\u306F\u7A7A\u5024\u306B\u306A\u3063\u3066\u306F\u3044\u3051\u307E\u305B\u3093 +FR-Designer-Plugin_Version_Is_Lower_Than_Current=\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u30D1\u30C3\u30AF\u306E\u30D7\u30E9\u30B0\u30A4\u30F3\u30D0\u30FC\u30B8 +RWA-NotChange_Unmodified=\u306E\u6539\u6B63\u3092\u66F4\u65B0\u3057\u306A\u3044 +User_Information=\u30E6\u30FC\u30B6\u30FC\u60C5\u5831 +Custom_styles_lost=\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u30B9\u30BF\u30A4\u30EB\u306F\u5931\u308F\u308C\u307E\u3057\u305F +PageSetup-Margin=\u4F59\u767D +M-New_FormBook=\u8868\u3092\u65B0\u898F\u4F5C\u6210 +Widget-TreeNode=\u30C4\u30EA\u30FC\u30CE\u30FC\u30C9\u30DC\u30BF\u30F3 +Form-Url=\u30A2\u30C9\u30EC\u30B9 +Utils-Beyond_the_left_side_of_Border=\u5DE6\u30DC\u30FC\u30C0\u30FC\u8D85\u3048 +Float_Element_Name=\u30D5\u30ED\u30FC\u3068\u8981\u7D20\u540D\u79F0 +Purple=\u8584\u7D2B +DashBoard-Potence=\u6A29\u9650 +M-Close_Template=\u5E33\u7968\u3092\u9589\u3058\u308B(C) +paper=\u7D19 +Not_Exsit=\u5E33\u7968\u306B\u5B58\u5728\u3057\u307E\u305B\u3093 +Utils-Insert_Row=\u884C\u633F\u5165 +Utils-Delete_Row=\u884C\u524A\u9664 +not_support_authority_edit=\u8BE5\u5143\u7D20\u4E0D\u652F\u6301\u6743\u9650\u63A7\u5236 +Formula_Tips=\u5F0F\u306F "\ +FR-Action_Copy=\u30B3\u30D4\u30FC +Compile_Success=\u7DE8\u96C6\u7FFB\u8A33\u306B\u6210\u529F\u3057\u307E\u3057\u305F +BackgroundTexture-RecycledPaper=\u518D\u751F\u7D19 +StyleAlignment-Single_Line=\u4E00\u884C\u3067\u8868\u793A +Utils-Move_Down=\u4E0B\u3078\u79FB\u52D5 +Please_Set_Repeat_First=\u307E\u305A\u91CD\u8907\u3059\u308B\u6A19\u984C\u884C\u3068\u5217\u3092\u8A2D\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 +Writer-ShortCuts_Setting=\u5831\u544A\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u8A2D\u5B9A +Verify-Data_Verify=\u30C7\u30FC\u30BF\u691C\u8A3C +FR-mobile_analysis_style=\u89E3\u6790\u65B9\u5F0F +Confirm-Delete-File=\u9078\u629E\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F +PageSetup-Header=\u30DA\u30FC\u30B8\u30D8\u30C3\u30C0 +JavaScrit-Asynch=\u975E\u540C\u671F +ReportServerP-Toolbar=\u30C4\u30FC\u30EB\u30D0\u30FC +Utils-Top_to_Bottom=\u7E26\u65B9\u5411 +Platform=\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0 +FR-Designer-FRFont_Underline=\u30A2\u30F3\u30C0\u30FC\u30E9\u30A4\u30F3 +Show_in_Containing_Folder=\u6240\u5728\u3059\u308B\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304F +BackgroundTexture-WaterDroplets=\u3057\u305A\u304F +FR-Designer-Dependence_Install_Failed=install failed +Layout-Padding=\u30D1\u30C7\u30A3\u30F3\u30B0 +roles_already_authority_edited=\u69CB\u6210\u3055\u308C\u305F\u5F79\u5272 +WidgetDisplyPosition=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u8868\u793A\u4F4D\u7F6E +SpecifiedG-Force_Group=\u5F37\u5236\u7684\u306B\u30B0\u30EB\u30FC\u30D4\u30F3\u30B0\u3059\u308B +FormulaD-Formula_Definition=\u516C\u5F0F\u5B9A\u7FA9 +I-xyScatterStyle_Marker=\u6563\u5E03\u56F3 +Hour=\u6642\u9593 +ColorMatch=\u914D\u8272 +M_Edit-Order=\u9806\u5E8F(O) +BackgroundTexture-Bouquet=\u82B1\u675F +Verify-Error_Information=\u30A8\u30E9\u30FC\u60C5\u5831 +LayerData=\u5E95\u5C42\u6570\u636E +Rename=\u540D\u79F0\u306E\u5909\u66F4 +Widget-Load_By_Async=\u975E\u540C\u671F\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +Shape=\u56F3\u5F62 +BindColumn-This_Condition_has_been_existed=\u5F53\u8A72\u6761\u4EF6\u306F\u5B58\u5728\u3057\u3066\u3044\u307E\u3059 +NS-exception_readError=\u30A8\u30E9\u30FC\u30B3\u30FC\u30C9\:1305 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30D5\u30A1\u30A4\u30EB\u89E3\u6790\u306B\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3057\u305F +Set_Column_Title_Start=\u91CD\u8907\u3059\u308B\u6A19\u984C\u5217\u3092\u8A2D\u5B9A +Fri=\u91D1 +M_Report-Report_Parameter=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC +REPORTLETS=\u8907\u6570\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30EB\u30FC\u30C8\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u306B\u30A2\u30AF\u30BB\u30B9 +WLayout-Card-ToolTip=\u30AB\u30FC\u30C9\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u306F\u3001\u30EC\u30A4\u30A2\u30A6\u30C8\u30B3\u30F3\u30C6\u30CA\u5185\u306E\u4ED6\u306E\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u6570 +M-Popup_ChartType=\u30B0\u30E9\u30D5\u30BF\u30A4\u30D7 +Please-Wait=\u5C11\u3005\u304A\u5F85\u3061\u304F\u3060\u3055\u3044 +FR-Designer-Form-ToolBar_Widget=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +Widget-Array=\u914D\u5217 +FieldBinding=\u30D0\u30F3\u30C7\u30A3\u30F3\u30B0\u30D5\u30A3\u30FC\u30EB\u30C9 +Top_Bottom_Border_Line=\u4E0A\u4E0B\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +M-Others=\u305D\u306E\u4ED6... +Hyperlink-Link_Opened_in=\u30EA\u30F3\u30AF\u306E\u958B\u3051\u65B9 +FR-Utils_WorkBook=\u4F5C\u696D\u7C3F +M_Insert-Float=\u30D5\u30ED\u30FC\u30C8\u8981\u7D20 +Out_Thick_Border_Line=\u30DC\u30C3\u30AF\u30B9\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +FR-App-File_Lookup_range=\u691C\u7D22\u7BC4\u56F2 +ReportColumns-Columns_to=\u306E\u3088\u3046\u306B\u6539\u5217\u3059\u308B +Transparent=\u900F\u660E +Parameter-Integer=\u6574\u6570\u578B +PDF-Print_Setting=PDF\u5370\u5237\u8A2D\u5B9A +Server-Embedded_Server=\u5185\u8535\u30B5\u30FC\u30D0\u30FC +M_Server-Server_Config_Manager=\u30B5\u30FC\u30D0\u30FC\u914D\u7F6E(S) +FR-Utils-Would_you_like_to_cover_the_current_file=\u30AB\u30EC\u30F3\u30C8\u30D5\u30A1\u30A4\u30EB\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u304B\uFF1F +CellWrite-InsertRow_COPY=\u5143\u306E\u5024 +Edit_String_To_Formula=\u30AD\u30E3\u30E9\u30AF\u30BF\u30FC\u6587\u5B57\u5217\u3092\u7DE8\u96C6\u3057\u3066\u516C\u5F0F\u3068\u3059\u308B\u304B\u5426\u304B +Edit-Column_Count=\u5217\u6570 +Father=\u89AA +ReportColumns-Columns_after=\u8D85\u3048\u308B +FR-Designer_Undo=\u3084\u308A\u76F4\u3059 +DBCP_MIN_IDLE=\u6700\u5C0F\u30A2\u30A4\u30C9\u30EB\u63A5\u7D9A\u6570 +M-Data_Analysis_Settings=\u30C7\u30FC\u30BF\u5206\u6790\u8A2D\u5B9A +M-Form_Preview=\u8868\u30D7\u30EC\u30D3\u30E5\u30FC +Form-Basic_Properties=\u57FA\u672C\u5C5E\u6027 +quote=\u5F15\u7528 +Thu=\u6728 +Collect-Collect_User_Information=\u30E6\u30FC\u30B6\u30FC\u60C5\u5831\u3092\u53CE\u96C6\u3059\u308B +Layer-Build=\u30D5\u30A1\u30BB\u30C3\u30C8\u7D44\u307F\u7ACB\u3066 +FR-Designer-FRFont_Line_Style=\u7DDA\u5F62 +BackgroundTexture-BrownMarble=\u8336\u8272\u306E\u5927\u7406\u77F3 +PageSetup-Page_Setup=\u30DA\u30FC\u30B8\u8A2D\u5B9A +Form-Semicolon=\u5206\u53F7 +ECP_re_input=\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u9593\u9055\u3063\u3066\u3044\u307E\u3059\u3002\u518D\u5EA6\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044 +ExpandD-Sort_After_Expand=\u62E1\u5927\u5F8C +FR-Designer-Dependence_Install_Succeed=install succeed +Env-Configure_Workspace=\u4F5C\u696D\u76EE\u6B21\u8A2D\u5B9A +feedback_info=\u8CB4\u91CD\u306A\u610F\u898B\u3042\u308A\u304C\u3068\u3046\u3054\u3056\u3044\u307E\u3059\u3002\u79C1\u9054\u306F\u3067\u304D\u308B\u3060\u3051\u65E9\u304F\u3042\u306A\u305F\u3068\u9023\u7D61\u3057\u307E\u3059\u3002 +Ratio=\u6BD4\u7387 +DBCP_TEST_ON_BORROW=\u63A5\u7D9A\u524D\u691C\u67FB\u3092\u53D6\u5F97 +FR-Designer_layerIndex= +WEB-Write_Setting=\u5831\u544A\u30DA\u30FC\u30B8\u8A2D\u5B9A +M-New_WorkBook=\u30D6\u30C3\u30AF\u3092\u65B0\u898F\u4F5C\u6210 +FR-Designer-Plugin_Has_Been_Actived=\u30D7\u30E9\u30B0\u30A4\u30F3\u306F\u3059\u3067\u306B\u8D77\u52D5\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u30C7\u30B6\u30A4\u30CA\u30FC\u3068\u30B5\u30FC +Datasource-Maximum_Number_of_Preview_Rows=\u30D7\u30EC\u30D3\u30E5\u30FC\u884C\u6570\u6700\u5927\u5024 +ExpandD-Cell_Expand_Attributes=\u62E1\u5F35\u5C5E\u6027 +Select_the_repeated_row_and_column=\u91CD\u8907\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u884C\u5217\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +FormulaD-Date_&_Time=\u65E5\u4ED8\u3068\u6642\u523B\u95A2\u6570 +Max-Mem-Row-Count=\u30AD\u30E3\u30C3\u30B7\u30E5\u306E\u78C1\u6C17\u30C7\u30A3\u30B9\u30AF\u8A18\u9332\u6570\u306F\u3000\u4EE5\u4E0A +BorderLayout-South=\u5357 +Export-Text=\u30C6\u30AD\u30B9\u30C8\u30D5\u30A1\u30A4\u30EB(\u30BF\u30D6\u533A\u5207\u308A) +JavaScript-Synch=\u540C\u671F +FR-App-All_Warning=\u8B66\u544A +M_Edit-Send_Backward=\u80CC\u9762\u3078\u79FB\u52D5(B) +Form-Layout=\u914D\u7F6E +FR-Designer-Plugin_Shop_Need_Update=\u30A6\u30A3\u30B8\u30A7\u30C3\u30C8\u306F\u3001\u66F4\u65B0\u3059\u308B\u304B\u3069\u3046\u304B\u3001\u65B0\u3057\u3044\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u4FDD\u5B58\u3057\u307E\u3059\u304B\uFF1F +FR-Designer_WorkBook=\u30EF\u30FC\u30AF\u30D6\u30C3\u30AF +UpBarBorderStyleAndColor=\u30B9\u30B1\u30FC\u30EB\u30A2\u30C3\u30D7\u30AB\u30E9\u30E0\u30B9\u30BF\u30A4\u30EB +GridLayout=\u683C\u5B50\u914D\u7F6E +Utils-Default_Value=\u30C7\u30D5\u30A9\u30EB\u30C8\u5024 +Widget-Comb_Widget_Config=\u7D44\u307F\u5408\u308F\u305B\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +Import-Excel2007_Source=Excel2007\u30EA\u30BD\u30FC\u30B9\u30D5\u30A1\u30A4\u30EB +Y-Coordinate=\u7E26\u5EA7\u6A19 +FR-Base_SimSun_Not_Found=\u5B8B\u4F53\u3092\u898B\u3064\u3051\u308B\u3053\u3068\u304C\u3067\u304D\u306A\u3044\u3001\u73FE\u5728\u306E\u30B7\u30B9\u30C6\u30E0\u306E\u4E0B\u3067\u30C7\u30D5\u30A9\u30EB\u30C8\u8A00\u8A9E\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u8BBE\u8BA1\u5668\u30D5\u30A9\u30F3\u30C8\u3068\u3057\u3066 +FR-Designer_Seriously=\u53B3\u91CD +Upload=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +Form-Widget_Property_Table=\u5C5E\u6027\u8868 +Des-Merger_Cell=\u9078\u629E\u3055\u308C\u305F\u30D5\u30A3\u30FC\u30EB\u30C9\u306B\u306F\u8907\u6570\u306E\u30C7\u30FC\u30BF\u304C\u542B\u307F\u3001\u30BB\u30EB\u3092\u7D50\u5408\u3057\u305F\u3089\u3001\u5DE6\u4E0A\u5074\u306E\u30C7 +FR-Designer-Basic_Copy_Build_NO=\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u7D44\u307F\u7ACB\u3066\u30D0\u30FC\u30B8\u30E7\u30F3\u756A\u53F7\u3092\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9 +FR-Base_TurnOn=\u8D77\u52D5 +FR-Base_Rows=\u884C +Form-Remove_Repeat=\u91CD\u8907\u3059\u308B\u9805\u76EE\u3092\u524A\u9664 +Yes=\u306F\u3044 +Datasource-JNDI_Name=JNDI\u540D +Utils-Delete_Column=\u5217\u524A\u9664 +HF-Delete_it=\u524A\u9664 +JavaScript-Dynamic_Parameters=\u52D5\u614B\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC +px=\u753B\u7D20 +FR-App-Report_Template=\u5E33\u7968\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +Verify-Message=\u30A8\u30E9\u30FC\u30E1\u30C3\u30BB\u30FC\u30B8 +Plan=\u30D7\u30E9\u30F3 +Vertical-Split_Layout=\u5782\u76F4\u5206\u5272\u914D\u7F6E +ParameterD-Delay_Playing=\u5831\u544A\u8868\u306E\u5C55\u793A\u3092\u5EF6\u671F\u3057\u307E\u3059 +TurnOff=\u9589\u3058\u308B +FR-Please_Rename=\u518D\u5EA6\u547D\u540D\u3057\u3066\u304F\u3060\u3055\u3044 +Select_Data_Set=\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8\u3092\u9078\u629E +Name_has_Colon=\u540D\u524D\: +ReportColumns-Columns_horizontally=\u6C34\u5E73\u65B9\u5411\u5217 +FR-Base_Yes=\u306F\u3044 +ReportColumns-Repeat_Row=\u884C\u756A\u53F7\u306E\u7E70\u308A\u8FD4\u3057 +Print_Setting=\u5370\u5237\u8A2D\u5B9A +Registration-User_Name=\u30E6\u30FC\u30B6\u540D +Datasource-User_Defined=\u30E6\u30FC\u30B6\u5B9A\u7FA9 +FR-Designer-Plugin_DownLoadMessage= +Delay=\u9045\u5EF6 +FR-Designer-All_MSBold=\u5FAE\u8EDF\u96C5\u9ED2 +Utils-Now_create_connection=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3078\u306E\u63A5\u7D9A +FR-Template-Path_chooseRightPath=\u6B63\u78BA\u306A\u30EB\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +FR-Remote_Re_Connect_to_Server=\u30B5\u30FC\u30D0\u30FC\u306F\u9589\u3058\u3089\u308C\u307E\u3057\u305F\u3002\u518D\u5EA6\u30B5\u30FC\u30D0\u30FC\u306B\u63A5\u7D9A\u3057\u307E\u3059\u304B? +Nation=\u56FD\u5BB6 +DBCP_MAX_WAIT=\u6700\u5927\u5F85\u3061\u6642\u9593 +FR-App-Template_Form=\u8868 +Address=\u30A2\u30C9\u30EC\u30B9 +Sub_Report=\u5B50\u5E33\u7968 +FR-Import-Export_Word=Word\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8 +FR-Server_Version_Tip=\u73FE\u5728\u306E\u63A5\u7D9A\u3057\u3066\u3044\u308B\u30B5\u30FC\u30D0\u30FC\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306F\u4F7F\u7528\u3057\u3066\u3044\u308B\u30C7\u30B6\u30A4\u30CA\u30FC\u306E\u30D0 +StyleAlignment-Left_To_Right=\u5DE6\u304B\u3089\u53F3\u3078 +Verify-ToolTips=\u516C\u5F0F\u304C\u63D0\u793A\u6821\u9A8C\u3082\u6E80\u8DB3\u3057\u3066\u3044\u306A\u3044\u8BEF\u308A\u304C\u60C5\u5831\u3092\u624B\u306B\u5165\u308C\u305F +BackgroundTexture-Stationery=\u4FBF\u7B8B +FR-Designer_RWA-Help=\u8A2D\u5B9A\u3092\u672A\u4FEE\u6B63\u3067\u66F4\u65B0\u305B\u305A\u3001\u30D7\u30EC\u30D3\u30E5\u30FC\u3057\u305F\u5E33\u7968\u3092\u5831\u544A\u3057\u3001\u30BB\u30EB\u306B\u8A18\u9332\u3055\u308C +M_Insert-Barcode=\u30D0\u30FC\u30B3\u30FC\u30C9 +Bounds=\u30DC\u30FC\u30C0\u30FC +FR-Designer-Undo_All_Authority_Operations=\u524D\u56DE\u306E\u6A29\u9650\u7DE8\u96C6\u6642\u306E\u5168\u3066\u306E\u30AA\u30DA\u30EC\u30FC\u30B7\u30E7\u30F3\u3092\u64A4\u56DE\u3059 +Datasource-Context=\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8 +CellWrite-Page_After_Column=\u5217\u5F8C\u306E\u6539\u9801 +FR-Designer_Cancel=\u30AD\u30E3\u30F3\u30BB\u30EB +Button-Group-Display-Columns=\u5217\u306E\u6570\u3092\u8868\u793A\u3059\u308B +Widget-Height=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u9AD8\u3055 +Examples=\u4F8B +Formula_Dictionary_Display_Example=\u5B9F\u969B\u5024\u7BC4\u56F2\u306F\ +StyleAlignment-Horizontal=\u6C34\u5E73\u63C3\u3048 +HyperLink_Must_Alone_Reset=\u8907\u6570\u306E\u30CF\u30A4\u30D1\u30FC\u30EA\u30F3\u30AF +ExpandD-Expand_Direction=\u62E1\u5F35\u65B9\u5411 +Include=\u542B\u3080 +Export-Excel-Page=\u30DA\u30FC\u30B8 +FR-Designer-Min_Height=\u6700\u5C0F\u9AD8\u3055 +Filed=\u30A8\u30EA\u30A2 +ReportServerP-Import_Css=Css\u5F15\u7528 +M_Insert-Formula=\u516C\u5F0F +FR-Designer_Auto-Build=\u81EA\u52D5\u7684\u306B\u30D3\u30EB\u30C9 +FRFont-Foreground=\u8272 +Bubble-Width=\u30D0\u30D6\u30EB\u306E\u5E45 +Form-Hierarchy_Tree=\u69CB\u9020\u30C4\u30EA\u30FC +WLayout-Border-LayoutContainer=\u4E2D\u90E8\u3068\u5317\u90E82\u30DC\u30FC\u30C0\u30FC\u30EC\u30A4\u30A2\u30A6\u30C8\u30B3\u30F3\u30C6\u30CA\u3068\u5317\u90E8\u30D6\u30ED\u30C3\u30AF\u3092\u542B\u3081 +Preference-JDK_Home=JDK\u30D1\u30B9 +Utils-Insert_Column=\u5217\u633F\u5165 +FR-Designer_ToolBar_Top=\u30D8\u30C3\u30C0\u30FC\u30C4\u30FC\u30EB\u30D0\u30FC +BindColumn-The_Conditions_of_FatherCell=\u89AA\u30BB\u30EB\u6761\u4EF6 +Links=\u30EA\u30F3\u30AF +M_Report-Report_Header=\u5E33\u7968\u30D8\u30C3\u30C0\u30FC +Sub_Report_Description=\u5B50\u5E33\u7968\u306F\u89AA\u8868\u904B\u884C\u74B0\u5883\u4E0B\u306B\u5B58\u5728\u3057\u306A\u3051\u308C\u3070\u306A\u3089\u305A\u3001\u4E21\u8005\u306F\u540C\u4E00\u30C6\u30F3\u30D7\u30EC +T_Insert-Float=\u30D5\u30ED\u30FC\u8981\u7D20\u3092\u633F\u5165 +BackgroundTexture-FishFossil=\u9B5A\u5316\u77F3 +My_Computer=\u30DE\u30A4 \u30B3\u30F3\u30D4\u30E5\u30FC\u30BF +FORMLET=\u7570\u306A\u308B\u8868\u306E\u30EB\u30FC\u30C8\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u306B\u30A2\u30AF\u30BB\u30B9 +HF-Undefined=\u672A\u5B9A\u7FA9 +Widget-User_Defined_Widget_Config=\u30D7\u30EC\u5B9A\u7FA9\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +Report-Write_Attributes_Group_Warning=\u8A2D\u5B9A\u3092\u30AD\u30FC?\u30C1\u30FC\u30E0\u306E\u5404\u30B3\u30E9\u30E0\u306E\u4E2D\u306E\u30AD\u30FC\u4E2A\u6570\u306F\u540C\u3058\u3067 +Form-Single_quote=\u30B7\u30F3\u30B0\u30EB\u30AF\u30A9\u30FC\u30C6\u30FC\u30B7\u30E7\u30F3\u30DE\u30FC\u30AF +Compile_Success_And_Then_Save=\u7DE8\u96C6\u7FFB\u8A33\u6210\u529F\u5F8C\u306B\u4FDD\u5B58\u3067\u304D\u307E\u3059 +FR-Designer_Layout-Padding=\u30D1\u30C7\u30A3\u30F3\u30B0 +Layout_Container=\u30EC\u30A4\u30A2\u30A6\u30C8\u30B3\u30F3\u30C6\u30CA +Admin=\u7BA1\u7406\u8005 +Form-EC_toolbar=\u5E33\u7968\u30E2\u30B8\u30E5\u30FC\u30EB\u30C4\u30FC\u30EB\u30D0\u30FC +FR-App-All_Auto=\u81EA\u52D5 +Utils-Available_Columns=\u9078\u629E\u53EF\u80FD\u306E\u5217 +Form-Change_Widget_Name_Discription=\u65B0\u3057\u3044\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044 +FR-Module_Designer=\u30C7\u30B6\u30A4\u30CA\u30FC\u30E2\u30B8\u30E5\u30FC\u30EB +FR-Import-Export_Text=\u6587\u66F8\u30D5\u30A1\u30A4\u30EB(\u30BF\u30D6\u6587\u5B57\u5206\u9694) +Values-Editor=\u5024\u30A8\u30C7\u30A3\u30BF +FR-Designer_Yes=\u306F\u3044 +ExpandD-Expandable=\u62E1\u5F35\u6027 +Tree-Return_Full_Path=\u7D50\u679C\u306F\u5B8C\u5168\u306A\u30D1\u30B9\u3092\u623B\u308A\u307E\u3059 +FRFont-bolditalic=\u592A\u5B57\u659C\u4F53 +FR-Base_StyleFormat_Sample=\u4F8B +Area_Value=\u5730\u57DF\u5024 +FR-Designer-Plugin_Disable=\u4F7F\u7528\u7981\u6B62 +Utils-Are_you_sure_to_remove_the_selected_item=\u9078\u629E\u3055\u308C\u305F\u9805\u76EE\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B +Face_Write=\u5831\u544A +Poly-Report_Block=\u5E33\u7968\u30BF\u30A4\u30D7\u805A\u5408\u30E2\u30B8\u30E5\u30FC\u30EB +Vgap=\u5782\u76F4\u9593\u9699 +FR-Designer_HyperLink_Must_Alone_Reset=\u8907\u6570\u306E\u30CF\u30A4\u30D1\u30FC\u30EA\u30F3\u30AF +DS-Class=\u30D7\u30ED\u30B0\u30E9\u30E0 +FR-Hyperlink_Please_Select_Reportlet=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5E33\u7968\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +FS_Report_Type=\u30BF\u30A4\u30D7 +HF-New_Line=\u6539\u884C\u30B3\u30FC\u30C9 +Privilege=\u6A29\u9650 +Export-Offline-Html=\u30AA\u30D5\u30E9\u30A4\u30F3html\u5E33\u7968\u51FA\u529B +FR-Designer_open-new-form-tip=711\u4EE5\u4E0B\u306E\u751F\u7523\u306E\u305F\u3081\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u73FE\u5728\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306F\u3001\u4E92 +FR-Designer-Widget-Style_Frame_Style=\u30D5\u30EC\u30FC\u30E0\u30B9\u30BF\u30A4\u30EB +Present-No_Present=\u30D5\u30A9\u30EB\u30E0\u8A2D\u5B9A\u3092\u30AD\u30E3\u30F3\u30BB\u30EB +FR-Designer_Form-Password=\u30D1\u30B9\u30EF\u30FC\u30C9 +X_Axis=X\u8EF8 +FR-mobile_html_analysis=HTML5\u89E3\u6790 +M_Edit-Bring_to_Front=\u6700\u524D\u9762\u3078\u79FB\u52D5(T) +Null_Value_Show=\u7A7A\u5024\u8868\u793A +Datasource-JNDI_DES=\u6CE8\: INITIAL_CONTEXT_FACTORY\u304C\u542B\u3080\u30AF\u30E9\u30B9\u306E.jar\u30D5\u30A1\u30A4\u30EB\u3092lib\u306B\u30B3\u30D4\u30FC +PrintP-Print_Preview=\u5370\u5237\u30D7\u30EC\u30D3\u30E5\u30FC +Form-Hierarchy_Tree_Last=\u524D +Has_been_gone=\ \u5931\u308F\u308C\u307E\u3057\u305F\u3002\u5F53\u8A72\u30B9\u30BF\u30A4\u30EB\u3092\u5897\u52A0\u3057\u307E\u3059\u304B\uFF1F +RWA-Add_Field=\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0 +newNode=\u30CE\u30FC\u30C9\u306E\u8FFD\u52A0 +PageSetup-Shrink_to_fit_content=\u30BB\u30EB\u5185\u5BB9\u306B\u3082\u3068\u3065\u3044\u3066\u81EA\u52D5\u8C03\u6574 +FR-Designer_Date=\u65E5\u4ED8 +Column_Multiple=\u30C7\u30FC\u30BF\u500D\u6570 +FR-App-All_File=\u30D5\u30A1\u30A4\u30EB +Sort-Descending=\u964D\u9806 +FR-Designer-Plugin_Delete=\u524A\u9664 +Above=\u4E0A\u8A18\u306E +Utils-The-Chart=\u30B0\u30E9\u30D5 +FRFont-plain=\u6A19\u6E96 +Calculating=\u51E6\u7406\u4E2D +Form-Object=\u30D5\u30A9\u30FC\u30E0\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8 +May=\u4E94\u6708 +FR-Designer_Plugin_Normal_Update=\u66F4\u65B0 +FR-Hyperlink_Reportlet=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5E33\u7968 +M_Edit-Copy=\u30B3\u30D4\u30FC(C) +Sub_Report_Message2=\u89AA\u5E33\u7968\u306F\u73FE\u5728\u306E\u904B\u884C\u74B0\u5883\u4E0B\u306B\u5B58\u5728\u3057\u307E\u305B\u3093 +Sub_Report_Message3=\u81EA\u8EAB\u3092\u9078\u629E\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093 +Sub_Report_Message1=\u6B63\u78BA\u306A\u30EB\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +Form-Allow_CustomData=\u30AB\u30B9\u30BF\u30DE\u3042\u308A +FR-Server_Version_Tip_MoreInfo=\u6240\u5C5E\u3059\u308B\u30B0\u30EB\u30FC\u30D7\u304C\u4F7F\u7528\u3059\u308BFineReport\u306E\u30C7\u30B6\u30A4\u30CA\u30FC\u306E\u30D0\u30FC\u30B8 +FR-Designer_Server-version-tip-moreInfo=\u79C1\u305F\u3061\u306E\u88FD\u54C1\u306EFineReport Designer\u30D0\u30FC\u30B8\u30E7\u30F3\u756A\u53F7 +Get_Lock=\u30ED\u30C3\u30AF +HF-Edit_Footer=\u30D5\u30C3\u30BF\u30FC\u7DE8\u96C6 +Datasource-New_Charset=\u65B0\u6587\u5B57\u30B3\u30FC\u30C9 +Preference-Custom=\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA +BackgroundTexture-Newsprint=\u65B0\u805E\u7528\u7D19 +ConditionB-Add_bracket=\u62EC\u5F27\u3092\u8FFD\u52A0\u3059\u308B +Datasource-Connection_successfully=\u63A5\u7D9A\u6210\u529F +Function-The_class_must_implement_the_interface=\u5F53\u8A72\u30AF\u30E9\u30B9\u306F\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u304B\u3089\u30A4\u30F3\u30D7\u30EC +FR-Designer_ChartF-Transparency=\u900F\u660E +Crimson=\u771F\u7D05 +FR-Hyperlink_Dialog=\u5BFE\u8A71\u30A6\u30A3\u30F3\u30C9\u30A6 +FR-Designer_Covered_All=\u5168\u3066\u8986\u3046 +Hyperlink-New_Window=\u65B0\u30A6\u30A3\u30F3\u30C9\u30A6 +Style_Name=\u66F8\u5F0F\u540D +CSS_warning= \u305D\u306E\u3088\u3046\u306AWebReport\\ CSS\u30EA\u30D5\u30A1\u30EC\u30F3\u30B9CSS\u30D5\u30A1\u30A4\u30EB\u304C\u5B58\u5728test.css\u306F\u3001css / test.css\u306E\u76F8\u5BFE\u30D1\u30B9\u3068\u3057\u3066
 \u6BD4\u8F03\u7684\u6587\u5DE5\u5B66\u30C7\u30A3\u30EC\u30AF\u30C8\u30EAWebReport\u3001 +FR-Base_Column=\u5217 +Three_Rows_Of_Two_Grid=2\u683C\u5B50\u306E3\u3064\u306E\u884C +DBCP_VALIDATION_QUERY=SQL\u8A8D\u8A3C\u30AF\u30A8\u30EA +M_Edit-Clear_Formats=\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8(F) +Parameter_Setting=\u30D1\u30E9\u30E1\u30FC\u30BF\u8A2D\u5B9A +Related=\u9023\u52D5 +BorderLayout-Constraints=\u5834\u6240 +Write_Preview=\u5831\u544A\u30D7\u30EC\u30D3\u30E5\u30FC +PageSetup-Page_Order=\u5370\u5237\u9806 +Verify-Verify_Formula=\u691C\u8A3C\u5F0F +State=\u7701\u5E02 +FR-Designer-Widget-Style_Body_Background=\u30E1\u30A4\u30F3\u80CC\u666F +FR-App-Privilege_No=\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093 +Please_Drag_ParaPane= +Come_True=\u5B9F\u73FE +ISEMPTY=\u7A7A\u6B04 +Background-Texture=\u30C6\u30AF\u30B9\u30C1\u30E3 +FR-Designer_Verify-Message=\u30A8\u30E9\u30FC\u30E1\u30C3\u30BB\u30FC\u30B8 +Locked=\uFF08\u30ED\u30C3\u30AF\u6E08\u307F\uFF09 +Utils-Design-Action_Cancel=\u30AD\u30E3\u30F3\u30BB\u30EB +Image-Titled=\u5C55\u958B +Gradient-Direction=\u65B9\u5411\u3092\u5F90\u3005\u306B\u5909\u5316 +Green=\u6DF1\u7DD1 +Report_Engine=\u5E33\u7968\u30A8\u30F3\u30B8\u30F3 +Return-String=\u30AD\u30E3\u30E9\u30AF\u30BF\u30FC\u6587\u5B57\u5217\u306B\u623B\u308B +Margin=\u30DE\u30FC\u30B8\u30F3 +Pitch_Percentage=\u30D4\u30C3\u30C1\u306E\u5272\u5408 +FR-Base_TurnOff=\u9589\u3058\u308B +Utils-has_been_existed=\u65E2\u5B58 +HF-Insert_Formula=\u516C\u5F0F\u3092\u633F\u5165 +Utils-Exit_Designer=\u30C7\u30B6\u30A4\u30CA\u30FC\u3092\u7D42\u4E86\u3059\u308B +Formula_Dictionary_Display=\u4E0A\u306E\u5B9F\u969B\u5024\u7BC4\u56F2\u5185\u306E\u3044\u305A\u308C\u306E\u5024($$$)\u306F\u3001\u305D\u306E\u8868\u793A\u5024\u306F +PageSetup-Left_to_right=\u5DE6\u304B\u3089\u53F3\u3078 +Utils-Import_Excel_Data=\u300CExcel]\u30A4\u30F3\u30D7\u30C3\u30C8 +M-Save=\u4FDD\u5B58 +redo=\u3082\u3046\u4E00\u5EA6\u3059\u308B +Status=\u72B6\u614B +Draw=\u5236\u4F5C +FR-Designer_Message=\u30E1\u30C3\u30BB\u30FC\u30B8 +Records=\u3064\u306E\u8A18\u9332 +FR-Designer_ComboBox=\u30B3\u30F3\u30DC\u30DC\u30C3\u30AF\u30B9 +Driver=\u30C9\u30E9\u30A4\u30D0\u30FC +Template_Parameters=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC +Form-Remove_Repeat_Data=\u91CD\u8907\u3059\u308B\u30C7\u30FC\u30BF\u3092\u524A\u9664 +ECP_decode=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30A2\u30F3\u30ED\u30C3\u30AF +Area_Name=\u5730\u57DF\u540D +Others=\u305D\u306E\u4ED6 +Merge=\u5408\u4F75\u3059\u308B +BackgroundTexture-Parchment=\u7F8A\u76AE\u7D19 +BindColumn-Bottom_N=\u5F8C\u306EN\u500B +Frame=\u30D5\u30EC\u30FC\u30E0 +Bottom_Border_Line=\u30DC\u30C8\u30E0\u30DC\u30FC\u30C0\u30FC +Muiti_In=\u591A\u5C64\u53D6\u308A\u30EA\u30F3\u30B0 +FR-Designer-Dependence_Install_Online=install online +Use_Default_ToolBar=\u30C7\u30D5\u30A9\u30EB\u30C8\u30C4\u30FC\u30EB\u30D0\u30FC\u4F7F\u7528 +M_Server-Platform_Manager=\u5E33\u7968\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u7BA1\u7406 +PageSetup-inches=\u30A4\u30F3\u30C1 +Form-Widget_Property=\u5C5E\u6027\u540D +FR-Layout_Padding=\u5185\u30DE\u30FC\u30B8\u30F3 +Schema=\u30B9\u30AD\u30FC\u30DE +Server_Path=\u30DB\u30B9\u30C8\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u4F4D\u7F6E +Condition_Display=\u6761\u4EF6\u8868\u793A +FR-Server-Design_template_unopened=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u958B\u304F\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093 +Function-Function_Class_Name=\u95A2\u6570\u30AF\u30E9\u30B9\u540D +Schedule-Template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u540D +Tree_Data_Field=\u30C4\u30EA\u30FC\u30C7\u30FC\u30BF\u30D5\u30A3\u30FC\u30EB\u30C9 +Border-Style-Normal=\u76F4\u89D2\u306E\u56FD\u5883\u306B +Top_And_Double_Bottom_Border_Line=\u4E0A\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3\u3068\u53CC\u4E0B\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +FR-Server_Embedded_Server_Start=\u5185\u8535\u30B5\u30FC\u30D0\u30FC-\u958B\u304F +FR-Designer-Basic_Restart_Designer_Later=\u5F8C\u3067\u518D\u8D77\u52D5\u3059\u308B +StyleAlignment-Top=\u4E0A\u8A70\u3081 +ReportServerP-First=\u30C8\u30C3\u30D7\u30DA\u30FC\u30B8 +Not_Exist=\u5B58\u5728\u3057\u306A\u3044 +FR-Remote_File_is_Locked=\u958B\u3053\u3046\u3068\u3057\u3066\u3044\u308B\u5E33\u7968\u306F\u73FE\u5728\u4ED6\u306E\u4EBA\u304C\u7DE8\u96C6\u3057\u3066\u3044\u307E\u3059\u3002\u5C11\u3057\u5F85\u3063\u3066\u304B +Apply=\u30A2\u30D7\u30EA +Sytle-Indentation=\u30A4\u30F3\u30C7\u30F3\u30C8 +Parameter-Float=\u5358\u7CBE\u5EA6\u6D6E\u52D5\u5C0F\u6570\u70B9\u6570\u578B +HF-Center_Section=\u4E2D\u592E\u30BB\u30AF\u30B7\u30E7\u30F3 +Form-Double_quotes=\u30C0\u30D6\u30EB\u30AF\u30AA\u30FC\u30C6\u30FC\u30B7\u30E7\u30F3\u30DE\u30FC\u30AF +M_File-Export-Word=Word +M_File-Export-Text=\u30C6\u30AD\u30B9\u30C8\u30D5\u30A1\u30A4\u30EB(\u30BF\u30D6\u533A\u5207\u308A)(T) +PageSetup-First_Page_Number=\u30B9\u30BF\u30FC\u30C8\u306E\u30DA\u30FC\u30B8\u756A\u53F7 +Execute=\u5B9F\u884C +Task=\u30BF\u30B9\u30AF +Custom_Button_Type_Submit=\u63D0\u51FA +FR-Designer-Widget_Settings=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u8A2D\u5B9A +IS_Need_Password=\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u5FC5\u8981\u3067\u3059 +PageSetup-Horizontally=\u6C34\u5E73\u4E2D\u592E\u63C3\u3048 +No_Editor_Property_Definition=\u5F53\u8A72\u30A8\u30C7\u30A3\u30BF\u306F\u5C5E\u6027\u5B9A\u7FA9\u304C\u3042\u308A\u307E\u305B\u3093 +Env-Remote_Server=\u30EA\u30E2\u30FC\u30C8\u30B5\u30FC\u30D0\u30FC +FR-Utils_Background=\u80CC\u666F +FR-Designer-Plugin_Warning=\u8B66\u544A +Server-version-info=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30D5\u30A1\u30A4\u30EB\u306F\u3001\u5F8C\u3067\u8A2D\u8A08\u3084\u5143\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u5C5E\u6027\u3092\u5931\u3046\u30EA\u30B9\u30AF\u306B +CellWrite-Page_After_Row=\u884C\u5F8C\u306E\u6539\u9801 +HF-Right_Section=\u53F3\u5074\u30BB\u30AF\u30B7\u30E7\u30F3 +PageSetup-Title_Start_Row=\u91CD\u8907\u3059\u308B\u6A19\u984C\u884C +From=\u7B2C\u3000\u304B\u3089 +Preference-Grid_Line_Color=\u30B0\u30EA\u30C3\u30C9\u7DDA\u306E\u8272 +RowTo=\u884C\u304B\u3089\u7B2C\u307E\u3067 +FR-Designer_ReportColumns-Repeat_Column=\u5217\u9806\u5E8F\u3092\u30B3\u30D4\u30FC +M_Server-Function_Manager=\u95A2\u6570\u30DE\u30CD\u30FC\u30B8\u30E3\u30FC +KeyWord=\u30AD\u30FC\u30EF\u30FC\u30C9 +DS-Multi_Dimensional_Database=\u591A\u6B21\u5143\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9 +BiasD-Slope_Line=\u659C\u7DDA +Tue=\u706B +ReportServerP-Last=\u7D42\u4E86\u9801 +FR-Base_Columns=\u5217 +SpecifiedG-Leave_in_their_own_groups=\u5404\u30B0\u30EB\u30FC\u30D7\u5185\u306B\u4FDD\u7559\u3059\u308B +LOG-Please_Wait=\u5C11\u3005\u304A\u5F85\u3061\u304F\u3060\u3055\u3044 +Form-ToolBar=\u8868\u30C4\u30FC\u30EB\u30D0\u30FC +FR-Base_sure_remove_item=\u672C\u5F53\u306B\u9078\u629E\u3057\u305F\u9805\u76EE\u3092\u524A\u9664\u3057\u307E\u3059\u304B +Component_Scale=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u30B9\u30B1\u30FC\u30EB +Hyperlink-Use_CJK_to_encode_parameter=CJK\u51E6\u7406\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u4F7F\u7528 +LOG-Has_Been_Openned=\u958B\u304D\u307E\u3057\u305F +FR-Designer-Dependence= +ECP_error_pwd=\u30D1\u30B9\u30EF\u30FC\u30C9\u30A8\u30E9\u30FC +REPORTLET=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30EB\u30FC\u30C8\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u306B\u30A2\u30AF\u30BB\u30B9 +RWA-Column_Offset=\u5217\u30AA\u30D5\u30BB\u30C3\u30C8 +Forecast=\u4E88\u6E2C +Light_Orange=\u660E\u308B\u3044\u30AA\u30EC\u30F3\u30B8 +StyleAlignment-Vertical=\u5782\u76F4\u63C3\u3048 +Form-List=\u30EA\u30B9\u30C8 +ParameterD-Show_Parameter_Window=\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u30A6\u30A4\u30F3\u30C9\u30A6\u3092\u8868\u793A\u3059\u308B +FR-Designer_Set_Submit_Event=\u63D0\u51FA\u4E8B\u4EF6\u3092\u8A2D\u5B9A +Value_Percent=\u5024\u5272\u5408\u4F8B +DBCP_MIN_EVICTABLE_IDLE_TIMEMILLIS=\u30A2\u30A4\u30C9\u30EB\u6700\u5C0F\u6642\u9593\u5024\u4FDD\u6301 +Function-The_class_must_be_located_in=\u5F53\u8A72\u30AF\u30E9\u30B9\u306F\u5B58\u5728\u3057\u306A\u3051\u308C\u3070\u306A\u308A\u307E\u305B\u3093 +FR-Action_Sort=\u30BD\u30FC\u30C8 +DataFunction-Average=\u5E73\u5747 +FR-Designer_Show_in_Containing_Folder=\u6240\u5728\u3059\u308B\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304F +M_File-Export-Excel=Excel +DataFunction-Max=\u6700\u5927\u5024 +FR-Designer_Form-Widget_Name=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u540D +FS_End_Date=\u7D42\u4E86\u65E5\u671F +Export-Excel-Simple=\u5143 +ColumnTo=\u5217\u306F\u7B2C\u3000\u307E\u3067 +SpecifiedG-Discard_all_others=\u4ED6\u306E\u3059\u3079\u3066\u3092\u7834\u68C4\u3059\u308B +DS-TableData=\u30C7\u30FC\u30BF\u30BD\u30FC\u30B9 +Form-DataTable=\u30C7\u30FC\u30BF\u8868 +Sub_Report_ToolTips=\u5B50\u5E33\u7968\u63D0\u793A +Right_Top=\u53F3\u4E0A +M_Edit-Merge_Cell=\u30BB\u30EB\u3092\u7D50\u5408\u3059\u308B +FR-Designer_Restore_Default=\u30C7\u30D5\u30A9\u30EB\u30C8\u5FA9\u5143 +Component_Interval=\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306E\u9593\u9694 +Cover_None=\u5168\u3066\u8986\u308F\u306A\u3044 +Datasource-From_Database=\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u304B\u3089 +Folder=\u76EE\u6B21 +Form-Allow_Edit=\u76F4\u63A5\u7DE8\u96C6\u3042\u308A +M_Edit-Clear=\u30AF\u30EA\u30A2(A) +ParentCell_Setting=\u89AA\u30BB\u30EB\u8A2D\u5B9A +Only_selected_cell_can_paste_only=\u30BB\u30EB\u306F\u8CBC\u308A\u4ED8\u3051\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u9078\u629E\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u306B\u306E\u307F +M_Report-Report_Columns=\u5E33\u7968\u30B3\u30E9\u30E0 +Unit_Hundred=\u767E +FR-Designer_DataTable-Build= +Widget-Form_Widget_Config=\u8868\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB +Server-version-tip-moreInfo=\u79C1\u305F\u3061\u306E\u88FD\u54C1\u306EFineReport Designer\u30D0\u30FC\u30B8\u30E7\u30F3\u756A\u53F7\u3060\u3051\u3067\u306A\u304F\u3001 +Actions=\u30A2\u30AF\u30B7\u30E7\u30F3 +FR-Designer-Dependence_Connect_Server_Error=connect error +High=\u9AD8 +HJS-Send_Failed=\u9001\u4FE1\u5931\u6557 +HJS-Message=\u30E1\u30C3\u30BB\u30FC\u30B8\u5185\u5BB9 +File-Allow_Upload_Files=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u304C\u8A31\u53EF\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7 +FR-Designer-Form-ToolBar_Chart=\u30B0\u30E9\u30D5 +Thick_Bottom_Border_Line=\u7C97\u5E95\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +FR-Action_Remove=\u524A\u9664 +FRFont-Style=\u30B9\u30BF\u30A4\u30EB +Select_DataColumn=\u30C7\u30FC\u30BF\u5217\u3092\u9078\u629E +StartValue=\u958B\u59CB\u5024 +SINGLE_FILE_UPLOAD=\u5358\u72EC\u30D5\u30A1\u30A4\u30EB\u306E\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u306E\u307F\u30B5\u30DD\u30FC\u30C8 +BackgroundTexture-Cork=\u30B3\u30EB\u30AF\u6813 +M_Format-Data_Map=\u30C7\u30FC\u30BF\u30DE\u30C3\u30D7 +FR-mobile_native_analysis=\u4E00\u6B21\u89E3\u6790 +HighLight=\u30CF\u30A4\u30E9\u30A4\u30C8 +FR-Designer_Dropdown-More-Preview=\u4E0B\u62C9\u83B7\u53D6\u66F4\u591A\u9884\u89C8\u65B9\u5F0F +local=\u30ED\u30FC\u30AB\u30EB +FR-Designer_Gradation=\u69CB\u6210 +PageSetup-Finis_Start_Column=\u91CD\u8907\u3059\u308B\u7D42\u4E86\u5217 +Env-Invalid_User_and_Password=\u7121\u52B9\u306A\u30E6\u30FC\u30B6\u30FC\u540D\u307E\u305F\u306F\u30D1\u30B9\u30EF\u30FC\u30C9\u3067\u3059 +FR-Designer-Plugin_All_Plugins=\u5168\u3066\u306E\u30D7\u30E9\u30B0\u30A4\u30F3 +FR-Designer_Prepare_Export=\u5C0E\u51FA\u3092\u958B\u59CB\u3057\u3066\u3044\u307E\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044 +DBCP_TEST_ON_RETURN=\u63A5\u7D9A\u524D\u691C\u67FB\u306B\u623B\u308B +no-alternatives=\u5168\u304F\u9078\u629E\u80A2\u304C\u3042\u308A\u307E\u305B\u3093 +FR-Designer_Submmit_WClass=\u30AB\u30B9\u30BF\u30E0\u9001\u4FE1 +M_Insert-Slope_Line=\u659C\u7DDA +FR-Designer-Plugin_Plugin_Description=\u30D7\u30E9\u30B0\u30A4\u30F3\u8AAC\u660E +ExpandD-Not_Expand=\u62E1\u5F35\u3057\u306A\u3044 +Utils-Bottom_to_Top=\u4E0B\u304B\u3089\u4E0A\u3078 +Collect-Click\!_Get_user_information_code=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\!\u30A2\u30AF\u30C6\u30A3\u30D9\u30FC\u30C8\u30B3\u30FC\u30C9\u3092\u53D6\u5F97 +FR-Already_exist=\u73FE\u5728\u306E\u74B0\u5883\u306B\u306F\u5B58\u5728\u3057\u3066\u3044\u307E\u3059\: +Send=\u767A\u9001 +M_Edit-Clear_All=\u5168\u3066\u30AF\u30EA\u30A2(A) +Brown_Orange=\u30D6\u30E9\u30A6\u30F3 +PageSetup-Portrait=\u7E26\u65B9\u5411 +FR-Designer_Form-RadioGroup=\u30E9\u30B8\u30AA\u30DC\u30BF\u30F3\u30B0\u30EB\u30FC\u30D7 +FR-Utils-App_AllFiles=\u5168\u3066\u306E\u30D5\u30A1\u30A4\u30EB +Popup=\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7 +Server_Charset=\u30B5\u30FC\u30D0\u30FC\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0 +CellWrite-Repeat_Content_When_Paging=\u6539\u9801\u3059\u308B\u6642\u7E70\u308A\u8FD4\u3057\u624B\u8868\u793A\u3059\u308B +Utils-No_Pagination=\u6539\u30DA\u30FC\u30B8\u3057\u306A\u3044 +Form-NullLayout=\u7D76\u5BFE\u5B9A\u4F4D +ConditionB-Remove_bracket=\u62EC\u5F27\u3092\u524A\u9664\u3059\u308B +email=\u30E1\u30FC\u30EB\u30DC\u30C3\u30AF\u30B9 +Minute=\u5206\u9593 +FR-Designer-Plugin_Update=\u30D7\u30E9\u30B0\u30A4\u30F3\u66F4\u65B0 +alraedy_close=\u3059\u3067\u306B\u30AA\u30D5 +ComboCheckBox-End_Symbol=\u7D42\u7D50\u6587\u5B57 +DataColumn=\u30C7\u30FC\u30BF\u5217 +Form-Password=\u30D1\u30B9\u30EF\u30FC\u30C9 +FR-Background_Image_Adjust=\u9069\u5FDC +Export-Excel-PageToSheet=\u30B7\u30FC\u30C8 +Edit-Row_Count=\u884C\u6570 +DS-Report_TableData=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30C7\u30FC\u30BF\u30BB\u30C3\u30C8 +Sche-Hour=\u6642 +Group_Count=\u7DCF\u6570\u8868\u793A +EndValue=\u7D42\u4E86\u5024 +FR-Designer_Sytle-Indentation=\u30A4\u30F3\u30C7\u30F3\u30C8 +DownBarBorderStyleAndColor=\u30D5\u30A9\u30FC\u30EB\u30AB\u30E9\u30E0\u30B9\u30BF\u30A4\u30EB +World=\u4E16\u754C +FR-Designer-Basic_Cancel=\u30AD\u30E3\u30F3\u30BB\u30EB +Finally=\u6700\u5F8C +Low=\u4F4E +Please_Input_The_Key=\u5BFE\u5FDC\u3059\u308B\u30DE\u30C3\u30D7\u306B\u4F7F\u7528\u3059\u308Bkey\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044 +Smart=\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8 +Preference-Predefined=\u30D7\u30EC\u5B9A\u7FA9 +Current_custom_global=\u73FE\u5728\u306E\u5E33\u7968\u304C\u7528\u3044\u308B\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u5168\u5C40\u30B9\u30BF\u30A4\u30EB +FR-Designer-Plugin_Shop_Need_Install=\u3042\u306A\u305F\u304C\u30A2\u30C9\u30AA\u30F3\u3055\u308C\u3066\u3044\u306A\u3044\u30EA\u30BD\u30FC\u30B9\u306E\u5E97\u8217\u3092\u3001\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3059\u308B\u304B\u3069\u3046\u304B\uFF1F +WEB-Pagination_Setting=\u30DA\u30FC\u30B8\u5225\u30D7\u30EC\u30D3\u30E5\u30FC\u8A2D\u5B9A +RCodeDrawPix=\u753B\u7D20 +FR-Designer-Widget-Style_Alpha=\u4E0D\u900F\u660E\u5EA6 +BorderLayout-North=\u5317 +HJS-Current_Page=\u30AB\u30EC\u30F3\u30C8\u30DA\u30FC\u30B8 +Compile=\u7DE8\u96C6\u7FFB\u8A33 +Show_Blank_Row=\u7A7A\u767D\u884C\u3092\u88DC\u5145 +TableData_Dynamic_Parameter_Setting=\u30C0\u30A4\u30CA\u30DF\u30C3\u30AF\u30D1\u30E9\u30E1\u30FC\u30BF +FR-Background_Image_Default=\u30C7\u30D5\u30A9\u30EB\u30C8 +BackgroundTexture-WhiteMarble=\u767D\u3044\u5927\u7406\u77F3 +DataFunction-Sum=\u5408\u8A08 +Collect-The_user_information_code_is_invalid=\u3053\u306E\u30A2\u30AF\u30C6\u30A3\u30D9\u30FC\u30C8\u30B3\u30FC\u30C9\u306F\u7121\u52B9\u3067\u3059\u3002\u516C\u5F0F\u30DB\u30FC\u30E0\u30DA\u30FC\u30B8\u3067\u7533\u8ACB\u3057\u306A\u304A\u3057\u3066\u304F\u3060\u3055\u3044 +Preference-Locale=\u56FD\u969B\u5316 +M_File-Export-PDF=PDF +BiasD-From-lower_left_to_upper_right=\u5DE6\u4E0B\u5074\u304B\u3089\u53F3\u4E0A\u5074\u3078\u5E83\u304C\u308B +Border-Style=\u67A0\u7DDA\u306E\u30B9\u30BF\u30A4\u30EB +Sort=\u30BD\u30FC\u30C8 +Image-Image_Layout=\u30A4\u30E1\u30FC\u30B8\u30EC\u30A4\u30A2\u30A6\u30C8 +Panel=\u30D1\u30CD\u30EB +FR-Designer-Basic_Copy_Build_NO_OK=\u7D44\u307F\u7ACB\u3066\u30D0\u30FC\u30B8\u30E7\u30F3\u756A\u53F7\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3057\u305F +All_Border_Line=\u3059\u3079\u3066\u306E\u5883\u754C +FR-Utils-Please_Input_a_New_Name=\u65B0\u3057\u3044\u540D\u79F0\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044 +FR-Base_Formula_Plugin=\u30D7\u30E9\u30B0\u30A4\u30F3\u95A2\u6570 +Two_Rows_Of_Three_Grid=3\u683C\u5B50\u306E\u4E8C\u5217 +FR-Designer_Certificate_Pass=https\u30B7\u30FC\u30AF\u30EC\u30C3\u30C8\u30AD\u30FC +Bubble-Series_Name=\u7CFB\u5217\u540D +M-New_Multi_Report=\u7D71\u8A08\u5E33\u7968\u3092\u65B0\u898F\u4F5C\u6210(M) +BackgroundTexture-PinkTissuePaper=\u30D4\u30F3\u30AF\u8272\u306E\u30B5\u30F3\u30C9\u30DA\u30FC\u30D1\u30FC +Preference-Support_Default_Parent_Calculate=\u30C7\u30D5\u30A9\u30EB\u30C8\u89AA\u30BB\u30EB\u306E\u8A08\u7B97 +Show_Blank_Column=\u7A7A\u767D\u5217\u3092\u88DC\u5145 +BaiduMap=\u767E\u5EA6\u30DE\u30C3\u30D7 +Report-Web_Attributes=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8Web\u5C5E\u6027 +FR-Designer_StyleAlignment-Wrap_Text=\u81EA\u52D5\u6298\u308A\u8FD4\u3057 +Need=\u5FC5\u8981 +Parameter-Double=\u500D\u7CBE\u5EA6\u6D6E\u52D5\u5C0F\u6570\u70B9\u6570\u578B +Config_Servlet=\u9060\u9694\u30B5\u30FC\u30D0\u30FC\u914D\u7F6E +Form-Comma=\u30B3\u30F3\u30DE +Verify=\u691C\u8A3C +PageSetup-Landscape=\u6A2A\u65B9\u5411 +Weeks=\u9031\u9593 +FR-Designer-Widget-Style_Title_Background=\u6A19\u984C\u80CC\u666F +Preference-Pagination_Line_Color=\u6539\u30DA\u30FC\u30B8\u7DDA\u306E\u8272 +Test_URL=\u30C6\u30B9\u30C8\u63A5\u7D9A +Fill_blank_Data=\u7A7A\u767D\u30C7\u30FC\u30BF\u306E\u88DC\u5145 +ReportServerP-The_name_of_printer_cannot_be_null=\u30D7\u30EA\u30F3\u30BF\u30FC\u306E\u540D\u524D\u306F\u7A7A\u5024\u306B\u306A\u306F\u3044\u3051\u307E\u305B\u3093 +FR-Designer-Basic_Copy_Activation_Key=\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C7\u30B6\u30A4\u30CA\u30FC\u6574\u7406\u756A\u53F7\u3092\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC +Continuum=\u96A3\u63A5\u9023\u7D9A +BackgroundTexture-MediumWood=\u6FC3\u3044\u8272\u306E\u6728\u76EE +Datasource-Column_Index=\u30B3\u30E9\u30E0\u756A\u53F7 +Function-Function_File=\u95A2\u6570\u30D5\u30A1\u30A4\u30EB +Form-Component_Bounds=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u9818\u57DF +Utils-Submit=\u63D0\u51FA +Conditions_formula=\u6761\u4EF6\u516C\u5F0F +M_Insert-Image=\u30A4\u30E1\u30FC\u30B8 +FR-Designer-Plugin_Will_Be_Delete=\u30D7\u30E9\u30B0\u30A4\u30F3\u306F\u524A\u9664\u3055\u308C\u307E\u3057\u305F\u3002\u30C7\u30B6\u30A4\u30CA\u30FC\u3068\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77 +FormulaD-Functions=\u95A2\u6570 +Mobile_Terminal=\u79FB\u52D5\u7AEF +CheckBox=\u30C1\u30A7\u30C3\u30AF\u30DC\u30C3\u30AF\u30B9 +FR-Designer-Plugin_Install=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB +Sun=\u65E5 +FR-Designer_ToolBar_Bottom=\u30D5\u30C3\u30BF\u30FC\u30C4\u30FC\u30EB\u30D0\u30FC +Widget-Width=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB\u5E45 +Series_Name=\u7CFB\u5217\u540D +Set_Row_Title_Start=\u91CD\u8907\u3059\u308B\u6A19\u984C\u884C\u3092\u8A2D\u5B9A +HF-Default_Page=\u30C7\u30D5\u30A9\u30EB\u30C8\u30DA\u30FC\u30B8 +Env_Des=\u30ED\u30B0\u30A4\u30F3\u74B0\u5883\u4E2D\u306E\u5E33\u7968\u5DE5\u7A0B\u306B\u6A29\u9650\u3092\u4ED8\u4E0E\u3059\u308B\u5834\u5408\u3001\u30E6\u30FC\u30B6\u30FC\u540D\u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u8A18\u5165\u306F\u5FC5\u305A +Widget-User_Defined=\u30D7\u30EC\u5B9A\u7FA9 +Url_location=\u7D76\u5BFE\u30EB\u30FC\u30C8 +Disk_File=\u30CF\u30FC\u30C9\u30C7\u30A3\u30B9\u30AF\u30D5\u30A1\u30A4\u30EB +Inside=\u5185\u90E8 +FR-Designer_filedChosen= +ServerM-Predefined_Styles=\u30D7\u30EC\u5B9A\u7FA9\u30B9\u30BF\u30A4\u30EB +is_need_word_adjust=\u884C\u306E\u9AD8\u3055\u3092\u56FA\u5B9A\u305B\u305A\u5C0E\u51FA +Background-Null=\u80CC\u666F\u306A\u3057 +PageSetup-Vertically=\u5782\u76F4\u4E2D\u592E\u63C3\u3048 +FR-Designer_Root=\u30EB\u30FC\u30C8\u30CE\u30FC\u30C9 +FR-Designer_Form-TextArea=\u6587\u66F8\u57DF +ReportServerP-Import_JavaScript=JavaScript\u5F15\u7528 +Form-TableTree=\u8868\u30C4\u30EA\u30FC +Opened=\u8D77\u52D5\u6E08\u307F +M_Edit-Delete=\u524A\u9664(D) +Widget-Form_Widget_Container=\u8868\u5BB9\u5668 +BindColumn-Summary=\u96C6\u8A08 +Sche-Second=\u79D2 +Server-Open_Service_Manager=\u30B5\u30FC\u30D3\u30B9\u7BA1\u7406\u5668\u3092\u958B\u304F +FRFont-Effects=\u7279\u5225\u52B9\u679C +OtherGroup_Name=\u305D\u306E\u4ED6\u30B0\u30EB\u30FC\u30D7\u306E\u540D\u524D +Specify=\u6307\u5B9A\u3059\u308B +Highlight-Click_to_Choose_Property_To_Modify=\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u5909\u66F4\u3059\u308B\u5C5E\u6027\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +triggered=\u30C8\u30EA\u30AC\u30FC +Double_Bottom_BorderLine=\u4E8C\u91CD\u5E95\u30D5\u30EC\u30FC\u30E0\u30E9\u30A4\u30F3 +M_Insert-Sub_Report=\u30B5\u30D6\u5E33\u7968 +Unit_Ten=\u5341 +Polybolck=\u30A2\u30B0\u30EA\u30B2\u30FC\u30B7\u30E7\u30F3\u30D6\u30ED\u30C3\u30AF +Select_sort_order=\u6392\u5217\u9806\u5E8F\u3092\u9078\u629E +HJS-Mail_to=\u53D7\u4FE1\u8005 +StyleAlignment-Left=\u5DE6\u8A70\u3081 +Two_Rows_Of_Two_Grid=2\u884C2\u5217\u306E\u683C\u5B50 +FR-Designer-Form-Please_Drag_ParaPane=\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u30D1\u30CD\u30EB\u3092\u3057\u307E\u3063\u3066\u304F\u3060\u3055\u3044 +Milliseconds=\u30DF\u30EA\u79D2 +DataFunction-None=\u306A\u3057 +Delivery=\u4F1D\u9054 +ColumnSpan=\u5217\u7BC4\u56F2 +StyleAlignment-Bottom=\u4E0B\u8A70\u3081 +Read_failure=\u8AAD\u307F\u306B\u969C\u5BB3\u304C\u767A\u751F\u3059\u308B\u3068\u3001\u30BD\u30FC\u30B9\u00B7\u30D5\u30A1\u30A4\u30EB\u304C\u7834\u640D\u3057\u3066\u3044\u308B +Verify-Verify=\u30C7\u30FC\u30BF\u691C\u8A3C +FR-Designer-Widget-Style_Title_Format=\u6A19\u984C\u66F8\u5F0F +FR-Designer_Edit_String_To_Formula=\u30AD\u30E3\u30E9\u30AF\u30BF\u30FC\u6587\u5B57\u5217\u3092\u7DE8\u96C6\u3057\u3066\u516C\u5F0F\u3068\u3059\u308B\u304B\u5426\u304B +FR-Base_UnSignIn=\ \u672A\u30ED\u30B0\u30A4\u30F3 +Every=\u6BCF +CellWrite-Preview_Cell_Content=\u30BB\u30EB\u306E\u5185\u5BB9\u3092\u30D7\u30EC\u30D3\u30E5\u30FC\u3059\u308B +FormulaD-Data_Fields=\u30C7\u30FC\u30BF\u30D5\u30A3\u30FC\u30EB\u30C9 \ No newline at end of file diff --git a/designer_base/src/com/fr/design/locale/designer_ko_KR.properties b/designer_base/src/com/fr/design/locale/designer_ko_KR.properties index 87fc8705a..39ebe76b6 100644 --- a/designer_base/src/com/fr/design/locale/designer_ko_KR.properties +++ b/designer_base/src/com/fr/design/locale/designer_ko_KR.properties @@ -518,7 +518,6 @@ FR-Designer_Custom_Job_Description=\uC124\uBA85 FR-Designer_Property=\uC18D\uC131 FR-Designer_ClassName=\uD074\uB798\uC2A4\uB124\uC784 FR-Designer_Template_Web_Attributes=\uD15C\uD50C\uB9BF \uC6F9 \uC18D\uC131 - FR-Designer_Polyblock_Edit=\uCDE8\uD569\uBE14\uB7ED\uD3B8\uC9D1 FR-Designer_Function_Description_Area_Text=\uD574\uB2F9\uD074\uB798\uC2A4\uB294\uACC4\uC2B9\uD574\uC57C\uD55C\uB2E4."com.fr.script.AbstractFunction".\uCEF4\uD30C\uC77C\uD6C4\uC758\uD074\uB798\uC2A4\uD30C\uC77C\uC744~\uB85C\uBCF5\uC0AC\nJ2EE\uC11C\uBC84 "{R1}" \uB514\uB809\uD130\uB9AC, \uD544\uC694\uC2DC class \uC0C1\uC751\uD558\uB294 java\uC18C\uC2A4\uD30C\uC77C\uB3C4\uD574\uB2F9\uB514\uB809\uD130\uB9AC\uD558\uB2E8\uC5D0\uB450\uC5B4\uD3B8\uC9D1\uBC0F\uCC3E\uC544\uBCF4\uAE30\uB97C\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4.\n\uC608: {R2} FR-Designer_PageSetup_Horizontal=\uAC00\uB85C @@ -555,4 +554,1433 @@ FR-Designer_Plugin_Should_Update_Please_Contact_Developer= FR-Designer_AxisReversed=\uCD95\uC5ED\uC21C FR-Designer_Logarithmic=\uB85C\uADF8\uB208\uAE08 FR-Designer_Chart_Log_Base=\uAE30\uC218 -FR-Designer_Chart_F_Radar_Axis=\uAC12\uCD95 \ No newline at end of file +FR-Designer_Chart_F_Radar_Axis=\uAC12\uCD95 +FR-Designer_Style=\uC591\uC2DD +FR-Designer_Color=\uC0C9 +FR-Designer_Border=\uD14C\uB450\uB9AC +FR-Designer_Background-Pattern=\uC774\uBBF8\uC9C0 +FR-Designer_COMMUNITY_BUG= +FR-Designer_Mobile-Attr= +FR-Designer_Too_Large_To_Paste= +FR-Designer_COMMUNITY_QUESTIONS= +FR-Designer_COMMUNITY_NEED= +FR-Designer_WidgetOrder= +FR-Designer_Button-OK= +FR-Designer_Mobile-Warning= +FR-Designer_COMMUNITY= +FR-Designer_Mobile_Form_Analysis_Annotation= +FR-Designer-Invalid_Page_Number= +FR-Designer_Form-Forzen-Speed= +FR-Designer_Properties_Mobile= +FR-Designer_AllCategories= +FR-Designer_COMMUNITY_VIDEO= +FR-Designer_Too_Small_To_Paste= +FR-Designer_COMMUNITY_HELP= +FR-Designer_Mobile-Zoom= +FR-Designer_SimpleCross_Report= +FR-Designer_Mobile-Horizontal= +FR-Designer_Form-Fit-Tip= +FR-Designer_Mobile-Vertical= +FR-Designer_Button-Cancel= +FR-Designer_LocalWidget= +FR-Designer_COMMUNITY_SIGN= +FR-Designer_TableData-Default-Para= +FR-Designer_Edit_Button_ToolBar=\uD0A4\uAC00\uC788\uB294\uD234\uBC14\uD3B8\uC9D1 +FR-Designer_Mobile-Open= +FR-Designer_Form-Frozen-Tip= +FR-Designer_Remove_Button_ToolBar=\uD0A4\uAC00\uC788\uB294\uD234\uBC14\uC81C\uAC70 +FR-Designer_Allow-Blank= +FR-Designer_COMMUNITY_BBS= +FR-Designer_formDesignerModule= +FR-Designer_COMMUNITY_UPDATE= +FR-Designer_Delete_Template= +FR-Designer_Mobile_Report_Analysis_Annotation= +FR-Designer_DoubleLayer_Report= +FR-Designer_Validate= +CellWrite-InsertRow_NULL=\uB110\uAC12 +DashBoard-ChartFloat=\uCC28\uD2B8 +contact_info=\uC5F0\uB77D\uC815\uBCF4(\uC120\uD0DD) +Page_Setup=\uC6F9\uD398\uC774\uC9C0\uC124\uC815 +CellWrite-Print_Export=\uC778\uC1C4\uB098\uAC00\uAE30 +Cannot_Get_Date=\uB0A0\uC9DC\uB97C\uBD88\uB7EC\uC62C\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +FR-Designer_Modify=\uC218\uC815 +M-Write_Preview=\uAE30\uC785\uBBF8\uB9AC\uBCF4\uAE30 +FR-Base_RWA-Key=\uB9C8\uC2A4\uD130\uD0A4 +China=\uC911\uAD6D +Set_Legend_Sytle=\uB3C4\uD45C\uBC94\uB840\uC11C\uC2DD\uC124\uC815 +FR-Designer_Number=\uC22B\uC790 +FR-Designer-Widget-Style_Common=\uC77C\uBC18 +M-Save_As=\uB2E4\uB978\uC774\uB984\uC73C\uB85C\uC800\uC7A5 +Following_parameters_are_not_generated=\uB2E4\uC74C\uB9E4\uAC1C\uBCC0\uC218\uAC00\uC0DD\uC131\uB418\uC9C0\uC54A\uC558\uC2B5\uB2C8\uB2E4. +FR-Designer-Basic_Activation_Key_Copy_OK=\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uBCF5\uC0AC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +Utils-Current_Sheet=\uD604\uC7AC Sheet +ConditionB-is_less_than=< +BorderLayout-West=\uC11C +AnalysisLine=\uBD84\uC11D\uC120 +Layer_Report_Warnning_info=\uD589\uD0C0\uC785\uC5D4\uC9C4\uC740\uB300\uC6A9\uB7C9\uB370\uC774\uD130\uC5D0\uC11C\uB9CC\uC801\uC6A9\uB429\uB2C8\uB2E4.
\uC774\uC5D4\uC9C4\uC744\uC0AC\uC6A9\uD558\uBA74\uC9C0\uC6D0\uB418\uC9C0\uC54A\uB294\uBB38\uC11C\uD2B9\uC131\uC774\uB9CE\uC544\uC9D1\uB2C8\uB2E4.
\uC0C1\uC138\uB0B4\uC6A9\uC740\uBB38\uC11C\uC758\uAD00\uB828\uC7A5\uC808\uC744\uCC38\uC870\uD574\uC8FC\uC138\uC694. +Tree-Width=\uB108\uBE44 +alert_word=\uBE44\uACE0\uC815\uD589\uB192\uC774\uB0B4\uBCF4\uB0B4\uAE30\uB97C\uC120\uD0DD\uD558\uBA74\uD3B8\uC9D1\uB0B4\uBCF4\uB0B4\uAE30\uC758 word, \uC140\uD589\uB192\uC774\uAC00\uB0B4\uC6A9\uC5D0\uB530\uB77C\uC790\uB3D9\uC73C\uB85C\uB298\uC5B4\uB098\uBA70,\uC774\uC0C1\uD669\uC5D0\uC11C\uB0B4\uBCF4\uB0B4\uAE30\uACB0\uACFC\uD398\uC774\uC9C0\uB098\uB204\uAE30\uC704\uCE58\uB294\uBBF8\uB9AC\uBCF4\uAE30\uACB0\uACFC\uC640\uC77C\uCE58\uD558\uC9C0\uC54A\uC744\uC218\uC788\uC2B5\uB2C8\uB2E4. +PageSetup-Paper_Size=\uC885\uC774\uD06C\uAE30 +M-Page_Setup=\uC6F9\uD398\uC774\uC9C0\uC124\uC815 +DashBoard-FormBook=\uD3FC +X-Coordinate=\uAC00\uB85C\uC88C\uD45C +Style-Line_Spacing=\uD589\uAC04\uACA9 +FR-Designer_Plugin_Should_Update_Title= +Server-Define_Data_Connection=\uB370\uC774\uD130\uB9C1\uD06C\uC815\uC758 +BarInside=\uCEEC\uB7FC\uC548\uCABD +Border-Color=\uD14C\uB450\uB9AC\uC0C9 +NotAllow=\uD569\uBC95\uC801\uC774\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +Utils-File_type=\uD30C\uC77C\uC720\uD615 +FR-Designer-Plugin_Install_From_Local=\uB85C\uCEEC\uD30C\uC77C\uC5D0\uC11C\uC124\uCE58 +Summary_Method=\uCDE8\uD569\uBC29\uC2DD +Select_Specified_Grouping=\uC0AC\uC6A9\uC790\uC815\uC758\uADF8\uB8F9\uC120\uD0DD +HF-Number_of_Page=\uCD1D\uD398\uC774\uC9C0\uC218 +FR-Designer-Tree_Height=\uB192\uC774 +Owner=\uB9C8\uC2A4\uD130 +Home=\uD648\uD398\uC774\uC9C0 +FR-Server_Embedded_Server_Stop=\uB0B4\uC7A5\uB41C\uC11C\uBC84-\uC815\uC9C0 +FR-Designer-Plugin_Detecting_Update=\uC5C5\uB370\uC774\uD2B8\uAC80\uC0AC\uC911 +HF-Whether_to_define_the_selected_type=\uC120\uD0DD\uD55C\uC720\uD615\uC744\uC815\uC758\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +StyleAlignment-Right=\uC624\uB978\uCABD\uC5D0\uB9DE\uCDA4 +FR-Designer_Alignment-Style=\uC815\uB82C\uBC29\uC2DD +PageSetup-Title_Start_Column=\uC911\uBCF5\uC81C\uBAA9\uC5F4 +Tree-Mutiple_Selection_Or_Not=\uB2E4\uC911\uC120\uD0DD +FR-Designer-Plugin_Search=\uAC80\uC0C9 +Choose_Role=\uAD8C\uD55C\uCEE8\uD2B8\uB864 +Append_Delete_Row_Message=\uC8FC\uC758\uFF01 \uC9C0\uC815\uB41C\uC140\uC740\uD655\uC7A5\uC18D\uC131\uC744\uC124\uC815\uD574\uC57C\uD569\uB2C8\uB2E4. +Form-ComboBox=\uBC15\uC2A4\uD480\uB2E4\uC6B4 +PageSetup-Footer=\uD398\uC774\uC9C0\uBC14\uB2E5\uAE00 +Sorting=\uC21C\uC11C\uC911 +DBCP_TEST_WHILE_IDLE=\uC720\uD734\uD68C\uC218\uAE30\uAC80\uC0AC\uC5F4\uAE30 +DS-Embedded_TableData=\uB0B4\uC7A5 \uB370\uC774\uD130 \uC138\uD2B8 +FR-Designer_No-Privilege=\uAD8C\uD55C\uC5C6\uC74C +FRFont-Subscript=\uBC11\uC904 +Background_Settings=\uBC30\uACBD\uC124\uC815 +FormulaD-Invalid_Formula=\uC62C\uBC14\uB974\uC9C0\uC54A\uC740\uC218\uC2DD +FR-Base_Margin=\uC5EC\uBC31 +FR-Designer-Plugin_Shop_Installed=\uD50C\uB7EC\uADF8\uC778 \uC0C1\uC810 \uC989\uC2DC \uC2DC\uC791\uD560\uC9C0 \uC5EC\uBD80\uB97C \uC124\uCE58? +M_Edit-Send_to_Back=\uC81C\uC77C\uBC11\uC5D0\uB450\uAE30(K) +Email-Can_Preview_Report_Content=\uBCF8\uBB38\uBBF8\uB9AC\uBCF4\uAE30\uBB38\uC11C\uB0B4\uC6A9 +FR-Designer-FRFont_Italic=\uAE30\uC6B8\uC784\uAF34 +CellWrite-Print_Background=\uC778\uC1C4/\uBD88\uB7EC\uC624\uAE30 \uC140 \uBC30\uACBD +Wizard=\uC548\uB0B4 +Preference-Is_Drag_Permited=\uB4DC\uB798\uADF8\uC9C0\uC6D0 +FR-Designer_Release_Lock=\uBE44\uBC00\uBC88\uD638\uD574\uC81C +Form-Delimiter=\uAD6C\uBD84\uBB38\uC790 +wrong=\uC624\uB958\uAC00\uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. +FR-Menu-Server_Chart_PreStyle=\uCC28\uD2B8\uC0AC\uC804\uC815\uC758\uB41C\uC0C9\uBC30\uD569 +Form-Button=\uD0A4 +FormulaD-Valid_Formula=\uB9DE\uB294\uC218\uC2DD +ParameterD-Parameter_Interface=\uB9E4\uAC1C\uBCC0\uC218\uC0AC\uC6A9\uC790\uC778\uD130\uD398\uC774\uC2A4 +At_least_one_visual_worksheet=\uC6CC\uD06C\uBD81\uC5D0\uCD5C\uC18C\uD55C\uAC1C\uC758\uBCF4\uC774\uB294\uC6CC\uD06C\uC2DC\uD2B8\uAC00\uC788\uC5B4\uC57C\uD558\uBA70,\uC0AD\uC81C\uB97C\uC6D0\uD560\uACBD\uC6B0\uC0C8\uC6CC\uD06C\uC2DC\uD2B8\uB97C\uC0BD\uC785\uD574\uC8FC\uC2ED\uC2DC\uC624. +Need_Min_Value=\uD544\uC694\uCD5C\uC18C\uAC12 +Allow_Blank=\uBE48\uCE78\uD5C8\uC6A9 +CellWrite-InsertRow_DEFAULT=\uAE30\uBCF8\uAC12 +Widget-Load_By_Complete=\uC644\uC804\uB85C\uB529 +FR-Designer-Basic_Only_Submit_Current_Sheet= +Sort-Sort_Order=\uC815\uB82C\uC21C\uC11C +File-File_Size_Limit=\uD30C\uC77C\uD06C\uAE30\uC81C\uD55C +PrintP-Print=\uC778\uC1C4(T) +FR-Designer-StyleAlignment_Center=\uAC00\uC6B4\uB370\uC815\uB82C +Preference-Setting_Colors=\uC0C9\uC124\uC815 +Judge=\uD310\uB2E8 +Image-Adjust=\uC801\uC6A9 +Collect-User_Information_DES=\uD65C\uC131\uCF54\uB4DC\uB294\uC0AC\uC6A9\uC790\uC815\uBCF4\uC218\uC9D1\uC5D0\uB9CC\uC774\uC6A9\uB418\uBA70, \uC0C1\uB2E8\uC758 "\uD65C\uC131\uCF54\uB4DC"\uD0A4\uC218\uB839\uC744\uD074\uB9AD\uD558\uBA74\uC0C8\uB85C\uC6B4\uC6F9\uBE0C\uB77C\uC6B0\uC800\uD31D\uC5C5\uC774\uB098\uD0C0\uB0A9\uB2C8\uB2E4.\uC81C\uD488\uD648\uD398\uC774\uC9C0\uC5D0\uB85C\uADF8\uC778\uD558\uC5EC\uBB34\uB8CC\uB85C\uC774\uD65C\uC131\uCF54\uB4DC\uB97C\uBC1B\uB294\uB3703\uBD84\uC774\uC18C\uC6A9\uB418\uBA70\uD55C\uBC88\uB9CC\uC2E4\uC2DC\uD558\uBA74\uB429\uB2C8\uB2E4. +FR-Designer_Plugin_Normal_Update_From_Local=\uB85C\uCEEC\uC5D0\uC11C\uD30C\uC77C\uC5C5\uB370\uC774\uD2B8 +BackgroundTexture-Canvas=\uCE94\uBC84\uC2A4 +BarOutSide=\uCEEC\uB7FC\uBC14\uAE65\uCABD +Preview_ToolTips=\uBBF8\uB9AC\uBCF4\uAE30\uC54C\uB9BC +FRFont-Family=\uC774\uB984 +FR-Lic_does_not_Support_Remote=\uD604\uC7AC \uC0AC\uC6A9\uD558\uACE0 \uC788\uB294 lic\uC740 \uC6D0\uACA9 \uB514\uC790\uC778 \uAE30\uB2A5\uC744 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uC73C\uBBC0\uB85C lic\uC744 \uC5C5\uADF8\uB808\uC774\uB4DC \uD574 \uC8FC\uC2ED\uC2DC\uC624. +InterfaceStyle=\uC2A4\uD0C0\uC77C +RWA-Key=\uB9C8\uC2A4\uD130\uD0A4 +WF-Name=\uBA85\uCE6D +RWA-Click_Cell_To_Edit_Value=\uD15C\uD50C\uB9BF\uC140\uC218\uC815\uAC12\uD074\uB9AD +Utils-Row_Height=\uD589\uB192\uC774 +ReportD-Excel_Export=\uD15C\uD50C\uB9BF\uB0B4\uBCF4\uB0B4\uAE30\uC18D\uC131 +Form-Please_Select_A_Kind_Of_Form_Container=\uD3FC\uCEE8\uD14C\uC774\uB108\uB97C\uC120\uD0DD\uD574\uC8FC\uC2ED\uC2DC\uC694 +Column_Does_Not_Exsit=\uC5F4\uC774\uC874\uC7AC\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +M_Insert-Hyperlink=\uD558\uC774\uD37C\uB9C1\uD06C +can_not_include_underline="_"\uB294\uD3EC\uD568\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +FR-Designer-Plugin_Jar_Expired=Jar\uD329\uC774\uB108\uBB34\uC624\uB798\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +FR-Background_Image_Extend=\uC7A1\uC544\uB2F9\uAE40 +TopDownShade=\uC0C1\uD558 \uADF8\uB77C\uB370\uC774\uC158 +FR-Base_Right=\uC624\uB298\uCABD +DataBinding=\uB370\uC774\uD130\uBC14\uC778\uB529 +ConnectionPool_Attr=\uCEE4\uB125\uC158\uD480\uC18D\uC131 +Connect_SQL_Cannot_Null=\uB370\uC774\uD130\uB9C1\uD06C\uC640SQL\uD328\uB110\uC740\uBE48\uCE78\uC73C\uB85C\uB458\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +DBCP_MAX_ACTIVE=\uCD5C\uB300 \uC561\uD2F0\uBE0C \uC5F0\uACB0 \uC218 +M_Window-Preference=\uC635\uC158 +ToolBar_Top=\uC0C1\uB2E8\uD234\uBC14 +FR-Designer_Indent-Pixel=\uD654\uC18C +FR-Designer_Unit_MM=\uBC00\uB9AC\uBBF8\uD130 +IDLE=\uC720\uD734 +FRFont-Underline=\uBC11\uC904 +FR-Designer-Plugin_Read_Plugin_List_Error=\uD50C\uB7EC\uADF8\uC778\uB9AC\uC2A4\uD2B8\uB97C\uC77D\uC744\uB54C\uC624\uB958\uBC1C\uC0DD +Type_Set=\uC720\uD615\uC124\uC815 +M_Format_A-Cell_Attributes=\uAE30\uD0C0\uC18D\uC131 +CellWrite-Show_As_Image=\uC774\uBBF8\uC9C0\uB85C\uB0B4\uC6A9\uBCF4\uC774\uAE30 +ShowAsDownload=\uB2E4\uC6B4\uB85C\uB4DC\uB9C1\uD06C\uB85C2\uC9C4\uBC95\uB0B4\uC6A9\uBCF4\uC774\uAE30 +Form-ComboCheckBox=\uCCB4\uD06C\uBC15\uC2A4\uD480\uB2E4\uC6B4 +BackgroundTexture-WovenMat=\uD3B8\uC9C1\uBB3C +BindColumn-Custom_Data_Appearance=\uC0AC\uC6A9\uC790\uC815\uC758\uBCF4\uC774\uAE30 +Actived=\uD65C\uC131\uD654\uB41C +Env-Local_Directory=\uB85C\uCEEC\uB514\uB809\uD130\uB9AC +Form-Colon=\uCF5C\uB860 +Preference-Vertical_Scroll_Bar_Visible=\uC218\uC9C1\uC2A4\uD06C\uB864\uBC14\uB97C\uBCFC\uC218\uC788\uC2B5\uB2C8\uB2E4. +Utils-Show_Cell_Value=\uC140\uAC12\uBCF4\uC774\uAE30 +FR-Designer_ReportColumns-Repeat_Row=\uD589\uBCF5\uC0AC\uC21C\uC11C +SpecifiedG-Specified_Group=\uC0AC\uC6A9\uC790\uC815\uC758\uADF8\uB8F9 +RWA-Smart_Add_Cells=\uC140\uC2A4\uB9C8\uD2B8\uCD94\uAC00 +HF-Left_Section=\uC67C\uCABD\uC601\uC5ED +M_Report-Report_Background=\uC885\uC774\uBC30\uACBD +Image-Extend=\uC7A1\uC544\uB2F9\uAE40 +FS_BI=\uC815\uCC45\uD50C\uB7AB\uD3FC +ToolBar_Bottom=\uD558\uB2E8\uD234\uBC14 +Hgap=\uC218\uD3C9\uD2C8 +FR-Designer_Enter-New-FileName=\uC0C8\uB85C\uC6B4\uD30C\uC77C\uBA85\uC744\uC785\uB825\uD574\uC8FC\uC2ED\uC2DC\uC624. +Verify_Fail=\uAC80\uC0AC\uC2E4\uD328 +CellWrite-InsertRow_Policy=\uD589\uC0BD\uC785\uC815\uCC45 +FR-Designer-Plugin_Illegal_Plugin_Zip=\uB9DE\uB294\uD50C\uB7EC\uADF8\uC778\uD328\uD0A4\uC9C0\uAC00\uC544\uB2D9\uB2C8\uB2E4. +RCodeVersion=\uBC84\uC804 +Convert=\uC804\uD658 +Please_Drag=\uD589\uACFC\uC5F4\uD544\uB4DC\u3001\uCDE8\uD569\uD544\uB4DC\uB97C\uB4DC\uB798\uADF8\uD574\uC8FC\uC2ED\uC2DC\uC624 +FR-Designer-Widget-Style_Preview=\uBBF8\uB9AC\uBCF4\uAE30 +mobile_number=\uD734\uB300\uD3F0\uBC88\uD638 +FR-Designer_Form-ComboCheckBox=\uCCB4\uD06C\uBC15\uC2A4\uD480\uB2E4\uC6B4 +CacheValidateTime=\uBB38\uC11C\uCE90\uC2DC\uC720\uD6A8\uAE30\uAC04 +Hyperlink-Extends_Report_Parameters=\uBB38\uC11C\uC758\uB9E4\uAC1C\uBCC0\uC218\uACC4\uC2B9 +FR-Designer_Values-Editor=\uAC12\uD3B8\uC9D1\uAE30 +Export-Excel=Excel\uC11C\uC2DD +Utils-Left_to_Right=\uAC00\uB85C +ExpandD-Vertical_Extendable=\uC138\uB85C\uB85C\uD655\uC7A5\uAC00\uB2A5 +Utils-Report_Runtime_Env=\uBB38\uC11C\uC791\uC5C5\uB514\uB809\uD130\uB9AC +Utils-Right_to_Left=\uC624\uB978\uCABD\uC5D0\uC11C\uC67C\uCABD\uAE4C\uC9C0 +Utils-Beyond_the_top_side_of_Border=\uC704\uACBD\uACC4\uC120\uBC97\uC5B4\uB0A8 +Exception_StackTrace=\uC2A4\uD0DD\uC815\uBCF4\uC624\uB958 +Corresponding_Fields=\uC0C1\uC751\uD558\uB294\uD544\uB4DC +Form-CheckBox=\uCCB4\uD06C\uBC15\uC2A4 +Utils-Current_Row=\uD604\uC7AC\uD589 +BuildIn=\uB0B4\uC7A5 +BindColumn-Results_Filter=\uACB0\uACFC\uC9D1\uC120\uBCC4 +FR-Designer-Plugin_Manager=\uD50C\uB7EC\uADF8\uC778\uAD00\uB9AC +M_File-Export-CSV=CSV\uC11C\uC2DD(\uC27C\uD45C\uAD6C\uBD84) +Data_Filter=\uB370\uC774\uD130\uC120\uBCC4 +ReportServerP-Edit_Printer=\uD504\uB9B0\uD130\uD3B8\uC9D1 +FR-Designer_Datasource-Stored_Procedure=\uC800\uC7A5\uACFC\uC815 +RESTART=\uC7AC\uBD80\uD305 +FormulaD-Function_name=\uD568\uC218\uC774\uB984 +ChooseOneButton=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uC120\uD0DD\uD6C4\uCD94\uAC00\uD574\uC8FC\uC2ED\uC2DC\uC624 +Priority=\uC6B0\uC120\uC21C\uC704 +Datasource-Datasource=\uB370\uC774\uD130\uC18C\uC2A4 +FR-Designer_Width=\uB108\uBE44 +Cannot-Add_To_This_Area=\uD574\uB2F9\uC601\uC5ED\uC5D0\uCD94\uAC00\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +Run=\uC2E4\uD589 +Set_Submit_Condition=\uC81C\uCD9C\uC870\uAC74\uC124\uC815 +FR-Base_Value=\uAC12 +fileLocked_undeleted=\uD15C\uD50C\uB9BF\uC774\uC7A0\uACA8\uC788\uC5B4\uC0AD\uC81C\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4\uFF01 \uD655\uC778\uC744\uD074\uB9AD\uD558\uC5EC\uD15C\uD50C\uB9BF\uB9AC\uC2A4\uD2B8\uC0C8\uB85C\uACE0\uCE68 +Web_Apply=WEB\uC751\uC6A9 +Refresh_Database=\uB370\uC774\uD130\uBCA0\uC774\uC2A4\uC0C8\uB85C\uACE0\uCE68 +Set_Row_Title_End=\uC911\uBCF5\uC885\uB8CC\uD589\uC124\uC815 +FR-Utils-New_Folder=\uC0C8\uD3F4\uB354 +BiasD-From-upper_left_to_lower_right=\uC67C\uCABD\uC0C1\uB2E8\uC5D0\uC11C\uC624\uB978\uCABD\uC544\uB798\uB85C\uB098\uD0C0\uB0B4\uAE30 +CapsLock=\uCEA1\uC2A4\uB85C\uD06C\uD0A4\uAC00\uCF1C\uC838\uC788\uC2B5\uB2C8\uB2E4. +StyleFormat-Sample=\uC608\uC2DC +RWA-Smart_Add_Cell_Group=\uC140\uADF8\uB8F9\uC2A4\uB9C8\uD2B8\uCD94\uAC00 +MConfig-CancelButton=\uCDE8\uC18C +Function-Choose_Function_Class=\uC120\uD0DD\uD568\uC218\uD074\uB798\uC2A4 +LatLng=\uACBD\uB3C4\uCC28\uC6D0 +DS-Server_TableData=\uC11C\uBC84\uB370\uC774\uD130\uC138\uD2B8 +BackgroundTexture-GreenMarble=\uADF8\uB9B0\uB300\uB9AC\uC11D +read_time_out=\uB85C\uB529\uC2DC\uAC04\uCD08\uACFC +JavaScript-Commit_to_Database=\uC81C\uCD9C\uC785\uACE0 +DS-Relation_TableData=\uAD00\uB828\uB370\uC774\uD130\uC138\uD2B8 +CellWrite-Page_Before_Row=\uD589\uC55E\uD398\uC774\uC9C0\uB098\uB204\uAE30 +FR-Designer-Plugin_Load_Plugins_From_Server=\uD50C\uB7EC\uADF8\uC778\uC2A4\uD1A0\uC5B4\uC5D0\uC11C\uB370\uC774\uD130\uB97C\uC5BB\uB294\uC911. +D-Dispaly_Divide_Result_Set_into_Groups=Result set\uB97C\uADF8\uB8F9\uD654\uD569\uB2C8\uB2E4. +Closed=\uC774\uBBF8\uB2EB\uD614\uC2B5\uB2C8\uB2E4. +RWA-Help=\uBBF8\uC218\uC815, \uBBF8\uC5C5\uB370\uC774\uD2B8\uB85C\uC124\uC815\uD55C\uD6C4\uBBF8\uB9AC\uBCF4\uAE30\uBB38\uC11C\uB97C\uC791\uC131\uD558\uC5EC\uB808\uCF54\uB4DC\uB41C\uC140\uC5D0\uD3B8\uC9D1\uC218\uC815\uC0AC\uD56D\uC774\uC5C6\uC744\uACBD\uC6B0\uC774\uB808\uCF54\uB4DC\uB294\uD589\uC5C5\uB370\uC774\uD2B8\uB97C\uC9C4\uD589\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4.\n\uB300\uC6A9\uB7C9\uB370\uC774\uD130\uB808\uCF54\uB4DC\uCC3E\uC544\uBCF4\uAE30\uBC0F\uAE30\uC785\uC0C1\uD669\uC5D0\uC11C\uD574\uB2F9\uC124\uC815\uC744\uD558\uBA74\uAE30\uC785\uC81C\uCD9C\uC131\uB2A5\uC744\uB192\uC77C\uC218\uC788\uC2B5\uB2C8\uB2E4. +FR-Designer-Widget-Style_Custom= +FR-Designer-Widget-Style_Render_Style=\uB80C\uB354\uC2A4\uD0C0\uC77C +Highlight-Barcode=\uBC14\uCF54\uB4DC +FR-Designer_Connect_SQL_Cannot_Null=\uB370\uC774\uD130\uB9C1\uD06C\uC640SQL\uD328\uB110\uC740\uBE48\uCE78\uC73C\uB85C\uB458\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +trigger=\uD2B8\uB9AC\uAC70 +M-Data_Analysis=\uB370\uC774\uD130\uBD84\uC11D +Function-The_selected_file_cannot_be_null=\uD30C\uC77C\uC740\uBE48\uCE78\uC73C\uB85C\uB458\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +No-Privilege=\uAD8C\uD55C\uC5C6\uC74C +ReportColumns-Repeat_Column=\uC5F4\uBCF5\uC0AC\uC21C\uC11C +SecondGraduationUnit=\uBCF4\uC870\uB208\uAE08\uB2E8\uC704 +Form-Widget_Property_Value=\uC18D\uC131\uAC12 +GIVE-NAME=\uB124\uC774\uBC0D +FR-Designer_Rename=\uB9AC\uB124\uC784 +Utils-Merge_Cell=\uC140\uBCD1\uD569 +Style-Spacing_After=\uC139\uC158\uB4A4 +Enlarge_Or_Reduce=\uCD95\uC18C +Tree-Height=\uB192\uC774 +RCodeErrorCorrect=\uC5D0\uB7EC\uC218\uC815 +Enter-New-FileName=\uC0C8\uB85C\uC6B4\uD30C\uC77C\uBA85\uC744\uC785\uB825\uD574\uC8FC\uC2ED\uC2DC\uC624. +try_resending=\uB2E4\uC2DC\uBC1C\uC1A1\uD574\uC8FC\uC2ED\uC2DC\uC624. +M-Open_Report=\uC5F4\uAE30... +Please_Select=\uC120\uD0DD\uD574\uC8FC\uC2ED\uC2DC\uC624 +InRow=\uD589(R) +Form-TextArea=\uD14D\uC2A4\uD2B8\uC601\uC5ED +FR-Designer_Https_Enable=\uC2E4\uD589https +Widget-Custom_Widget_Config=\uC0AC\uC6A9\uC790\uC815\uC758\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4 +already_exists=\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4. +Original_Marked_Filed=\uCD08\uAE30\uD0DC\uADF8\uD544\uB4DC +BackgroundTexture-Sand=\uBAA8\uB798\uC0AC\uC7A5 +Values=\uAC12 +Not_use_a_cell_attribute_table_editing=\uC140\uC18D\uC131\uC73C\uB85C\uD45C\uB97C\uD3B8\uC9D1\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +Root=\uB8E8\uD2B8\uB178\uB4DC +cycle=\uC8FC\uAE30 +open-new-form-tip=\uD604\uC7AC\uD15C\uD50C\uB9BF\uC740711\uC774\uD558\uBC84\uC804\uC73C\uB85C\uC791\uC131\uB418\uC5B4\uD638\uD658\uC774\uB418\uC9C0\uC54A\uC544\uC5F4\uC218\uC5C6\uC2B5\uB2C8\uB2E4. \uC774\uD3FC\uC744\uC5F4\uC5B4\uC218\uC815\uD558\uACE0\uC790\uD560\uACBD\uC6B0\uC0C1\uC751\uD558\uB294\uBC84\uC804\uC124\uACC4\uAE30\uB85C\uC5F4\uC5B4\uC8FC\uC2ED\uC2DC\uC624. +Support-Current_Auto_Complete_Shortcut=\uD604\uC7AC\uB2E8\uCD95\uD0A4 +GROUPING_MODE=\uC77C\uBC18\uADF8\uB8F9 +DBCP_MAX_IDLE=\uCD5C\uB300 \uC720\uD734 \uC5F0\uACB0 \uC218 +BackgroundTexture-BlueTissuePaper=\uBE14\uB8E8\uC0AC\uD3EC +ReportD-Export_Hided_Row=\uC228\uAE34\uD589\uBCF4\uC774\uAE30 +FR-Custom_styles_lost=\uC0AC\uC6A9\uC790\uC815\uC758\uC591\uC2DD\uC774\uC5C6\uC2B5\uB2C8\uB2E4. +Env-Des2=Servlet\uC704\uCE58\uB294\uD638\uC2A4\uD2B8\uCEF4\uD4E8\uD130\uC774\uB984\uFF0C\uD3EC\uD2B8\uFF0CWEB\uC751\uC6A9\uFF0CServlet\uC758\uADF8\uB8F9\uC774\uBA70,Servlet\uB97C\uAC00\uB9AC\uCF1C\uC57C\uD569\uB2C8\uB2E4.\uC608: "http\://localhost\:8080/WebReport/ReportServer". \uD638\uC2A4\uD2B8\uCEF4\uD4E8\uD130\uC774\uB984\uFF0C\uD3EC\uD2B8\uFF0C WEB\uC751\uC6A9\uFF0C Servlet\uC744\uC120\uD0DD\uD560\uC218\uC788\uC73C\uBA70,\uC774\uB294\uC0AC\uC6A9\uC790\uAC00\uD544\uC694\uB85C\uD558\uB294 Servlet\uC704\uCE58\uB97C\uC790\uB3D9\uC0DD\uC131\uD569\uB2C8\uB2E4. +Env-Des1=\uBB38\uC11C\uC11C\uBC84\uAC00\uC788\uB294WEB-INF\uB514\uB809\uD130\uB9AC\uB97C\uC120\uD0DD\uD574\uC8FC\uC2ED\uC2DC\uC624. +PageSetup-Placement_Center_on_Page=\uAC00\uC6B4\uB370\uC815\uB82C\uBC29\uC2DD +sure_to_delete=\uC0AD\uC81C\uD655\uC778 +Already_exists_not_add_repeat=\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4.\uC911\uBCF5\uCD94\uAC00\uD558\uC9C0\uB9C8\uC2ED\uC2DC\uC624. +Axis_Title=\uCD95\uC81C\uBAA9 +FR-Designer-Plugin_Install_Failed=\uD50C\uB7EC\uADF8\uC778\uC124\uCE58\uC2E4\uD328 +FR-Designer-Widget-Style_Frame=\uD504\uB808\uC784 +MainGraduationUnit=\uC8FC\uB208\uAE08\uB2E8\uC704 +Second_Axis=\uBCF4\uC870\uC88C\uD45C\uCD95 +Classifier-Ge=\uAC1C +MSBold=\uB9C8\uC774\uD06C\uB85C\uC18C\uD504\uD2B8 Yahei +Form-Design_Size=\uB514\uC790\uC778\uC0AC\uC774\uC988 +FR-App-Template_Save=\uC800\uC7A5 +ExpandD-Horizontal_Extendable=\uAC00\uB85C\uB85C\uD655\uC7A5\uAC00\uB2A5 +RP_Authority_Edit=\uAD8C\uD55C\uD3B8\uC9D1 +Warnning=\uC54C\uB9BC +RoleName_Can_Not_Be_Null=\uC5ED\uD560\uC774\uB984\uC740\uBE44\uC5B4\uC788\uAC70\uB098\uC911\uBCF5\uB418\uC5B4\uC11C\uB294\uC548\uB429\uB2C8\uB2E4. +Application=\uC560\uD50C\uB9AC\uCF00\uC774\uC158 +Formula_Dictionary_Display_Examples_Html=\uC2E4\uC81C\uAC12\uBC94\uC704:\ +ECP-error_pwd=\uBE44\uBC00\uBC88\uD638\uC785\uB825\uC624\uB958 +FR-Hyperlink_ChartHyperlink=\uCC28\uD2B8\uD558\uC774\uD37C\uB9C1\uD06C +M_Edit-FormatBrush=\uC11C\uC2DD\uD504\uB9B0\uD2B8(B) +Indent-Pixel=\uD654\uC18C +FR-Designer-Widget-Style_Border_Line=\uD14C\uB450\uB9AC\uAD75\uAE30 +Widget-Default_Widget_Config=\uAE30\uBCF8\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4 +Version-does-not-support=\uD604\uC7AC \uC0AC\uC6A9\uD558\uACE0 \uC788\uB294 lic\uC740 \uC6D0\uACA9 \uB514\uC790\uC778 \uAE30\uB2A5\uC744 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uC73C\uBBC0\uB85C lic\uC744 \uC5C5\uADF8\uB808\uC774\uB4DC \uD574 \uC8FC\uC2ED\uC2DC\uC624. +StyleAlignment-Right_To_Left=\uC624\uB978\uCABD\uC5D0\uC11C\uC67C\uCABD\uC73C\uB85C +Style-Spacing_Before=\uC139\uC158\uC55E +Has_Existed=\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4. +FR-Designer_DisplayNothingBeforeQuery=\uCC3E\uC544\uBCF4\uAE30\uD074\uB9AD\uC804\uBB38\uC11C\uB0B4\uC6A9\uBCF4\uC774\uC9C0\uC54A\uAE30 +Still=\uC5EC\uC804\uD788 +JS_WARNING2=\\uc608\uFF1Ahttp\://localhost\:8075/WebReport/demo.js +JS_WARNING1=\\uc0c1\uB300\uBB38\uC11C\uD504\uB85C\uC81D\uD2B8\uB514\uB809\uD130\uB9AC(\uC608:WebReport,WebReport\\js\uC5D0\uC11C\uC778\uC6A9\uD55C js \uD30C\uC77Ctest.js)\uB294\uC0C1\uB300\uACBD\uB85C\uAC00js/test.js\uC785\uB2C8\uB2E4. +Connectionline=\uC5F0\uACB0\uBAA8\uB4DC +Utils-Insert_Record=\uB808\uCF54\uB4DC\uC0BD\uC785 +Set-Parameter-Name=\uB9E4\uAC1C\uBCC0\uC218\uC774\uB984\uC744\uC124\uC815\uD574\uC8FC\uC2ED\uC2DC\uC624 +More-information=\uC815\uBCF4\uB354\uBCF4\uAE30 +Parameter-Boolean=\uBD88\uB9B0\uD0C0\uC785 +FRFont-Strikethrough=\uC120\uC0AD\uC81C +Server-version-tip=\uD604\uC7AC\uC5F0\uACB0\uB41C\uC11C\uBC84\uBC84\uC804\uC774\uB2F9\uC2E0\uC774\uC0AC\uC6A9\uD558\uACE0\uC788\uB294\uC124\uACC4\uAE30\uBC84\uC804\uBC88\uD638\uBCF4\uB2E4\uB0AE\uC2B5\uB2C8\uB2E4.\uACC4\uC18D\uC5F0\uACB0\uD558\uBA74\uD3B8\uC9D1\uD558\uACE0\uC788\uB294\uC77C\uBD80\uC18D\uC131\uC774\uC800\uC7A5\uB418\uC9C0\uC54A\uC744\uC218\uC788\uC2B5\uB2C8\uB2E4. \uC5F0\uACB0\uD574\uC57C\uD560\uACBD\uC6B0\uC124\uACC4\uAE30\uBC84\uC804\uACFC\uC11C\uBC84\uBC84\uC804\uC744\uC77C\uCE58\uC2DC\uCF1C\uC8FC\uC2ED\uC2DC\uC624. +Form-All_Files=\uBAA8\uB4E0\uD30C\uC77C +DBCP_NUM_TEST_PER_EVCTION_RUN=\uC720\uD734\uB9C1\uD06C\uD68C\uC218\uAC80\uC0AC\uC218 +FR-Designer-FRFont_Family=\uC774\uB984 +Device=\uC124\uBE44 +M_Insert-Cell=\uC140\uC694\uC18C +Present-Formula_Present=\uC218\uC2DD\uD615\uD0DC +FRFont-Superscript=\uC717\uC904 +CellWrite-Page_Before_Column=\uC5F4\uC55E\uD398\uC774\uC9C0\uB098\uB204\uAE30 +Golden=\uACE8\uB4DC\uC0C9 +Preference-Support_Cell_Editor_Definition=\uC140\uD3B8\uC9D1\uAE30\uC9C0\uC6D0 +M-Page_Preview=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uBBF8\uB9AC\uBCF4\uAE30 +HJS-CC_to=\uBC1C\uC1A1 +Tree-Select_Leaf_Only=\uB9C6(Leaf) \uB178\uB4DC\uB85C\uB9CC\uB418\uB3CC\uB9AC\uAE30 +Pointer-A-Tick-Order=\uD3EC\uC778\uD130\uAC12\uBC0F\uB208\uAE08\uAC12\uC218\uB4F1\uAE09 +Pink=\uD551\uD06C +StyleAlignment-Distibuted=\uBD84\uC0B0\uC815\uB82C +Odd=\uD640\uC218 +already-saved=\uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +FR-Hyperlink_Chart_Cell=\uCC28\uD2B8 \uD558\uC774\uD37C\uB9C1\uD06C-\uC140 \uC5F0\uB3D9 +Style-Left_Indent=\uC67C\uCABD\uB4E4\uC5EC\uC4F0\uAE30 +Offline=\uC624\uD504\uB77C\uC778 +Form-Hierarchy_Tree_Next=\uB2E4\uC74C +Needle=\uD3EC\uC778\uD130 +GoogleMap=\uAD6C\uAE00\uC9C0\uB3C4 +Running=\uC2E4\uD589\uC911 +M_Edit-Unmerge_Cell=\uC140\uBCD1\uD569\uCDE8\uC18C +Out_Border_Line=\uBC14\uAE65\uCABD\uD14C\uB450\uB9AC\uC120 +Style-Spacing=\uAC04\uACA9 +FR-Utils_Submit=\uC81C\uCD9C +ReportServerP-Previous=\uC774\uC804\uD398\uC774\uC9C0 +StyleAlignment-Text_Style=\uD14D\uC2A4\uD2B8\uCEE8\uD2B8\uB864 +RelatedChart=\uCC28\uD2B8\uC5F0\uB3D9 +ProcessManager=\uD504\uB85C\uC138\uC2A4\uAD00\uB9AC +Cancel_Repeat_Attributes=\uC911\uBCF5\uB41C\uD589\uACFC\uC5F4\uCDE8\uC18C +FR-App-File_Message=\uC815\uBCF4 +Datasource-Stored_Procedure=\uC800\uC7A5\uACFC\uC815 +RWA-Row_Offset=\uD589\uC635\uC14B +M_Format-Style=\uC591\uC2DD +detail_description=\uC0C1\uC138\uC124\uBA85 +FR-Designer-Widget-Style_Title_Content=\uC81C\uBAA9\uB0B4\uC6A9 +ParameterD-Report_Parameter=\uBB38\uC11C\uB9E4\uAC1C\uBCC0\uC218 +HF-Edit_Header=\uD398\uC774\uC9C0\uBA38\uB9AC\uAE00\uD3B8\uC9D1 +Sytle-FRFont=\uAE00\uAF34 +FR-Designer_Finish_Export=\uB0B4\uBCF4\uB0B4\uAE30\uC644\uB8CC +MultiFileUpload=\uC5EC\uB7EC\uD30C\uC77C\uC5C5\uB85C\uB4DC +HF-Page_Number=\uD398\uC774\uC9C0\uBC88\uD638 +Style-Right_Indent=\uC624\uB978\uCABD\uB4E4\uC5EC\uC4F0\uAE30 +Desktop=\uBC14\uD0D5\uD654\uBA74 +FR-Server-All_Error=\uC624\uB958 +ConditionB-Operator=\uC870\uC791\uBD80\uD638 +Today=\uC624\uB298 +Form-Widget_Name=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uC774\uB984 +Covered_All=\uBAA8\uB450\uB36E\uC5B4\uC50C\uC6B0\uAE30 +Day=\uC77C +External=\uBC14\uAE65 +Black_Font=\uD751\uCCB4 +LOG-Report_Server_IS_Started=\uBB38\uC11C\uC11C\uBC84\uC2E4\uD589\uC911 +Tips\:You_Can_Input_B1_To_Input_The_Data_Of_The_First_Row_Second_Column=\uC54C\uB9BC\: B1\uC744\uC785\uB825\uD558\uC5EC\uCCAB\uBC88\uC9F8\uD589\uB450\uBC88\uC9F8\uC5F4\uC758\uB370\uC774\uD130\uB97C\uC785\uB825\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +FR-Designer_ChooseOneButton=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uC120\uD0DD\uD6C4\uCD94\uAC00\uD574\uC8FC\uC2ED\uC2DC\uC624 +Widget-Sizing=\uD06C\uAE30\uC870\uC815 +NO_Border_Line=\uD14C\uB450\uB9AC\uC120\uC5C6\uC74C +Cell_Data=\uC140\uB370\uC774\uD130 +StyleAlignment-Vertical_Text=\uD14D\uC2A4\uD2B8\uC138\uB85C\uC815\uB82C +Label=\uB808\uC774\uBE14 +Orange=\uC8FC\uD669 +zeroMarginWarn=\uD504\uB9B0\uD130\uC5D0\uBB3C\uB9AC\uC801\uC5EC\uBC31\uC874\uC7AC
\uBB38\uC11C\uC758\uD398\uC774\uC9C0\uC5EC\uBC31\uC124\uC815\uC774\uB108\uBB34\uC791\uC73C\uBA74
\uB0B4\uC6A9\uC774\uC644\uC804\uD558\uAC8C\uC778\uC1C4\uB418\uC9C0\uC54A\uC744\uC218\uC788\uC2B5\uB2C8\uB2E4.
  +Widget-Date_Selector_Return_Type=\uB9AC\uD134\uAC12\uC720\uD615 +Utils-Switch_To_Template_Reportlet=\uD15C\uD50C\uB9BF\uB124\uD2B8\uC6CC\uD06C\uBB38\uC11C\uB85C\uC804\uD658 +satisfy=\uC870\uAC74\uCDA9\uC871 +FR-Designer_WidgetDisplyPosition=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uD654\uBA74\uC704\uCE58 +FR-Base_Top=\uC704 +FR-Designer_Form-CheckBox=\uCCB4\uD06C\uBC15\uC2A4 +Reportlet-Parameter_Type=\uB9E4\uAC1C\uBCC0\uC218\uC804\uB2EC\uBC29\uC2DD +sending=\uBC1C\uC1A1\uC911... +FR-Designer-FRFont_Foreground=\uC0C9 +FR-Import-Export_SVG=SVG\uC11C\uC2DD +M_Edit-Clear_Contents=\uB0B4\uC6A9(C) +Session=\uC138\uC158 +Widget-Load_Type=\uB85C\uB529 +template_unsaved=\uD15C\uD50C\uB9BF\uC744\uC800\uC7A5\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +check_communication=\uB124\uD2B8\uC6CC\uD06C\uD1B5\uC2E0\uC774\uC815\uC0C1\uC778\uC9C0\uB610\uB294\uC11C\uBC84\uAC00\uC815\uC0C1\uC801\uC73C\uB85C\uC2E4\uD589\uB418\uACE0\uC788\uB294\uC9C0\uD655\uC778\uD574\uC8FC\uC2ED\uC2DC\uC624. +List-Need_Head=\uB9AC\uC2A4\uD2B8\uD5E4\uB4DC\uAC00\uD544\uC694\uD569\uB2C8\uB2E4. +FR-Designer-Plugin_Has_Been_Installed=\uD50C\uB7EC\uADF8\uC778\uC774\uC124\uCE58\uB418\uC5C8\uC2B5\uB2C8\uB2E4.\uD50C\uB7EC\uADF8\uC778\uC744\uC5C5\uB370\uC774\uD2B8\uD558\uB824\uBA74\uD50C\uB7EC\uADF8\uC778\uC5C5\uB370\uC774\uD2B8\uB85C\uC804\uD658\uD574\uC8FC\uC2ED\uC2DC\uC624. +FR-Widget_Tree_And_Table=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uD2B8\uB9AC\uC640\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uD45C +FR-Base_Help=\uB3C4\uC6C0\uB9D0 +FR-Designer-Plugin_Update_Successful=\uD50C\uB7EC\uADF8\uC778\uC5C5\uADF8\uB808\uC774\uB4DC\uC131\uACF5.\uC7AC\uBD80\uD305\uC11C\uBC84\uAC00\uC720\uD6A8\uD569\uB2C8\uB2E4. +August=8\uC6D4 +LOG-Is_Being_Openned=\uC5EC\uB294\uC911 +BackgroundTexture-Oak=\uC0C1\uBAA9 +Multi_nam_formula=\\ub370\uC774\uD130\uC138\uD2B8\uBA85\: \uB370\uC774\uD130\uC138\uD2B8\uC870\uAC74\: +TurnOn=\uC5F4\uAE30 +HJS-Send_Successfully=\uBC1C\uC1A1\uC131\uACF5 +Mon=1 +Inner_Parameter=\uB0B4\uC7A5\uB9E4\uAC1C\uBCC0\uC218 +Required=\uD544\uC218\uC785\uB825\uC0AC\uD56D +Summary=\uCDE8\uD569 +template_unopened=\uD15C\uD50C\uB9BF\uC744\uC5F4\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +FR-Base_Bottom=\uC544\uB798 +DataFunction-Min=\uCD5C\uC18C\uAC12 +StyleFormat-Percent=\uBC31\uBD84\uC728 +FR-App-All_Custom=\uC0AC\uC6A9\uC790\uC815\uC758 +M_Insert-Data_Column=\uC0BD\uC785\uB370\uC774\uD130\uC5F4 +PLEASE=\uC694\uCCAD +Numbers=\uC218\uB7C9 +Release_Lock=\uBE44\uBC00\uBC88\uD638\uD574\uC81C +Background-Background_is_NULL=\uBC30\uACBD\uC5C6\uC74C +FR-Designer_Sytle-FRFont=\uAE00\uAF34 +Gradation=\uB2E8\uACC4 +The_current_list_is_empty=\uD604\uC7AC\uB9AC\uC2A4\uD2B8\uBE44\uC5B4\uC788\uC74C +Formula_Dictionary_Display_Examples=\\uc2e4\uC81C\uAC12\uBC94\uC704:\ +Schedule-Template_Parameter=\uD15C\uD50C\uB9BF\uB9E4\uAC1C\uBCC0\uC218 +JSShow=\uB3D9\uC801\uB514\uC2A4\uD50C\uB808\uC774 +Level_coordinates=\uACC4\uCE35\uBCF4\uC870\uC88C\uD45C +MainGraduationLine=\uC8FC\uB208\uAE08\uC120 +Hyperlink-Web_link=\uC6F9\uB9C1\uD06C +StyleAlignment-between_-90_and_90=-90\uC64090\uC0AC\uC774 +FormulaD-Custom_Function=\uC0AC\uC6A9\uC790\uC815\uC758\uD568\uC218 +FR-Designer_Integer=\uC815\uC218 +PageSetup-Finis_Start_Row=\uC911\uBCF5\uC885\uB8CC\uD589 +RWA-Remove_Field=\uD544\uB4DC\uC81C\uAC70 +Form-Desin_Width=\uB514\uC790\uC778\uB108\uBE44 +No-tableData=\uB3CC\uC544\uAC00\uAE30\uB370\uC774\uD130\uC138\uD2B8\uAC00\uC5C6\uC2B5\uB2C8\uB2E4. +Page_Total=\uCD1D +FR-Designer-Plugin_Connect_Server_Error=\uD50C\uB7EC\uADF8\uC778\uC2A4\uD1A0\uC5B4\uB97C\uC5F0\uACB0\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4.\uC7A0\uC2DC\uD6C4\uB2E4\uC2DC\uC2DC\uB3C4\uD574\uC8FC\uC2ED\uC2DC\uC624. +Import-Excel_Source=Excel\uC18C\uC2A4\uD30C\uC77C +Utils-Left_to_Right_a=\uC67C\uCABD\uC5D0\uC11C\uC624\uB978\uCABD\uC73C\uB85C +ExpandD-Expand_Attribute=\uD655\uC7A5\uC18D\uC131 +Report-Write_Attributes=\uBB38\uC11C\uAE30\uC785\uC18D\uC131 +Utils-Current_Column=\uD604\uC7AC\uC5F4 +Need_Max_Value=\uD544\uC694\uCD5C\uB300\uAC12 +Report_Not_Exist=\uC120\uD0DD\uD55C\uBB38\uC11C\uAC00\uC874\uC7AC\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4\uFF01 +HF-Insert_Content=\uB0B4\uC6A9\uC0BD\uC785 +UpParent=\uC704\uBD80\uBAA8\uC140 +PageSetup-Page=\uC6F9\uD398\uC774\uC9C0 +Utils-Move_Up=\uC704\uB85C\uC774\uB3D9 +BackgroundTexture-PurpleMesh=\uBCF4\uB77C\uC0C9\uACA9\uC790\uBAA8\uC591 +Export-Word=Word\uC11C\uC2DD +ServerM-Widget_Manager=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uAD00\uB9AC +FR-Designer-Basic_Activation_Key=\uC124\uACC4\uAE30\uC77C\uB828\uBC88\uD638\uFF1A +FR-App-Template_Report_Not_Exist=\uC120\uD0DD\uD55C\uBB38\uC11C\uAC00\uC874\uC7AC\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4.\! +Protected=\uBCF4\uD638 +Skip=\uC810\uD504 +FR-Designer_PageSetup-Vertically=\uC218\uC9C1\uAC00\uC6B4\uB370\uC815\uB82C +revert=\uD574\uC81C +PageSetup-Predefined=\uC0AC\uC804\uC815\uC758\uB41C +Border-Style-Radius=\uB465\uADFC\uBAA8\uC11C\uB9AC\uD14C\uB450\uB9AC +IntPart=\uC815\uC218\uBD80\uBD84 +ExpandD-Data_Column=\uB370\uC774\uD130\uC5F4 +Sort-Ascending=\uC624\uB984\uCC28\uC21C +FR-Designer-Widget_Style=\uC591\uC2DD +parameter_name_exist=\uD574\uB2F9\uB9E4\uAC1C\uBCC0\uC218\uC774\uB984\uC774\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4 +FR-Designer_Layer-Build=\uCE35\uBCC4\uC0DD\uC131 +Please_Rename=\uB9AC\uB124\uC784\uD574\uC8FC\uC2ED\uC2DC\uC624. +Form-Editing_Listeners=\uC774\uBCA4\uD2B8\uD3B8\uC9D1 +RWA-Smart_Add_Fields=\uD544\uB4DC\uC2A4\uB9C8\uD2B8\uCD94\uAC00 +FR-Designer-Tree_Width=\uB108\uBE44 +Record=\uB808\uCF54\uB4DC +Poly-Report_Component=\uCDE8\uD569\uBB38\uC11C\uC5B4\uC148\uBE14\uB9AC +Options=\uC635\uC158 +NS-war-remote=\uC624\uB958\uCF54\uB4DC\:1117 \uC555\uCD95\uC124\uCE58\uB97C\uC9C0\uC6D0\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. \uC6D0\uACA9\uB514\uC790\uC778 +Sche-Minute=\uBD84 +Three_Rows_Of_Three_Grid=3\uD589 3\uC5F4\uC758\uADF8\uB9AC\uB4DC +WorkSheet=\uC790\uC720\uBB38\uC11C +FR-Designer-Widget_Size=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uD06C\uAE30 +BindColumn-Select=\uB9AC\uC2A4\uD2B8 +FR-Widget_Mobile_Terminal=\uBAA8\uBC14\uC77C\uB2E8\uB9D0 +FR-Background_Image_Titled=\uD0C0\uC77C +SetPrinterOffset=\uD504\uB9B0\uD130\uC635\uC14B +FR-Designer-Plugin_Installed=\uC124\uCE58\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +FR-Designer-Hyperlink_Name=\uC774\uB984 +FR-Designer_Form-Button=\uD0A4 +Black=\uBE14\uB799 +FR-Designer-Widget-Style_Border_Color=\uD14C\uB450\uB9AC\uC0C9 +Set_Submit_Event=\uC81C\uCD9C\uC774\uBCA4\uD2B8\uC124\uC815 +PDF-Print_isPopup=\uC124\uC815\uBC15\uC2A4\uD31D\uC5C5\uC5EC\uBD80 +LayerPageReport_CountPerPage=\uD398\uC774\uC9C0\uBCC4 \uAE30\uB85D\uC218 +Display_Modes=\uBAA8\uB4DC\uBCF4\uC774\uAE30 +RowSpan=\uD589\uC2A4\uD32C +Datasource-Test_Connection=\uD14C\uC2A4\uD2B8\uB9C1\uD06C +Function-Function_Manager=\uD568\uC218\uAD00\uB9AC\uC790 +Host_Name=\uD638\uC2A4\uD2B8\uCEF4\uD4E8\uD130\uC774\uB984 +CellWrite-Show_As_HTML=HTML\uB85C\uB0B4\uC6A9\uBCF4\uC774\uAE30 +FR-Designer-Widget-Style_Shadow=\uC74C\uC601 +FR-Designer_Parameter_String=\uBB38\uC790\uC5F4 +Form-SupportTag=\uB808\uC774\uBE14\uD615\uC2DD\uBCF4\uC774\uAE30 +ReportD-Report_Write_Attributes=\uBB38\uC11C\uAE30\uC785\uC18D\uC131 +DataFunction-Count=\uAC1C\uC218 +Top_And_Thick_Bottom_Border_Line=\uC704\uD14C\uB450\uB9AC\uC120\uACFC\uAD75\uC740\uBC11\uD14C\uB450\uB9AC\uC120 +Client=\uD074\uB77C\uC774\uC5B8\uD2B8\uB2E8 +BindColumn-Result_Serial_Number_Start_From_1=\uBC88\uD638\uB2941\uBD80\uD130\uC2DC\uC791 +History=\uD788\uC2A4\uD1A0\uB9AC +Already_exists=\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4. \uB2E4\uC2DC\uC785\uB825\uD574\uC8FC\uC2ED\uC2DC\uC624\uFF01 +Datasource-Original_Charset=\uCD08\uAE30\uCF54\uB529 +FR-Base_Left=\uC67C\uCABD +ReportServerP-Next=\uB2E4\uC74C\uD398\uC774\uC9C0 +BindColumn-Top_N=\uC55EN\uAC1C +Animation_Special=\uD2B9\uD6A8 +Widget-Chart_Widget_Config=\uCC28\uD2B8\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4 +FR-Designer-Plugin_Cannot_Update_Not_Install=\uD50C\uB7EC\uADF8\uC778\uC744\uC5C5\uB370\uC774\uD2B8\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4.\uD574\uB2F9\uD50C\uB7EC\uADF8\uC778\uC774\uC124\uCE58\uB418\uC5C8\uB294\uC9C0\uAC80\uC0AC\uD574\uC8FC\uC2ED\uC2DC\uC624. +After_Changed_Some_Attributes_Are_Different=\uC804\uD658\uD6C4, \uBB38\uC11C\uC758\uC77C\uBD80\uC18D\uC131\uC774\uBCC0\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4.\uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +PieStyle=\uD30C\uC774 +HF-Are_you_sure_to_delete_it=\uC774\uC694\uC18C\uB97C\uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +Utils-Design-File_Open=\uC5F4\uAE30 +FR-Utils_Label=\uB808\uC774\uBE14 +Data-Label=\uB808\uC774\uBE14 +M_Insert-Text=\uC77C\uBC18\uD14D\uC2A4\uD2B8\uC0BD\uC785 +Form-View_Tree=\uBDF0\uD2B8\uB9AC +M_Insert-Chart=\uC0BD\uC785\uCC28\uD2B8 +HF-Even_Page=\uC9DD\uC218\uD398\uC774\uC9C0 +ReportServerP-Report_server_parameter=\uBB38\uC11C\uC11C\uBC84\uB9E4\uAC1C\uBCC0\uC218 +JavaScript-Form_Submit=\uD3FC\uC81C\uCD9C +Horizontal-Split_Layout=\uC218\uD3C9\uBD84\uD560\uB808\uC774\uC544\uC6C3 +BorderLayout-Center=\uC911\uAC04 +INFO-Reset_Webapp=\uC751\uC6A9\uC11C\uBC84\uC7AC\uC124\uCE58 +FR-Designer_Text=\uD14D\uC2A4\uD2B8 +IN_and_INOUT_type_not_as_cursor=IN\uACFC INOUT \uC720\uD615\uC740\uCEE4\uC11C\uB85C\uD560\uC218\uC5C6\uB2E4. +Main_Axis=\uC8FC\uC88C\uD45C\uCD95 +M_Edit-Cut=\uC798\uB77C\uB0B4\uAE30(T) +Utils-The_Name_has_been_existed=\uC774\uC774\uB984\uC740\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4. +FR-Background_Image=\uC774\uBBF8\uC9C0 +Character=\uD14D\uC2A4\uD2B8 +Unit_Thousand=\uCC9C +Test=\uD14C\uC2A4\uD2B8 +Utils-Would_you_like_to_save=\uC800\uC7A5\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +HF-Header_and_Footer=\uBA38\uB9AC\uAE00\uACFC\uBC14\uB2E5\uAE00 +LIST_MODE=\uB9AC\uC2A4\uD2B8 +HF-Insert_Image=\uC774\uBBF8\uC9C0\uC0BD\uC785 +FR-Designer-Widget-Style_Standard=\uD45C\uC900 +FR-Designer_Form-List=\uB9AC\uC2A4\uD2B8 +BackgroundTexture-Denim=\uB2A5\uC9C1\uBB3C +Execute_Report_by_Layer_Engine=\uC9C1\uB82C\uC5D4\uC9C4\uC73C\uB85C\uBB38\uC11C\uC2E4\uD589 +M_Edit-Bring_Forward=\uC704\uCE35\uC73C\uB85C\uC774\uB3D9(F) +Choose_All=\uBAA8\uB450\uC120\uD0DD +Form-RadioGroup=\uB2E8\uC77C\uC120\uD0DD\uD0A4\uD328\uB4DC +FR-Base_Remove=\uC0AD\uC81C +FR-Remote_Connect2Server_Again=\uC5F0\uACB0\uC774\uB04A\uC5B4\uC84C\uC2B5\uB2C8\uB2E4.\uB2E4\uC2DC\uC11C\uBC84\uB97C\uC5F0\uACB0\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +Semicolon=\uC138\uBBF8\uCF5C\uB860 +StyleFormat-Category=\uCE74\uD14C\uACE0\uB9AC +Report_Template=\uBB38\uC11C\uD15C\uD50C\uB9BF +Utils-Beyond_the_right_side_of_Border=\uC624\uB978\uCABD\uC5EC\uBC31\uBC97\uC5B4\uB0A8 +BackgroundTexture-Papyrus=\uD30C\uD53C\uB8E8\uC2A4\uC885\uC774 +LayerPageReport_PageEngine=\uD398\uC774\uC9C0\uBCC4\uC5F0\uC0B0\uBD84\uD560\uC2E4\uD589\uBB38\uC11C\uC0AC\uC6A9 +Schedule-The_selected_file_must_be_end_with_filter=\uC120\uD0DD\uD55C\uD30C\uC77C\uC740.cpt \uB610\uB294 .class \uB610\uB294 .frm \uB85C\uB05D\uB0B4\uC57C\uD569\uB2C8\uB2E4. +Provide=\uC81C\uACF5 +FormulaD-Math_&_Trig=\uC218\uD559\uACFC\uC0BC\uAC01\uD568\uC218 +FR-Designer-StyleAlignment_Right=\uC624\uB978\uCABD\uC5D0\uB9DE\uCDA4 +Error_TableDataNameRepeat=\uC11C\uBC84\uB370\uC774\uD130\uC138\uD2B8\uC5D0\uC874\uC7AC\uD558\uACE0\uC788\uAC70\uB098\uC5EC\uB7EC\uAC1C\uB370\uC774\uD130\uC138\uD2B8\uC774\uB984\uC774\uC911\uBCF5\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +Choose_None=\uBBF8\uC120\uD0DD +File-tree=\uD30C\uC77C\uD2B8\uB9AC +FRFont-bold=\uAD75\uAC8C +FR-Designer_Set_Submit_Condition=\uC81C\uCD9C\uC870\uAC74\uC124\uC815 +Form-Change_Widget_Name=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uC774\uB984\uBCC0\uACBD +ReportColumns-Report_Columns=\uBB38\uC11C\uC140\uB098\uB204\uAE30 +Can_not_use_FormatBursh=\uC911\uBCF5\uC120\uD0DD\uB41C\uC601\uC5ED\uC5D0\uC11C\uC2DD\uC744\uC774\uC6A9\uD558\uC5EC\uC778\uC1C4\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4.\! +CellElement-Property_Table=\uC140\uC18D\uC131\uD45C +Dictionary-Dynamic_SQL=\uB3D9\uC801 SQL +FR-Designer_Form-CheckBoxGroup=\uCCB4\uD06C\uBC15\uC2A4\uADF8\uB8F9 +DBCP_TIME_BETWEEN_EVICTIONRUNSMILLIS=\uC720\uD734\uB9C1\uD06C\uD68C\uC218\uAE30\uD734\uBA74\uC2DC\uAC04 +ReportD-Export_Hided_Column=\uC228\uAE34\uC5F4\uBCF4\uC774\uAE30 +Preference-Support_Undo=\uD574\uC81C\uC9C0\uC6D0 +FR-mobile_report_analysis=\uBCF4\uACE0\uC11C \uD574\uC11D +Month=\uC6D4 +Utils-Column_Width=\uC5F4\uB108\uBE44 +Collect-Use_Designer=\uC124\uACC4\uAE30\uC0AC\uC6A9 +Widget-User_Defined_Editor=\uC0AC\uC804\uC815\uC758\uB41C\uD3B8\uC9D1\uAE30\uB294\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uAD00\uB9AC\uBA54\uB274\uC5D0\uC11C\uB9CC\uC18D\uC131\uC744\uBCC0\uACBD\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +Unit_Ten_Thousand=\uB9CC +Data_Setting=\uB370\uC774\uD130\uC124\uC815 +ECP_input_pwd=\uC554\uD638\uB97C\uC785\uB825\uD574\uC8FC\uC2ED\uC2DC\uC624\: +period=. +Note=\uBE44\uACE0 +Multiline=\uC5EC\uB7EC\uD589\uD3B8\uC9D1 +Datasource-Convert_Charset=\uCF54\uB529\uC804\uD658 +DashBoard-ConnectionList=\uB370\uC774\uD130\uB9C1\uD06C +Utils-Submit_Forcibly=\uC81C\uCD9C\uAC15\uD589 +Parent_Marked_Field=\uBD80\uBAA8\uD0DC\uADF8\uD544\uB4DC +Logout=\uB098\uAC00\uAE30 +FR-Designer_Show_Blank_Row=\uACF5\uBC31\uD589\uBCF4\uCDA9 +FR-Base_Format=\uC11C\uC2DD +FR-App-Export_png=PNG\uC11C\uC2DD +Delete_Column=\uC5F4\uC0AD\uC81C +SecondGraduationLine=\uBCF4\uC870\uB208\uAE08\uC120 +SpecifiedG-Groups=\uADF8\uB8F9 +CONTINUUM_MODE=\uC774\uC6C3\uD558\uB294\uC5F0\uC18D\uADF8\uB8F9 +Datasource-Connection_failed=\uB9C1\uD06C\uC2E4\uD328 +CategoryName=\uCE74\uD14C\uACE0\uB9AC\uC774\uB984 +DBCP_INITIAL_SIZE=\uCD08\uAE30\uD654\uB9C1\uD06C\uC218 +Colors=\uC0C9 +FR-Import-Export_CSV=CSV\uC11C\uC2DD(\uC27C\uD45C\uAD6C\uBD84) +FR-Designer-StyleAlignment_Left=\uC67C\uCABD\uC5D0\uB9DE\uCDA4 +BackgroundTexture-PaperBag=\uC885\uC774\uBC31 +RWA-BuildIn_SQL=\uB0B4\uC7A5SQL +SingleLayer=\uB2E8\uCE35 +Or-you=\uB610\uB294\uB2F9\uC2E0\uC774 +FR-Designer_Certificate_Path=\uC778\uC99D\uC11C\uACBD\uB85C +Utils-Last_Page=\uB9C8\uC9C0\uB9C9\uD398\uC774\uC9C0 +BarCodeD-Drawing_Text=\uBC14\uCF54\uB4DC\uD14D\uC2A4\uD2B8\uBCF4\uC774\uAE30 +Warning-Template_Do_Not_Exsit=\uD15C\uD50C\uB9BF\uC774\uC874\uC7AC\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +BindColumn-Group=\uADF8\uB8F9 +Export-SVG=SVG\uC11C\uC2DD +Plane3D=\uD3C9\uBA743D +SessionID=SessionID\uB294 \uD604\uC7AC\uC811\uADFC\uD15C\uD50C\uB9BF\uC758\uC138\uC158 ID\uB9E4\uAC1C\uBCC0\uC218. +FR-Designer_Height=\uB192\uC774 +HF-Odd_Page=\uD640\uC218\uD398\uC774\uC9C0 +About-All_Rights_Reserved=\uBAA8\uB4E0\uAD8C\uB9AC\uB97C\uB0A8\uAE41\uB2C8\uB2E4. +Utils-Current_Cell=\uD604\uC7AC\uADF8\uB9AC\uB4DC +Web_Preview_Message=\uD15C\uD50C\uB9BF\uD30C\uC77C\uC744\uD604\uC7AC\uC2E4\uD589\uD658\uACBD\uB514\uB809\uD130\uB9AC\uC5D0\uC800\uC7A5\uD574\uC8FC\uC2ED\uC2DC\uC624. +FR-Hyperlink_Chart_Float=\uCC28\uD2B8\uD558\uC774\uD37C\uB9C1\uD06C-\uC5F0\uB3D9\uC11C\uC2A4\uD39C\uC2A4\uC694\uC18C +Dic-Data_Query=\uB370\uC774\uD130\uCC3E\uC544\uBCF4\uAE30 +CellWrite-Print_Content=\uC778\uC1C4/\uBD88\uB7EC\uC624\uAE30 \uC140 \uB0B4\uC6A9 +Privilege-Selected_None_Of_Any_Items=\uC120\uD0DD\uD55C\uD56D\uC774\uC5C6\uC2B5\uB2C8\uB2E4. +FRFont-Size=\uD06C\uAE30 +Function-J2EE_server=J2EE\uC11C\uBC84 +FR-Designer_Allow_Blank=\uBE48\uCE78\uD5C8\uC6A9 +Build_Tree_Accord_Parent_Marked_Filed=\uC120\uD0DD\uD55C\uB370\uC774\uD130\uC138\uD2B8\uC758\uBD80\uBAA8\uD0DC\uADF8\uD544\uB4DC\uC5D0\uB530\uB77C\uD2B8\uB9AC\uC0DD\uC131 +Preference-Horizontal_Scroll_Bar_Visible=\uC218\uD3C9\uC2A4\uD06C\uB864\uBC14\uB97C\uBCFC\uC218\uC788\uC2B5\uB2C8\uB2E4. +Scope=\uBC94\uC704 +Save_All_Records_In_Memory=\uBAA8\uB4E0\uB808\uCF54\uB4DC\uAC00\uBA54\uBAA8\uB9AC\uC5D0\uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +FreezeWarning1=\uCD08\uAE30\uAC12>\uB9C8\uC9C0\uB9C9\uAC12 +FlowLayout=\uC720\uB3D9\uC2DD\uB808\uC774\uC544\uC6C3 +M_Report-Report_Footer=\uBB38\uC11C\uD398\uC774\uC9C0\uBC14\uB2E5\uAE00 +FR-Action_Add=\uCD94\uAC00 +BorderLayout-East=\uB3D9 +feedback_tip=400\uC790\uB97C\uB118\uC9C0\uC54A\uAC8C\uBB38\uC81C\uB97C\uC124\uBA85\uD574\uC8FC\uC2ED\uC2DC\uC624. +FS_Start_Date=\uC2DC\uC791\uB0A0\uC9DC +FR-ConditionB_Operator=\uC870\uC791\uBD80\uD638 +Printer-Alias=\uB2C9\uB124\uC784 +DS-Class_Name=\uD074\uB798\uC2A4\uB124\uC784 +FR-Designer-Plugin_Has_Been_Disabled=\uD50C\uB7EC\uADF8\uC778\uC0AC\uC6A9\uC774\uAE08\uC9C0\uB418\uC5C8\uC2B5\uB2C8\uB2E4.\uC124\uACC4\uAE30\uBC0F\uC11C\uBC84\uB97C\uC7AC\uBD80\uD305\uD558\uB824\uBA74\uC11C\uBC84\uB97C\uC218\uB3D9\uC7AC\uBD80\uD305\uD574\uC57C\uD569\uB2C8\uB2E4. +Sort-Original=\uC21C\uC11C\uC5C6\uC74C +Utils-Top_to_Bottom_a=\uC704\uC5D0\uC11C\uC544\uB798\uB85C +Parameter-String=\uBB38\uC790\uC5F4 +InnerRadis=\uC548\uC9C0\uB984\uD06C\uAE30 +Want_To_Cover_It=\uB36E\uC5B4\uC50C\uC6B0\uACA0\uC2B5\uB2C8\uAE4C? +Divided_stage=\uAD6C\uBD84\uB2E8\uACC4 +Seriously=\uC2EC\uAC01 +ReportServerP-PDF=PDF +Utils-Switch_To_Class_Reportlet=\uD504\uB85C\uADF8\uB7A8\uB124\uD2B8\uC6CC\uD06C\uBB38\uC11C\uB85C\uC804\uD658 +FR-Designer_Show_Blank_Column=\uACF5\uBC31\uC5F4\uBCF4\uCDA9 +M_Edit-Redo=\uB9AC\uC6CC\uD06C +Visibility=\uC2DC\uAC01\uC131 +Series_Use_Default=\uACC4\uC5F4\uAE30\uBCF8\uC0AC\uC6A9 +Has_Selected=\uC120\uD0DD\uB428 +BackgroundTexture-Walnut=\uD638\uB450 +FormulaD-Function_category=\uD568\uC218\uC720\uD615 +Interface=\uC778\uD130\uD398\uC774\uC2A4 +FR-Designer-Beyond_Bounds= +seconds=\uCD08 +Auto-Build=\uC790\uB3D9\uC0DD\uC131 +FR-Designer-Plugin_Install_Successful=\uD574\uB2F9\uD50C\uB7EC\uADF8\uC778\uC740\uC124\uACC4\uAE30\uBC0F\uC11C\uBC84\uB97C\uC7AC\uBD80\uD305\uD560\uB54C\uC0AC\uC6A9\uB418\uBA70,\uC11C\uBC84\uB294\uC218\uB3D9\uC7AC\uBD80\uD305\uD574\uC57C\uD569\uB2C8\uB2E4. +Template_Path=\uD15C\uD50C\uB9BF\uACBD\uB85C +FR-Designer-FRFont_Bold=\uAD75\uAC8C +Poly_Name=\uCDE8\uD569\uBE14\uB7ED\uC774\uB984 +WorkBook=\uC6CC\uD06C\uBD81 +Hyperlink-Self_Window=\uD604\uC7AC\uC708\uB3C4\uC6B0 +FR-Designer-Widget-Style_Title=\uC81C\uBAA9 +FR-Designer-FRFont_Size=\uD06C\uAE30 +M_File-Export-SVG=SVG\uC11C\uC2DD +Capacity=\uC6A9\uB7C9 +Rose_Red=\uB85C\uC988\uBE68\uAC15 +StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=\uD68C\uC804\uAC12\uC740-90\uB3C4\uC5D0\uC11C 90\uB3C4\uAE4C\uC9C0 +HF-Move_Left=\uC67C\uCABD\uC73C\uB85C\uC774\uB3D9 +Cell_Group=\uC140\uADF8\uB8F9 +Week=\uC8FC +PageSetup-Orientation=\uBC29\uD5A5 +M-Open_Recent=\uCD5C\uADFC\uC5F4\uC5B4\uBCF8 +NNormal=\uC815\uC0C1 +Integer=\uC815\uC218 +Select_The_Source_To_Save=\uC800\uC7A5\uD558\uB824\uB294\uD56D\uBAA9\uC120\uD0DD +Transition=\uBD84\uAE30 +FR-Designer_Get_Lock=\uC554\uD638\uD654 +one_record_exists_in_many_groups=\uB808\uCF54\uB4DC\uB294\uC5EC\uB7EC\uAC1C\uADF8\uB8F9\uC5D0\uC874\uC7AC\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +FR-Designer_Cover_None=\uBAA8\uB450\uB36E\uC5B4\uC50C\uC6B0\uC9C0\uC54A\uAE30 +DeciPart=\uC18C\uC218\uBD80\uBD84 +ExpandD-Up_Father_Cell=\uC704\uBD80\uBAA8\uC140 +Deep=\uAE4A\uC774 +FRFont-Shadow=\uC74C\uC601 +Reportlet=\uB124\uD2B8\uC6CC\uD06C\uBB38\uC11C +Calendar=\uB2EC\uB825 +DateFormat-Custom_Warning=\uBE44\uACE0\uFF1A\uC0AC\uC6A9\uC790\uC815\uC758\uB0A0\uC9DC\uC11C\uC2DD\uC740\uC11C\uC2DD\uAC80\uC0AC\uB97C\uC9C0\uC6D0\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +Unit_MM=\uBC00\uB9AC\uBBF8\uD130 +Server-Start=\uC2E4\uD589 +CellPage-Can_Break_On_Paginate=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uC2DC\uB098\uB20C\uC218\uC788\uC74C +Build_Tree_Accord_Marked_Filed_Length=\uC120\uD0DD\uD55C\uB370\uC774\uD130\uC138\uD2B8\uC758\uD0DC\uADF8\uD544\uB4DC\uAE38\uC774\uC5D0\uB530\uB77C\uD2B8\uB9AC\uC0DD\uC131 +ComboCheckBox-Start_Symbol=\uC2DC\uC791\uBD80\uD638 +Real=\uC2E4\uC81C +RWA-Batch_Modify_Cells=\uB300\uB7C9\uC218\uC815\uC140 +FR-Designer_Build-Way=\uC0DD\uC131\uBC29\uC2DD +Read=\uC77D\uAE30 +StyleAlignment-Degrees=\uB3C4\uC218 +M_Format_A-Border=\uD14C\uB450\uB9AC(B) +Utils-Delete_Record=\uB808\uCF54\uB4DC\uC0AD\uC81C +Reload=\uC624\uBC84\uB85C\uB529 +Image-Select_Picture=\uC774\uBBF8\uC9C0\uC120\uD0DD +RWA-Submit=\uC81C\uCD9C +the_template=\uD574\uB2F9\uD15C\uD50C\uB9BF +FR-Designer_Component_Scale=\uC5B4\uC148\uBE14\uB9AC\uCD95\uC18C +FRFont-italic=\uAE30\uC6B8\uC784\uAF34 +Year=\uB144 +HF-Move_Right=\uC624\uB978\uCABD\uC73C\uB85C\uC774\uB3D9 +Data-Check=\uB370\uC774\uD130\uBAA8\uB2C8\uD130\uB9C1 +Unknown=\uC54C\uC218\uC5C6\uC74C +Submit_Style=\uC81C\uCD9C\uBC29\uC2DD +Left_Border_Line=\uC67C\uCABD\uD14C\uB450\uB9AC\uC120 +Brown=\uAC08\uC0C9 +Select_A_Tree_DataSource_To_Build=\uD2B8\uB9AC\uB370\uC774\uD130\uC138\uD2B8\uB97C\uC120\uD0DD\uD558\uC5EC\uC0DD\uC131\uD558\uC2ED\uC2DC\uC624. +Overlapping=\uC911\uCCA9\uD0C0\uC785 +DS-Class_TableData=\uD504\uB85C\uADF8\uB7A8\uB370\uC774\uD130\uC138\uD2B8 +FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=\uC2DD\uBCC4\uD560\uC218\uC5C6\uB294\uD50C\uB7EC\uADF8\uC778\uC774\uBBC0\uB85C\uC124\uCE58\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +DisplayNothingBeforeQuery=\uCC3E\uC544\uBCF4\uAE30\uD074\uB9AD\uC804\uBB38\uC11C\uB0B4\uC6A9\uBCF4\uC774\uC9C0\uC54A\uAE30 +Y_Axis=Y\uCD95 +FormulaD-Most_Recently_Used=\uC0C1\uC6A9\uD568\uC218 +FormulaD-Input_formula_in_the_text_area_below=\uD558\uB2E8\uC758\uD14D\uC2A4\uD2B8\uD3B8\uC9D1\uBC15\uC2A4\uC5D0\uC218\uC2DD\uC744\uC785\uB825\uD558\uC138\uC694. +Build-Way=\uC0DD\uC131\uBC29\uC2DD +M_Edit-Undo=\uD574\uC81C +Line-Style=\uC120\uD615 +Datasource-Other_Attributes=\uAE30\uD0C0\uC18D\uC131 +M_Server-Global_Parameters=\uC804\uC5ED\uB9E4\uAC1C\uBCC0\uC218 +Suffix=\uD655\uC7A5\uC790 +Image-Image_Files=\uC774\uBBF8\uC9C0\uD30C\uC77C +EditRC-Entire_row=\uBAA8\uB4E0\uD589(R) +HF-First_Page=\uBA54\uC778\uD398\uC774\uC9C0 +BackgroundTexture-Granite=\uD654\uAC15\uC554 +DataList=\uB370\uC774\uD130\uB9C1\uD06C +Recursion=\uADC0\uB0A9 +BarStyle=\uBC14\uD0C0\uC785 +FR-Designer-Min_Width= +Utils-Report-Env_Directory=\uBB38\uC11C\uC791\uC5C5\uB514\uB809\uD130\uB9AC +D-ChartArea=\uCC28\uD2B8\uC601\uC5ED +Only=\uB2E4\uB9CC +FR-Base_No=\uC544\uB2C8\uC624 +SpecifiedG-Put_all_others_together=\uAE30\uD0C0\uBAA8\uB4E0\uAC83\uBCD1\uD569 +HF-NewLine_Des=\uC0C1\uB2E8\uC758\uC774\uB3D9\uD0A4\uC640\uC0AD\uC81C\uD0A4\uB85C\uD589\uBC14\uAFB8\uAE30\uAE30\uD638\uB97C\uC870\uC791\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +WLayout-Border-ThreeContainer=\uBD81\u3001\uC11C\uBC0F\uC911\uAC04\uBE14\uB85D\uC744\uAC16\uACE0\uC788\uB294\uACBD\uACC4\uC120\uB808\uC774\uC544\uC6C3\uCEE8\uD14C\uC774\uB108\uC911\uBD81\uCABD\uBE14\uB7ED\uC740\uD544\uC694\uC5D0\uB530\uB77C\uB192\uC774\uB97C\uC870\uC815\uD560\uC218\uC788\uC73C\uBA70\uC11C\uCABD\uBE14\uB7ED\uC740\uD544\uC694\uC5D0\uB530\uB77C\uB108\uBE44\uB97C\uC870\uC815\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +Parameter_Name=\uB9E4\uAC1C\uBCC0\uC218\uC774\uB984 +FR-Base_Table=\uD45C +Des-Remove_WorkSheet=\uC0AD\uC81C\uD558\uB824\uB294\uD45C\uC5D0\uB370\uC774\uD130\uAC00\uC874\uC7AC\uD569\uB2C8\uB2E4.\uC601\uAD6C\uC0AD\uC81C\uD558\uB824\uBA74'\uD655\uC778'\uD0A4\uB97C\uB20C\uB7EC\uC8FC\uC138\uC694. +Rotation=\uD68C\uC804 +Undefined=\uC815\uC758\uB418\uC9C0\uC54A\uC74C +Support-Auto_Complete_Shortcut=\uC790\uB3D9\uBCF4\uC644\uB2E8\uCD95\uD0A4 +Set_Column_Title_End=\uC911\uBCF5\uC885\uB8CC\uC5F4\uC124\uC815 +Submit_Url=\uC8FC\uC18C\uC81C\uCD9C +ReportServerP-Are_you_sure_to_delete_the_selected_printer=\uC120\uD0DD\uD55C\uD504\uB9B0\uD130\uB97C\uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +long_data_can_not_show_fully=\uAE34\uB370\uC774\uD130\uB294\uBAA8\uB450\uBCF4\uC774\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +Utils-Beyond_the_bottom_side_of_Border=\uC544\uB798\uACBD\uACC4\uC120\uBC97\uC5B4\uB0A8 +FR-Import-Export_PDF=PDF\uC11C\uC2DD +Form-CheckBoxGroup=\uCCB4\uD06C\uBC15\uC2A4\uADF8\uB8F9 +Click-Me=\uD074\uB9AD\uB9CC\uD574\uB3C4\uC11C\uD504\uB77C\uC774\uC988\uD55C\uC990\uAC70\uC6B4\uC77C\uC774\uC0DD\uAE41\uB2C8\uB2E4\uFF01 +Hyperlink-Self=\uAE30\uC874\uC6F9\uC5D0\uC11C\uB9C1\uD06C\uC5F4\uAE30(S) +Tree-Select_Leaf_Only_Tips=(\uC774\uD56D\uBAA9\uC5D0\uCCB4\uD06C\uD558\uC9C0\uC54A\uC73C\uBA74\uB9AC\uD134\uAC12\uC740\uC0AC\uC6A9\uC790\uAC00\uCCB4\uD06C\uD55C\uD604\uC7AC\uB178\uB4DC\uB9CC\uD574\uB2F9\uB418\uBA70\uC11C\uBE0C\uB178\uB4DC\uB294\uD3EC\uD568\uB418\uC9C0\uC54A\uC74C\uFF09 +StyleAlignment-Text_Rotation=\uD14D\uC2A4\uD2B8\uBC29\uD5A5 +Format-Error=\uC785\uB825\uD55C\uAC12\uC11C\uC2DD\uC774\uC815\uD655\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +Server-Stop=\uC815\uC9C0 +Preference-Setting_Grid=\uACA9\uC790\uBAA8\uC591\uC124\uC815 +ReportServerP-Add_Printer=\uD504\uB9B0\uD130\uCD94\uAC00 +FR-Designer-Plugin_Active=\uC0AC\uC6A9\uC2DC\uC791 +Utils-File_name=\uD30C\uC77C\uBA85 +NOT_NULL_Des=\uBE48\uCE78\uC73C\uB85C\uB458\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +Right_Border_Line=\uC624\uB978\uCABD\uD14C\uB450\uB9AC\uC120 +EditRC-Entire_column=\uBAA8\uB4E0\uC5F4(C) +PageSetup-Top_to_bottom=\uC5F4\uBA3C\uC800\uD589\uB098\uC911 +Click-Get_Default_URL=\uBCF8\uD0A4\uB97C\uD074\uB9AD\uD558\uC5EC\uAE30\uBCF8URL\uC744\uC5BB\uC2B5\uB2C8\uB2E4. +StyleAlignment-Wrap_Text=\uC790\uB3D9\uD589\uBC14\uAFB8\uAE30 +Remove_All_Button=\uBAA8\uB4E0\uD0A4\uD074\uB9AC\uC5B4 +FR-Designer_Component_Interval=\uC5B4\uC148\uBE14\uB9AC\uAC04\uACA9 +ReportColumns-Columns_vertically=\uC5F4\uC140\uB098\uB204\uAE30 +ReportGUI-Print_Background=\uC778\uC1C4/\uB0B4\uBCF4\uB0B4\uAE30\uBB38\uC11C\uBC30\uACBD +Export-CSV=CSV\uC11C\uC2DD(\uC27C\uD45C\uAD6C\uBD84) +M_Edit-Paste=\uBD99\uC5EC\uB123\uAE30(P) +FR-Designer-Basic_Restart_Designer=\uC7AC\uBD80\uD305\uC124\uACC4\uAE30 +ReportServerP-PDF2-INFO=LINUX/UNIX\uC5D0\uC11C\uC911\uBB38\uD3F0\uD2B8\uB97C\uC124\uCE58\uD558\uC9C0\uC54A\uC558\uC744\uB54C\uB9CC\uC0AC\uC6A9 +FormulaD-Check_Valid=\uC801\uD569\uC131\uAC80\uC0AC +server_disconnected=\uC5F0\uACB0\uC774\uB04A\uC5B4\uC84C\uC2B5\uB2C8\uB2E4. +ParameterD-Parameter_name_cannot_be_null=\uB9E4\uAC1C\uBCC0\uC218\uC758\uC774\uB984\uC740\uBE44\uC6CC\uB458\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +FR-Designer-Plugin_Version_Is_Lower_Than_Current=\uC5C5\uADF8\uB808\uC774\uB4DC\uD329\uC758\uD50C\uB7EC\uADF8\uC778\uBC84\uC804\uC774\uD604\uC7AC\uC758\uAC83\uBCF4\uB2E4\uB192\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +RWA-NotChange_Unmodified=\uC218\uC815\uD558\uC9C0\uC54A\uC73C\uBA74\uC5C5\uB370\uC774\uD2B8\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +User_Information=\uC0AC\uC6A9\uC790\uC815\uBCF4 +Custom_styles_lost=\uC0AC\uC6A9\uC790\uC815\uC758\uC591\uC2DD\uC774\uC5C6\uC2B5\uB2C8\uB2E4. +PageSetup-Margin=\uD398\uC774\uC9C0\uC5EC\uBC31 +M-New_FormBook=\uC0C8\uD3FC +Widget-TreeNode=\uD2B8\uB9AC\uB178\uB4DC\uD0A4 +Form-Url=\uC8FC\uC18C +Utils-Beyond_the_left_side_of_Border=\uC67C\uCABD\uC5EC\uBC31\uBC97\uC5B4\uB0A8 +Float_Element_Name=\uD638\uBC84\uC694\uC18C\uBA85\uCE6D +Purple=\uD37C\uD50C +DashBoard-Potence=\uAD8C\uD55C +M-Close_Template=\uB2EB\uAE30\uD15C\uD50C\uB9BF(C) +paper=\uC885\uC774 +Not_Exsit=\uBB38\uC11C\uAC00\uC874\uC7AC\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +Utils-Insert_Row=\uD589\uC0BD\uC785 +Utils-Delete_Row=\uD589\uC0AD\uC81C +not_support_authority_edit=\uD574\uB2F9\uC694\uC18C\uB294\uAD8C\uD55C\uCEE8\uD2B8\uB864\uC744\uC9C0\uC6D0\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +Formula_Tips=\uC218\uC2DD\uC740"\\ub97c\uB123\uC5B4\uC57C\uD569\uB2C8\uB2E4. +FR-Action_Copy=\uBCF5\uC0AC +Compile_Success=\uCEF4\uD30C\uC77C\uC131\uACF5 +BackgroundTexture-RecycledPaper=\uC7AC\uC0DD\uC6A9\uC9C0 +StyleAlignment-Single_Line=\uD55C\uC904\uBCF4\uC774\uAE30 +Utils-Move_Down=\uC544\uB798\uB85C\uC774\uB3D9 +Please_Set_Repeat_First=\uC911\uBCF5\uC81C\uBAA9\uD589\uACFC\uC5F4\uC744\uC6B0\uC120\uC120\uD0DD\uD574\uC8FC\uC2ED\uC2DC\uC624. +Writer-ShortCuts_Setting=\uB2E8\uCD95\uD0A4\uAE30\uC785\uC124\uC815 +Verify-Data_Verify=\uB370\uC774\uD130\uAC80\uC0AC +FR-mobile_analysis_style=\uD574\uC11D \uBC29\uBC95 +Confirm-Delete-File=\uC120\uD0DD\uD55C\uD30C\uC77C\uC744\uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C\uFF1F +PageSetup-Header=\uD398\uC774\uC9C0\uBA38\uB9AC\uAE00 +JavaScrit-Asynch=\uBE44\uB3D9\uAE30 +ReportServerP-Toolbar=\uD234\uBC14 +Utils-Top_to_Bottom=\uC138\uB85C +Platform=\uD50C\uB7AB\uD3FC +FR-Designer-FRFont_Underline=\uBC11\uC904 +Show_in_Containing_Folder=\uD574\uB2F9\uD3F4\uB354\uC5F4\uAE30 +BackgroundTexture-WaterDroplets=\uBB3C\uBC29\uC6B8 +FR-Designer-Dependence_Install_Failed=install failed +Layout-Padding=\uC548\uCABD\uC5EC\uBC31 +roles_already_authority_edited=\uC5ED\uD560\uC774\uAD6C\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +WidgetDisplyPosition=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uD654\uBA74\uC704\uCE58 +SpecifiedG-Force_Group=\uAC15\uC81C\uADF8\uB8F9\uD551 +FormulaD-Formula_Definition=\uC218\uC2DD\uC815\uC758 +I-xyScatterStyle_Marker=\uC0B0\uC810\uADF8\uB798\uD504 +Hour=\uC2DC\uAC04 +ColorMatch=\uC0C9\uBC30\uD569 +M_Edit-Order=\uACB9\uCE68\uC21C\uC11C(O) +BackgroundTexture-Bouquet=\uAF43\uB2E4\uBC1C +Verify-Error_Information=\uC624\uB958\uC815\uBCF4\uAC80\uC0AC +LayerData=\uB85C\uC6B0 \uB808\uBCA8 \uB370\uC774\uD130 +Rename=\uB9AC\uB124\uC784 +Widget-Load_By_Async=\uBE44\uB3D9\uAE30\uB85C\uB529 +Shape=\uADF8\uB798\uD504 +BindColumn-This_Condition_has_been_existed=\uC774\uC870\uAC74\uC740\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4. +NS-exception_readError=\uC624\uB958\uCF54\uB4DC\:1305 \uD15C\uD50C\uB9BF\uD30C\uC77C\uD574\uC11D\uC624\uB958 +Set_Column_Title_Start=\uC911\uBCF5\uC81C\uBAA9\uC5F4\uC124\uC815 +Fri=5 +M_Report-Report_Parameter=\uD15C\uD50C\uB9BF\uB9E4\uAC1C\uBCC0\uC218 +REPORTLETS=\uC5EC\uB7EC\uC7A5\uD15C\uD50C\uB9BF\uC758\uACBD\uB85C\uC758\uB9E4\uAC1C\uBCC0\uC218\uC811\uADFC +WLayout-Card-ToolTip=\uCE74\uB4DC\uC2DD\uB808\uC774\uC544\uC6C3\uC740\uD574\uB2F9\uB808\uC774\uC544\uC6C3\uCEE8\uD14C\uC774\uB108\uC5D0\uC11C\uC5EC\uB7EC\uAC1C\uAE30\uD0C0\uC5B4\uC148\uBE14\uB9AC\uB97C\uCD94\uAC00\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +M-Popup_ChartType=\uCC28\uD2B8\uC720\uD615 +Please-Wait=\uC7A0\uC2DC\uB9CC\uAE30\uB2E4\uB824\uC8FC\uC2ED\uC2DC\uC624 +FR-Designer-Form-ToolBar_Widget=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4 +Widget-Array=\uBC30\uC5F4 +FieldBinding=\uBC14\uC778\uB529\uD544\uB4DC +Top_Bottom_Border_Line=\uC0C1\uD558\uD14C\uB450\uB9AC\uC120 +M-Others=\uAE30\uD0C0... +Hyperlink-Link_Opened_in=\uB9C1\uD06C\uC5F4\uB9AC\uB294\uACF3: +FR-Utils_WorkBook=\uC6CC\uD06C\uBD81 +M_Insert-Float=\uD638\uBC84\uC694\uC18C +Out_Thick_Border_Line=\uAD75\uC740\uBC14\uAE65\uCABD\uD14C\uB450\uB9AC\uC120 +FR-App-File_Lookup_range=\uBC94\uC704\uAC80\uC0C9 +ReportColumns-Columns_to=\uC140\uB098\uB204\uAE30 +Transparent=\uD22C\uBA85 +Parameter-Integer=\uC804\uCCB4\uD0C0\uC785 +PDF-Print_Setting=PDF\uC778\uC1C4\uC124\uC815 +Server-Embedded_Server=\uB0B4\uC7A5\uB41C\uC11C\uBC84 +M_Server-Server_Config_Manager=\uC11C\uBC84\uAD6C\uC131 +FR-Utils-Would_you_like_to_cover_the_current_file=\uD604\uC7AC\uD30C\uC77C\uC744\uB36E\uACA0\uC2B5\uB2C8\uAE4C? +CellWrite-InsertRow_COPY=\uC6D0\uB798\uAC12 +Edit_String_To_Formula=\uBB38\uC790\uC5F4\uC744\uC218\uC2DD\uC73C\uB85C\uD3B8\uC9D1\uD558\uACA0\uC2B5\uB2C8\uAE4C? +Edit-Column_Count=\uC5F4\uC218 +Father=\uC544\uBC84\uC9C0 +ReportColumns-Columns_after=\uCD08\uACFC +FR-Designer_Undo=\uD574\uC81C +DBCP_MIN_IDLE=\uCD5C\uC18C\uC720\uD734\uB9C1\uD06C\uC218 +M-Data_Analysis_Settings=\uB370\uC774\uD130\uBD84\uC11D\uC124\uC815 +M-Form_Preview=\uD3FC\uBBF8\uB9AC\uBCF4\uAE30 +Form-Basic_Properties=\uAE30\uBCF8\uC18D\uC131 +quote=\uC778\uC6A9 +Thu=4 +Collect-Collect_User_Information=\uC0AC\uC6A9\uC790\uC815\uBCF4\uC218\uC9D1 +Layer-Build=\uCE35\uBCC4\uC0DD\uC131 +FR-Designer-FRFont_Line_Style=\uC120\uD615 +BackgroundTexture-BrownMarble=\uAC08\uC0C9\uB300\uB9AC\uC11D +PageSetup-Page_Setup=\uC6F9\uD398\uC774\uC9C0\uC124\uC815 +Form-Semicolon=\uC138\uBBF8\uCF5C\uB860 +ECP_re_input=\uBE44\uBC00\uBC88\uD638\uC785\uB825\uC624\uB958.\uB2E4\uC2DC\uC785\uB825\uD574\uC8FC\uC2ED\uC2DC\uC624. +ExpandD-Sort_After_Expand=\uD655\uC7A5\uD6C4 +FR-Designer-Dependence_Install_Succeed=install succeed +Env-Configure_Workspace=\uAD6C\uC131\uC791\uC5C5\uB514\uB809\uD130\uB9AC +feedback_info=\uADC0\uC911\uD55C\uC758\uACAC\uACFC\uC81C\uC548\uC5D0\uAC10\uC0AC\uB4DC\uB9BD\uB2C8\uB2E4.\uC815\uBCF4\uB97C\uCD5C\uB300\uD55C\uC0C1\uC138\uD788\uC791\uC131\uD574\uC8FC\uC2DC\uBA74\uC5F0\uB77D\uB4DC\uB9AC\uACA0\uC2B5\uB2C8\uB2E4. +Ratio=\uBE44\uC728 +DBCP_TEST_ON_BORROW=\uB9C1\uD06C\uD68D\uB4DD\uC804\uAC80\uC0AC\uC9C4\uD589 +FR-Designer_layerIndex= +WEB-Write_Setting=\uC6F9\uD398\uC774\uC9C0\uC124\uC815\uAE30\uC785 +M-New_WorkBook=\uC0C8\uC6CC\uD06C\uBD81 +FR-Designer-Plugin_Has_Been_Actived=\uD50C\uB7EC\uADF8\uC778\uC774\uAD6C\uB3D9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.\uC124\uACC4\uAE30\uBC0F\uC11C\uBC84\uB97C\uC7AC\uBD80\uD305\uD558\uB824\uBA74\uC11C\uBC84\uB97C\uC218\uB3D9\uC7AC\uBD80\uD305\uD574\uC57C\uD569\uB2C8\uB2E4. +Datasource-Maximum_Number_of_Preview_Rows=\uCD5C\uB300\uBBF8\uB9AC\uBCF4\uAE30\uD589\uC218 +ExpandD-Cell_Expand_Attributes=\uD655\uC7A5\uC18D\uC131 +Select_the_repeated_row_and_column=\uC911\uBCF5\uD574\uC57C\uD560\uD589\uACFC\uC5F4\uC120\uD0DD +FormulaD-Date_&_Time=\uB0A0\uC9DC\uC640\uC2DC\uAC04\uD568\uC218 +Max-Mem-Row-Count=\uB808\uCF54\uB4DC\uC218\uAC00~\uC774\uC0C1\uC77C\uB54C\uB514\uC2A4\uD06C\uB85C\uCE90\uC2DC +BorderLayout-South=\uB0A8 +Export-Text=\uD14D\uC2A4\uD2B8\uD30C\uC77C(\uD0ED\uAE30\uD638\uB85C\uAD6C\uBD84) +JavaScript-Synch=\uB3D9\uAE30\uD654 +FR-App-All_Warning=\uACBD\uACE0 +M_Edit-Send_Backward=\uC544\uB798\uB85C\uC774\uB3D9\u4E00\uACC4\uCE35(B) +Form-Layout=\uB808\uC774\uC544\uC6C3 +FR-Designer-Plugin_Shop_Need_Update=\uC704\uC82F \uC5EC\uBD80\uB97C \uC5C5\uB370\uC774\uD2B8, \uC0C8 \uBC84\uC804\uC744 \uC800\uC7A5? +FR-Designer_WorkBook=\uC6CC\uD06C\uBD81 +UpBarBorderStyleAndColor=\uC5C5\uBC14\uC591\uC2DD +GridLayout=\uADF8\uB9AC\uB4DC\uB808\uC774\uC544\uC6C3 +Utils-Default_Value=\uAE30\uBCF8\uAC12 +Widget-Comb_Widget_Config=\uADF8\uB8F9\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4 +Import-Excel2007_Source=Excel2007\uC18C\uC2A4\uD30C\uC77C +Y-Coordinate=\uC138\uB85C\uC88C\uD45C +FR-Base_SimSun_Not_Found=\uC1A1\uCCB4\uB97C\uCC3E\uC744\uC218\uC5C6\uC2B5\uB2C8\uB2E4.\uD604\uC7AC\uC2DC\uC2A4\uD15C\uC0C1\uC758\uAE30\uBCF8\uC5B8\uC5B4\uB97C\uC124\uACC4\uAE30\uAE00\uAF34\uB85C\uC120\uD0DD\uD574\uC8FC\uC2ED\uC2DC\uC624. +FR-Designer_Seriously=\uC2EC\uAC01 +Upload=\uC5C5\uB85C\uB4DC +Form-Widget_Property_Table=\uC18D\uC131\uD45C +Des-Merger_Cell=\uC120\uD0DD\uC601\uC5ED\uC740\uC5EC\uB7EC\uB370\uC774\uD130\uB97C\uD3EC\uD568\uD558\uACE0\uC788\uC73C\uBA70,\uC140\uBCD1\uD569\uD6C4\uD3B8\uC9D1\uD55C\uBAA8\uB4E0\uC140\uC911\uAC00\uC7A5\uC67C\uCABD\uC0C1\uB2E8\uBAA8\uC11C\uB9AC\uC758\uAC12\uB9CC\uB0A8\uC2B5\uB2C8\uB2E4. +FR-Designer-Basic_Copy_Build_NO=\uC0DD\uC131\uBC84\uC804\uBC88\uD638\uB97C\uB354\uBE14\uD074\uB9AD\uD558\uBA74\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uBCF5\uC0AC\uB429\uB2C8\uB2E4. +FR-Base_TurnOn=\uC5F4\uAE30 +FR-Base_Rows=\uD589 +Form-Remove_Repeat=\uC911\uBCF5\uD56D\uBAA9\uC0AD\uC81C +Yes=\uC608 +Datasource-JNDI_Name=JNDI\uC758\uC774\uB984 +Utils-Delete_Column=\uC5F4\uC0AD\uC81C +HF-Delete_it=\uC0AD\uC81C +JavaScript-Dynamic_Parameters=\uB3D9\uC801\uD30C\uB77C\uBBF8\uD130 +px=\uD654\uC18C +FR-App-Report_Template=\uBB38\uC11C\uD15C\uD50C\uB9BF +Verify-Message=\uC624\uB958\uC815\uBCF4 +Plan=\uACC4\uD68D +Vertical-Split_Layout=\uC218\uC9C1\uBD84\uD560\uB808\uC774\uC544\uC6C3 +ParameterD-Delay_Playing=\uCC3E\uC544\uBCF4\uAE30\uD074\uB9AD\uC804\uBB38\uC11C\uB0B4\uC6A9\uBCF4\uC774\uC9C0\uC54A\uAE30 +TurnOff=\uB2EB\uAE30 +FR-Please_Rename=\uB9AC\uB124\uC784\uD574\uC8FC\uC2ED\uC2DC\uC624. +Select_Data_Set=\uB370\uC774\uD130\uC138\uD2B8\uC120\uD0DD +Name_has_Colon=\uC774\uB984\: +ReportColumns-Columns_horizontally=\uD589\uC140\uB098\uB204\uAE30 +FR-Base_Yes=\uC608 +ReportColumns-Repeat_Row=\uD589\uBCF5\uC0AC\uC21C\uC11C +Print_Setting=\uC778\uC1C4\uC124\uC815 +Registration-User_Name=\uC0AC\uC6A9\uC790\uC774\uB984 +Datasource-User_Defined=\uC0AC\uC6A9\uC790\uC815\uC758 +FR-Designer-Plugin_DownLoadMessage= +Delay=\uC9C0\uC5F0 +FR-Designer-All_MSBold=\uB9C8\uC774\uD06C\uB85C\uC18C\uD504\uD2B8 Yahei +Utils-Now_create_connection=\uB370\uC774\uD130\uB9C1\uD06C\uC0DD\uC131\uC911 +FR-Template-Path_chooseRightPath=\uC815\uD655\uD55C\uACBD\uB85C\uB97C\uC120\uD0DD\uD574\uC8FC\uC2ED\uC2DC\uC624. +FR-Remote_Re_Connect_to_Server=\uC11C\uBC84\uAC00\uB2EB\uD600\uC788\uC2B5\uB2C8\uB2E4.\uB2E4\uC2DC\uC11C\uBC84\uB97C\uC5F0\uACB0\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +Nation=\uAD6D\uAC00 +DBCP_MAX_WAIT=\uCD5C\uB300\uB300\uAE30\uC2DC\uAC04 +FR-App-Template_Form=\uD3FC +Address=\uC8FC\uC18C +Sub_Report=\uBB38\uC11C\uC548\uC758\uBB38\uC11C +FR-Import-Export_Word=Word\uC11C\uC2DD +FR-Server_Version_Tip=\uD604\uC7AC\uC5F0\uACB0\uB41C\uC11C\uBC84\uBC84\uC804\uC774\uB2F9\uC2E0\uC774\uC0AC\uC6A9\uD558\uACE0\uC788\uB294\uC124\uACC4\uAE30\uBC84\uC804\uBC88\uD638\uBCF4\uB2E4\uB0AE\uC2B5\uB2C8\uB2E4.\uACC4\uC18D\uC5F0\uACB0\uD558\uBA74\uD3B8\uC9D1\uD558\uACE0\uC788\uB294\uC77C\uBD80\uC18D\uC131\uC774\uC800\uC7A5\uB418\uC9C0\uC54A\uC744\uC218\uC788\uC2B5\uB2C8\uB2E4. \uC5F0\uACB0\uD574\uC57C\uD560\uACBD\uC6B0\uC124\uACC4\uAE30\uBC84\uC804\uACFC\uC11C\uBC84\uBC84\uC804\uC744\uC77C\uCE58\uC2DC\uCF1C\uC8FC\uC2ED\uC2DC\uC624. +StyleAlignment-Left_To_Right=\uC67C\uCABD\uC5D0\uC11C\uC624\uB978\uCABD\uC73C\uB85C +Verify-ToolTips=\uC218\uC2DD\uBE44\uCDA9\uC871\uC54C\uB9BC. \uC624\uB958\uC815\uBCF4\uAC80\uC0AC +BackgroundTexture-Stationery=\uD3B8\uC9C0\uC9C0 +FR-Designer_RWA-Help=\uBBF8\uC218\uC815, \uBBF8\uC5C5\uB370\uC774\uD2B8\uB85C\uC124\uC815\uD55C\uD6C4\uBBF8\uB9AC\uBCF4\uAE30\uBB38\uC11C\uB97C\uC791\uC131\uD558\uC5EC\uB808\uCF54\uB4DC\uB41C\uC140\uC5D0\uD3B8\uC9D1\uC218\uC815\uC0AC\uD56D\uC774\uC5C6\uC744\uACBD\uC6B0\uC774\uB808\uCF54\uB4DC\uB294\uD589\uC5C5\uB370\uC774\uD2B8\uB97C\uC9C4\uD589\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4.\n\uB300\uC6A9\uB7C9\uB370\uC774\uD130\uB808\uCF54\uB4DC\uCC3E\uC544\uBCF4\uAE30\uBC0F\uAE30\uC785\uC0C1\uD669\uC5D0\uC11C\uD574\uB2F9\uC124\uC815\uC744\uD558\uBA74\uAE30\uC785\uC81C\uCD9C\uC131\uB2A5\uC744\uB192\uC77C\uC218\uC788\uC2B5\uB2C8\uB2E4. +M_Insert-Barcode=\uBC14\uCF54\uB4DC +Bounds=\uACBD\uACC4\uC120 +FR-Designer-Undo_All_Authority_Operations=\uC774\uC804\uAD8C\uD55C\uD3B8\uC9D1\uC758\uBAA8\uB4E0\uC870\uC791\uD574\uC81C +Datasource-Context=\uBB38\uB9E5 +CellWrite-Page_After_Column=\uC5F4\uB4A4\uD398\uC774\uC9C0\uB098\uB204\uAE30 +FR-Designer_Cancel=\uCDE8\uC18C +Button-Group-Display-Columns=\uC5F4\uC758\uC218\uB97C\uB098\uD0C0\uB0C4 +Widget-Height=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uB192\uC774 +Examples=\uC608\uC2DC +Formula_Dictionary_Display_Example=\uC2E4\uC81C\uAC12\uBC94\uC704:\ +StyleAlignment-Horizontal=\uC218\uD3C9\uC815\uB82C +HyperLink_Must_Alone_Reset=\uC5EC\uB7EC\uAC1C\uD558\uC774\uD37C\uB9C1\uD06C +ExpandD-Expand_Direction=\uD655\uB300\uBC29\uD5A5 +Include=\uD3EC\uD568 +Export-Excel-Page=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uC5B4\uB0B4\uBCF4\uB0B4\uAE30 +FR-Designer-Min_Height=\uCD5C\uC18C\uB192\uC774 +Filed=\uC601\uC5ED +ReportServerP-Import_Css=Css\uC778\uC6A9 +M_Insert-Formula=\uC218\uC2DD\uC0BD\uC785 +FR-Designer_Auto-Build=\uC790\uB3D9\uC0DD\uC131 +FRFont-Foreground=\uC0C9 +Bubble-Width=\uBC84\uBE14\uB108\uBE44 +Form-Hierarchy_Tree=\uAD6C\uC870\uD2B8\uB9AC +WLayout-Border-LayoutContainer=\uC911\uAC04\uACFC\uBD81\uCABD\uB450\uBE14\uB7ED\uC758\uACBD\uACC4\uC120\uB808\uC774\uC544\uC6C3\uCEE8\uD14C\uC774\uB108\uC911\uBD81\uCABD\uBE14\uB7ED\uC740\uD544\uC694\uC5D0\uB530\uB77C\uB192\uC774\uB97C\uC870\uC815\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +Preference-JDK_Home=JDK\uACBD\uB85C +Utils-Insert_Column=\uC5F4\uC0BD\uC785 +FR-Designer_ToolBar_Top=\uC0C1\uB2E8\uD234\uBC14 +BindColumn-The_Conditions_of_FatherCell=\uBD80\uBAA8\uC140\uC870\uAC74 +Links=\uB9C1\uD06C +M_Report-Report_Header=\uBB38\uC11C\uD398\uC774\uC9C0\uBA38\uB9AC\uAE00 +Sub_Report_Description=\uBB38\uC11C\uC548\uC758\uBB38\uC11C\uB294\uBD80\uBAA8\uD14C\uC774\uBE14\uC2E4\uD589\uD658\uACBD\uD558\uC5D0\uC788\uC5B4\uC57C\uD558\uBA70,\uC774\uB458\uC740\uB3D9\uC77C\uD55C\uD15C\uD50C\uB9BF\uC774\uC544\uB2C8\uC5B4\uC57C\uD569\uB2C8\uB2E4. +T_Insert-Float=\uC0BD\uC785\uD638\uBC84\uC694\uC18C +BackgroundTexture-FishFossil=\uC5B4\uB958\uD654\uC11D +My_Computer=\uB0B4\uCEF4\uD4E8\uD130 +FORMLET=\uAC01\uD3FC\uACBD\uB85C\uC758\uB9E4\uAC1C\uBCC0\uC218\uC811\uADFC +HF-Undefined=\uC815\uC758\uC5C6\uC74C +Widget-User_Defined_Widget_Config=\uC0AC\uC804\uC815\uC758\uB41C\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4 +Report-Write_Attributes_Group_Warning=\uC140\uADF8\uB8F9\uC73C\uB85C\uC124\uC815\uB41C\uAC01\uD544\uB4DC\uC758\uC140\uAC1C\uC218\uB294\uAC19\uC544\uC57C\uD569\uB2C8\uB2E4. +Form-Single_quote=\uC791\uC740\uB530\uC634\uD45C +Compile_Success_And_Then_Save=\uCEF4\uD30C\uC77C\uC744\uC131\uACF5\uD574\uC57C\uC815\uD655\uD788\uC800\uC7A5\uAC00\uB2A5 +FR-Designer_Layout-Padding=\uC548\uCABD\uC5EC\uBC31 +Layout_Container=\uB808\uC774\uC544\uC6C3\uCEE8\uD14C\uC774\uB108 +Admin=\uAD00\uB9AC\uC790 +Form-EC_toolbar=\uBB38\uC11C\uBE14\uB85D\uD234\uBC14 +FR-App-All_Auto=\uC790\uB3D9 +Utils-Available_Columns=\uC120\uD0DD\uAC00\uB2A5\uC5F4 +Form-Change_Widget_Name_Discription=\uC0C8\uB85C\uC6B4\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uC774\uB984\uC744\uC785\uB825\uD574\uC8FC\uC138\uC694. +FR-Module_Designer=\uC124\uACC4\uAE30\uBAA8\uB4C8 +FR-Import-Export_Text=\uD14D\uC2A4\uD2B8\uD30C\uC77C(\uD0ED\uAE30\uD638\uB85C\uAD6C\uBD84) +Values-Editor=\uAC12\uD3B8\uC9D1\uAE30 +FR-Designer_Yes=\uC608 +ExpandD-Expandable=\uD655\uC7A5\uAC00\uB2A5\uC131 +Tree-Return_Full_Path=\uACB0\uACFC\uB97C\uC644\uC804\uACC4\uCE35\uACBD\uB85C\uB85C\uB418\uB3CC\uB9AC\uAE30 +FRFont-bolditalic=\uAD75\uAC8C\uAE30\uC6B8\uC784\uAF34 +FR-Base_StyleFormat_Sample=\uC608\uC2DC +Area_Value=\uAD6C\uC5ED\uAC12 +FR-Designer-Plugin_Disable=\uC0AC\uC6A9\uAE08\uC9C0 +Utils-Are_you_sure_to_remove_the_selected_item=\uC815\uB9D0\uB85C\uC120\uD0DD\uD55C\uD56D\uBAA9\uC744\uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +Face_Write=\uAE30\uC785 +Poly-Report_Block=\uBB38\uC11C\uC720\uD615\uCDE8\uD569\uBE14\uB7ED +Vgap=\uC218\uC9C1\uAC04\uACA9 +FR-Designer_HyperLink_Must_Alone_Reset=\uC5EC\uB7EC\uAC1C\uD558\uC774\uD37C\uB9C1\uD06C +DS-Class=\uD504\uB85C\uADF8\uB7A8 +FR-Hyperlink_Please_Select_Reportlet=\uB124\uD2B8\uC6CC\uD06C\uBB38\uC11C\uB97C\uC120\uD0DD\uD574\uC8FC\uC2ED\uC2DC\uC624. +FS_Report_Type=\uC720\uD615 +HF-New_Line=\uC904\uBC14\uAFC8 +Privilege=\uAD8C\uD55C +Export-Offline-Html=\uCD9C\uB825\uC624\uD504\uB77C\uC778html\uBB38\uC11C +FR-Designer_open-new-form-tip=\uD604\uC7AC\uD15C\uD50C\uB9BF\uC740711\uC774\uD558\uBC84\uC804\uC73C\uB85C\uC791\uC131\uB418\uC5B4\uD638\uD658\uC774\uB418\uC9C0\uC54A\uC544\uC5F4\uC218\uC5C6\uC2B5\uB2C8\uB2E4. \uC774\uD3FC\uC744\uC5F4\uC5B4\uC218\uC815\uD558\uACE0\uC790\uD560\uACBD\uC6B0\uC0C1\uC751\uD558\uB294\uBC84\uC804\uC124\uACC4\uAE30\uB85C\uC5F4\uC5B4\uC8FC\uC2ED\uC2DC\uC624. +FR-Designer-Widget-Style_Frame_Style=\uD504\uB808\uC784\uC591\uC2DD +Present-No_Present=\uCDE8\uC18C\uD615\uD0DC\uC124\uC815 +FR-Designer_Form-Password=\uC554\uD638 +X_Axis=X\uCD95 +FR-mobile_html_analysis=HTML5 \uD574\uC11D +M_Edit-Bring_to_Front=\uAF2D\uB300\uAE30\uC5D0\uB193\uAE30(T) +Null_Value_Show=\uB110\uAC12\uBCF4\uC774\uAE30 +Datasource-JNDI_DES=\uC8FC\uC758\:INITIAL_CONTEXT_FACTORY\uD074\uB798\uC2A4\uB97C\uD3EC\uD568\uD558\uACE0\uC788\uB294 .jar \uD30C\uC77C\uC744\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC124\uCE58\uB514\uB809\uD130\uB9AC\uC758 /lib\uB514\uB809\uD130\uB9AC\uC5D0\uCD94\uAC00\uD574\uC57C\uD569\uB2C8\uB2E4. +PrintP-Print_Preview=\uC778\uC1C4\uBBF8\uB9AC\uBCF4\uAE30 +Form-Hierarchy_Tree_Last=\uC774\uC804 +Has_been_gone=\\uc0ac\uB77C\uC84C\uC2B5\uB2C8\uB2E4.\uD574\uB2F9\uC591\uC2DD\uC744\uCD94\uAC00\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +RWA-Add_Field=\uD544\uB4DC\uCD94\uAC00 +newNode=\uB178\uB4DC\uCD94\uAC00 +PageSetup-Shrink_to_fit_content=\uC140\uB0B4\uC6A9\uC5D0\uB530\uB77C\uC790\uB3D9\uC870\uC815 +FR-Designer_Date=\uB0A0\uC9DC +Column_Multiple=\uB370\uC774\uD130\uBC30\uC218 +FR-App-All_File=\uD30C\uC77C +Sort-Descending=\uB0B4\uB9BC\uCC28\uC21C +FR-Designer-Plugin_Delete=\uC0AD\uC81C +Above=\uC0C1\uAE30\uBC84\uC804 +Utils-The-Chart=\uCC28\uD2B8 +FRFont-plain=\uC77C\uBC18 +Calculating=\uCC98\uB9AC\uC911 +Form-Object=\uD3FC\uAC1D\uCCB4\: +May=5\uC6D4 +FR-Designer_Plugin_Normal_Update=\uC5C5\uB370\uC774\uD2B8 +FR-Hyperlink_Reportlet=\uB124\uD2B8\uC6CC\uD06C\uBB38\uC11C +M_Edit-Copy=\uBCF5\uC0AC(C) +Sub_Report_Message2=\uBD80\uBAA8\uBB38\uC11C\uAC00\uD604\uC7AC\uC2E4\uD589\uD658\uACBD\uC5D0\uC5C6\uC2B5\uB2C8\uB2E4. +Sub_Report_Message3=\uC790\uC2E0\uC744\uC120\uD0DD\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +Sub_Report_Message1=\uC815\uD655\uD55C\uACBD\uB85C\uB97C\uC120\uD0DD\uD574\uC8FC\uC2ED\uC2DC\uC624. +Form-Allow_CustomData=\uC0AC\uC6A9\uC790\uC815\uC758\uAC12\uD5C8\uC6A9 +FR-Server_Version_Tip_MoreInfo=\uBC84\uC804\uBD88\uC77C\uCE58\uB85C\uC778\uD55C\uBB38\uC81C\uAC00\uBC1C\uC0DD\uD558\uC9C0\uC54A\uB3C4\uB85D\uC0AC\uC6A9\uD558\uACE0\uC788\uB294 FineReport\uC81C\uD488\uC758\uC124\uACC4\uAE30\uBC84\uC804\uBC0F\uC124\uCE58\uB41C\uC11C\uBC84\uBC84\uC804\uC774\uC77C\uCE58\uD558\uB294\uC9C0\uD655\uC778\uD574\uC8FC\uC2ED\uC2DC\uC624.\ N\uB354\uB192\uC740\uC124\uACC4\uAE30\uBC84\uC804\uC73C\uB85C\uC791\uC131\uB41C\uD15C\uD50C\uB9BF\uC744\uC5F4\uACBD\uC6B0\uC5F4\uAE30\uC624\uB958\uB85C\uC778\uD574\uAE30\uC874\uD15C\uD50C\uB9BF\uC18D\uC131\uC744\uC783\uC744\uC218\uC788\uC2B5\uB2C8\uB2E4. \uC791\uC131\uD55C\uD15C\uD50C\uB9BF\uC5D0\uC11C\uC0AC\uC6A9\uD558\uACE0\uC788\uB294\uC124\uACC4\uAE30\uBC84\uC804\uC774\uB2F9\uC2E0\uC758\uCD5C\uC885\uC124\uCE58\uC11C\uBC84\uBC84\uC804\uBCF4\uB2E4\uB192\uC744\uACBD\uC6B0\uC11C\uBC84\uB294\uB2F9\uC2E0\uC774\uC791\uC131\uD55C\uD15C\uD50C\uB9BF\uC744\uB85C\uB529\uD558\uC9C0\uBABB\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +FR-Designer_Server-version-tip-moreInfo=\uBC84\uC804\uBD88\uC77C\uCE58\uB85C\uC778\uD55C\uBB38\uC81C\uAC00\uBC1C\uC0DD\uD558\uC9C0\uC54A\uB3C4\uB85D\uC0AC\uC6A9\uD558\uACE0\uC788\uB294 FineReport\uC81C\uD488\uC758\uC124\uACC4\uAE30\uBC84\uC804\uBC0F\uC124\uCE58\uB41C\uC11C\uBC84\uBC84\uC804\uC774\uC77C\uCE58\uD558\uB294\uC9C0\uD655\uC778\uD574\uC8FC\uC2ED\uC2DC\uC624.\ N\uB354\uB192\uC740\uC124\uACC4\uAE30\uBC84\uC804\uC73C\uB85C\uC791\uC131\uB41C\uD15C\uD50C\uB9BF\uC744\uC5F4\uACBD\uC6B0\uC5F4\uAE30\uC624\uB958\uB85C\uC778\uD574\uAE30\uC874\uD15C\uD50C\uB9BF\uC18D\uC131\uC744\uC783\uC744\uC218\uC788\uC2B5\uB2C8\uB2E4. \uC791\uC131\uD55C\uD15C\uD50C\uB9BF\uC5D0\uC11C\uC0AC\uC6A9\uD558\uACE0\uC788\uB294\uC124\uACC4\uAE30\uBC84\uC804\uC774\uB2F9\uC2E0\uC758\uCD5C\uC885\uC124\uCE58\uC11C\uBC84\uBC84\uC804\uBCF4\uB2E4\uB192\uC744\uACBD\uC6B0\uC11C\uBC84\uB294\uB2F9\uC2E0\uC774\uC791\uC131\uD55C\uD15C\uD50C\uB9BF\uC744\uB85C\uB529\uD558\uC9C0\uBABB\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +Get_Lock=\uC554\uD638\uD654 +HF-Edit_Footer=\uD398\uC774\uC9C0\uBC14\uB2E5\uAE00\uD3B8\uC9D1 +Datasource-New_Charset=\uC0C8\uCF54\uB529 +Preference-Custom=\uC0AC\uC6A9\uC790\uC815\uC758 +BackgroundTexture-Newsprint=\uC2E0\uBB38\uC9C0 +ConditionB-Add_bracket=\uAD04\uD638\uCD94\uAC00 +Datasource-Connection_successfully=\uB9C1\uD06C\uC131\uACF5 +Function-The_class_must_implement_the_interface=\uD574\uB2F9\uD074\uB798\uC2A4\uB294\uC778\uD130\uD398\uC774\uC2A4\uB97C\uD574\uC57C\uD55C\uB2E4. +FR-Designer_ChartF-Transparency=\uD22C\uBA85 +Crimson=\uC9C4\uD55C\uBE68\uAC15 +FR-Hyperlink_Dialog=\uB300\uD654\uC0C1\uC790 +FR-Designer_Covered_All=\uBAA8\uB450\uB36E\uC5B4\uC50C\uC6B0\uAE30 +Hyperlink-New_Window=\uC0C8\uC708\uB3C4\uC6B0 +Style_Name=\uC11C\uC2DD\uBA85 +CSS_warning=\\uc0c1\uB300\uBB38\uC11C\uD504\uB85C\uC81D\uD2B8\uB514\uB809\uD130\uB9AC(\uC608:WebReport,WebReport\\css)\uC5D0\uC778\uC6A9\uB41Ccss \uD30C\uC77Ctest.css\uAC00\uC788\uB294\uACBD\uC6B0\uC0C1\uB300\uACBD\uB85C\uB294css/test.css\uC774\uB2E4. +FR-Base_Column=\uC5F4 +Three_Rows_Of_Two_Grid=3\uD589 2\uC5F4\uC758\uADF8\uB9AC\uB4DC +DBCP_VALIDATION_QUERY=SQL\uAC80\uC99D\uCC3E\uC544\uBCF4\uAE30 +M_Edit-Clear_Formats=\uC11C\uC2DD(F) +Parameter_Setting=\uB9E4\uAC1C\uBCC0\uC218\uC124\uC815 +Related=\uC5F0\uB3D9 +BorderLayout-Constraints=\uC704\uCE58 +Write_Preview=\uAE30\uC785\uBBF8\uB9AC\uBCF4\uAE30 +PageSetup-Page_Order=\uC778\uC1C4\uC21C\uC11C +Verify-Verify_Formula=\uAC80\uC0AC\uC218\uC2DD +State=\uC131\uC2DC +FR-Designer-Widget-Style_Body_Background=\uBA54\uC778\uBC30\uACBD +FR-App-Privilege_No=\uAD8C\uD55C\uC5C6\uC74C +Please_Drag_ParaPane= +Come_True=\uC2E4\uD604 +ISEMPTY=\uBE44\uC5B4\uC788\uC74C +Background-Texture=\uBB34\uB2AC +FR-Designer_Verify-Message=\uC624\uB958\uC815\uBCF4 +Locked=(\uC7A0\uAE40\uFF09 +Utils-Design-Action_Cancel=\uCDE8\uC18C +Image-Titled=\uD0C0\uC77C +Gradient-Direction=\uADF8\uB77C\uB370\uC774\uC158 \uBC29\uD5A5 +Green=\uC9D9\uC740\uB179\uC0C9 +Report_Engine=\uBB38\uC11C\uC5D4\uC9C4 +Return-String=\uBB38\uC790\uC5F4\uB3CC\uC544\uAC00\uAE30 +Margin=\uC5EC\uBC31 +Pitch_Percentage=\uAC04\uACA9\uBC31\uBD84\uC728 +FR-Base_TurnOff=\uB2EB\uAE30 +Utils-has_been_existed=\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4 +HF-Insert_Formula=\uC218\uC2DD\uC0BD\uC785 +Utils-Exit_Designer=\uC124\uACC4\uAE30\uB098\uAC00\uAE30 +Formula_Dictionary_Display=\uC704\uC2E4\uC81C\uAC12\uBC94\uC704\uC548\uC758\uAC01\uAC12($$$): \uFF0C \uD45C\uC2DC\uAC12: +PageSetup-Left_to_right=\uD589\uBA3C\uC800\uC5F4\uB098\uC911 +Utils-Import_Excel_Data=[Excel]\uBD88\uB7EC\uC624\uAE30 +M-Save=\uC800\uC7A5 +redo=\uB9AC\uC6CC\uD06C +Status=\uC0C1\uD0DC +Draw=\uADF8\uB9AC\uAE30 +FR-Designer_Message=\uC815\uBCF4 +Records=\uAC74\uC758\uB808\uCF54\uB4DC +FR-Designer_ComboBox=\uBC15\uC2A4\uD480\uB2E4\uC6B4 +Driver=\uB4DC\uB77C\uC774\uBE0C +Template_Parameters=\uD15C\uD50C\uB9BF\uB9E4\uAC1C\uBCC0\uC218 +Form-Remove_Repeat_Data=\uC911\uBCF5\uB370\uC774\uD130\uC0AD\uC81C +ECP_decode=\uD15C\uD50C\uB9BF\uC554\uD638\uD574\uC81C +Area_Name=\uC601\uC5ED\uBA85 +Others=\uAE30\uD0C0 +Merge=\uBCD1\uD569 +BackgroundTexture-Parchment=\uC591\uD53C\uC885\uC774 +BindColumn-Bottom_N=\uB4A4N\uAC1C +Frame=\uD504\uB808\uC784 +Bottom_Border_Line=\uC544\uB798\uD14C\uB450\uB9AC\uC120 +Muiti_In=\uB2E4\uCE35\uB4DC\uB9B4\uB2E4\uC6B4 +FR-Designer-Dependence_Install_Online=install online +Use_Default_ToolBar=\uAE30\uBCF8\uD234\uBC14\uC0AC\uC6A9 +M_Server-Platform_Manager=\uBB38\uC11C\uD50C\uB7AB\uD3FC\uAD00\uB9AC +PageSetup-inches=\uC778\uCE58 +Form-Widget_Property=\uC18D\uC131\uC774\uB984 +FR-Layout_Padding=\uC548\uCABD\uC5EC\uBC31 +Schema=\uD14C\uB9C8 +Server_Path=\uD638\uC2A4\uD2B8\uCEF4\uD4E8\uD130\uC704\uCE58 +Condition_Display=\uC870\uAC74\uBCF4\uC774\uAE30 +FR-Server-Design_template_unopened=\uD15C\uD50C\uB9BF\uC744\uC5F4\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +Function-Function_Class_Name=\uD568\uC218\uD074\uB798\uC2A4\uB124\uC784 +Schedule-Template=\uD15C\uD50C\uB9BF\uBA85\uCE6D +Tree_Data_Field=\uD2B8\uB9AC\uB370\uC774\uD130\uD544\uB4DC +Border-Style-Normal=\uC9C1\uAC01\uD14C\uB450\uB9AC +Top_And_Double_Bottom_Border_Line=\uC704\uD14C\uB450\uB9AC\uC120\uACFC\uB450\uC904\uBC11\uD14C\uB450\uB9AC\uC120 +FR-Server_Embedded_Server_Start=\uB0B4\uC7A5\uB41C\uC11C\uBC84-\uC5F4\uAE30 +FR-Designer-Basic_Restart_Designer_Later=\uC7A0\uC2DC\uD6C4\uC7AC\uBD80\uD305\uD574\uC8FC\uC2ED\uC2DC\uC624. +StyleAlignment-Top=\uC704\uC5D0\uB9DE\uCDA4 +ReportServerP-First=\uBA54\uC778\uD398\uC774\uC9C0 +Not_Exist=\uC874\uC7AC\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +FR-Remote_File_is_Locked=\uC5F4\uB824\uB294\uBB38\uC11C\uB97C\uB2E4\uB978\uC0AC\uB78C\uC774\uC0AC\uC6A9\uC911\uC774\uB2C8\uC7A0\uC2DC\uD6C4\uC5D0\uC5F4\uC5B4\uC8FC\uC2ED\uC2DC\uC624. +Apply=\uC751\uC6A9 +Sytle-Indentation=\uB4E4\uC5EC\uC4F0\uAE30 +Parameter-Float=\uC2F1\uAE00\uC815\uB3C4\uD0C0\uC785 +HF-Center_Section=\uC911\uAC04\uC601\uC5ED +Form-Double_quotes=\uD070\uB530\uC634\uD45C +M_File-Export-Word=Word\uC11C\uC2DD +M_File-Export-Text=\uD14D\uC2A4\uD2B8\uD30C\uC77C(\uD0ED\uAE30\uD638\uB85C\uAD6C\uBD84) +PageSetup-First_Page_Number=\uC2DC\uC791\uD398\uC774\uC9C0\uBC88\uD638 +Execute=\uC2E4\uD589 +Task=\uD0DC\uC2A4\uD06C +Custom_Button_Type_Submit=\uC81C\uCD9C +FR-Designer-Widget_Settings=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uC124\uC815 +IS_Need_Password=\uC554\uD638\uB97C\uC785\uB825\uD574\uC57C\uD569\uB2C8\uB2E4. +PageSetup-Horizontally=\uC218\uD3C9\uAC00\uC6B4\uB370\uC815\uB82C +No_Editor_Property_Definition=\uD574\uB2F9\uD3B8\uC9D1\uAE30\uC5D0\uC18D\uC131\uC815\uC758\uAC00\uC5C6\uC2B5\uB2C8\uB2E4. +Env-Remote_Server=\uC6D0\uACA9\uC11C\uBC84 +FR-Utils_Background=\uBC30\uACBD +FR-Designer-Plugin_Warning=\uACBD\uACE0 +Server-version-info=\uD604\uC7AC\uC5F0\uD15C\uD50C\uB9BF\uD30C\uC77C\uC740\uB354\uB192\uC740\uBC84\uC804\uC758\uC124\uACC4\uAE30\uB85C\uC791\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4.\uC5F4\uACBD\uC6B0\uAE30\uC874\uD15C\uD50C\uB9BF\uC18D\uC131\uC774\uC624\uB958\uAC00\uB098\uAC70\uB098\uC190\uC0C1\uB420\uC704\uD5D8\uC774\uC788\uC2B5\uB2C8\uB2E4. \uC774\uD15C\uD50C\uB9BF\uC744\uC5F4\uC5B4\uC57C\uD560\uACBD\uC6B0\uC124\uACC4\uAE30\uB97C~\uB85C\uC5C5\uADF8\uB808\uC774\uB4DC\uD574\uC8FC\uC2ED\uC2DC\uC624. +CellWrite-Page_After_Row=\uD589\uB4A4\uD398\uC774\uC9C0\uB098\uB204\uAE30 +HF-Right_Section=\uC624\uB978\uCABD\uC601\uC5ED +PageSetup-Title_Start_Row=\uC911\uBCF5\uC81C\uBAA9\uD589 +From=~\uBC88\uC9F8\uBD80\uD130 +Preference-Grid_Line_Color=\uB208\uAE08\uC120\uC0C9 +RowTo=\uD589\uC5D0\uC11C~\uBC88\uC9F8 +FR-Designer_ReportColumns-Repeat_Column=\uC5F4\uBCF5\uC0AC\uC21C\uC11C +M_Server-Function_Manager=\uD568\uC218\uAD00\uB9AC\uC790 +KeyWord=\uD0A4\uC6CC\uB4DC +DS-Multi_Dimensional_Database=\uB2E4\uCC28\uC6D0\uB370\uC774\uD130\uBCA0\uC774\uC2A4 +BiasD-Slope_Line=\uC0AC\uC120 +Tue=2 +ReportServerP-Last=\uB05D\uD398\uC774\uC9C0 +FR-Base_Columns=\uC5F4 +SpecifiedG-Leave_in_their_own_groups=\uAC01\uC790\uC758\uADF8\uB8F9\uC548\uC5D0\uB0A8\uAE30\uAE30 +LOG-Please_Wait=\uC7A0\uC2DC\uB9CC\uAE30\uB2E4\uB824\uC8FC\uC2ED\uC2DC\uC624 +Form-ToolBar=\uD3FC\uD234\uBC14 +FR-Base_sure_remove_item=\uC815\uB9D0\uB85C\uC120\uD0DD\uD55C\uD56D\uBAA9\uC744\uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C? +Component_Scale=\uC5B4\uC148\uBE14\uB9AC\uCD95\uC18C +Hyperlink-Use_CJK_to_encode_parameter=CJK\uB85C\uB9E4\uAC1C\uBCC0\uC218\uCC98\uB9AC +LOG-Has_Been_Openned=\uC5F4\uB838\uC2B5\uB2C8\uB2E4. +FR-Designer-Dependence= +ECP_error_pwd=\uBE44\uBC00\uBC88\uD638\uC785\uB825\uC624\uB958 +REPORTLET=\uD15C\uD50C\uB9BF\uACBD\uB85C\uC758\uB9E4\uAC1C\uBCC0\uC218\uC811\uADFC +RWA-Column_Offset=\uC5F4\uC635\uC14B +Forecast=\uC608\uCE21 +Light_Orange=\uC624\uB80C\uC9C0\uC0C9 +StyleAlignment-Vertical=\uC218\uC9C1\uC815\uB82C +Form-List=\uB9AC\uC2A4\uD2B8 +ParameterD-Show_Parameter_Window=\uB9E4\uAC1C\uBCC0\uC218\uB300\uD654\uCC3D\uBCF4\uC774\uAE30 +FR-Designer_Set_Submit_Event=\uC81C\uCD9C\uC774\uBCA4\uD2B8\uC124\uC815 +Value_Percent=\uAC12\uC810\uC720\uBE44\uC728 +DBCP_MIN_EVICTABLE_IDLE_TIMEMILLIS=\uC720\uD734\uCD5C\uC18C\uC2DC\uAC04\uAC12 +Function-The_class_must_be_located_in=\uD574\uB2F9\uD074\uB798\uC2A4\uB294~\uC5D0\uB450\uC5B4\uC57C\uD55C\uB2E4. +FR-Action_Sort=\uC21C\uC11C +DataFunction-Average=\uD3C9\uADE0 +FR-Designer_Show_in_Containing_Folder=\uD574\uB2F9\uD3F4\uB354\uC5F4\uAE30 +M_File-Export-Excel=Excel\uC11C\uC2DD +DataFunction-Max=\uCD5C\uB300\uAC12 +FR-Designer_Form-Widget_Name=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uC774\uB984 +FS_End_Date=\uC885\uB8CC\uB0A0\uC9DC +Export-Excel-Simple=\uC6D0\uB798\uBAA8\uC2B5\uB0B4\uBCF4\uB0B4\uAE30 +ColumnTo=\uC5F4\uC744~\uBC88\uC9F8\uB85C +SpecifiedG-Discard_all_others=\uAE30\uD0C0\uBAA8\uB4E0\uAC83\uD3EC\uAE30 +DS-TableData=\uB370\uC774\uD130\uC138\uD2B8 +Form-DataTable=\uB370\uC774\uD130\uD45C +Sub_Report_ToolTips=\uBB38\uC11C\uC548\uC758\uBB38\uC11C\uC54C\uB9BC +Right_Top=\uC624\uB978\uCABD\uC704 +M_Edit-Merge_Cell=\uC140\uBCD1\uD569 +FR-Designer_Restore_Default=\uAE30\uBCF8\uD68C\uBCF5 +Component_Interval=\uC5B4\uC148\uBE14\uB9AC\uAC04\uACA9 +Cover_None=\uBAA8\uB450\uB36E\uC5B4\uC50C\uC6B0\uC9C0\uC54A\uAE30 +Datasource-From_Database=\uB370\uC774\uD130\uBCA0\uC774\uC2A4\uD45C +Folder=\uB514\uB809\uD130\uB9AC +Form-Allow_Edit=\uC9C1\uC811\uD3B8\uC9D1\uD5C8\uC6A9 +M_Edit-Clear=\uD074\uB9AC\uC5B4(A) +ParentCell_Setting=\uBD80\uBAA8\uC140\uC124\uC815 +Only_selected_cell_can_paste_only=\uC140\uC744\uC120\uD0DD\uD574\uC57C\uBD99\uC5EC\uB123\uAE30\uB97C\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +M_Report-Report_Columns=\uBB38\uC11C\uC140\uB098\uB204\uAE30 +Unit_Hundred=\uBC31 +FR-Designer_DataTable-Build= +Widget-Form_Widget_Config=\uD3FC\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4 +Server-version-tip-moreInfo=\uBC84\uC804\uBD88\uC77C\uCE58\uB85C\uC778\uD55C\uBB38\uC81C\uAC00\uBC1C\uC0DD\uD558\uC9C0\uC54A\uB3C4\uB85D\uC0AC\uC6A9\uD558\uACE0\uC788\uB294 FineReport\uC81C\uD488\uC758\uC124\uACC4\uAE30\uBC84\uC804\uBC0F\uC124\uCE58\uB41C\uC11C\uBC84\uBC84\uC804\uC774\uC77C\uCE58\uD558\uB294\uC9C0\uD655\uC778\uD574\uC8FC\uC2ED\uC2DC\uC624.\ N\uB354\uB192\uC740\uC124\uACC4\uAE30\uBC84\uC804\uC73C\uB85C\uC791\uC131\uB41C\uD15C\uD50C\uB9BF\uC744\uC5F4\uACBD\uC6B0\uC5F4\uAE30\uC624\uB958\uB85C\uC778\uD574\uAE30\uC874\uD15C\uD50C\uB9BF\uC18D\uC131\uC744\uC783\uC744\uC218\uC788\uC2B5\uB2C8\uB2E4. \uC791\uC131\uD55C\uD15C\uD50C\uB9BF\uC5D0\uC11C\uC0AC\uC6A9\uD558\uACE0\uC788\uB294\uC124\uACC4\uAE30\uBC84\uC804\uC774\uB2F9\uC2E0\uC758\uCD5C\uC885\uC124\uCE58\uC11C\uBC84\uBC84\uC804\uBCF4\uB2E4\uB192\uC744\uACBD\uC6B0\uC11C\uBC84\uB294\uB2F9\uC2E0\uC774\uC791\uC131\uD55C\uD15C\uD50C\uB9BF\uC744\uB85C\uB529\uD558\uC9C0\uBABB\uD560\uC218\uC788\uC2B5\uB2C8\uB2E4. +Actions=\uD0DC\uC2A4\uD06C +FR-Designer-Dependence_Connect_Server_Error=connect error +High=\uB192\uC774 +HJS-Send_Failed=\uBC1C\uC1A1\uC2E4\uD328 +HJS-Message=\uB0B4\uC6A9 +File-Allow_Upload_Files=\uC5C5\uB85C\uB4DC\uD5C8\uC6A9\uD30C\uC77C\uC720\uD615 +FR-Designer-Form-ToolBar_Chart=\uCC28\uD2B8 +Thick_Bottom_Border_Line=\uAD75\uC740\uBC11\uC904\uD14C\uB450\uB9AC\uC120 +FR-Action_Remove=\uC0AD\uC81C +FRFont-Style=\uD3F0\uD2B8 +Select_DataColumn=\uB370\uC774\uD130\uC5F4\uC120\uD0DD +StartValue=\uC2DC\uC791\uAC12 +SINGLE_FILE_UPLOAD=\uD55C\uAC1C\uD30C\uC77C\uC5C5\uB85C\uB4DC\uB9CC\uC9C0\uC6D0\uD569\uB2C8\uB2E4. +BackgroundTexture-Cork=\uCF54\uB974\uD06C\uB9C8\uAC1C +M_Format-Data_Map=\uB370\uC774\uD130\uC0AC\uC804 +FR-mobile_native_analysis=\uC6D0\uC0DD \uD574\uC11D +HighLight=\uD558\uC774\uADF8\uB85C\uC2DC +FR-Designer_Dropdown-More-Preview=\uC544\uB798\uB85C \uB4DC\uB798\uADF8\uD558\uBA74 \uB354 \uB9CE\uC740 \uBBF8\uB9AC\uBCF4\uAE30 \uBC29\uC2DD\uC774 \uB098\uC635\uB2C8\uB2E4. +local=\uB85C\uCEEC +FR-Designer_Gradation=\uB2E8\uACC4 +PageSetup-Finis_Start_Column=\uC911\uBCF5\uC885\uB8CC\uC5F4 +Env-Invalid_User_and_Password=\uC62C\uBC14\uB974\uC9C0\uC54A\uC740\uC0AC\uC6A9\uC790\uC774\uB984\uB610\uB294\uC554\uD638 +FR-Designer-Plugin_All_Plugins=\uBAA8\uB450\uD50C\uB7EC\uADF8\uC778 +FR-Designer_Prepare_Export=\uB0B4\uBCF4\uB0B4\uAE30\uB97C\uC2DC\uC791\uD558\uB2C8\uC7A0\uC2DC\uB9CC\uAE30\uB2E4\uB824\uC8FC\uC2ED\uC2DC\uC624. +DBCP_TEST_ON_RETURN=\uB9C1\uD06C\uADC0\uD658\uC804\uAC80\uC0AC\uC9C4\uD589 +no-alternatives=\uC120\uD0DD\uD55C\uD56D\uBAA9\uC774\uC5C6\uC2B5\uB2C8\uB2E4. +FR-Designer_Submmit_WClass=\uBC31\uADF8\uB77C\uC6B4\uB4DC\uD074\uB798\uC2A4\uC81C\uCD9C +M_Insert-Slope_Line=\uC0AC\uC120\uC0BD\uC785 +FR-Designer-Plugin_Plugin_Description=\uD50C\uB7EC\uADF8\uC778\uC124\uBA85 +ExpandD-Not_Expand=\uD655\uC7A5\uD558\uC9C0\uC54A\uC74C +Utils-Bottom_to_Top=\uC544\uB798\uC11C\uC704\uB85C +Collect-Click\!_Get_user_information_code=\!\uB97C\uD074\uB9AD\uD558\uC5EC\uD65C\uC131\uCF54\uB4DC\uB97C\uC5BB\uC2B5\uB2C8\uB2E4. +FR-Already_exist=\uD604\uC7AC\uD658\uACBD\uC774\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4\: +Send=\uBC1C\uC1A1 +M_Edit-Clear_All=\uBAA8\uB450 (A) +Brown_Orange=\uC605\uC740\uAC08\uC0C9 +PageSetup-Portrait=\uC138\uB85C +FR-Designer_Form-RadioGroup=\uB2E8\uC77C\uC120\uD0DD\uD0A4\uD328\uB4DC +FR-Utils-App_AllFiles=\uBAA8\uB4E0\uD30C\uC77C +Popup=\uD31D\uC5C5 +Server_Charset=\uC11C\uBC84\uCF54\uB529 +CellWrite-Repeat_Content_When_Paging=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uB85C\uB098\uB20C\uB54C\uAC12\uC911\uBCF5\uBCF4\uC774\uAE30 +Utils-No_Pagination=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uB97C\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. +Form-NullLayout=\uC808\uB300\uC801\uC704\uCE58 +ConditionB-Remove_bracket=\uAD04\uD638\uC0AD\uC81C +email=\uBA54\uC77C +Minute=\uBD84 +FR-Designer-Plugin_Update=\uD50C\uB7EC\uADF8\uC778\uC5C5\uB370\uC774\uD2B8 +alraedy_close=\uB2EB\uD614\uC2B5\uB2C8\uB2E4. +ComboCheckBox-End_Symbol=\uC885\uB8CC\uBD80\uD638 +DataColumn=\uB370\uC774\uD130\uC5F4 +Form-Password=\uC554\uD638 +FR-Background_Image_Adjust=\uC801\uC6A9 +Export-Excel-PageToSheet=\uD398\uC774\uC9C0\uC640 Sheet\uB098\uB204\uC5B4\uB0B4\uBCF4\uB0B4\uAE30 +Edit-Row_Count=\uD589\uC218 +DS-Report_TableData=\uD15C\uD50C\uB9BF\uB370\uC774\uD130\uC138\uD2B8 +Sche-Hour=\uC2DC +Group_Count=\uCD1D\uAC1C\uC218\uB97C\uB098\uD0C0\uB0B8\uB2E4. +EndValue=\uC885\uB8CC\uAC12 +FR-Designer_Sytle-Indentation=\uB4E4\uC5EC\uC4F0\uAE30 +DownBarBorderStyleAndColor=\uB4DC\uB86D\uCE7C\uB7FC\uC591\uC2DD +World=\uC6D4\uB4DC +FR-Designer-Basic_Cancel=\uCDE8\uC18C +Finally=\uB9C8\uC9C0\uB9C9 +Low=\uB0AE\uC74C +Please_Input_The_Key=\uD574\uB2F9\uB9F5\uC5D0\uC11C\uC0AC\uC6A9\uD558\uB294key\uB97C\uC785\uB825\uD574\uC8FC\uC2ED\uC2DC\uC624 +Smart=\uC2A4\uB9C8\uD2B8 +Preference-Predefined=\uC0AC\uC804\uC815\uC758\uB41C +Current_custom_global=\uD604\uC7AC\uBB38\uC11C\uC5D0\uC11C\uC0AC\uC6A9\uD558\uB294\uC0AC\uC6A9\uC790\uC815\uC758\uC758\uBAA8\uB4E0\uC591\uC2DD +FR-Designer-Plugin_Shop_Need_Install=\uB2F9\uC2E0\uC740 \uCD94\uAC00 \uAE30\uB2A5\uB418\uC9C0 \uC54A\uC740 \uC790\uC6D0\uC758 \uC800\uC7A5\uC18C\uB97C \uB2E4\uC6B4\uB85C\uB4DC \uD560 \uAC83\uC778\uC9C0? +WEB-Pagination_Setting=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uBBF8\uB9AC\uBCF4\uAE30\uC124\uC815 +RCodeDrawPix=\uD654\uC18C +FR-Designer-Widget-Style_Alpha=\uBD88\uD22C\uBA85\uB3C4 +BorderLayout-North=\uBD81 +HJS-Current_Page=\uD604\uC7AC\uD398\uC774\uC9C0 +Compile=\uCEF4\uD30C\uC77C +Show_Blank_Row=\uACF5\uBC31\uD589\uBCF4\uCDA9 +TableData_Dynamic_Parameter_Setting=\uB3D9\uC801\uD30C\uB77C\uBBF8\uD130\uC8FC\uC785 +FR-Background_Image_Default=\uAE30\uBCF8 +BackgroundTexture-WhiteMarble=\uD770\uC0C9\uB300\uB9AC\uC11D +DataFunction-Sum=\uD569\uAD6C\uD558\uAE30 +Collect-The_user_information_code_is_invalid=\uB4F1\uB85D\uB418\uC5B4\uC788\uC9C0\uC54A\uC740\uD65C\uC131\uCF54\uB4DC\uC785\uB2C8\uB2E4.\uD648\uD398\uC774\uC9C0\uC5D0\uC11C\uC2E0\uCCAD\uD574\uC8FC\uC2ED\uC2DC\uC624. +Preference-Locale=\uAD6D\uC81C\uD654 +M_File-Export-PDF=PDF\uC11C\uC2DD +BiasD-From-lower_left_to_upper_right=\uC67C\uCABD\uD558\uB2E8\uC5D0\uC11C\uC624\uB978\uCABD\uC704\uB85C\uB098\uD0C0\uB0B4\uAE30 +Border-Style=\uD14C\uB450\uB9AC\uC591\uC2DD +Sort=\uC21C\uC11C +Image-Image_Layout=\uC774\uBBF8\uC9C0\uB808\uC774\uC544\uC6C3 +Panel=\uD328\uB110 +FR-Designer-Basic_Copy_Build_NO_OK=\uC0DD\uC131\uBC84\uC804\uBC88\uD638\uAC00\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uBCF5\uC0AC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +All_Border_Line=\uBAA8\uB4E0\uD14C\uB450\uB9AC\uC120 +FR-Utils-Please_Input_a_New_Name=\uC0C8\uB85C\uC6B4\uC774\uB984\uC744\uC785\uB825\uD574\uC8FC\uC2ED\uC2DC\uC624. +FR-Base_Formula_Plugin=\uD50C\uB7EC\uADF8\uC778\uD568\uC218 +Two_Rows_Of_Three_Grid=2\uD589 3\uC5F4\uC758\uADF8\uB9AC\uB4DC +FR-Designer_Certificate_Pass=https\uBE44\uBC00\uD0A4 +Bubble-Series_Name=\uACC4\uC5F4\uBA85 +M-New_Multi_Report=\uC0C8\uCDE8\uD569\uBB38\uC11C (M) +BackgroundTexture-PinkTissuePaper=\uD551\uD06C\uC0AC\uD3EC +Preference-Support_Default_Parent_Calculate=\uAE30\uBCF8\uBD80\uBAA8\uC140\uACC4\uC0B0 +Show_Blank_Column=\uACF5\uBC31\uC5F4\uBCF4\uCDA9 +BaiduMap=\uBC14\uC774\uB450\uC9C0\uB3C4 +Report-Web_Attributes=\uD15C\uD50C\uB9BFWeb \uC18D\uC131 +FR-Designer_StyleAlignment-Wrap_Text=\uC790\uB3D9\uD589\uBC14\uAFB8\uAE30 +Need=\uD544\uC694 +Parameter-Double=\uB354\uBE14\uC815\uB3C4\uD0C0\uC785 +Config_Servlet=\uC6D0\uACA9\uC11C\uBC84\uAD6C\uC131 +Form-Comma=\uC27C\uD45C +Verify=\uAC80\uC0AC +PageSetup-Landscape=\uAC00\uB85C +Weeks=\uC694\uC77C +FR-Designer-Widget-Style_Title_Background=\uC81C\uBAA9\uBC30\uACBD +Preference-Pagination_Line_Color=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uC120\uC0C9 +Test_URL=\uD14C\uC2A4\uD2B8\uB9C1\uD06C +Fill_blank_Data=\uACF5\uBC31\uB370\uC774\uD130\uBCF4\uCDA9 +ReportServerP-The_name_of_printer_cannot_be_null=\uD504\uB9B0\uD130\uC758\uC774\uB984\uC740\uBE48\uCE78\uC73C\uB85C\uB458\uC218\uC5C6\uC2B5\uB2C8\uB2E4. +FR-Designer-Basic_Copy_Activation_Key=\uC124\uACC4\uAE30\uC77C\uB828\uBC88\uD638\uB97C\uB354\uBE14\uD074\uB9AD\uD558\uBA74,\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uBCF5\uC0AC\uB429\uB2C8\uB2E4. +Continuum=\uC774\uC6C3\uC5F0\uC18D +BackgroundTexture-MediumWood=\uC9D9\uC740\uB098\uBB34\uC7AC\uC9C8 +Datasource-Column_Index=\uC5F4\uBC88\uD638 +Function-Function_File=\uD568\uC218\uD30C\uC77C +Form-Component_Bounds=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uACBD\uACC4\uC120 +Utils-Submit=\uC81C\uCD9C +Conditions_formula=\uC870\uAC74\uC218\uC2DD +M_Insert-Image=\uC774\uBBF8\uC9C0\uC0BD\uC785 +FR-Designer-Plugin_Will_Be_Delete=\uD50C\uB7EC\uADF8\uC778\uC774\uC0AD\uC81C\uB429\uB2C8\uB2E4.\uC124\uACC4\uAE30\uBC0F\uC11C\uBC84\uB97C\uC7AC\uBD80\uD305\uD558\uB824\uBA74\uC11C\uBC84\uB97C\uC218\uB3D9\uC7AC\uBD80\uD305\uD574\uC57C\uD569\uB2C8\uB2E4. +FormulaD-Functions=\uD568\uC218 +Mobile_Terminal=\uBAA8\uBC14\uC77C\uB2E8\uB9D0 +CheckBox=\uCCB4\uD06C\uBC15\uC2A4 +FR-Designer-Plugin_Install=\uC124\uCE58 +Sun=\uC77C +FR-Designer_ToolBar_Bottom=\uD558\uB2E8\uD234\uBC14 +Widget-Width=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uB108\uBE44 +Series_Name=\uACC4\uC5F4\uBA85 +Set_Row_Title_Start=\uC911\uBCF5 \uD0C0\uC774\uD2C0 \uD589 \uC124\uC815 +HF-Default_Page=\uAE30\uBCF8\uD398\uC774\uC9C0 +Env_Des=\uB85C\uADF8\uC778\uD658\uACBD\uC911\uC758\uBB38\uC11C\uD504\uB85C\uC81D\uD2B8\uC5D0\uC11C\uAD8C\uD55C\uC0AC\uC6A9\uC744\uC2DC\uC791\uD588\uC744\uACBD\uC6B0\uC0AC\uC6A9\uC790\uC774\uB984\uACFC\uC554\uD638\uB294\uD574\uB2F9\uB85C\uADF8\uC778\uD658\uACBD\uC758\uC0AC\uC6A9\uC790\uC640\uC554\uD638\uB97C\uAE30\uC785\uD574\uC57C\uD569\uB2C8\uB2E4. +Widget-User_Defined=\uC0AC\uC804\uC815\uC758\uB41C +Url_location=\uC808\uB300\uACBD\uB85C +Disk_File=\uB514\uC2A4\uD06C\uD30C\uC77C +Inside=\uB0B4\uBD80 +FR-Designer_filedChosen= +ServerM-Predefined_Styles=\uC0AC\uC804\uC815\uC758\uB41C\uC591\uC2DD +is_need_word_adjust=\uBE44\uACE0\uC815\uD589\uB192\uC774\uB0B4\uBCF4\uB0B4\uAE30 +Background-Null=\uBC30\uACBD\uC5C6\uC74C +PageSetup-Vertically=\uC218\uC9C1\uAC00\uC6B4\uB370\uC815\uB82C +FR-Designer_Root=\uB8E8\uD2B8\uB178\uB4DC +FR-Designer_Form-TextArea=\uD14D\uC2A4\uD2B8\uC601\uC5ED +ReportServerP-Import_JavaScript=JavaScript\uC778\uC6A9 +Form-TableTree=\uC2DC\uD2B8\uD2B8\uB9AC +Opened=\uC5F4\uB824\uC788\uC2B5\uB2C8\uB2E4. +M_Edit-Delete=\uC0AD\uC81C(D) +Widget-Form_Widget_Container=\uD3FC\uCEE8\uD14C\uC774\uB108 +BindColumn-Summary=\uCDE8\uD569 +Sche-Second=\uCD08 +Server-Open_Service_Manager=\uC11C\uBE44\uC2A4\uAD00\uB9AC\uC790\uC5F4\uAE30 +FRFont-Effects=\uD2B9\uC218\uD6A8\uACFC +OtherGroup_Name=\uAE30\uD0C0\uADF8\uB8F9\uC774\uB984 +Specify=\uC9C0\uC815 +Highlight-Click_to_Choose_Property_To_Modify=\uBC14\uAFB8\uB824\uB294\uC18D\uC131\uC120\uD0DD\uD074\uB9AD +triggered=\uD2B8\uB9AC\uAC70\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +Double_Bottom_BorderLine=\uC774\uC911\uBC14\uB2E5\uD14C\uB450\uB9AC\uC120 +M_Insert-Sub_Report=\uBB38\uC11C\uC548\uC758\uBB38\uC11C\uC0BD\uC785 +Unit_Ten=10 +Polybolck=\uCDE8\uD569\uBE14\uB7ED +Select_sort_order=\uC815\uB82C\uC21C\uC11C\uC120\uD0DD +HJS-Mail_to=\uC218\uC2E0\uC778 +StyleAlignment-Left=\uC67C\uCABD\uC5D0\uB9DE\uCDA4 +Two_Rows_Of_Two_Grid=2\uD589 2\uC5F4\uC758\uADF8\uB9AC\uB4DC +FR-Designer-Form-Please_Drag_ParaPane=\uB9E4\uAC1C\uBCC0\uC218\uD328\uB110\uC744\uB4DC\uB798\uADF8\uD574\uC8FC\uC2ED\uC2DC\uC624. +Milliseconds=\uBC00\uB9AC\uCD08 +DataFunction-None=\uC5C6\uC74C +Delivery=\uC804\uB2EC +ColumnSpan=\uC5F4\uC2A4\uD32C +StyleAlignment-Bottom=\uC544\uB798\uC5D0\uB9DE\uCDA4 +Read_failure=\uC77D\uAE30\uC2E4\uD328\uFF0C \uC18C\uC2A4\uD30C\uC77C\uC774\uC190\uC0C1\uB418\uC5C8\uC2B5\uB2C8\uB2E4. +Verify-Verify=\uB370\uC774\uD130\uAC80\uC0AC +FR-Designer-Widget-Style_Title_Format=\uC81C\uBAA9\uC11C\uC2DD +FR-Designer_Edit_String_To_Formula=\uBB38\uC790\uC5F4\uC744\uC218\uC2DD\uC73C\uB85C\uD3B8\uC9D1\uD558\uACA0\uC2B5\uB2C8\uAE4C? +FR-Base_UnSignIn=\uC544\uC9C1 \uB4F1\uB85D +Every=\uAC01 +CellWrite-Preview_Cell_Content=\uC140\uB0B4\uC6A9\uBBF8\uB9AC\uBCF4\uAE30 +FormulaD-Data_Fields=\uB370\uC774\uD130\uD56D\uBAA9 \ No newline at end of file diff --git a/designer_base/src/com/fr/design/locale/designer_zh_CN.properties b/designer_base/src/com/fr/design/locale/designer_zh_CN.properties index f0e7eb176..64aff3d0f 100644 --- a/designer_base/src/com/fr/design/locale/designer_zh_CN.properties +++ b/designer_base/src/com/fr/design/locale/designer_zh_CN.properties @@ -520,7 +520,6 @@ FR-Designer_Create_Tree=\u6784\u5EFA\u6811 FR-Designer_Set_Callback_Function=\u8BBE\u7F6E\u56DE\u8C03\u51FD\u6570 FR-Designer_ConfirmDialog_Content=\u662F\u5426\u786E\u5B9A\u5220\u9664tab\u63A7\u4EF6 FR-Designer_ConfirmDialog_Title=FineReport 8.0 - FR-Designer_FormulaPane_Tips=\u63D0\u793A\:\u60A8\u53EF\u4EE5\u901A\u8FC7\u8F93\u5165B1\u6765\u5199\u5165\u7B2C\u4E00\u884C\u7B2C\u4E8C\u5217\u7684\u6570\u636E\u3002 FR-Designer_FormulaPane_Variables=\u53D8\u91CF FR-Designer_FormulaPane_Formula_Description=\u516C\u5F0F\u8BF4\u660E @@ -529,13 +528,11 @@ FR-Designer_FormulaPane_Search=\u641C\u7D22 FR-Designer_Tab_carousel=tab\u8F6E\u64AD FR-Designer_setCarousel=\u5F00\u542F\u8F6E\u64AD FR-Designer_carouselInterval=\u8F6E\u64AD\u95F4\u9694 - FR-Designer_ClassName_panel=\u7C7B\u540D FR-Designer_Description_panel=\u63CF\u8FF0 FR-Designer_Edit_panel=\u7F16\u8F91 FR-Designer_Property_panel=\u5C5E\u6027 FR-Designer_Select_panel=\u9009\u62E9 - FR-Designer_LayoutTable_Column_Width=160 FR-Designer_Set_BG_Of_Current_Row=\u586B\u62A5\u5F53\u524D\u7F16\u8F91\u884C\u80CC\u666F\u8BBE\u7F6E FR-Designer_Unload_Check=\u672A\u63D0\u4EA4\u79BB\u5F00\u63D0\u793A @@ -551,7 +548,6 @@ FR-Designer_PageSetup_Page=\u9875\u9762 FR-Designer_Custom_Job_Description=\u63CF\u8FF0 FR-Designer_Property=\u5C5E\u6027 FR-Designer_ClassName=\u7C7B\u540D - FR-Designer_Polyblock_Edit=\u805A\u5408\u5757\u7F16\u8F91 FR-Designer_Function_Description_Area_Text=\u8BE5\u7C7B\u5FC5\u987B\u7EE7\u627F"com.fr.script.AbstractFunction"\u3002\u5E94\u5C06\u7F16\u8BD1\u540E\u7684\u7C7B\u6587\u4EF6\u62F7\u8D1D\u5230\nJ2EE\u670D\u52A1\u5668 "{R1}" \u76EE\u5F55\uFF0C\u5982\u679C\u5FC5\u8981\u7684\u8BDD\u5C06class\u5BF9\u5E94\u7684java\u6E90\u6587\u4EF6\u4E5F\u653E\u7F6E\u5230\u8BE5\u76EE\u5F55\u4E0B\u65B9\u4FBF\u7F16\u8F91\u548C\u67E5\u770B\u3002\n\u4F8B\u5982\uFF1A{R2} FR-Designer_PageSetup_Horizontal=\u6A2A\u5411 @@ -588,7 +584,1406 @@ FR-Designer_Background_Image_Select=\u9009\u62E9\u56FE\u7247 FR-Designer_Initial_Background_Tips=\u6309\u94AE\u7684\u521D\u59CB\u80CC\u666F FR-Designer_Mouse_Move_Tips=\u9F20\u6807\u79FB\u52A8\u5230\u6309\u94AE\u4E0A\u7684\u80CC\u666F\uFF0C\u82E5\u65E0\u5219\u4E0D\u6539\u53D8\u80CC\u666F FR-Designer_Mouse_Click_Tips=\u9F20\u6807\u70B9\u51FB\u6309\u94AE\u65F6\u80CC\u666F\uFF0C\u82E5\u65E0\u5219\u4E0D\u6539\u53D8\u80CC\u666F +FR-Designer_Too_Large_To_Paste=\u7EC4\u4EF6\u5927\u5C0F\u8D85\u51FA\u8FB9\u754C\uFF0C\u65E0\u6CD5\u7C98\u8D34\uFF01 +FR-Designer_Too_Small_To_Paste=\u6B64\u5904\u65E0\u6CD5\u7C98\u8D34\uFF0C\u5C0F\u4E8E\u7EC4\u4EF6\u6700\u5C0F\u9AD8\u5EA6\uFF01 FR-Designer_AxisReversed=\u8F74\u9006\u5E8F FR-Designer_Logarithmic=\u5BF9\u6570\u523B\u5EA6 FR-Designer_Chart_Log_Base=\u5E95\u6570 -FR-Designer_Chart_F_Radar_Axis=\u503C\u8F74 \ No newline at end of file +FR-Designer_Chart_F_Radar_Axis=\u503C\u8F74 +FR-Designer_Style=\u6837\u5F0F +FR-Designer_Color=\u989C\u8272 +FR-Designer_Border=\u8FB9\u6846 +FR-Designer_Background-Pattern=\u56FE\u6848 +FR-Designer_Edit_Button_ToolBar=\u7F16\u8F91\u6309\u94AE\u6240\u5728\u5DE5\u5177\u680F +FR-Designer_Remove_Button_ToolBar=\u79FB\u9664\u6309\u94AE\u6240\u5728\u5DE5\u5177\u680F +CellWrite-InsertRow_NULL=\u7A7A\u503C +DashBoard-ChartFloat=\u56FE\u8868 +contact_info=\u8054\u7CFB\u4FE1\u606F(\u9009\u586B) +Page_Setup=\u9875\u9762\u8BBE\u7F6E +CellWrite-Print_Export=\u6253\u5370\u5BFC\u51FA +Cannot_Get_Date=\u4E0D\u80FD\u83B7\u53D6\u65E5\u671F +FR-Designer_Modify=\u4FEE\u6539 +M-Write_Preview=\u586B\u62A5\u9884\u89C8 +FR-Base_RWA-Key=\u4E3B\u952E +China=\u4E2D\u56FD +Set_Legend_Sytle=\u8BBE\u7F6E\u56FE\u4F8B\u683C\u5F0F +FR-Designer_Number=\u6570\u5B57 +FR-Designer-Widget-Style_Common=\u666E\u901A +M-Save_As=\u53E6\u5B58\u4E3A +Following_parameters_are_not_generated=\u4EE5\u4E0B\u53C2\u6570\u672A\u751F\u6210 +FR-Designer-Basic_Activation_Key_Copy_OK=\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F +Utils-Current_Sheet=\u5F53\u524DSheet +ConditionB-is_less_than=\u5C0F\u4E8E +BorderLayout-West=\u897F +AnalysisLine=\u5206\u6790\u7EBF +Layer_Report_Warnning_info=\u884C\u5F0F\u5F15\u64CE\u9002\u7528\u4E8E\u5927\u6570\u636E\u91CF\u60C5\u5F62\u4E0B\u3002
\u4F7F\u7528\u6B64\u5F15\u64CE\u5F88\u591A\u62A5\u8868\u7279\u6027\u5C06\u4E0D\u518D\u652F\u6301\uFF0C
\u8BE6\u7EC6\u5185\u5BB9\u8BF7\u67E5\u770B\u6587\u6863\u76F8\u5173\u7AE0\u8282\u3002 +Tree-Width=\u5BBD\u5EA6 +alert_word=\u9009\u62E9\u4E0D\u56FA\u5B9A\u884C\u9AD8\u5BFC\u51FA\u65F6, \u7F16\u8F91\u5BFC\u51FA\u7684word, \u5355\u5143\u683C\u884C\u9AD8\u4F1A\u968F\u7740\u5185\u5BB9\u81EA\u52A8\u62C9\u4F38, \u6B64\u60C5\u51B5\u4E0B\u5BFC\u51FA\u7ED3\u679C\u5206\u9875\u4F4D\u7F6E\u4E0E\u9884\u89C8\u7ED3\u679C\u53EF\u80FD\u4F1A\u4E0D\u518D\u4E00\u81F4. +PageSetup-Paper_Size=\u7EB8\u5F20\u5927\u5C0F +M-Page_Setup=\u9875\u9762\u8BBE\u7F6E +DashBoard-FormBook=\u8868\u5355 +X-Coordinate=\u6A2A\u5750\u6807 +Style-Line_Spacing=\u884C\u95F4\u8DDD +FR-Designer_Plugin_Should_Update_Title=\u63D2\u4EF6\u5347\u7EA7\u63D0\u9192 +Server-Define_Data_Connection=\u5B9A\u4E49\u6570\u636E\u8FDE\u63A5 +BarInside=\u67F1\u5B50\u5185\u4FA7 +Border-Color=\u8FB9\u6846\u989C\u8272 +NotAllow=\u4E0D\u5408\u6CD5 +Utils-File_type=\u6587\u4EF6\u7C7B\u578B +FR-Designer-Plugin_Install_From_Local=\u4ECE\u672C\u5730\u6587\u4EF6\u5B89\u88C5 +Summary_Method=\u6C47\u603B\u65B9\u5F0F +Select_Specified_Grouping=\u9009\u62E9\u81EA\u5B9A\u4E49\u5206\u7EC4 +HF-Number_of_Page=\u603B\u9875\u6570 +FR-Designer-Tree_Height=\u9AD8\u5EA6 +Owner=\u4E3B +Home=\u4E3B\u9875 +FR-Server_Embedded_Server_Stop=\u5167\u7F6E\u7684\u670D\u52A1\u5668-\u505C\u6B62 +FR-Designer-Plugin_Detecting_Update=\u6B63\u5728\u68C0\u6D4B\u66F4\u65B0 +HF-Whether_to_define_the_selected_type=\u662F\u5426\u5B9A\u4E49\u9009\u4E2D\u7684\u7C7B\u578B +StyleAlignment-Right=\u9760\u53F3 +FR-Designer_Alignment-Style=\u5BF9\u9F50\u65B9\u5F0F +PageSetup-Title_Start_Column=\u91CD\u590D\u6807\u9898\u5217 +Tree-Mutiple_Selection_Or_Not=\u591A\u9009 +FR-Designer-Plugin_Search=\u641C\u7D22 +Choose_Role=\u6743\u9650\u63A7\u5236 +Append_Delete_Row_Message=\u6CE8\u610F\uFF01\u6307\u5B9A\u7684\u5355\u5143\u683C\u9700\u8981\u8BBE\u7F6E\u6269\u5C55\u5C5E\u6027 +Form-ComboBox=\u4E0B\u62C9\u6846 +PageSetup-Footer=\u9875\u811A +Sorting=\u6392\u5E8F\u4E2D +DBCP_TEST_WHILE_IDLE=\u5F00\u542F\u7A7A\u95F2\u56DE\u6536\u5668\u68C0\u9A8C +DS-Embedded_TableData=\u5185\u7F6E\u6570\u636E\u96C6 +FR-Designer_No-Privilege=\u6CA1\u6709\u6743\u9650 +FRFont-Subscript=\u4E0B\u6807 +Background_Settings=\u80CC\u666F\u8BBE\u7F6E +FormulaD-Invalid_Formula=\u975E\u6CD5\u7684\u516C\u5F0F +FR-Base_Margin=\u8FB9\u8DDD +FR-Designer-Plugin_Shop_Installed=\u63D2\u4EF6\u5546\u5E97\u5B89\u88C5\u5B8C\u6BD5,\u662F\u5426\u7ACB\u523B\u542F\u52A8? +M_Edit-Send_to_Back=\u7F6E\u4E8E\u5E95\u5C42(K) +Email-Can_Preview_Report_Content=\u6B63\u6587\u9884\u89C8\u62A5\u8868\u5185\u5BB9 +FR-Designer-FRFont_Italic=\u503E\u659C +CellWrite-Print_Background=\u6253\u5370/\u5BFC\u51FA\u5355\u5143\u683C\u80CC\u666F +Wizard=\u5411\u5BFC +Preference-Is_Drag_Permited=\u652F\u6301\u62D6\u62FD +FR-Designer_Release_Lock=\u89E3\u9501 +Form-Delimiter=\u5206\u9694\u7B26 +wrong=\u51FA\u9519\u4E86 +FR-Menu-Server_Chart_PreStyle=\u56FE\u8868\u9884\u5B9A\u4E49\u914D\u8272 +Form-Button=\u6309\u94AE +FormulaD-Valid_Formula=\u5408\u6CD5\u7684\u516C\u5F0F +ParameterD-Parameter_Interface=\u53C2\u6570\u754C\u9762 +At_least_one_visual_worksheet=\u5DE5\u4F5C\u7C3F\u4E2D\u81F3\u5C11\u8981\u6709\u4E00\u5F20\u53EF\u89C6\u5316\u5DE5\u4F5C\u8868,\u5982\u679C\u60F3\u8981\u5220\u9664\uFF0C\u8BF7\u5148\u63D2\u5165\u4E00\u5F20\u65B0\u5DE5\u4F5C\u8868 +Need_Min_Value=\u9700\u8981\u6700\u5C0F\u503C +Allow_Blank=\u5141\u8BB8\u4E3A\u7A7A +CellWrite-InsertRow_DEFAULT=\u9ED8\u8BA4\u503C +Widget-Load_By_Complete=\u5B8C\u5168\u52A0\u8F7D +FR-Designer-Basic_Only_Submit_Current_Sheet=\u53EA\u63D0\u4EA4\u5F53\u524Dsheet +Sort-Sort_Order=\u6392\u5217\u987A\u5E8F +File-File_Size_Limit=\u6587\u4EF6\u5927\u5C0F\u9650\u5236 +PrintP-Print=\u6253\u5370(T) +FR-Designer-StyleAlignment_Center=\u5C45\u4E2D +Preference-Setting_Colors=\u989C\u8272\u8BBE\u7F6E +Judge=\u5224\u65AD +Image-Adjust=\u9002\u5E94 +Collect-User_Information_DES=\u6FC0\u6D3B\u7801\u53EA\u662F\u7528\u6765\u6536\u96C6\u4F7F\u7528\u8005\u4FE1\u606F\u7684\uFF0C\u53EA\u8981\u70B9\u51FB\u4E0A\u9762\u7684"\u83B7\u53D6\u6FC0\u6D3B\u7801"\u6309\u94AE\uFF0C\u5C31\u4F1A\u5F39\u51FA\u4E00\u4E2A\u65B0\u7684\u6D4F\u89C8\u5668\u7A97\u4F53\uFF0C\u767B\u5F55\u5230\u4EA7\u54C1\u5B98\u65B9\u7F51\u7AD9\u83B7\u5F97\u8FD9\u4E2A\u6FC0\u6D3B\u7801\uFF0C\u6574\u4E2A\u8FC7\u7A0B\u53EA\u9700\u89813\u5206\u949F\uFF0C\u53EA\u9700\u8981\u64CD\u4F5C\u4E00\u6B21\uFF0C\u800C\u4E14\u5B8C\u5168\u514D\u8D39\u3002 +FR-Designer_Plugin_Normal_Update_From_Local=\u4ECE\u672C\u5730\u6587\u4EF6\u66F4\u65B0 +BackgroundTexture-Canvas=\u753B\u5E03 +BarOutSide=\u67F1\u5B50\u5916\u4FA7 +Preview_ToolTips=\u9884\u89C8\u63D0\u793A +FRFont-Family=\u540D\u5B57 +FR-Lic_does_not_Support_Remote=\u60A8\u5F53\u524D\u4F7F\u7528\u7684lic\u4E0D\u652F\u6301\u8FDC\u7A0B\u8BBE\u8BA1\u529F\u80FD\uFF0C\u8BF7\u5347\u7EA7\u60A8\u7684lic +InterfaceStyle=\u98CE\u683C +RWA-Key=\u4E3B\u952E +WF-Name=\u540D\u79F0 +RWA-Click_Cell_To_Edit_Value=\u5355\u51FB\u6A21\u677F\u5355\u5143\u683C\u4FEE\u6539\u503C +Utils-Row_Height=\u884C\u9AD8 +ReportD-Excel_Export=\u6A21\u677F\u5BFC\u51FA\u5C5E\u6027 +Form-Please_Select_A_Kind_Of_Form_Container=\u8BF7\u9009\u62E9\u4E00\u79CD\u8868\u5355\u5BB9\u5668 +Column_Does_Not_Exsit=\u5217\u4E0D\u5B58\u5728 +M_Insert-Hyperlink=\u8D85\u7EA7\u94FE\u63A5 +can_not_include_underline=\u4E0D\u80FD\u5305\u542B"_" +FR-Designer-Plugin_Jar_Expired=Jar\u5305\u8FC7\u65E7 +FR-Background_Image_Extend=\u62C9\u4F38 +TopDownShade=\u4E0A\u4E0B\u6E10\u53D8 +FR-Base_Right=\u53F3 +DataBinding=\u6570\u636E\u7ED1\u5B9A +ConnectionPool_Attr=\u8FDE\u63A5\u6C60\u5C5E\u6027 +Connect_SQL_Cannot_Null=\u6570\u636E\u8FDE\u63A5\u548CSQL\u9762\u677F\u4E0D\u80FD\u4E3A\u7A7A +DBCP_MAX_ACTIVE=\u6700\u5927\u6D3B\u52A8\u8FDE\u63A5\u6570 +M_Window-Preference=\u9009\u9879 +ToolBar_Top=\u9876\u90E8\u5DE5\u5177\u680F +FR-Designer_Indent-Pixel=\u50CF\u7D20 +FR-Designer_Unit_MM=\u6BEB\u7C73 +IDLE=\u7A7A\u95F2 +FRFont-Underline=\u4E0B\u5212\u7EBF +FR-Designer-Plugin_Read_Plugin_List_Error=\u53BB\u8BFB\u63D2\u4EF6\u5217\u8868\u65F6\u53D1\u751F\u9519\u8BEF +Type_Set=\u7C7B\u578B\u8BBE\u7F6E +M_Format_A-Cell_Attributes=\u5176\u4ED6\u5C5E\u6027 +CellWrite-Show_As_Image=\u7528\u56FE\u7247\u663E\u793A\u5185\u5BB9 +ShowAsDownload=\u7528\u4E0B\u8F7D\u94FE\u63A5\u663E\u793A\u4E8C\u8FDB\u5236\u5185\u5BB9 +Form-ComboCheckBox=\u4E0B\u62C9\u590D\u9009\u6846 +BackgroundTexture-WovenMat=\u7F16\u7EC7\u7269 +BindColumn-Custom_Data_Appearance=\u81EA\u5B9A\u4E49\u663E\u793A +Actived=\u6D3B\u52A8\u7684 +Env-Local_Directory=\u672C\u5730\u76EE\u5F55 +Form-Colon=\u5192\u53F7 +Preference-Vertical_Scroll_Bar_Visible=\u7AD6\u76F4\u6EDA\u52A8\u6761\u53EF\u89C1 +Utils-Show_Cell_Value=\u663E\u793A\u5355\u5143\u683C\u503C +FR-Designer_ReportColumns-Repeat_Row=\u590D\u5236\u884C\u5E8F\u5217 +SpecifiedG-Specified_Group=\u81EA\u5B9A\u4E49\u5206\u7EC4 +RWA-Smart_Add_Cells=\u667A\u80FD\u6DFB\u52A0\u5355\u5143\u683C +HF-Left_Section=\u5DE6\u533A\u57DF +M_Report-Report_Background=\u7EB8\u5F20\u80CC\u666F +Image-Extend=\u62C9\u4F38 +FS_BI=\u51B3\u7B56\u5E73\u53F0 +ToolBar_Bottom=\u5E95\u90E8\u5DE5\u5177\u680F +Hgap=\u6C34\u5E73\u95F4\u9699 +FR-Designer_Enter-New-FileName=\u8BF7\u8F93\u5165\u65B0\u7684\u6587\u4EF6\u540D +Verify_Fail=\u6821\u9A8C\u5931\u8D25 +CellWrite-InsertRow_Policy=\u63D2\u5165\u884C\u7B56\u7565 +FR-Designer-Plugin_Illegal_Plugin_Zip=\u4E0D\u662F\u5408\u6CD5\u7684\u63D2\u4EF6\u5305 +RCodeVersion=\u7248\u672C +Convert=\u8F6C\u6362 +Please_Drag=\u8BF7\u62D6\u5165\u884C\u5217\u5B57\u6BB5\u3001\u6C47\u603B\u5B57\u6BB5 +FR-Designer-Widget-Style_Preview=\u9884\u89C8 +mobile_number=\u624B\u673A\u53F7\u7801 +FR-Designer_Form-ComboCheckBox=\u4E0B\u62C9\u590D\u9009\u6846 +CacheValidateTime=\u62A5\u8868\u7F13\u5B58\u6709\u6548\u65F6\u95F4 +Hyperlink-Extends_Report_Parameters=\u7EE7\u627F\u62A5\u8868\u7684\u53C2\u6570 +FR-Designer_Values-Editor=\u503C\u7F16\u8F91\u5668 +Export-Excel=Excel\u683C\u5F0F +Utils-Left_to_Right=\u6A2A\u5411 +ExpandD-Vertical_Extendable=\u7EB5\u5411\u53EF\u4F38\u5C55 +Utils-Report_Runtime_Env=\u62A5\u8868\u5DE5\u4F5C\u76EE\u5F55 +Utils-Right_to_Left=\u4ECE\u53F3\u5230\u5DE6 +Utils-Beyond_the_top_side_of_Border=\u8D85\u51FA\u4E0A\u8FB9\u754C +Exception_StackTrace=\u9519\u8BEF\u5F02\u5E38\u5806\u6808\u4FE1\u606F +Corresponding_Fields=\u5BF9\u5E94\u5B57\u6BB5 +Form-CheckBox=\u590D\u9009\u6846 +Utils-Current_Row=\u5F53\u524D\u884C +BuildIn=\u5185\u7F6E +BindColumn-Results_Filter=\u7ED3\u679C\u96C6\u7B5B\u9009 +FR-Designer-Plugin_Manager=\u63D2\u4EF6\u7BA1\u7406 +M_File-Export-CSV=CSV\u683C\u5F0F(\u9017\u53F7\u5206\u9694) +Data_Filter=\u6570\u636E\u7B5B\u9009 +ReportServerP-Edit_Printer=\u7F16\u8F91\u6253\u5370\u673A +FR-Designer_Datasource-Stored_Procedure=\u5B58\u50A8\u8FC7\u7A0B +RESTART=\u91CD\u542F +FormulaD-Function_name=\u51FD\u6570\u540D +ChooseOneButton=\u8BF7\u9009\u62E9\u4E00\u4E2A\u63A7\u4EF6\u540E\u518D\u6DFB\u52A0 +Priority=\u4F18\u5148\u7EA7 +Datasource-Datasource=\u6570\u636E\u6E90 +FR-Designer_Width=\u5BBD +Cannot-Add_To_This_Area=\u65E0\u6CD5\u6DFB\u52A0\u5230\u8BE5\u533A\u57DF +Run=\u8FD0\u884C +Set_Submit_Condition=\u8BBE\u7F6E\u63D0\u4EA4\u6761\u4EF6 +FR-Base_Value=\u503C +fileLocked_undeleted=\u6A21\u677F\u88AB\u9501\u5B9A\uFF0C\u4E0D\u80FD\u5220\u9664\uFF01\u70B9\u51FB\u786E\u5B9A\uFF0C\u5237\u65B0\u6A21\u677F\u5217\u8868 +Web_Apply=WEB\u5E94\u7528 +Refresh_Database=\u5237\u65B0\u6570\u636E\u5E93 +Set_Row_Title_End=\u8BBE\u7F6E\u91CD\u590D\u7ED3\u5C3E\u884C +FR-Utils-New_Folder=\u65B0\u5EFA\u6587\u4EF6\u5939 +BiasD-From-upper_left_to_lower_right=\u4ECE\u5DE6\u4E0A\u5230\u53F3\u4E0B\u53D1\u6563 +CapsLock=\u5927\u5199\u9501\u5B9A\u5DF2\u6253\u5F00 +StyleFormat-Sample=\u793A\u4F8B +RWA-Smart_Add_Cell_Group=\u667A\u80FD\u6DFB\u52A0\u5355\u5143\u683C\u7EC4 +MConfig-CancelButton=\u53D6\u6D88 +Function-Choose_Function_Class=\u9009\u62E9\u51FD\u6570\u7C7B +LatLng=\u7ECF\u7EAC\u5EA6 +DS-Server_TableData=\u670D\u52A1\u5668\u6570\u636E\u96C6 +BackgroundTexture-GreenMarble=\u7EFF\u8272\u5927\u7406\u77F3 +read_time_out=\u52A0\u8F7D\u8D85\u65F6 +JavaScript-Commit_to_Database=\u63D0\u4EA4\u5165\u5E93 +DS-Relation_TableData=\u5173\u8054\u6570\u636E\u96C6 +CellWrite-Page_Before_Row=\u884C\u524D\u5206\u9875 +FR-Designer-Plugin_Load_Plugins_From_Server=\u6B63\u5728\u4ECE\u63D2\u4EF6\u5546\u5E97\u83B7\u53D6\u6570\u636E +D-Dispaly_Divide_Result_Set_into_Groups=\u5C06\u7ED3\u679C\u96C6\u8FDB\u884C\u5206\u7EC4 +Closed=\u5DF2\u5173\u95ED +RWA-Help=\u8BBE\u7F6E\u672A\u4FEE\u6539\u4E0D\u66F4\u65B0\u540E\uFF0C\u586B\u62A5\u9884\u89C8\u62A5\u8868\uFF0C\u8BB0\u5F55\u6240\u5728\u5355\u5143\u683C\u6CA1\u6709\u88AB\u7F16\u8F91\u4FEE\u6539\uFF0C\u5219\u6B64\u8BB0\u5F55\u4E0D\u4F1A\u8FDB\u884C\u66F4\u65B0\uFF1B\n\u5728\u5927\u6570\u636E\u91CF\u8BB0\u5F55\u67E5\u8BE2\u5E76\u56DE\u586B\u60C5\u51B5\u4E0B\uFF0C\u542F\u7528\u8BE5\u8BBE\u7F6E\uFF0C\u53EF\u4EE5\u63D0\u9AD8\u586B\u62A5\u63D0\u4EA4\u6027\u80FD\u3002 +FR-Designer-Widget-Style_Custom=\u81EA\u5B9A\u4E49 +FR-Designer-Widget-Style_Render_Style=\u6E32\u67D3\u98CE\u683C +Highlight-Barcode=\u6761\u5F62\u7801 +FR-Designer_Connect_SQL_Cannot_Null=\u6570\u636E\u8FDE\u63A5\u548CSQL\u9762\u677F\u4E0D\u80FD\u4E3A\u7A7A +trigger=\u89E6\u53D1 +M-Data_Analysis=\u6570\u636E\u5206\u6790 +Function-The_selected_file_cannot_be_null=\u6587\u4EF6\u4E0D\u80FD\u4E3A\u7A7A +No-Privilege=\u6CA1\u6709\u6743\u9650 +ReportColumns-Repeat_Column=\u590D\u5236\u5217\u5E8F\u5217 +SecondGraduationUnit=\u6B21\u8981\u523B\u5EA6\u5355\u4F4D +Form-Widget_Property_Value=\u5C5E\u6027\u503C +GIVE-NAME=\u547D\u540D +FR-Designer_Rename=\u91CD\u547D\u540D +Utils-Merge_Cell=\u5408\u5E76\u5355\u5143\u683C +Style-Spacing_After=\u6BB5\u540E +Enlarge_Or_Reduce=\u7F29\u653E +Tree-Height=\u9AD8\u5EA6 +RCodeErrorCorrect=\u7EA0\u9519 +Enter-New-FileName=\u8BF7\u8F93\u5165\u65B0\u7684\u6587\u4EF6\u540D +try_resending=\u8BF7\u5C1D\u8BD5\u91CD\u65B0\u53D1\u9001 +M-Open_Report=\u6253\u5F00... +Please_Select=\u8BF7\u9009\u62E9 +InRow=\u884C(R) +Form-TextArea=\u6587\u672C\u57DF +FR-Designer_Https_Enable=\u542F\u7528https +Widget-Custom_Widget_Config=\u81EA\u5B9A\u4E49\u63A7\u4EF6 +already_exists=\u5DF2\u7ECF\u5B58\u5728 +Original_Marked_Filed=\u539F\u59CB\u6807\u8BB0\u5B57\u6BB5 +BackgroundTexture-Sand=\u6C99\u6EE9 +Values=\u503C +Not_use_a_cell_attribute_table_editing=\u60A8\u4E0D\u53EF\u4EE5\u7528\u5355\u5143\u683C\u5C5E\u6027\u8868\u7F16\u8F91 +Root=\u6839\u8282\u70B9 +cycle=\u5468\u671F +open-new-form-tip=\u5F53\u524D\u6A21\u677F\u4E3A711\u4EE5\u4E0B\u7248\u672C\u5236\u4F5C\uFF0C\u65E0\u6CD5\u517C\u5BB9\uFF0C\u4E0D\u80FD\u6253\u5F00\u3002\u5047\u5982\u60F3\u6253\u5F00\u4FEE\u6539\u6B64\u8868\u5355\uFF0C\u8BF7\u4F7F\u7528\u5BF9\u5E94\u7248\u672C\u8BBE\u8BA1\u5668\u6253\u5F00\u3002 +Support-Current_Auto_Complete_Shortcut=\u5F53\u524D\u5FEB\u6377\u952E +GROUPING_MODE=\u666E\u901A\u5206\u7EC4 +DBCP_MAX_IDLE=\u6700\u5927\u7A7A\u95F2\u8FDE\u63A5\u6570 +BackgroundTexture-BlueTissuePaper=\u84DD\u8272\u7802\u7EB8 +ReportD-Export_Hided_Row=\u5BFC\u51FA\u9690\u85CF\u884C +FR-Custom_styles_lost=\u81EA\u5B9A\u4E49\u6837\u5F0F\u5DF2\u4E22\u5931 +Env-Des2=Servlet\u4F4D\u7F6E\u662F\u4E3B\u673A\u540D\uFF0C\u7AEF\u53E3\uFF0CWEB\u5E94\u7528\uFF0CServlet\u7684\u7EC4\u5408\uFF0C\u5B83\u5E94\u5F53\u6307\u5411\u4E00\u4E2AServlet\uFF0C\u6BD4\u5982"http\://localhost\:8080/WebReport/ReportServer"\u3002\u60A8\u53EF\u4EE5\u9009\u62E9\u586B\u5199\u4E3B\u673A\u540D\uFF0C\u7AEF\u53E3\uFF0CWEB\u5E94\u7528\uFF0CServlet\uFF0C\u5B83\u4F1A\u81EA\u52A8\u751F\u6210\u60A8\u6240\u9700\u8981\u7684Servlet\u4F4D\u7F6E\u3002 +Env-Des1=\u8BF7\u9009\u62E9\u62A5\u8868\u670D\u52A1\u5668\u6240\u5728\u7684WEB-INF\u76EE\u5F55 +PageSetup-Placement_Center_on_Page=\u5C45\u4E2D\u65B9\u5F0F +sure_to_delete=\u786E\u8BA4\u5220\u9664 +Already_exists_not_add_repeat=\u5DF2\u7ECF\u5B58\u5728\uFF0C\u8BF7\u4E0D\u8981\u91CD\u590D\u6DFB\u52A0 +Axis_Title=\u8F74\u6807\u9898 +FR-Designer-Plugin_Install_Failed=\u63D2\u4EF6\u5B89\u88C5\u5931\u8D25 +FR-Designer-Widget-Style_Frame=\u6846\u67B6 +MainGraduationUnit=\u4E3B\u8981\u523B\u5EA6\u5355\u4F4D +Second_Axis=\u6B21\u5750\u6807\u8F74 +Classifier-Ge=\u4E2A +MSBold=\u5FAE\u8F6F\u96C5\u9ED1 +Form-Design_Size=\u8BBE\u8BA1\u5C3A\u5BF8 +FR-App-Template_Save=\u4FDD\u5B58 +ExpandD-Horizontal_Extendable=\u6A2A\u5411\u53EF\u4F38\u5C55 +RP_Authority_Edit=\u6743\u9650\u7F16\u8F91 +Warnning=\u63D0\u9192 +RoleName_Can_Not_Be_Null=\u89D2\u8272\u540D\u4E0D\u5141\u8BB8\u4E3A\u7A7A\u4E14\u4E0D\u80FD\u91CD\u590D +Application=\u5E94\u7528\u7A0B\u5E8F +Formula_Dictionary_Display_Examples_Html=\u5B9E\u9645\u503C\u8303\u56F4\u4E3A \ +ECP-error_pwd=\u5BC6\u7801\u9519\u8BEF +FR-Hyperlink_ChartHyperlink=\u56FE\u8868\u8D85\u94FE +M_Edit-FormatBrush=\u683C\u5F0F\u5237(B) +Indent-Pixel=\u50CF\u7D20 +FR-Designer-Widget-Style_Border_Line=\u8FB9\u6846\u7C97\u7EC6 +Widget-Default_Widget_Config=\u57FA\u672C\u63A7\u4EF6 +Version-does-not-support=\u60A8\u5F53\u524D\u4F7F\u7528\u7684lic\u4E0D\u652F\u6301\u8FDC\u7A0B\u8BBE\u8BA1\u529F\u80FD\uFF0C\u8BF7\u5347\u7EA7\u60A8\u7684lic +StyleAlignment-Right_To_Left=\u4ECE\u53F3\u5411\u5DE6 +Style-Spacing_Before=\u6BB5\u524D +Has_Existed=\u5DF2\u7ECF\u5B58\u5728 +FR-Designer_DisplayNothingBeforeQuery=\u70B9\u51FB\u67E5\u8BE2\u524D\u4E0D\u663E\u793A\u62A5\u8868\u5185\u5BB9 +Still=\u4ECD\u7136 +JS_WARNING2=\ \u4F8B\uFF1Ahttp\://localhost\:8075/WebReport/demo.js +JS_WARNING1=\ \u76F8\u5BF9\u62A5\u8868\u5DE5\u7A0B\u76EE\u5F55\u5982WebReport,\u5982WebReport\\js\u4E0B\u6709\u5F15\u7528\u7684js\u6587\u4EF6test.js\uFF0C\u5219\u76F8\u5BF9\u8DEF\u5F84\u4E3Ajs/test.js +Connectionline=\u8FDE\u7EBF\u6A21\u5F0F +Utils-Insert_Record=\u63D2\u5165\u8BB0\u5F55 +Set-Parameter-Name=\u8BF7\u5148\u8BBE\u7F6E\u53C2\u6570\u540D +More-information=\u66F4\u591A\u4FE1\u606F +Parameter-Boolean=\u5E03\u5C14\u578B +FRFont-Strikethrough=\u5220\u9664\u7EBF +Server-version-tip=\u60A8\u5F53\u524D\u8FDE\u63A5\u7684\u670D\u52A1\u5668\u7248\u672C\u4F4E\u4E8E\u60A8\u4F7F\u7528\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u53F7\uFF0C\u7EE7\u7EED\u8FDE\u63A5\uFF0C\u60A8\u7F16\u8F91\u7684\u4E00\u4E9B\u5C5E\u6027\u53EF\u80FD\u65E0\u6CD5\u6709\u6548\u4FDD\u5B58\u3002 \u5047\u5982\u9700\u8981\u8FDE\u63A5\u8BF7\u5C06\u60A8\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u4E0E\u670D\u52A1\u5668\u7248\u672C\u4FDD\u6301\u4E00\u81F4 +Form-All_Files=\u5168\u90E8\u6587\u4EF6 +DBCP_NUM_TEST_PER_EVCTION_RUN=\u7A7A\u95F2\u8FDE\u63A5\u56DE\u6536\u68C0\u67E5\u6570 +FR-Designer-FRFont_Family=\u540D\u5B57 +Device=\u8BBE\u5907 +M_Insert-Cell=\u5355\u5143\u683C\u5143\u7D20 +Present-Formula_Present=\u516C\u5F0F\u5F62\u6001 +FRFont-Superscript=\u4E0A\u6807 +CellWrite-Page_Before_Column=\u5217\u524D\u5206\u9875 +Golden=\u91D1\u8272 +Preference-Support_Cell_Editor_Definition=\u652F\u6301\u5355\u5143\u683C\u7F16\u8F91\u5668 +M-Page_Preview=\u5206\u9875\u9884\u89C8 +HJS-CC_to=\u6284\u9001 +Tree-Select_Leaf_Only=\u53EA\u8FD4\u56DE\u53F6\u5B50\u8282\u70B9 +Pointer-A-Tick-Order=\u6307\u9488\u503C\u53CA\u523B\u5EA6\u503C\u6570\u91CF\u7EA7 +Pink=\u7C89\u7EA2 +StyleAlignment-Distibuted=\u5206\u6563\u5BF9\u9F50 +Odd=\u5947\u6570 +already-saved=\u5DF2\u7ECF\u4FDD\u5B58 +FR-Hyperlink_Chart_Cell=\u56FE\u8868\u8D85\u94FE-\u8054\u52A8\u5355\u5143\u683C +Style-Left_Indent=\u5DE6\u7F29\u8FDB +Offline=\u79BB\u7EBF +Form-Hierarchy_Tree_Next=\u4E0B\u4E00\u4E2A +Needle=\u6307\u9488 +GoogleMap=\u8C37\u6B4C\u5730\u56FE +Running=\u8FD0\u884C\u4E2D +M_Edit-Unmerge_Cell=\u53D6\u6D88\u5408\u5E76\u5355\u5143\u683C +Out_Border_Line=\u5916\u4FA7\u6846\u7EBF +Style-Spacing=\u95F4\u8DDD +FR-Utils_Submit=\u63D0\u4EA4 +ReportServerP-Previous=\u4E0A\u4E00\u9875 +StyleAlignment-Text_Style=\u6587\u672C\u63A7\u5236 +RelatedChart=\u56FE\u8868\u8054\u52A8 +ProcessManager=\u6D41\u7A0B\u7BA1\u7406 +Cancel_Repeat_Attributes=\u53D6\u6D88\u91CD\u590D\u884C\u5217 +FR-App-File_Message=\u4FE1\u606F +Datasource-Stored_Procedure=\u5B58\u50A8\u8FC7\u7A0B +RWA-Row_Offset=\u884C\u504F\u79FB +M_Format-Style=\u6837\u5F0F +detail_description=\u8BE6\u7EC6\u63CF\u8FF0 +FR-Designer-Widget-Style_Title_Content=\u6807\u9898\u5185\u5BB9 +ParameterD-Report_Parameter=\u62A5\u8868\u53C2\u6570 +HF-Edit_Header=\u7F16\u8F91\u9875\u7709 +Sytle-FRFont=\u5B57\u4F53 +FR-Designer_Finish_Export=\u5BFC\u51FA\u5B8C\u6BD5 +MultiFileUpload=\u591A\u6587\u4EF6\u4E0A\u4F20 +HF-Page_Number=\u9875\u7801 +Style-Right_Indent=\u53F3\u7F29\u8FDB +Desktop=\u684C\u9762 +FR-Server-All_Error=\u9519\u8BEF +ConditionB-Operator=\u64CD\u4F5C\u7B26 +Today=\u4ECA\u5929 +Form-Widget_Name=\u63A7\u4EF6\u540D +Covered_All=\u5168\u90E8\u8986\u76D6 +Day=\u5929 +External=\u5916\u90E8 +Black_Font=\u9ED1\u4F53 +LOG-Report_Server_IS_Started=\u62A5\u8868\u670D\u52A1\u5668\u5DF2\u542F\u52A8 +Tips\:You_Can_Input_B1_To_Input_The_Data_Of_The_First_Row_Second_Column=\u63D0\u793A\:\u60A8\u53EF\u4EE5\u901A\u8FC7\u8F93\u5165B1\u6765\u5199\u5165\u7B2C\u4E00\u884C\u7B2C\u4E8C\u5217\u7684\u6570\u636E\u3002 +FR-Designer_ChooseOneButton=\u8BF7\u9009\u62E9\u4E00\u4E2A\u63A7\u4EF6\u540E\u518D\u6DFB\u52A0 +Widget-Sizing=\u5927\u5C0F\u8C03\u6574 +NO_Border_Line=\u65E0\u6846\u7EBF +Cell_Data=\u5355\u5143\u683C\u6570\u636E +StyleAlignment-Vertical_Text=\u6587\u5B57\u7AD6\u6392 +Label=\u6807\u7B7E +Orange=\u6A58\u9EC4 +zeroMarginWarn=\u7531\u4E8E\u6253\u5370\u673A\u5B58\u5728\u7269\u7406\u8FB9\u8DDD
\u62A5\u8868\u7684\u9875\u8FB9\u8DDD\u8BBE\u7F6E\u8FC7\u5C0F\u53EF
\u80FD\u4F1A\u51FA\u73B0\u5185\u5BB9\u6253\u5370\u4E0D\u5168.
  +Widget-Date_Selector_Return_Type=\u8FD4\u56DE\u503C\u7C7B\u578B +Utils-Switch_To_Template_Reportlet=\u5207\u6362\u5230\u6A21\u677F\u7F51\u7EDC\u62A5\u8868 +satisfy=\u6EE1\u8DB3\u6761\u4EF6 +FR-Designer_WidgetDisplyPosition=\u63A7\u4EF6\u663E\u793A\u4F4D\u7F6E +FR-Base_Top=\u4E0A +FR-Designer_Form-CheckBox=\u590D\u9009\u6846 +Reportlet-Parameter_Type=\u53C2\u6570\u4F20\u9012\u65B9\u5F0F +sending=\u6B63\u5728\u53D1\u9001... +FR-Designer-FRFont_Foreground=\u989C\u8272 +FR-Import-Export_SVG=SVG\u683C\u5F0F +M_Edit-Clear_Contents=\u5185\u5BB9(C) +Session=\u4F1A\u8BDD +Widget-Load_Type=\u52A0\u8F7D +template_unsaved=\u65E0\u6CD5\u4FDD\u5B58\u6A21\u677F +check_communication=\u8BF7\u68C0\u67E5\u7F51\u7EDC\u901A\u8BAF\u662F\u5426\u6B63\u5E38\u53CA\u670D\u52A1\u5668\u662F\u5426\u6B63\u5E38\u8FD0\u884C +List-Need_Head=\u9700\u8981\u5217\u8868\u5934 +FR-Designer-Plugin_Has_Been_Installed=\u63D2\u4EF6\u5DF2\u5B89\u88C5\uFF0C\u82E5\u60F3\u66F4\u65B0\u63D2\u4EF6\uFF0C\u8BF7\u5207\u6362\u81F3\u63D2\u4EF6\u66F4\u65B0 +FR-Widget_Tree_And_Table=\u63A7\u4EF6\u6811\u548C\u63A7\u4EF6\u8868 +FR-Base_Help=\u5E2E\u52A9 +FR-Designer-Plugin_Update_Successful=\u63D2\u4EF6\u5347\u7EA7\u6210\u529F\uFF0C\u91CD\u542F\u670D\u52A1\u5668\u4EE5\u751F\u6548 +August=\u516B\u6708 +LOG-Is_Being_Openned=\u6B63\u5728\u6253\u5F00 +BackgroundTexture-Oak=\u6A61\u6728 +Multi_nam_formula=\ \u6570\u636E\u96C6\u540D\: \u6570\u636E\u96C6\u6761\u4EF6\: +TurnOn=\u5F00\u542F +HJS-Send_Successfully=\u53D1\u9001\u6210\u529F +Mon=\u4E00 +Inner_Parameter=\u5185\u7F6E\u53C2\u6570 +Required=\u5FC5\u586B +Summary=\u6C47\u603B +template_unopened=\u65E0\u6CD5\u6253\u5F00\u6A21\u677F +FR-Base_Bottom=\u4E0B +DataFunction-Min=\u6700\u5C0F\u503C +StyleFormat-Percent=\u767E\u5206\u6BD4 +FR-App-All_Custom=\u81EA\u5B9A\u4E49 +M_Insert-Data_Column=\u63D2\u5165\u6570\u636E\u5217 +PLEASE=\u8BF7 +Numbers=\u6570\u76EE +Release_Lock=\u89E3\u9501 +Background-Background_is_NULL=\u6CA1\u6709\u80CC\u666F +FR-Designer_Sytle-FRFont=\u5B57\u4F53 +Gradation=\u5C42\u6B21 +The_current_list_is_empty=\u5F53\u524D\u5217\u8868\u4E3A\u7A7A +Formula_Dictionary_Display_Examples=\ \u5B9E\u9645\u503C\u8303\u56F4\u4E3A \ +Schedule-Template_Parameter=\u6A21\u677F\u53C2\u6570 +JSShow=\u52A8\u6001\u5C55\u793A +Level_coordinates=\u5C42\u6B21\u5750\u6807 +MainGraduationLine=\u4E3B\u8981\u523B\u5EA6\u7EBF +Hyperlink-Web_link=\u7F51\u9875\u94FE\u63A5 +StyleAlignment-between_-90_and_90=\u5728-90\u548C90\u4E4B\u95F4 +FormulaD-Custom_Function=\u81EA\u5B9A\u4E49\u51FD\u6570 +FR-Designer_Integer=\u6574\u6570 +PageSetup-Finis_Start_Row=\u91CD\u590D\u7ED3\u5C3E\u884C +RWA-Remove_Field=\u79FB\u9664\u5B57\u6BB5 +Form-Desin_Width=\u8BBE\u8BA1\u5BBD\u5EA6 +No-tableData=\u6CA1\u6709\u8FD4\u56DE\u6570\u636E\u96C6 +Page_Total=\u5171 +FR-Designer-Plugin_Connect_Server_Error=\u65E0\u6CD5\u8FDE\u63A5\u63D2\u4EF6\u5546\u5E97\uFF0C\u8BF7\u7A0D\u5019\u518D\u8BD5 +Import-Excel_Source=Excel\u6E90\u6587\u4EF6 +Utils-Left_to_Right_a=\u4ECE\u5DE6\u5F80\u53F3 +ExpandD-Expand_Attribute=\u6269\u5C55\u5C5E\u6027 +Report-Write_Attributes=\u62A5\u8868\u586B\u62A5\u5C5E\u6027 +Utils-Current_Column=\u5F53\u524D\u5217 +Need_Max_Value=\u9700\u8981\u6700\u5927\u503C +Report_Not_Exist=\u6240\u9009\u62A5\u8868\u4E0D\u5B58\u5728\uFF01 +HF-Insert_Content=\u63D2\u5165\u5185\u5BB9 +UpParent=\u4E0A\u7236\u683C +PageSetup-Page=\u9875\u9762 +Utils-Move_Up=\u4E0A\u79FB +BackgroundTexture-PurpleMesh=\u7D2B\u8272\u7F51\u683C +Export-Word=Word\u683C\u5F0F +ServerM-Widget_Manager=\u63A7\u4EF6\u7BA1\u7406 +FR-Designer-Basic_Activation_Key=\u8BBE\u8BA1\u5668\u7F16\u53F7\uFF1A +FR-App-Template_Report_Not_Exist=\u6240\u9009\u62A5\u8868\u4E0D\u5B58\u5728\! +Protected=\u4FDD\u62A4 +Skip=\u8DF3\u8FC7 +FR-Designer_PageSetup-Vertically=\u5782\u76F4\u5C45\u4E2D +revert=\u64A4\u9500 +PageSetup-Predefined=\u9884\u5B9A\u4E49 +Border-Style-Radius=\u5706\u89D2\u8FB9\u6846 +IntPart=\u6574\u6570\u90E8\u5206 +ExpandD-Data_Column=\u6570\u636E\u5217 +Sort-Ascending=\u5347\u5E8F +FR-Designer-Widget_Style=\u6837\u5F0F +parameter_name_exist=\u8BE5\u53C2\u6570\u540D\u5DF2\u5B58\u5728 +FR-Designer_Layer-Build=\u666E\u901A\u5206\u5C42\u6784\u5EFA +Please_Rename=\u8BF7\u91CD\u547D\u540D +Form-Editing_Listeners=\u4E8B\u4EF6\u7F16\u8F91 +RWA-Smart_Add_Fields=\u667A\u80FD\u6DFB\u52A0\u5B57\u6BB5 +FR-Designer-Tree_Width=\u5BBD\u5EA6 +Record=\u8BB0\u5F55 +Poly-Report_Component=\u805A\u5408\u62A5\u8868\u7EC4\u4EF6 +Options=\u9009\u9879 +NS-war-remote=\u9519\u8BEF\u4EE3\u7801\:1117 \u538B\u7F29\u90E8\u7F72\u4E0D\u652F\u6301\u8FDC\u7A0B\u8BBE\u8BA1 +Sche-Minute=\u5206 +Three_Rows_Of_Three_Grid=\u4E09\u884C\u4E09\u5217\u7684\u683C\u5B50 +WorkSheet=\u81EA\u7531\u62A5\u8868 +FR-Designer-Widget_Size=\u63A7\u4EF6\u5927\u5C0F +BindColumn-Select=\u5217\u8868 +FR-Widget_Mobile_Terminal=\u79FB\u52A8\u7AEF +FR-Background_Image_Titled=\u5E73\u94FA +SetPrinterOffset=\u6253\u5370\u673A\u504F\u79FB +FR-Designer-Plugin_Installed=\u5DF2\u5B89\u88C5 +FR-Designer-Hyperlink_Name=\u540D\u5B57 +FR-Designer_Form-Button=\u6309\u94AE +Black=\u9ED1\u8272 +FR-Designer-Widget-Style_Border_Color=\u8FB9\u6846\u989C\u8272 +Set_Submit_Event=\u8BBE\u7F6E\u63D0\u4EA4\u4E8B\u4EF6 +PDF-Print_isPopup=\u662F\u5426\u5F39\u51FA\u8BBE\u7F6E\u6846 +LayerPageReport_CountPerPage=\u6BCF\u9875\u8BB0\u5F55\u6570 +Display_Modes=\u663E\u793A\u6A21\u5F0F +RowSpan=\u884C\u8DE8\u5EA6 +Datasource-Test_Connection=\u6D4B\u8BD5\u8FDE\u63A5 +Function-Function_Manager=\u51FD\u6570\u7BA1\u7406\u5668 +Host_Name=\u4E3B\u673A\u540D +CellWrite-Show_As_HTML=\u7528HTML\u663E\u793A\u5185\u5BB9 +FR-Designer-Widget-Style_Shadow=\u9634\u5F71 +FR-Designer_Parameter_String=\u5B57\u7B26\u4E32 +Form-SupportTag=\u6807\u7B7E\u5F62\u5F0F\u663E\u793A +ReportD-Report_Write_Attributes=\u62A5\u8868\u586B\u62A5\u5C5E\u6027 +DataFunction-Count=\u4E2A\u6570 +Top_And_Thick_Bottom_Border_Line=\u4E0A\u6846\u7EBF\u548C\u7C97\u4E0B\u6846\u7EBF +Client=\u5BA2\u6237\u7AEF +BindColumn-Result_Serial_Number_Start_From_1=\u5E8F\u53F7\u4ECE1\u5F00\u59CB +History=\u5386\u53F2 +Already_exists=\u5DF2\u5B58\u5728\uFF0C\u8BF7\u91CD\u65B0\u8F93\u5165\uFF01 +Datasource-Original_Charset=\u539F\u59CB\u7F16\u7801 +FR-Base_Left=\u5DE6 +ReportServerP-Next=\u4E0B\u4E00\u9875 +BindColumn-Top_N=\u524DN\u4E2A +Animation_Special=\u7279\u6548 +Widget-Chart_Widget_Config=\u56FE\u8868\u63A7\u4EF6 +FR-Designer-Plugin_Cannot_Update_Not_Install=\u65E0\u6CD5\u66F4\u65B0\u63D2\u4EF6\uFF0C\u8BF7\u68C0\u67E5\u8BE5\u63D2\u4EF6\u662F\u5426\u5DF2\u7ECF\u6210\u529F\u5B89\u88C5 +After_Changed_Some_Attributes_Are_Different=\u8F6C\u6362\u540E\u62A5\u8868\u7684\u67D0\u4E9B\u5C5E\u6027\u4F1A\u53D1\u751F\u6539\u53D8\uFF0C\u662F\u5426\u7EE7\u7EED +PieStyle=\u997C\u72B6 +HF-Are_you_sure_to_delete_it=\u4F60\u786E\u5B9E\u60F3\u5220\u9664\u8FD9\u4E2A\u5143\u7D20\u5417 +Utils-Design-File_Open=\u6253\u5F00 +FR-Utils_Label=\u6807\u7B7E +Data-Label=\u6807\u7B7E +M_Insert-Text=\u63D2\u5165\u666E\u901A\u6587\u672C +Form-View_Tree=\u89C6\u56FE\u6811 +M_Insert-Chart=\u63D2\u5165\u56FE\u8868 +HF-Even_Page=\u5076\u6570\u9875 +ReportServerP-Report_server_parameter=\u62A5\u8868\u670D\u52A1\u5668\u53C2\u6570 +JavaScript-Form_Submit=\u8868\u5355\u63D0\u4EA4 +Horizontal-Split_Layout=\u6C34\u5E73\u5206\u5272\u5E03\u5C40 +BorderLayout-Center=\u4E2D +INFO-Reset_Webapp=\u91CD\u7F6E\u5E94\u7528\u670D\u52A1\u5668 +FR-Designer_Text=\u6587\u672C +IN_and_INOUT_type_not_as_cursor=IN\u548CINOUT\u7C7B\u578B\u4E0D\u53EF\u4EE5\u4F5C\u4E3A\u6E38\u6807 +Main_Axis=\u4E3B\u5750\u6807\u8F74 +M_Edit-Cut=\u526A\u5207(T) +Utils-The_Name_has_been_existed=\u6B64\u540D\u5DF2\u7ECF\u5B58\u5728 +FR-Background_Image=\u56FE\u7247 +Character=\u6587\u5B57 +Unit_Thousand=\u5343 +Test=\u6D4B\u8BD5 +Utils-Would_you_like_to_save=\u4F60\u662F\u5426\u9700\u8981\u4FDD\u5B58 +HF-Header_and_Footer=\u7709\u5934\u548C\u7709\u811A +LIST_MODE=\u5217\u8868 +HF-Insert_Image=\u63D2\u5165\u56FE\u7247 +FR-Designer-Widget-Style_Standard=\u6807\u51C6 +FR-Designer_Form-List=\u5217\u8868 +BackgroundTexture-Denim=\u659C\u7EB9\u5E03 +Execute_Report_by_Layer_Engine=\u7528\u884C\u5F0F\u7684\u5F15\u64CE\u6765\u6267\u884C\u62A5\u8868 +M_Edit-Bring_Forward=\u4E0A\u79FB\u4E00\u5C42(F) +Choose_All=\u5168\u9009 +Form-RadioGroup=\u5355\u9009\u6309\u94AE\u7EC4 +FR-Base_Remove=\u5220\u9664 +FR-Remote_Connect2Server_Again=\u8FDE\u63A5\u4E2D\u65AD\uFF0C\u662F\u5426\u91CD\u65B0\u8FDE\u63A5\u670D\u52A1\u5668? +Semicolon=\u5206\u53F7 +StyleFormat-Category=\u5206\u7C7B +Report_Template=\u62A5\u8868\u6A21\u677F +Utils-Beyond_the_right_side_of_Border=\u8D85\u51FA\u53F3\u8FB9\u754C +BackgroundTexture-Papyrus=\u7EB8\u838E\u8349\u7EB8 +LayerPageReport_PageEngine=\u4F7F\u7528\u6309\u9875\u8FD0\u7B97\u5206\u6BB5\u6267\u884C\u62A5\u8868 +Schedule-The_selected_file_must_be_end_with_filter=\u9009\u62E9\u7684\u6587\u4EF6\u5FC5\u987B\u4EE5.cpt\u6216\u8005.class\u6216\u8005.frm\u7ED3\u5C3E\u3002 +Provide=\u63D0\u4F9B +FormulaD-Math_&_Trig=\u6570\u5B66\u548C\u4E09\u89D2\u51FD\u6570 +FR-Designer-StyleAlignment_Right=\u9760\u53F3 +Error_TableDataNameRepeat=\u5DF2\u7ECF\u5728\u670D\u52A1\u5668\u6570\u636E\u96C6\u4E2D\u5B58\u5728\u6216\u8005\u591A\u4E2A\u6570\u636E\u96C6\u540D\u91CD\u590D\u3002 +Choose_None=\u4E0D\u9009 +File-tree=\u6587\u4EF6\u6811 +FRFont-bold=\u52A0\u7C97 +FR-Designer_Set_Submit_Condition=\u8BBE\u7F6E\u63D0\u4EA4\u6761\u4EF6 +Form-Change_Widget_Name=\u66F4\u6539\u63A7\u4EF6\u540D +ReportColumns-Report_Columns=\u62A5\u8868\u5206\u680F +Can_not_use_FormatBursh=\u4E0D\u80FD\u5BF9\u591A\u91CD\u9009\u5B9A\u533A\u57DF\u4F7F\u7528\u683C\u5F0F\u5237\! +CellElement-Property_Table=\u5355\u5143\u683C\u5C5E\u6027\u8868 +Dictionary-Dynamic_SQL=\u52A8\u6001SQL +FR-Designer_Form-CheckBoxGroup=\u590D\u9009\u6846\u7EC4 +DBCP_TIME_BETWEEN_EVICTIONRUNSMILLIS=\u7A7A\u95F2\u8FDE\u63A5\u56DE\u6536\u5668\u4F11\u7720\u65F6\u95F4 +ReportD-Export_Hided_Column=\u5BFC\u51FA\u9690\u85CF\u5217 +Preference-Support_Undo=\u652F\u6301\u64A4\u9500 +FR-mobile_report_analysis=\u62A5\u8868\u89E3\u6790 +Month=\u6708 +Utils-Column_Width=\u5217\u5BBD +Collect-Use_Designer=\u4F7F\u7528\u8BBE\u8BA1\u5668 +Widget-User_Defined_Editor=\u9884\u5B9A\u4E49\u7F16\u8F91\u5668\uFF0C\u8BE5\u7F16\u8F91\u5668\u53EA\u80FD\u5728\u63A7\u4EF6\u7BA1\u7406\u83DC\u5355\u91CC\u66F4\u6539\u5176\u5C5E\u6027 +Unit_Ten_Thousand=\u4E07 +Data_Setting=\u6570\u636E\u8BBE\u7F6E +ECP_input_pwd=\u8BF7\u8F93\u5165\u5BC6\u7801\: +period=\u3002 +Note=\u5907\u6CE8 +Multiline=\u591A\u884C\u7F16\u8F91 +Datasource-Convert_Charset=\u7F16\u7801\u8F6C\u6362 +DashBoard-ConnectionList=\u6570\u636E\u8FDE\u63A5 +Utils-Submit_Forcibly=\u5F3A\u884C\u63D0\u4EA4 +Parent_Marked_Field=\u7236\u6807\u8BB0\u5B57\u6BB5 +Logout=\u9000\u51FA +FR-Designer_Show_Blank_Row=\u8865\u5145\u7A7A\u767D\u884C +FR-Base_Format=\u683C\u5F0F +FR-App-Export_png=PNG\u683C\u5F0F +Delete_Column=\u5220\u9664\u5217 +SecondGraduationLine=\u6B21\u8981\u523B\u5EA6\u7EBF +SpecifiedG-Groups=\u7EC4 +CONTINUUM_MODE=\u76F8\u90BB\u8FDE\u7EED\u5206\u7EC4 +Datasource-Connection_failed=\u8FDE\u63A5\u5931\u8D25 +CategoryName=\u5206\u7C7B\u540D +DBCP_INITIAL_SIZE=\u521D\u59CB\u5316\u8FDE\u63A5\u6570 +Colors=\u989C\u8272 +FR-Import-Export_CSV=CSV\u683C\u5F0F(\u9017\u53F7\u5206\u9694) +FR-Designer-StyleAlignment_Left=\u9760\u5DE6 +BackgroundTexture-PaperBag=\u7EB8\u888B +RWA-BuildIn_SQL=\u5185\u7F6ESQL +SingleLayer=\u5355\u5C42 +Or-you=\u6216\u8005\u60A8 +FR-Designer_Certificate_Path=\u8BC1\u4E66\u8DEF\u5F84 +Utils-Last_Page=\u6700\u540E\u4E00\u9875 +BarCodeD-Drawing_Text=\u663E\u793A\u6761\u5F62\u7801\u7684\u6587\u672C +Warning-Template_Do_Not_Exsit=\u6A21\u677F\u4E0D\u5B58\u5728 +BindColumn-Group=\u5206\u7EC4 +Export-SVG=SVG\u683C\u5F0F +Plane3D=\u5E73\u97623D +SessionID=sessionID\u662F\u5F53\u524D\u8BBF\u95EE\u6A21\u677F\u7684\u4F1A\u8BDD\u6807\u8BC6\u53C2\u6570\u3002 +FR-Designer_Height=\u9AD8 +HF-Odd_Page=\u5947\u6570\u9875 +About-All_Rights_Reserved=\u4FDD\u7559\u6240\u6709\u7684\u6743\u5229 +Utils-Current_Cell=\u5F53\u524D\u683C\u5B50 +Web_Preview_Message=\u8BF7\u5C06\u6A21\u677F\u6587\u4EF6\u4FDD\u5B58\u5728\u5F53\u524D\u8FD0\u884C\u73AF\u5883\u76EE\u5F55\u4E0B +FR-Hyperlink_Chart_Float=\u56FE\u8868\u8D85\u94FE-\u8054\u52A8\u60AC\u6D6E\u5143\u7D20 +Dic-Data_Query=\u6570\u636E\u67E5\u8BE2 +CellWrite-Print_Content=\u6253\u5370/\u5BFC\u51FA\u5355\u5143\u683C\u5185\u5BB9 +Privilege-Selected_None_Of_Any_Items=\u6CA1\u6709\u9009\u4E2D\u4EFB\u4F55\u4E00\u9879 +FRFont-Size=\u5927\u5C0F +Function-J2EE_server=J2EE\u670D\u52A1\u5668 +FR-Designer_Allow_Blank=\u5141\u8BB8\u4E3A\u7A7A +Build_Tree_Accord_Parent_Marked_Filed=\u4F9D\u8D56\u6240\u9009\u6570\u636E\u96C6\u7684\u7236\u6807\u8BB0\u5B57\u6BB5\u6784\u5EFA\u6811 +Preference-Horizontal_Scroll_Bar_Visible=\u6C34\u5E73\u6EDA\u52A8\u6761\u53EF\u89C1 +Scope=\u8303\u56F4 +Save_All_Records_In_Memory=\u6240\u6709\u8BB0\u5F55\u90FD\u4FDD\u5B58\u5728\u5185\u5B58\u4E2D +FreezeWarning1=\u521D\u59CB\u503C\u4E0D\u5927\u4E8E\u5C3E\u503C +FlowLayout=\u6D41\u5F0F\u5E03\u5C40 +M_Report-Report_Footer=\u62A5\u8868\u9875\u811A +FR-Action_Add=\u589E\u52A0 +BorderLayout-East=\u4E1C +feedback_tip=\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC7400\u4E2A\u5B57\u7684\u95EE\u9898\u63CF\u8FF0 +FS_Start_Date=\u8D77\u59CB\u65E5\u671F +FR-ConditionB_Operator=\u64CD\u4F5C\u7B26 +Printer-Alias=\u522B\u540D +DS-Class_Name=\u7C7B\u540D +FR-Designer-Plugin_Has_Been_Disabled=\u63D2\u4EF6\u5DF2\u88AB\u7981\u7528\uFF0C\u91CD\u542F\u8BBE\u8BA1\u5668\u53CA\u670D\u52A1\u5668\u751F\u6548\uFF0C\u670D\u52A1\u5668\u9700\u624B\u52A8\u91CD\u542F +Sort-Original=\u4E0D\u6392\u5E8F +Utils-Top_to_Bottom_a=\u4ECE\u4E0A\u5F80\u4E0B +Parameter-String=\u5B57\u7B26\u4E32 +InnerRadis=\u5185\u5F84\u5927\u5C0F +Want_To_Cover_It=\u662F\u5426\u60F3\u8986\u76D6\u5B83 +Divided_stage=\u5212\u5206\u9636\u6BB5 +Seriously=\u4E25\u91CD +ReportServerP-PDF=PDF +Utils-Switch_To_Class_Reportlet=\u5207\u6362\u5230\u7A0B\u5E8F\u7F51\u7EDC\u62A5\u8868 +FR-Designer_Show_Blank_Column=\u8865\u5145\u7A7A\u767D\u5217 +M_Edit-Redo=\u91CD\u505A +Visibility=\u53EF\u89C1\u6027 +Series_Use_Default=\u7CFB\u5217\u9ED8\u8BA4\u4F7F\u7528 +Has_Selected=\u5DF2\u7ECF\u9009\u62E9 +BackgroundTexture-Walnut=\u80E1\u6843 +FormulaD-Function_category=\u51FD\u6570\u7C7B\u578B +Interface=\u63A5\u53E3 +FR-Designer-Beyond_Bounds=\u8D85\u51FA\u6216\u8005\u5C0F\u4E8Ebody\u8FB9\u754C\uFF0C\u4E0D\u80FD\u8C03\u6574\u5927\u5C0F +seconds=\u79D2 +Auto-Build=\u81EA\u52A8\u6784\u5EFA +FR-Designer-Plugin_Install_Successful=\u8BE5\u63D2\u4EF6\u5C06\u5728\u91CD\u65B0\u542F\u52A8\u8BBE\u8BA1\u5668\u53CA\u670D\u52A1\u5668\u65F6\u88AB\u542F\u7528\uFF0C\u670D\u52A1\u5668\u9700\u624B\u52A8\u91CD\u542F +Template_Path=\u6A21\u677F\u8DEF\u5F84 +FR-Designer-FRFont_Bold=\u52A0\u7C97 +Poly_Name=\u805A\u5408\u5757\u540D +WorkBook=\u5DE5\u4F5C\u7C3F +Hyperlink-Self_Window=\u5F53\u524D\u7A97\u53E3 +FR-Designer-Widget-Style_Title=\u6807\u9898 +FR-Designer-FRFont_Size=\u5927\u5C0F +M_File-Export-SVG=SVG\u683C\u5F0F +Capacity=\u5BB9\u91CF +Rose_Red=\u73AB\u7470\u7EA2 +StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=\u65CB\u8F6C\u503C\u5FC5\u987B\u5728\u8D1F90\u5EA6\u523090\u5EA6 +HF-Move_Left=\u5DE6\u79FB +Cell_Group=\u5355\u5143\u683C\u7EC4 +Week=\u5468 +PageSetup-Orientation=\u65B9\u5411 +M-Open_Recent=\u6700\u8FD1\u6253\u5F00\u7684 +NNormal=\u6B63\u5E38 +Integer=\u6574\u6570 +Select_The_Source_To_Save=\u9009\u62E9\u8981\u5B58\u50A8\u7684\u9879\u76EE +Transition=\u5206\u652F +FR-Designer_Get_Lock=\u52A0\u9501 +one_record_exists_in_many_groups=\u4E00\u4E2A\u8BB0\u5F55\u53EF\u4EE5\u5B58\u5728\u4E8E\u591A\u4E2A\u7EC4\u4E2D +FR-Designer_Cover_None=\u5168\u4E0D\u8986\u76D6 +DeciPart=\u5C0F\u6570\u90E8\u5206 +ExpandD-Up_Father_Cell=\u4E0A\u7236\u683C +Deep=\u6DF1\u5EA6 +FRFont-Shadow=\u9634\u5F71 +Reportlet=\u7F51\u7EDC\u62A5\u8868 +Calendar=\u65E5\u5386 +DateFormat-Custom_Warning=\u6CE8\uFF1A\u81EA\u5B9A\u4E49\u65E5\u671F\u683C\u5F0F\u4E0D\u652F\u6301\u683C\u5F0F\u6821\u9A8C +Unit_MM=\u6BEB\u7C73 +Server-Start=\u542F\u52A8 +CellPage-Can_Break_On_Paginate=\u5206\u9875\u65F6\u53EF\u4EE5\u65AD\u5F00 +Build_Tree_Accord_Marked_Filed_Length=\u4F9D\u8D56\u6240\u9009\u6570\u636E\u96C6\u7684\u6807\u8BB0\u5B57\u6BB5\u7684\u957F\u5EA6\u6784\u5EFA\u6811 +ComboCheckBox-Start_Symbol=\u8D77\u59CB\u7B26 +Real=\u5B9E\u9645 +RWA-Batch_Modify_Cells=\u6279\u91CF\u4FEE\u6539\u5355\u5143\u683C +FR-Designer_Build-Way=\u6784\u5EFA\u65B9\u5F0F +Read=\u8BFB\u53D6 +StyleAlignment-Degrees=\u5EA6\u6570 +M_Format_A-Border=\u8FB9\u6846(B) +Utils-Delete_Record=\u5220\u9664\u8BB0\u5F55 +Reload=\u91CD\u8F7D +Image-Select_Picture=\u9009\u62E9\u56FE\u7247 +RWA-Submit=\u63D0\u4EA4 +the_template=\u8BE5\u6A21\u677F +FR-Designer_Component_Scale=\u7EC4\u4EF6\u7F29\u653E +FRFont-italic=\u503E\u659C +Year=\u5E74 +HF-Move_Right=\u53F3\u79FB +Data-Check=\u6570\u636E\u76D1\u63A7 +Unknown=\u672A\u77E5 +Submit_Style=\u63D0\u4EA4\u65B9\u5F0F +Left_Border_Line=\u5DE6\u6846\u7EBF +Brown=\u8910\u8272 +Select_A_Tree_DataSource_To_Build=\u9009\u62E9\u4E00\u4E2A\u6811\u6570\u636E\u96C6\u6765\u6784\u5EFA +Overlapping=\u91CD\u53E0\u578B +DS-Class_TableData=\u7A0B\u5E8F\u6570\u636E\u96C6 +FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=\u4E0D\u53EF\u8BC6\u522B\u7684\u63D2\u4EF6\uFF0C\u65E0\u6CD5\u5B89\u88C5 +DisplayNothingBeforeQuery=\u70B9\u51FB\u67E5\u8BE2\u524D\u4E0D\u663E\u793A\u62A5\u8868\u5185\u5BB9 +Y_Axis=Y\u8F74 +FormulaD-Most_Recently_Used=\u5E38\u7528\u51FD\u6570 +FormulaD-Input_formula_in_the_text_area_below=\u8BF7\u5728\u4E0B\u9762\u7684\u6587\u672C\u7F16\u8F91\u6846\u91CC\u9762\u8F93\u5165\u516C\u5F0F +Build-Way=\u6784\u5EFA\u65B9\u5F0F +M_Edit-Undo=\u64A4\u9500 +Line-Style=\u7EBF\u578B +Datasource-Other_Attributes=\u5176\u4ED6\u5C5E\u6027 +M_Server-Global_Parameters=\u5168\u5C40\u53C2\u6570 +Suffix=\u540E\u7F00 +Image-Image_Files=\u56FE\u7247\u6587\u4EF6 +EditRC-Entire_row=\u6574\u884C(R) +HF-First_Page=\u9996\u9875 +BackgroundTexture-Granite=\u82B1\u5C97\u5CA9 +DataList=\u6570\u636E\u94FE +Recursion=\u9012\u5F52 +BarStyle=\u6761\u5F62 +FR-Designer-Min_Width=\u6700\u5C0F\u5BBD\u5EA6 +Utils-Report-Env_Directory=\u62A5\u8868\u5DE5\u4F5C\u76EE\u5F55 +D-ChartArea=\u56FE\u8868\u533A +Only=\u53EA +FR-Base_No=\u5426 +SpecifiedG-Put_all_others_together=\u628A\u5176\u5B83\u6240\u6709\u7684\u5408\u5E76 +HF-NewLine_Des=\u53EF\u4EE5\u70B9\u51FB\u4E0A\u9762\u7684\u79FB\u52A8\u548C\u5220\u9664\u6309\u94AE\u6765\u64CD\u4F5C\u6362\u884C\u7B26 +WLayout-Border-ThreeContainer=\u62E5\u6709\u5317\u3001\u897F\u548C\u4E2D\u4E09\u5757\u7684\u8FB9\u754C\u5E03\u5C40\u5BB9\u5668\uFF0C\u5176\u4E2D\u5317\u90E8\u5757\u53EF\u4EE5\u6839\u636E\u9700\u8981\u8C03\u6574\u9AD8\u5EA6\uFF0C\u897F\u90E8\u5757\u53EF\u4EE5\u6839\u636E\u9700\u8981\u8C03\u6574\u5BBD\u5EA6 +Parameter_Name=\u53C2\u6570\u540D +FR-Base_Table=\u8868 +Des-Remove_WorkSheet=\u8981\u5220\u9664\u7684\u8868\u53EF\u80FD\u5B58\u5728\u6570\u636E,\u5982\u679C\u8981\u6C38\u4E45\u5220\u9664\u8FD9\u4E9B\u6570\u636E,\u8BF7\u6309'\u786E\u5B9A'\u6309\u94AE. +Rotation=\u65CB\u8F6C +Undefined=\u672A\u5B9A\u4E49 +Support-Auto_Complete_Shortcut=\u81EA\u52A8\u8865\u5168\u5FEB\u6377\u952E +Set_Column_Title_End=\u8BBE\u7F6E\u91CD\u590D\u7ED3\u5C3E\u5217 +Submit_Url=\u63D0\u4EA4\u5730\u5740 +ReportServerP-Are_you_sure_to_delete_the_selected_printer=\u4F60\u786E\u5B9E\u60F3\u5220\u9664\u9009\u4E2D\u7684\u6253\u5370\u673A\u5417 +long_data_can_not_show_fully=\u957F\u6570\u636E\u663E\u793A\u4E0D\u5168 +Utils-Beyond_the_bottom_side_of_Border=\u8D85\u51FA\u4E0B\u8FB9\u754C +FR-Import-Export_PDF=PDF\u683C\u5F0F +Form-CheckBoxGroup=\u590D\u9009\u6846\u7EC4 +Click-Me=\u70B9\u6211\u6709\u60CA\u559C\u54E6\uFF01 +Hyperlink-Self=\u5728\u539F\u7F51\u9875\u4E2D\u6253\u5F00\u94FE\u63A5(S) +Tree-Select_Leaf_Only_Tips=\uFF08\u4E0D\u52FE\u9009\u6B64\u9879\u65F6\uFF0C\u8FD4\u56DE\u503C\u4EC5\u4E3A\u7528\u6237\u52FE\u9009\u7684\u5F53\u524D\u8282\u70B9\u800C\u4E0D\u5305\u62EC\u5176\u5B50\u8282\u70B9\uFF09 +StyleAlignment-Text_Rotation=\u6587\u672C\u65B9\u5411 +Format-Error=\u8F93\u5165\u7684\u503C\u683C\u5F0F\u4E0D\u6B63\u786E +Server-Stop=\u505C\u6B62 +Preference-Setting_Grid=\u7F51\u683C\u8BBE\u7F6E +ReportServerP-Add_Printer=\u589E\u52A0\u6253\u5370\u673A +FR-Designer-Plugin_Active=\u542F\u7528 +Utils-File_name=\u6587\u4EF6\u540D +NOT_NULL_Des=\u4E0D\u80FD\u4E3A\u7A7A +Right_Border_Line=\u53F3\u6846\u7EBF +EditRC-Entire_column=\u6574\u5217(C) +PageSetup-Top_to_bottom=\u5148\u5217\u540E\u884C +Click-Get_Default_URL=\u70B9\u51FB\u6B64\u6309\u94AE\u83B7\u5F97\u9ED8\u8BA4URL +StyleAlignment-Wrap_Text=\u81EA\u52A8\u6362\u884C +Remove_All_Button=\u6E05\u9664\u6240\u6709\u6309\u94AE +FR-Designer_Component_Interval=\u7EC4\u4EF6\u95F4\u9694 +ReportColumns-Columns_vertically=\u5217\u5206\u680F +ReportGUI-Print_Background=\u6253\u5370/\u5BFC\u51FA\u62A5\u8868\u80CC\u666F +Export-CSV=CSV\u683C\u5F0F(\u9017\u53F7\u5206\u9694) +M_Edit-Paste=\u7C98\u8D34(P) +FR-Designer-Basic_Restart_Designer=\u91CD\u542F\u8BBE\u8BA1\u5668 +ReportServerP-PDF2-INFO=\u4EC5\u5728LINUX/UNIX\u4E0B\u672A\u5B89\u88C5\u4E2D\u6587\u5B57\u4F53\u65F6\u4F7F\u7528 +FormulaD-Check_Valid=\u68C0\u67E5\u5408\u6CD5\u6027 +server_disconnected=\u8FDE\u63A5\u5DF2\u65AD\u5F00 +ParameterD-Parameter_name_cannot_be_null=\u53C2\u6570\u7684\u540D\u5B57\u4E0D\u53EF\u4EE5\u4E3A\u7A7A +FR-Designer-Plugin_Version_Is_Lower_Than_Current=\u5347\u7EA7\u5305\u7684\u63D2\u4EF6\u7248\u672C\u6CA1\u6709\u6BD4\u5F53\u524D\u7684\u9AD8 +RWA-NotChange_Unmodified=\u672A\u4FEE\u6539\u4E0D\u66F4\u65B0 +User_Information=\u7528\u6237\u4FE1\u606F +Custom_styles_lost=\u81EA\u5B9A\u4E49\u6837\u5F0F\u5DF2\u4E22\u5931 +PageSetup-Margin=\u9875\u8FB9\u8DDD +M-New_FormBook=\u65B0\u5EFA\u8868\u5355 +Widget-TreeNode=\u6811\u8282\u70B9\u6309\u94AE +Form-Url=\u5730\u5740 +Utils-Beyond_the_left_side_of_Border=\u8D85\u51FA\u5DE6\u8FB9\u754C +Float_Element_Name=\u60AC\u6D6E\u5143\u7D20\u540D\u79F0 +Purple=\u7C89\u7D2B +DashBoard-Potence=\u6743\u9650 +M-Close_Template=\u5173\u95ED\u6A21\u677F(C) +paper=\u7EB8\u5F20 +Not_Exsit=\u4E0D\u5B58\u5728\u4E8E\u62A5\u8868 +Utils-Insert_Row=\u63D2\u5165\u884C +Utils-Delete_Row=\u5220\u9664\u884C +not_support_authority_edit=\u8BE5\u5143\u7D20\u4E0D\u652F\u6301\u6743\u9650\u63A7\u5236 +Formula_Tips=\u516C\u5F0F\u5FC5\u987B\u4EE5"\ +FR-Action_Copy=\u590D\u5236 +Compile_Success=\u7F16\u8BD1\u6210\u529F +BackgroundTexture-RecycledPaper=\u518D\u751F\u7EB8 +StyleAlignment-Single_Line=\u5355\u884C\u663E\u793A +Utils-Move_Down=\u4E0B\u79FB +Please_Set_Repeat_First=\u8BF7\u5148\u8BBE\u7F6E\u91CD\u590D\u6807\u9898\u884C\u548C\u5217 +Writer-ShortCuts_Setting=\u586B\u62A5\u5FEB\u6377\u952E\u8BBE\u7F6E +Verify-Data_Verify=\u6570\u636E\u6821\u9A8C +FR-mobile_analysis_style=\u89E3\u6790\u65B9\u5F0F +Confirm-Delete-File=\u662F\u5426\u5220\u9664\u6240\u9009\u6587\u4EF6\uFF1F +PageSetup-Header=\u9875\u7709 +JavaScrit-Asynch=\u5F02\u6B65 +ReportServerP-Toolbar=\u5DE5\u5177\u680F +Utils-Top_to_Bottom=\u7EB5\u5411 +Platform=\u5E73\u53F0 +FR-Designer-FRFont_Underline=\u4E0B\u5212\u7EBF +Show_in_Containing_Folder=\u6253\u5F00\u6240\u5728\u6587\u4EF6\u5939 +BackgroundTexture-WaterDroplets=\u6C34\u6EF4 +FR-Designer-Dependence_Install_Failed=\u4F9D\u8D56\u5B89\u88C5\u5931\u8D25 +Layout-Padding=\u5185\u8FB9\u8DDD +roles_already_authority_edited=\u5DF2\u914D\u7F6E\u89D2\u8272 +WidgetDisplyPosition=\u63A7\u4EF6\u663E\u793A\u4F4D\u7F6E +SpecifiedG-Force_Group=\u5F3A\u5236\u5206\u7EC4 +FormulaD-Formula_Definition=\u516C\u5F0F\u5B9A\u4E49 +I-xyScatterStyle_Marker=\u6563\u70B9\u56FE +Hour=\u5C0F\u65F6 +ColorMatch=\u914D\u8272 +M_Edit-Order=\u53E0\u653E\u6B21\u5E8F(O) +BackgroundTexture-Bouquet=\u82B1\u675F +Verify-Error_Information=\u6821\u9A8C\u51FA\u9519\u4FE1\u606F +LayerData=\u5E95\u5C42\u6570\u636E +Rename=\u91CD\u547D\u540D +Widget-Load_By_Async=\u5F02\u6B65\u52A0\u8F7D +Shape=\u56FE\u5F62 +BindColumn-This_Condition_has_been_existed=\u6B64\u6761\u4EF6\u5DF2\u7ECF\u5B58\u5728 +NS-exception_readError=\u9519\u8BEF\u4EE3\u7801\:1305 \u6A21\u677F\u6587\u4EF6\u89E3\u6790\u51FA\u9519 +Set_Column_Title_Start=\u8BBE\u7F6E\u91CD\u590D\u6807\u9898\u5217 +Fri=\u4E94 +M_Report-Report_Parameter=\u6A21\u677F\u53C2\u6570 +REPORTLETS=\u8BBF\u95EE\u591A\u5F20\u6A21\u677F\u7684\u8DEF\u5F84\u7684\u53C2\u6570 +WLayout-Card-ToolTip=\u5361\u7247\u5F0F\u5E03\u5C40\uFF0C\u8BE5\u5E03\u5C40\u5BB9\u5668\u4E2D\u53EF\u4EE5\u6DFB\u52A0\u591A\u4E2A\u5176\u5B83\u7EC4\u4EF6\u3002 +M-Popup_ChartType=\u56FE\u8868\u7C7B\u578B +Please-Wait=\u8BF7\u7A0D\u5019 +FR-Designer-Form-ToolBar_Widget=\u63A7\u4EF6 +Widget-Array=\u6570\u7EC4 +FieldBinding=\u7ED1\u5B9A\u5B57\u6BB5 +Top_Bottom_Border_Line=\u4E0A\u4E0B\u6846\u7EBF +M-Others=\u5176\u5B83... +Hyperlink-Link_Opened_in=\u94FE\u63A5\u6253\u5F00\u4E8E +FR-Utils_WorkBook=\u5DE5\u4F5C\u7C3F +M_Insert-Float=\u60AC\u6D6E\u5143\u7D20 +Out_Thick_Border_Line=\u7C97\u5323\u6846\u7EBF +FR-App-File_Lookup_range=\u67E5\u627E\u8303\u56F4 +ReportColumns-Columns_to=\u5206\u680F\u6210 +Transparent=\u900F\u660E +Parameter-Integer=\u6574\u578B +PDF-Print_Setting=PDF\u6253\u5370\u8BBE\u7F6E +Server-Embedded_Server=\u5167\u7F6E\u7684\u670D\u52A1\u5668 +M_Server-Server_Config_Manager=\u670D\u52A1\u5668\u914D\u7F6E +FR-Utils-Would_you_like_to_cover_the_current_file=\u4F60\u5E0C\u671B\u8986\u76D6\u5F53\u524D\u6587\u4EF6\u5417 +CellWrite-InsertRow_COPY=\u539F\u503C +Edit_String_To_Formula=\u662F\u5426\u5C06\u5B57\u7B26\u4E32\u7F16\u8F91\u4E3A\u516C\u5F0F +Edit-Column_Count=\u5217\u6570 +Father=\u7236 +ReportColumns-Columns_after=\u8D85\u8FC7 +FR-Designer_Undo=\u64A4\u9500 +DBCP_MIN_IDLE=\u6700\u5C0F\u7A7A\u95F2\u8FDE\u63A5\u6570 +M-Data_Analysis_Settings=\u6570\u636E\u5206\u6790\u8BBE\u7F6E +M-Form_Preview=\u8868\u5355\u9884\u89C8 +Form-Basic_Properties=\u57FA\u672C\u5C5E\u6027 +quote=\u5F15\u7528 +Thu=\u56DB +Collect-Collect_User_Information=\u6536\u96C6\u7528\u6237\u4FE1\u606F +Layer-Build=\u5206\u5C42\u6784\u5EFA +FR-Designer-FRFont_Line_Style=\u7EBF\u578B +BackgroundTexture-BrownMarble=\u68D5\u8272\u5927\u7406\u77F3 +PageSetup-Page_Setup=\u9875\u9762\u8BBE\u7F6E +Form-Semicolon=\u5206\u53F7 +ECP_re_input=\u5BC6\u7801\u9519\u8BEF, \u8BF7\u91CD\u65B0\u8F93\u5165 +ExpandD-Sort_After_Expand=\u6269\u5C55\u540E +FR-Designer-Dependence_Install_Succeed=\u4F9D\u8D56\u5B89\u88C5\u6210\u529F +Env-Configure_Workspace=\u914D\u7F6E\u5DE5\u4F5C\u76EE\u5F55 +feedback_info=\u6B22\u8FCE\u60A8\u63D0\u51FA\u5B9D\u8D35\u7684\u610F\u89C1\u548C\u5EFA\u8BAE\uFF0C\u8BF7\u5C06\u4FE1\u606F\u586B\u5199\u5F97\u5C3D\u91CF\u8BE6\u7EC6\uFF0C\u6211\u4EEC\u4F1A\u5C3D\u5FEB\u8054\u7CFB\u60A8 +Ratio=\u6BD4\u7387 +DBCP_TEST_ON_BORROW=\u83B7\u53D6\u8FDE\u63A5\u524D\u68C0\u9A8C +FR-Designer_layerIndex=\u4F9D\u8D56\u7684\u5C42\u6570 +WEB-Write_Setting=\u586B\u62A5\u9875\u9762\u8BBE\u7F6E +M-New_WorkBook=\u65B0\u5EFA\u5DE5\u4F5C\u7C3F +FR-Designer-Plugin_Has_Been_Actived=\u63D2\u4EF6\u5DF2\u88AB\u542F\u7528\uFF0C\u91CD\u542F\u8BBE\u8BA1\u5668\u53CA\u670D\u52A1\u5668\u751F\u6548\uFF0C\u670D\u52A1\u5668\u9700\u624B\u52A8\u91CD\u542F +Datasource-Maximum_Number_of_Preview_Rows=\u6700\u5927\u7684\u9884\u89C8\u884C\u6570 +ExpandD-Cell_Expand_Attributes=\u6269\u5C55\u5C5E\u6027 +Select_the_repeated_row_and_column=\u9009\u62E9\u9700\u8981\u91CD\u590D\u7684\u884C\u5217 +FormulaD-Date_&_Time=\u65E5\u671F\u548C\u65F6\u95F4\u51FD\u6570 +Max-Mem-Row-Count=\u7F13\u5B58\u81F3\u78C1\u76D8\u5F53\u8BB0\u5F55\u6570\u5927\u4E8E +BorderLayout-South=\u5357 +Export-Text=\u6587\u672C\u6587\u4EF6(\u5236\u8868\u7B26\u5206\u9694) +JavaScript-Synch=\u540C\u6B65 +FR-App-All_Warning=\u8B66\u544A +M_Edit-Send_Backward=\u4E0B\u79FB\u4E00\u5C42(B) +Form-Layout=\u5E03\u5C40 +FR-Designer-Plugin_Shop_Need_Update=\u63D2\u4EF6\u5546\u5E97\u6709\u65B0\u7248\u672C,\u662F\u5426\u66F4\u65B0? +FR-Designer_WorkBook=\u5DE5\u4F5C\u7C3F +UpBarBorderStyleAndColor=\u6DA8\u67F1\u6837\u5F0F +GridLayout=\u683C\u5B50\u5E03\u5C40 +Utils-Default_Value=\u9ED8\u8BA4\u503C +Widget-Comb_Widget_Config=\u7EC4\u5408\u63A7\u4EF6 +Import-Excel2007_Source=Excel2007\u6E90\u6587\u4EF6 +Y-Coordinate=\u7EB5\u5750\u6807 +FR-Base_SimSun_Not_Found=\u65E0\u6CD5\u627E\u5230\u5B8B\u4F53, \u8BF7\u9009\u62E9\u5F53\u524D\u7CFB\u7EDF\u4E0B\u9ED8\u8BA4\u8BED\u8A00\u4F5C\u4E3A\u8BBE\u8BA1\u5668\u5B57\u4F53. +FR-Designer_Seriously=\u4E25\u91CD +Upload=\u4E0A\u4F20 +Form-Widget_Property_Table=\u5C5E\u6027\u8868 +Des-Merger_Cell=\u9009\u62E9\u7684\u533A\u57DF\u5305\u542B\u591A\u4E2A\u6570\u636E\uFF0C\u5408\u5E76\u5355\u5143\u683C\u540E\u5C06\u53EA\u4FDD\u7559\u7F16\u8F91\u8FC7\u7684\u6240\u6709\u5355\u5143\u683C\u4E2D\u6700\u5DE6\u4E0A\u89D2\u7684\u6570\u503C. +FR-Designer-Basic_Copy_Build_NO=\u53CC\u51FB\u6784\u5EFA\u7248\u672C\u53F7\u53EF\u590D\u5236\u5230\u526A\u8D34\u677F +FR-Base_TurnOn=\u5F00\u542F +FR-Base_Rows=\u884C +Form-Remove_Repeat=\u53BB\u6389\u91CD\u590D\u9879 +Yes=\u662F +Datasource-JNDI_Name=JNDI\u7684\u540D\u5B57 +Utils-Delete_Column=\u5220\u9664\u5217 +HF-Delete_it=\u5220\u9664 +JavaScript-Dynamic_Parameters=\u52A8\u6001\u53C2\u6570 +px=\u50CF\u7D20 +FR-App-Report_Template=\u62A5\u8868\u6A21\u7248 +Verify-Message=\u9519\u8BEF\u4FE1\u606F +Plan=\u8BA1\u5212 +Vertical-Split_Layout=\u5782\u76F4\u5206\u5272\u5E03\u5C40 +ParameterD-Delay_Playing=\u70B9\u51FB\u67E5\u8BE2\u524D\u4E0D\u663E\u793A\u62A5\u8868\u5185\u5BB9 +TurnOff=\u5173\u95ED +FR-Please_Rename=\u8BF7\u91CD\u547D\u540D +Select_Data_Set=\u9009\u62E9\u6570\u636E\u96C6 +Name_has_Colon=\u540D\u5B57\: +ReportColumns-Columns_horizontally=\u884C\u5206\u680F +FR-Base_Yes=\u662F +ReportColumns-Repeat_Row=\u590D\u5236\u884C\u5E8F\u5217 +Print_Setting=\u6253\u5370\u8BBE\u7F6E +Registration-User_Name=\u7528\u6237\u540D +Datasource-User_Defined=\u81EA\u5B9A\u4E49 +FR-Designer-Plugin_DownLoadMessage=\u63D2\u4EF6\u9700\u8981\u4F9D\u8D56\u7684\u652F\u6301\uFF0C\u662F\u5426\u5B89\u88C5 ({R1} m)? +Delay=\u5EF6\u8FDF +FR-Designer-All_MSBold=\u5FAE\u8F6F\u96C5\u9ED1 +Utils-Now_create_connection=\u6B63\u5728\u5EFA\u7ACB\u6570\u636E\u8FDE\u63A5 +FR-Template-Path_chooseRightPath=\u8BF7\u9009\u62E9\u6B63\u786E\u8DEF\u5F84 +FR-Remote_Re_Connect_to_Server=\u670D\u52A1\u5668\u5DF2\u5173\u95ED\uFF0C\u662F\u5426\u91CD\u65B0\u8FDE\u63A5\u670D\u52A1\u5668? +Nation=\u56FD\u5BB6 +DBCP_MAX_WAIT=\u6700\u5927\u7B49\u5F85\u65F6\u95F4 +FR-App-Template_Form=\u8868\u5355 +Address=\u5730\u5740 +Sub_Report=\u5B50\u62A5\u8868 +FR-Import-Export_Word=Word\u683C\u5F0F +FR-Server_Version_Tip=\u60A8\u5F53\u524D\u8FDE\u63A5\u7684\u670D\u52A1\u5668\u7248\u672C\u4F4E\u4E8E\u60A8\u4F7F\u7528\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u53F7\uFF0C\u7EE7\u7EED\u8FDE\u63A5\uFF0C\u60A8\u7F16\u8F91\u7684\u4E00\u4E9B\u5C5E\u6027\u53EF\u80FD\u65E0\u6CD5\u6709\u6548\u4FDD\u5B58\u3002 \u5047\u5982\u9700\u8981\u8FDE\u63A5\u8BF7\u5C06\u60A8\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u4E0E\u670D\u52A1\u5668\u7248\u672C\u4FDD\u6301\u4E00\u81F4 +StyleAlignment-Left_To_Right=\u4ECE\u5DE6\u5411\u53F3 +Verify-ToolTips=\u4E0D\u6EE1\u8DB3\u516C\u5F0F\u63D0\u793A\u6821\u9A8C\u51FA\u9519\u4FE1\u606F +BackgroundTexture-Stationery=\u4FE1\u7EB8 +FR-Designer_RWA-Help=\u8BBE\u7F6E\u672A\u4FEE\u6539\u4E0D\u66F4\u65B0\u540E\uFF0C\u586B\u62A5\u9884\u89C8\u62A5\u8868\uFF0C\u8BB0\u5F55\u6240\u5728\u5355\u5143\u683C\u6CA1\u6709\u88AB\u7F16\u8F91\u4FEE\u6539\uFF0C\u5219\u6B64\u8BB0\u5F55\u4E0D\u4F1A\u8FDB\u884C\u66F4\u65B0\uFF1B\n\u5728\u5927\u6570\u636E\u91CF\u8BB0\u5F55\u67E5\u8BE2\u5E76\u56DE\u586B\u60C5\u51B5\u4E0B\uFF0C\u542F\u7528\u8BE5\u8BBE\u7F6E\uFF0C\u53EF\u4EE5\u63D0\u9AD8\u586B\u62A5\u63D0\u4EA4\u6027\u80FD\u3002 +M_Insert-Barcode=\u6761\u5F62\u7801 +Bounds=\u8FB9\u754C +FR-Designer-Undo_All_Authority_Operations=\u64A4\u9500\u524D\u4E00\u6B21\u6743\u9650\u7F16\u8F91\u7684\u6240\u6709\u64CD\u4F5C +Datasource-Context=\u4E0A\u4E0B\u6587 +CellWrite-Page_After_Column=\u5217\u540E\u5206\u9875 +FR-Designer_Cancel=\u53D6\u6D88 +Button-Group-Display-Columns=\u5C55\u793A\u5217\u6570 +Widget-Height=\u63A7\u4EF6\u9AD8\u5EA6 +Examples=\u4F8B\u5B50 +Formula_Dictionary_Display_Example=\u5B9E\u9645\u503C\u8303\u56F4\u4E3A \ +StyleAlignment-Horizontal=\u6C34\u5E73\u5BF9\u9F50 +HyperLink_Must_Alone_Reset=\u591A\u4E2A\u8D85\u94FE +ExpandD-Expand_Direction=\u6269\u5C55\u65B9\u5411 +Include=\u5305\u62EC +Export-Excel-Page=\u5206\u9875\u5BFC\u51FA +FR-Designer-Min_Height=\u6700\u5C0F\u9AD8\u5EA6 +Filed=\u533A\u57DF +ReportServerP-Import_Css=\u5F15\u7528Css +M_Insert-Formula=\u63D2\u5165\u516C\u5F0F +FR-Designer_Auto-Build=\u81EA\u52A8\u6784\u5EFA +FRFont-Foreground=\u989C\u8272 +Bubble-Width=\u6C14\u6CE1\u5BBD\u5EA6 +Form-Hierarchy_Tree=\u7ED3\u6784\u6811 +WLayout-Border-LayoutContainer=\u62E5\u6709\u4E2D\u90E8\u548C\u5317\u90E8\u4E24\u5757\u7684\u8FB9\u754C\u5E03\u5C40\u5BB9\u5668,\u5176\u4E2D\u5317\u90E8\u5757\u53EF\u4EE5\u6839\u636E\u9700\u8981\u8C03\u6574\u9AD8\u5EA6 +Preference-JDK_Home=JDK\u8DEF\u5F84 +Utils-Insert_Column=\u63D2\u5165\u5217 +FR-Designer_ToolBar_Top=\u9876\u90E8\u5DE5\u5177\u680F +BindColumn-The_Conditions_of_FatherCell=\u7236\u683C\u6761\u4EF6 +Links=\u94FE\u63A5 +M_Report-Report_Header=\u62A5\u8868\u9875\u7709 +Sub_Report_Description=\u5B50\u62A5\u8868\u9700\u8981\u5B58\u5728\u4E8E\u7236\u8868\u8FD0\u884C\u73AF\u5883\u4E0B\uFF0C\u4E14\u4E24\u8005\u4E0D\u80FD\u4E3A\u540C\u4E00\u6A21\u677F +T_Insert-Float=\u63D2\u5165\u60AC\u6D6E\u5143\u7D20 +BackgroundTexture-FishFossil=\u9C7C\u7C7B\u5316\u77F3 +My_Computer=\u6211\u7684\u7535\u8111 +FORMLET=\u8BBF\u95EE\u4E0D\u540C\u8868\u5355\u7684\u8DEF\u5F84\u7684\u53C2\u6570 +HF-Undefined=\u6CA1\u6709\u5B9A\u4E49 +Widget-User_Defined_Widget_Config=\u9884\u5B9A\u4E49\u63A7\u4EF6 +Report-Write_Attributes_Group_Warning=\u8BBE\u7F6E\u4E3A\u5355\u5143\u683C\u7EC4\u7684\u5404\u5B57\u6BB5\u4E2D\u7684\u5355\u5143\u683C\u4E2A\u6570\u5FC5\u987B\u76F8\u540C +Form-Single_quote=\u5355\u5F15\u53F7 +Compile_Success_And_Then_Save=\u7F16\u8BD1\u6210\u529F\u624D\u80FD\u6B63\u786E\u4FDD\u5B58 +FR-Designer_Layout-Padding=\u5185\u8FB9\u8DDD +Layout_Container=\u5E03\u5C40\u5BB9\u5668 +Admin=\u7BA1\u7406\u5458 +Form-EC_toolbar=\u62A5\u8868\u5757\u5DE5\u5177\u680F +FR-App-All_Auto=\u81EA\u52A8 +Utils-Available_Columns=\u53EF\u9009\u5217 +Form-Change_Widget_Name_Discription=\u8BF7\u8F93\u5165\u4E00\u4E2A\u65B0\u7684\u63A7\u4EF6\u540D +FR-Module_Designer=\u8BBE\u8BA1\u5668\u6A21\u5757 +FR-Import-Export_Text=\u6587\u672C\u6587\u4EF6(\u5236\u8868\u7B26\u5206\u9694) +Values-Editor=\u503C\u7F16\u8F91\u5668 +FR-Designer_Yes=\u662F +ExpandD-Expandable=\u53EF\u4F38\u5C55\u6027 +Tree-Return_Full_Path=\u7ED3\u679C\u8FD4\u56DE\u5B8C\u6574\u5C42\u6B21\u8DEF\u5F84 +FRFont-bolditalic=\u52A0\u7C97\u503E\u659C +FR-Base_StyleFormat_Sample=\u793A\u4F8B +Area_Value=\u533A\u57DF\u503C +FR-Designer-Plugin_Disable=\u7981\u7528 +Utils-Are_you_sure_to_remove_the_selected_item=\u4F60\u786E\u5B9E\u51B3\u5B9A\u5220\u9664\u9009\u4E2D\u7684\u9879 +Face_Write=\u586B\u62A5 +Poly-Report_Block=\u62A5\u8868\u7C7B\u578B\u805A\u5408\u5757 +Vgap=\u5782\u76F4\u95F4\u9699 +FR-Designer_HyperLink_Must_Alone_Reset=\u591A\u4E2A\u8D85\u94FE +DS-Class=\u7A0B\u5E8F +FR-Hyperlink_Please_Select_Reportlet=\u8BF7\u9009\u62E9\u7F51\u7EDC\u62A5\u8868 +FS_Report_Type=\u7C7B\u578B +HF-New_Line=\u6362\u884C\u7B26 +Privilege=\u6743\u9650 +Export-Offline-Html=\u8F93\u51FA\u79BB\u7EBFhtml\u62A5\u8868 +FR-Designer_open-new-form-tip=\u5F53\u524D\u6A21\u677F\u4E3A711\u4EE5\u4E0B\u7248\u672C\u5236\u4F5C\uFF0C\u65E0\u6CD5\u517C\u5BB9\uFF0C\u4E0D\u80FD\u6253\u5F00\u3002\u5047\u5982\u60F3\u6253\u5F00\u4FEE\u6539\u6B64\u8868\u5355\uFF0C\u8BF7\u4F7F\u7528\u5BF9\u5E94\u7248\u672C\u8BBE\u8BA1\u5668\u6253\u5F00\u3002 +FR-Designer-Widget-Style_Frame_Style=\u6846\u67B6\u6837\u5F0F +Present-No_Present=\u53D6\u6D88\u5F62\u6001\u8BBE\u7F6E +FR-Designer_Form-Password=\u5BC6\u7801 +X_Axis=X\u8F74 +FR-mobile_html_analysis=HTML5\u89E3\u6790 +M_Edit-Bring_to_Front=\u7F6E\u4E8E\u9876\u5C42(T) +Null_Value_Show=\u7A7A\u503C\u663E\u793A +Datasource-JNDI_DES=\u6CE8\u610F\:\u9700\u8981\u628A\u5305\u542BINITIAL_CONTEXT_FACTORY\u7C7B\u7684.jar\u6587\u4EF6\u590D\u5236\u5230\u8F6F\u4EF6\u5B89\u88C5\u76EE\u5F55\u4E0B\u7684/lib\u76EE\u5F55\u4E0B. +PrintP-Print_Preview=\u6253\u5370\u9884\u89C8 +Form-Hierarchy_Tree_Last=\u4E0A\u4E00\u4E2A +Has_been_gone=\ \u5DF2\u4E22\u5931\uFF0C\u662F\u5426\u589E\u52A0\u8BE5\u6837\u5F0F\uFF1F +RWA-Add_Field=\u6DFB\u52A0\u5B57\u6BB5 +newNode=\u65B0\u589E\u8282\u70B9 +PageSetup-Shrink_to_fit_content=\u6839\u636E\u5355\u5143\u683C\u5185\u5BB9\u81EA\u52A8\u8C03\u6574 +FR-Designer_Date=\u65E5\u671F +Column_Multiple=\u6570\u636E\u500D\u6570 +FR-App-All_File=\u6587\u4EF6 +Sort-Descending=\u964D\u5E8F +FR-Designer-Plugin_Delete=\u5220\u9664 +Above=\u4EE5\u4E0A\u7248\u672C +Utils-The-Chart=\u56FE\u8868 +FRFont-plain=\u5E38\u89C4 +Calculating=\u5904\u7406\u4E2D +Form-Object=\u8868\u5355\u5BF9\u8C61\: +May=\u4E94\u6708 +FR-Designer_Plugin_Normal_Update=\u66F4\u65B0 +FR-Hyperlink_Reportlet=\u7F51\u7EDC\u62A5\u8868 +M_Edit-Copy=\u590D\u5236(C) +Sub_Report_Message2=\u7236\u62A5\u8868\u4E0D\u5728\u5F53\u524D\u8FD0\u884C\u73AF\u5883\u4E0B +Sub_Report_Message3=\u4E0D\u80FD\u9009\u62E9\u81EA\u8EAB +Sub_Report_Message1=\u8BF7\u9009\u62E9\u6B63\u786E\u8DEF\u5F84 +Form-Allow_CustomData=\u5141\u8BB8\u81EA\u5B9A\u4E49\u503C +FR-Server_Version_Tip_MoreInfo=\u5EFA\u8BAE\u60A8\u6240\u5C5E\u56E2\u961F\u4F7F\u7528\u7684\u6211\u65B9FineReport\u4EA7\u54C1\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u53F7\u4EE5\u53CA\u90E8\u7F72\u7684\u670D\u52A1\u5668\u7248\u672C\u53F7\u4FDD\u6301\u4E00\u81F4\uFF0C\u4EE5\u907F\u514D\u7248\u672C\u4E0D\u4E00\u81F4\u9020\u6210\u7684\u95EE\u9898\u98CE\u9669\u3002\n\u5047\u5982\u60A8\u6253\u5F00\u66F4\u9AD8\u8BBE\u8BA1\u5668\u7248\u672C\u5236\u4F5C\u7684\u6A21\u677F\uFF0C\u53EF\u80FD\u6253\u5F00\u51FA\u9519\uFF0C\u4E5F\u53EF\u80FD\u4E22\u5931\u539F\u6709\u6A21\u677F\u5C5E\u6027\u3002\u5047\u5982\u60A8\u5236\u4F5C\u7684\u6A21\u677F\u4F7F\u7528\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u9AD8\u4E8E\u60A8\u6700\u7EC8\u90E8\u7F72\u6240\u7528\u7684\u670D\u52A1\u5668\u7248\u672C\uFF0C\u670D\u52A1\u5668\u53EF\u80FD\u65E0\u6CD5\u6B63\u5E38\u8F7D\u5165\u60A8\u5236\u4F5C\u7684\u6A21\u677F\u3002 +FR-Designer_Server-version-tip-moreInfo=\u5EFA\u8BAE\u60A8\u6240\u5C5E\u56E2\u961F\u4F7F\u7528\u7684\u6211\u65B9FineReport\u4EA7\u54C1\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u53F7\u4EE5\u53CA\u90E8\u7F72\u7684\u670D\u52A1\u5668\u7248\u672C\u53F7\u4FDD\u6301\u4E00\u81F4\uFF0C\u4EE5\u907F\u514D\u7248\u672C\u4E0D\u4E00\u81F4\u9020\u6210\u7684\u95EE\u9898\u98CE\u9669\u3002\n\u5047\u5982\u60A8\u6253\u5F00\u66F4\u9AD8\u8BBE\u8BA1\u5668\u7248\u672C\u5236\u4F5C\u7684\u6A21\u677F\uFF0C\u53EF\u80FD\u6253\u5F00\u51FA\u9519\uFF0C\u4E5F\u53EF\u80FD\u4E22\u5931\u539F\u6709\u6A21\u677F\u5C5E\u6027\u3002\u5047\u5982\u60A8\u5236\u4F5C\u7684\u6A21\u677F\u4F7F\u7528\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u9AD8\u4E8E\u60A8\u6700\u7EC8\u90E8\u7F72\u6240\u7528\u7684\u670D\u52A1\u5668\u7248\u672C\uFF0C\u670D\u52A1\u5668\u53EF\u80FD\u65E0\u6CD5\u6B63\u5E38\u8F7D\u5165\u60A8\u5236\u4F5C\u7684\u6A21\u677F\u3002 +Get_Lock=\u52A0\u9501 +HF-Edit_Footer=\u7F16\u8F91\u9875\u811A +Datasource-New_Charset=\u65B0\u7F16\u7801 +Preference-Custom=\u81EA\u5B9A\u4E49 +BackgroundTexture-Newsprint=\u65B0\u95FB\u7EB8 +ConditionB-Add_bracket=\u6DFB\u52A0\u62EC\u53F7 +Datasource-Connection_successfully=\u8FDE\u63A5\u6210\u529F +Function-The_class_must_implement_the_interface=\u8BE5\u7C7B\u5FC5\u987B\u5B9E\u73B0\u63A5\u53E3 +FR-Designer_ChartF-Transparency=\u900F\u660E +Crimson=\u6DF1\u7EA2 +FR-Hyperlink_Dialog=\u5BF9\u8BDD\u6846 +FR-Designer_Covered_All=\u5168\u90E8\u8986\u76D6 +Hyperlink-New_Window=\u65B0\u7A97\u53E3 +Style_Name=\u683C\u5F0F\u540D +CSS_warning=\ \u76F8\u5BF9\u62A5\u8868\u5DE5\u7A0B\u76EE\u5F55\u5982WebReport,\u5982WebReport\\css\u4E0B\u6709\u5F15\u7528\u7684css\u6587\u4EF6test.css\uFF0C\u5219\u76F8\u5BF9\u8DEF\u5F84\u4E3Acss/test.css +FR-Base_Column=\u5217 +Three_Rows_Of_Two_Grid=\u4E09\u884C\u4E24\u5217\u7684\u683C\u5B50 +DBCP_VALIDATION_QUERY=SQL\u9A8C\u8BC1\u67E5\u8BE2 +M_Edit-Clear_Formats=\u683C\u5F0F(F) +Parameter_Setting=\u53C2\u6570\u8BBE\u7F6E +Related=\u8054\u52A8 +BorderLayout-Constraints=\u4F4D\u7F6E +Write_Preview=\u586B\u62A5\u9884\u89C8 +PageSetup-Page_Order=\u6253\u5370\u987A\u5E8F +Verify-Verify_Formula=\u6821\u9A8C\u516C\u5F0F +State=\u7701\u5E02 +FR-Designer-Widget-Style_Body_Background=\u4E3B\u4F53\u80CC\u666F +FR-App-Privilege_No=\u6CA1\u6709\u6743\u9650 +Please_Drag_ParaPane= +Come_True=\u5B9E\u73B0 +ISEMPTY=\u4E3A\u7A7A +Background-Texture=\u7EB9\u7406 +FR-Designer_Verify-Message=\u9519\u8BEF\u4FE1\u606F +Locked=\uFF08\u5DF2\u9501\u5B9A\uFF09 +Utils-Design-Action_Cancel=\u53D6\u6D88 +Image-Titled=\u5E73\u94FA +Gradient-Direction=\u6E10\u53D8\u65B9\u5411 +Green=\u9752\u7EFF +Report_Engine=\u62A5\u8868\u5F15\u64CE +Return-String=\u8FD4\u56DE\u5B57\u7B26\u4E32 +Margin=\u8FB9\u8DDD +Pitch_Percentage=\u95F4\u8DDD\u767E\u5206\u6BD4 +FR-Base_TurnOff=\u5173\u95ED +Utils-has_been_existed=\u5DF2\u5B58\u5728 +HF-Insert_Formula=\u63D2\u5165\u516C\u5F0F +Utils-Exit_Designer=\u9000\u51FA\u8BBE\u8BA1\u5668 +Formula_Dictionary_Display=\u5BF9\u4E8E\u4E0A\u9762\u5B9E\u9645\u503C\u8303\u56F4\u5185\u7684\u6BCF\u4E2A\u503C($$$)\uFF0C\u5176\u663E\u793A\u503C\u4E3A +PageSetup-Left_to_right=\u5148\u884C\u540E\u5217 +Utils-Import_Excel_Data=\u5BFC\u5165[Excel] +M-Save=\u4FDD\u5B58 +redo=\u91CD\u505A +Status=\u72B6\u6001 +Draw=\u7ED8\u5236 +FR-Designer_Message=\u4FE1\u606F +Records=\u6761\u8BB0\u5F55 +FR-Designer_ComboBox=\u4E0B\u62C9\u6846 +Driver=\u9A71\u52A8\u5668 +Template_Parameters=\u6A21\u677F\u53C2\u6570 +Form-Remove_Repeat_Data=\u53BB\u9664\u91CD\u590D\u6570\u636E +ECP_decode=\u6A21\u677F\u89E3\u5BC6 +Area_Name=\u533A\u57DF\u540D +Others=\u5176\u5B83 +Merge=\u5408\u5E76 +BackgroundTexture-Parchment=\u7F8A\u76AE\u7EB8 +BindColumn-Bottom_N=\u540EN\u4E2A +Frame=\u6846\u67B6 +Bottom_Border_Line=\u4E0B\u6846\u7EBF +Muiti_In=\u591A\u5C42\u94BB\u53D6 +FR-Designer-Dependence_Install_Online=\u5728\u7EBF\u5B89\u88C5\u4F9D\u8D56\u73AF\u5883 +Use_Default_ToolBar=\u4F7F\u7528\u9ED8\u8BA4\u5DE5\u5177\u680F +M_Server-Platform_Manager=\u62A5\u8868\u5E73\u53F0\u7BA1\u7406 +PageSetup-inches=\u82F1\u5BF8 +Form-Widget_Property=\u5C5E\u6027\u540D +FR-Layout_Padding=\u5185\u8FB9\u8DDD +Schema=\u4E3B\u9898 +Server_Path=\u4E3B\u673A\u4F4D\u7F6E +Condition_Display=\u6761\u4EF6\u663E\u793A +FR-Server-Design_template_unopened=\u65E0\u6CD5\u6253\u5F00\u6A21\u7248 +Function-Function_Class_Name=\u51FD\u6570\u7C7B\u540D +Schedule-Template=\u6A21\u677F\u540D\u79F0 +Tree_Data_Field=\u6811\u6570\u636E\u5B57\u6BB5 +Border-Style-Normal=\u76F4\u89D2\u8FB9\u6846 +Top_And_Double_Bottom_Border_Line=\u4E0A\u6846\u7EBF\u548C\u53CC\u4E0B\u6846\u7EBF +FR-Server_Embedded_Server_Start=\u5167\u7F6E\u7684\u670D\u52A1\u5668-\u6253\u5F00 +FR-Designer-Basic_Restart_Designer_Later=\u7A0D\u540E\u91CD\u542F +StyleAlignment-Top=\u9760\u4E0A +ReportServerP-First=\u9996\u9875 +Not_Exist=\u4E0D\u5B58\u5728 +FR-Remote_File_is_Locked=\u60A8\u6240\u8981\u6253\u5F00\u7684\u62A5\u8868\u6B63\u5728\u88AB\u5176\u4ED6\u4EBA\u7F16\u8F91\uFF0C\u8BF7\u7A0D\u5019\u6253\u5F00 +Apply=\u5E94\u7528 +Sytle-Indentation=\u7F29\u8FDB +Parameter-Float=\u5355\u7CBE\u5EA6\u578B +HF-Center_Section=\u4E2D\u95F4\u533A\u57DF +Form-Double_quotes=\u53CC\u5F15\u53F7 +M_File-Export-Word=Word\u683C\u5F0F +M_File-Export-Text=\u6587\u672C\u6587\u4EF6(\u5236\u8868\u7B26\u5206\u9694) +PageSetup-First_Page_Number=\u8D77\u59CB\u9875\u7801 +Execute=\u6267\u884C +Task=\u4EFB\u52A1 +Custom_Button_Type_Submit=\u63D0\u4EA4 +FR-Designer-Widget_Settings=\u63A7\u4EF6\u8BBE\u7F6E +IS_Need_Password=\u9700\u8981\u5BC6\u7801 +PageSetup-Horizontally=\u6C34\u5E73\u5C45\u4E2D +No_Editor_Property_Definition=\u8BE5\u7F16\u8F91\u5668\u6CA1\u6709\u5C5E\u6027\u5B9A\u4E49 +Env-Remote_Server=\u8FDC\u7A0B\u670D\u52A1\u5668 +FR-Utils_Background=\u80CC\u666F +FR-Designer-Plugin_Warning=\u8B66\u544A +Server-version-info=\u60A8\u5F53\u524D\u6253\u5F00\u7684\u6A21\u677F\u6587\u4EF6\u662F\u7531\u66F4\u9AD8\u7248\u672C\u7684\u8BBE\u8BA1\u5668\u5236\u4F5C\u7684\uFF0C\u6253\u5F00\u4F1A\u6709\u51FA\u9519\u6216\u8005\u4E22\u5931\u539F\u6709\u6A21\u677F\u5C5E\u6027\u7684\u98CE\u9669\u3002 \u5047\u5982\u9700\u8981\u6253\u5F00\u6B64\u6A21\u677F\u8BF7\u60A8\u5C06\u60A8\u7684\u8BBE\u8BA1\u5668\u5347\u7EA7\u81F3 +CellWrite-Page_After_Row=\u884C\u540E\u5206\u9875 +HF-Right_Section=\u53F3\u533A\u57DF +PageSetup-Title_Start_Row=\u91CD\u590D\u6807\u9898\u884C +From=\u4ECE\u7B2C +Preference-Grid_Line_Color=\u7F51\u683C\u7EBF\u989C\u8272 +RowTo=\u884C\u81F3\u7B2C +FR-Designer_ReportColumns-Repeat_Column=\u590D\u5236\u5217\u5E8F\u5217 +M_Server-Function_Manager=\u51FD\u6570\u7BA1\u7406\u5668 +KeyWord=\u5173\u952E\u5B57 +DS-Multi_Dimensional_Database=\u591A\u7EF4\u6570\u636E\u5E93 +BiasD-Slope_Line=\u659C\u7EBF +Tue=\u4E8C +ReportServerP-Last=\u672B\u9875 +FR-Base_Columns=\u5217 +SpecifiedG-Leave_in_their_own_groups=\u7559\u5728\u5404\u81EA\u7684\u7EC4\u5185 +LOG-Please_Wait=\u8BF7\u7A0D\u5019 +Form-ToolBar=\u8868\u5355\u5DE5\u5177\u680F +FR-Base_sure_remove_item=\u4F60\u786E\u5B9E\u51B3\u5B9A\u5220\u9664\u9009\u4E2D\u7684\u9879 +Component_Scale=\u7EC4\u4EF6\u7F29\u653E +Hyperlink-Use_CJK_to_encode_parameter=\u4F7F\u7528CJK\u5904\u7406\u53C2\u6570 +LOG-Has_Been_Openned=\u5DF2\u7ECF\u6253\u5F00 +FR-Designer-Dependence=\u4F9D\u8D56\u73AF\u5883 +ECP_error_pwd=\u5BC6\u7801\u9519\u8BEF +REPORTLET=\u8BBF\u95EE\u6A21\u677F\u7684\u8DEF\u5F84\u7684\u53C2\u6570\u3002 +RWA-Column_Offset=\u5217\u504F\u79FB +Forecast=\u9884\u6D4B +Light_Orange=\u6D45\u6A58\u9EC4 +StyleAlignment-Vertical=\u5782\u76F4\u5BF9\u9F50 +Form-List=\u5217\u8868 +ParameterD-Show_Parameter_Window=\u663E\u793A\u53C2\u6570\u7A97\u4F53 +FR-Designer_Set_Submit_Event=\u8BBE\u7F6E\u63D0\u4EA4\u4E8B\u4EF6 +Value_Percent=\u503C\u6240\u5360\u6BD4\u4F8B +DBCP_MIN_EVICTABLE_IDLE_TIMEMILLIS=\u4FDD\u6301\u7A7A\u95F2\u6700\u5C0F\u65F6\u95F4\u503C +Function-The_class_must_be_located_in=\u8BE5\u7C7B\u5FC5\u987B\u653E\u7F6E\u5728 +FR-Action_Sort=\u6392\u5E8F +DataFunction-Average=\u5E73\u5747 +FR-Designer_Show_in_Containing_Folder=\u6253\u5F00\u6240\u5728\u6587\u4EF6\u5939 +M_File-Export-Excel=Excel\u683C\u5F0F +DataFunction-Max=\u6700\u5927\u503C +FR-Designer_Form-Widget_Name=\u63A7\u4EF6\u540D +FS_End_Date=\u7ED3\u675F\u65E5\u671F +Export-Excel-Simple=\u539F\u6837\u5BFC\u51FA +ColumnTo=\u5217\u81F3\u7B2C +SpecifiedG-Discard_all_others=\u4E22\u5F03\u5176\u5B83\u6240\u6709\u7684 +DS-TableData=\u6570\u636E\u96C6 +Form-DataTable=\u6570\u636E\u8868 +Sub_Report_ToolTips=\u5B50\u62A5\u8868\u63D0\u793A +Right_Top=\u53F3\u4E0A +M_Edit-Merge_Cell=\u5408\u5E76\u5355\u5143\u683C +FR-Designer_Restore_Default=\u6062\u590D\u9ED8\u8BA4 +Component_Interval=\u7EC4\u4EF6\u95F4\u9694 +Cover_None=\u5168\u4E0D\u8986\u76D6 +Datasource-From_Database=\u6570\u636E\u5E93\u8868 +Folder=\u76EE\u5F55 +Form-Allow_Edit=\u5141\u8BB8\u76F4\u63A5\u7F16\u8F91 +M_Edit-Clear=\u6E05\u9664(A) +ParentCell_Setting=\u7236\u683C\u8BBE\u7F6E +Only_selected_cell_can_paste_only=\u53EA\u6709\u9009\u4E2D\u5355\u5143\u683C\u65F6\u624D\u53EF\u4EE5\u7C98\u8D34 +M_Report-Report_Columns=\u62A5\u8868\u5206\u680F +Unit_Hundred=\u767E +FR-Designer_DataTable-Build=\u6781\u901F\u5206\u5C42\u6784\u5EFA +Widget-Form_Widget_Config=\u8868\u5355\u63A7\u4EF6 +Server-version-tip-moreInfo=\u5EFA\u8BAE\u60A8\u6240\u5C5E\u56E2\u961F\u4F7F\u7528\u7684\u6211\u65B9FineReport\u4EA7\u54C1\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u53F7\u4EE5\u53CA\u90E8\u7F72\u7684\u670D\u52A1\u5668\u7248\u672C\u53F7\u4FDD\u6301\u4E00\u81F4\uFF0C\u4EE5\u907F\u514D\u7248\u672C\u4E0D\u4E00\u81F4\u9020\u6210\u7684\u95EE\u9898\u98CE\u9669\u3002\n\u5047\u5982\u60A8\u6253\u5F00\u66F4\u9AD8\u8BBE\u8BA1\u5668\u7248\u672C\u5236\u4F5C\u7684\u6A21\u677F\uFF0C\u53EF\u80FD\u6253\u5F00\u51FA\u9519\uFF0C\u4E5F\u53EF\u80FD\u4E22\u5931\u539F\u6709\u6A21\u677F\u5C5E\u6027\u3002\u5047\u5982\u60A8\u5236\u4F5C\u7684\u6A21\u677F\u4F7F\u7528\u7684\u8BBE\u8BA1\u5668\u7248\u672C\u9AD8\u4E8E\u60A8\u6700\u7EC8\u90E8\u7F72\u6240\u7528\u7684\u670D\u52A1\u5668\u7248\u672C\uFF0C\u670D\u52A1\u5668\u53EF\u80FD\u65E0\u6CD5\u6B63\u5E38\u8F7D\u5165\u60A8\u5236\u4F5C\u7684\u6A21\u677F\u3002 +Actions=\u4EFB\u52A1 +FR-Designer-Dependence_Connect_Server_Error=\u65E0\u6CD5\u8FDE\u63A5\u670D\u52A1\u5668\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5 +High=\u9AD8 +HJS-Send_Failed=\u53D1\u9001\u5931\u8D25 +HJS-Message=\u5185\u5BB9 +File-Allow_Upload_Files=\u5141\u8BB8\u4E0A\u4F20\u6587\u4EF6\u7C7B\u578B +FR-Designer-Form-ToolBar_Chart=\u56FE\u8868 +Thick_Bottom_Border_Line=\u7C97\u5E95\u6846\u7EBF +FR-Action_Remove=\u5220\u9664 +FRFont-Style=\u5B57\u5F62 +Select_DataColumn=\u9009\u62E9\u6570\u636E\u5217 +StartValue=\u5F00\u59CB\u503C +SINGLE_FILE_UPLOAD=\u53EA\u652F\u6301\u5355\u6587\u4EF6\u4E0A\u4F20 +BackgroundTexture-Cork=\u8F6F\u6728\u585E +M_Format-Data_Map=\u6570\u636E\u5B57\u5178 +FR-mobile_native_analysis=\u539F\u751F\u89E3\u6790 +HighLight=\u9AD8\u5149 +FR-Designer_Dropdown-More-Preview=\u4E0B\u62C9\u83B7\u53D6\u66F4\u591A\u9884\u89C8\u65B9\u5F0F +local=\u672C\u5730 +FR-Designer_Gradation=\u5C42\u6B21 +PageSetup-Finis_Start_Column=\u91CD\u590D\u7ED3\u5C3E\u5217 +Env-Invalid_User_and_Password=\u975E\u6CD5\u7684\u7528\u6237\u540D\u6216\u5BC6\u7801 +FR-Designer-Plugin_All_Plugins=\u5168\u90E8\u63D2\u4EF6 +FR-Designer_Prepare_Export=\u5F00\u59CB\u5BFC\u51FA\uFF0C\u8BF7\u7A0D\u5019 +DBCP_TEST_ON_RETURN=\u5F52\u8FD8\u8FDE\u63A5\u524D\u68C0\u9A8C +no-alternatives=\u6CA1\u6709\u9009\u62E9\u9879 +FR-Designer_Submmit_WClass=\u540E\u53F0\u7C7B\u63D0\u4EA4 +M_Insert-Slope_Line=\u63D2\u5165\u659C\u7EBF +FR-Designer-Plugin_Plugin_Description=\u63D2\u4EF6\u63CF\u8FF0 +ExpandD-Not_Expand=\u4E0D\u6269\u5C55 +Utils-Bottom_to_Top=\u4ECE\u4E0B\u5230\u4E0A +Collect-Click\!_Get_user_information_code=\u70B9\u51FB\!\u83B7\u53D6\u6FC0\u6D3B\u7801 +FR-Already_exist=\u5F53\u524D\u73AF\u5883\u5DF2\u5B58\u5728\: +Send=\u53D1\u9001 +M_Edit-Clear_All=\u5168\u90E8(A) +Brown_Orange=\u68D5\u9EC4 +PageSetup-Portrait=\u7EB5\u5411 +FR-Designer_Form-RadioGroup=\u5355\u9009\u6309\u94AE\u7EC4 +FR-Utils-App_AllFiles=\u6240\u6709\u6587\u4EF6 +Popup=\u5F39\u51FA +Server_Charset=\u670D\u52A1\u5668\u7F16\u7801 +CellWrite-Repeat_Content_When_Paging=\u5206\u9875\u65AD\u5F00\u65F6\u503C\u91CD\u590D\u663E\u793A +Utils-No_Pagination=\u4E0D\u5206\u9875 +Form-NullLayout=\u7EDD\u5BF9\u5B9A\u4F4D +ConditionB-Remove_bracket=\u53BB\u6389\u62EC\u53F7 +email=\u90AE\u7BB1 +Minute=\u5206\u949F +FR-Designer-Plugin_Update=\u63D2\u4EF6\u66F4\u65B0 +alraedy_close=\u5DF2\u7ECF\u5173\u95ED +ComboCheckBox-End_Symbol=\u7ED3\u675F\u7B26 +DataColumn=\u6570\u636E\u5217 +Form-Password=\u5BC6\u7801 +FR-Background_Image_Adjust=\u9002\u5E94 +Export-Excel-PageToSheet=\u5206\u9875\u5206Sheet\u5BFC\u51FA +Edit-Row_Count=\u884C\u6570 +DS-Report_TableData=\u6A21\u677F\u6570\u636E\u96C6 +Sche-Hour=\u65F6 +Group_Count=\u8868\u793A\u603B\u4E2A\u6570 +EndValue=\u7ED3\u675F\u503C +FR-Designer_Sytle-Indentation=\u7F29\u8FDB +DownBarBorderStyleAndColor=\u8DCC\u67F1\u6837\u5F0F +World=\u4E16\u754C +FR-Designer-Basic_Cancel=\u53D6\u6D88 +Finally=\u6700\u540E +Low=\u4F4E +Please_Input_The_Key=\u8BF7\u8F93\u5165\u5BF9\u5E94\u5730\u56FE\u4F7F\u7528\u7684key +Smart=\u667A\u80FD +Preference-Predefined=\u9884\u5B9A\u4E49 +Current_custom_global=\u5F53\u524D\u62A5\u8868\u6240\u7528\u81EA\u5B9A\u4E49\u5168\u5C40\u6837\u5F0F +FR-Designer-Plugin_Shop_Need_Install=\u60A8\u8FD8\u6CA1\u6709\u63D2\u4EF6\u5546\u5E97\u7684\u8D44\u6E90,\u662F\u5426\u4E0B\u8F7D? +WEB-Pagination_Setting=\u5206\u9875\u9884\u89C8\u8BBE\u7F6E +RCodeDrawPix=\u50CF\u7D20 +FR-Designer-Widget-Style_Alpha=\u4E0D\u900F\u660E\u5EA6 +BorderLayout-North=\u5317 +HJS-Current_Page=\u5F53\u524D\u9875 +Compile=\u7F16\u8BD1 +Show_Blank_Row=\u8865\u5145\u7A7A\u767D\u884C +TableData_Dynamic_Parameter_Setting=\u52A8\u6001\u53C2\u6570\u6CE8\u5165 +FR-Background_Image_Default=\u9ED8\u8BA4 +BackgroundTexture-WhiteMarble=\u767D\u8272\u5927\u7406\u77F3 +DataFunction-Sum=\u6C42\u548C +Collect-The_user_information_code_is_invalid=\u8FD9\u4E2A\u6FC0\u6D3B\u7801\u662F\u65E0\u6548\u7684, \u8BF7\u5230\u5B98\u7F51\u7533\u8BF7 +Preference-Locale=\u56FD\u9645\u5316 +M_File-Export-PDF=PDF\u683C\u5F0F +BiasD-From-lower_left_to_upper_right=\u4ECE\u5DE6\u4E0B\u5230\u53F3\u4E0A\u53D1\u6563 +Border-Style=\u8FB9\u6846\u6837\u5F0F +Sort=\u6392\u5E8F +Image-Image_Layout=\u56FE\u7247\u5E03\u5C40 +Panel=\u9762\u677F +FR-Designer-Basic_Copy_Build_NO_OK=\u6784\u5EFA\u7248\u672C\u53F7\u5DF2\u7ECF\u590D\u5236\u5230\u526A\u8D34\u677F +All_Border_Line=\u6240\u6709\u6846\u7EBF +FR-Utils-Please_Input_a_New_Name=\u8BF7\u8F93\u5165\u65B0\u7684\u540D\u5B57 +FR-Base_Formula_Plugin=\u63D2\u4EF6\u51FD\u6570 +Two_Rows_Of_Three_Grid=\u4E24\u884C\u4E09\u5217\u7684\u683C\u5B50 +FR-Designer_Certificate_Pass=https\u79D8\u94A5 +Bubble-Series_Name=\u7CFB\u5217\u540D +M-New_Multi_Report=\u65B0\u5EFA\u805A\u5408\u62A5\u8868(M) +BackgroundTexture-PinkTissuePaper=\u7C89\u8272\u7802\u7EB8 +Preference-Support_Default_Parent_Calculate=\u9ED8\u8BA4\u7236\u683C\u8BA1\u7B97 +Show_Blank_Column=\u8865\u5145\u7A7A\u767D\u5217 +BaiduMap=\u767E\u5EA6\u5730\u56FE +Report-Web_Attributes=\u6A21\u677FWeb\u5C5E\u6027 +FR-Designer_StyleAlignment-Wrap_Text=\u81EA\u52A8\u6362\u884C +Need=\u9700\u8981 +Parameter-Double=\u53CC\u7CBE\u5EA6\u578B +Config_Servlet=\u914D\u7F6E\u8FDC\u7A0B\u670D\u52A1\u5668 +Form-Comma=\u9017\u53F7 +Verify=\u6821\u9A8C +PageSetup-Landscape=\u6A2A\u5411 +Weeks=\u4E2A\u661F\u671F +FR-Designer-Widget-Style_Title_Background=\u6807\u9898\u80CC\u666F +Preference-Pagination_Line_Color=\u5206\u9875\u7EBF\u989C\u8272 +Test_URL=\u6D4B\u8BD5\u8FDE\u63A5 +Fill_blank_Data=\u8865\u5145\u7A7A\u767D\u6570\u636E +ReportServerP-The_name_of_printer_cannot_be_null=\u6253\u5370\u673A\u7684\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A +FR-Designer-Basic_Copy_Activation_Key=\u53CC\u51FB\u8BBE\u8BA1\u5668\u7F16\u53F7\u53EF\u590D\u5236\u5230\u526A\u8D34\u677F +Continuum=\u76F8\u90BB\u8FDE\u7EED +BackgroundTexture-MediumWood=\u6DF1\u8272\u6728\u8D28 +Datasource-Column_Index=\u5217\u5E8F\u53F7 +Function-Function_File=\u51FD\u6570\u6587\u4EF6 +Form-Component_Bounds=\u63A7\u4EF6\u8FB9\u754C +Utils-Submit=\u63D0\u4EA4 +Conditions_formula=\u6761\u4EF6\u516C\u5F0F +M_Insert-Image=\u63D2\u5165\u56FE\u7247 +FR-Designer-Plugin_Will_Be_Delete=\u63D2\u4EF6\u5C06\u88AB\u5220\u9664\uFF0C\u9700\u91CD\u542F\u8BBE\u8BA1\u5668\u53CA\u670D\u52A1\u5668\uFF0C\u670D\u52A1\u5668\u9700\u624B\u52A8\u91CD\u542F +FormulaD-Functions=\u51FD\u6570 +Mobile_Terminal=\u79FB\u52A8\u7AEF +CheckBox=\u590D\u9009\u6846 +FR-Designer-Plugin_Install=\u5B89\u88C5 +Sun=\u65E5 +FR-Designer_ToolBar_Bottom=\u5E95\u90E8\u5DE5\u5177\u680F +Widget-Width=\u63A7\u4EF6\u5BBD\u5EA6 +Series_Name=\u7CFB\u5217\u540D +Set_Row_Title_Start=\u8BBE\u7F6E\u91CD\u590D\u6807\u9898\u884C +HF-Default_Page=\u9ED8\u8BA4\u9875 +Env_Des=\u5982\u679C\u767B\u5F55\u73AF\u5883\u4E2D\u7684\u62A5\u8868\u5DE5\u7A0B\u542F\u7528\u4E86\u6743\u9650,\u7528\u6237\u540D\u548C\u5BC6\u7801\u7684\u586B\u5199\u5FC5\u987B\u5BF9\u5E94\u767B\u9646\u73AF\u5883\u7684\u7528\u6237\u548C\u5BC6\u7801\u3002 +Widget-User_Defined=\u9884\u5B9A\u4E49 +Url_location=\u7EDD\u5BF9\u8DEF\u5F84 +Disk_File=\u78C1\u76D8\u6587\u4EF6 +Inside=\u5185\u90E8 +FR-Designer_filedChosen=\u4F9D\u8D56\u7684\u5B57\u6BB5 +ServerM-Predefined_Styles=\u9884\u5B9A\u4E49\u6837\u5F0F +is_need_word_adjust=\u4E0D\u56FA\u5B9A\u884C\u9AD8\u5BFC\u51FA +Background-Null=\u6CA1\u6709\u80CC\u666F +PageSetup-Vertically=\u5782\u76F4\u5C45\u4E2D +FR-Designer_Root=\u6839\u8282\u70B9 +FR-Designer_Form-TextArea=\u6587\u672C\u57DF +ReportServerP-Import_JavaScript=\u5F15\u7528JavaScript +Form-TableTree=\u8868\u683C\u6811 +Opened=\u5DF2\u5F00\u542F +M_Edit-Delete=\u5220\u9664(D) +Widget-Form_Widget_Container=\u8868\u5355\u5BB9\u5668 +BindColumn-Summary=\u6C47\u603B +Sche-Second=\u79D2 +Server-Open_Service_Manager=\u6253\u5F00\u670D\u52A1\u7BA1\u7406\u5668 +FRFont-Effects=\u7279\u6B8A\u6548\u679C +OtherGroup_Name=\u5176\u4ED6\u7EC4\u7684\u540D\u5B57 +Specify=\u6307\u5B9A +Highlight-Click_to_Choose_Property_To_Modify=\u70B9\u51FB\u9009\u62E9\u8981\u6539\u53D8\u7684\u5C5E\u6027 +triggered=\u88AB\u89E6\u53D1 +Double_Bottom_BorderLine=\u53CC\u5E95\u6846\u7EBF +M_Insert-Sub_Report=\u63D2\u5165\u5B50\u62A5\u8868 +Unit_Ten=\u5341 +Polybolck=\u805A\u5408\u5757 +Select_sort_order=\u9009\u62E9\u6392\u5217\u987A\u5E8F +HJS-Mail_to=\u6536\u4EF6\u4EBA +StyleAlignment-Left=\u9760\u5DE6 +Two_Rows_Of_Two_Grid=\u4E24\u884C\u4E24\u5217\u7684\u683C\u5B50 +FR-Designer-Form-Please_Drag_ParaPane=\u8BF7\u62D6\u5165\u53C2\u6570\u9762\u677F +Milliseconds=\u6BEB\u79D2 +DataFunction-None=\u65E0 +Delivery=\u4F20\u9012 +ColumnSpan=\u5217\u8DE8\u5EA6 +StyleAlignment-Bottom=\u9760\u4E0B +Read_failure=\u8BFB\u53D6\u5931\u8D25\uFF0C\u53EF\u80FD\u6E90\u6587\u4EF6\u5DF2\u635F\u574F +Verify-Verify=\u6570\u636E\u6821\u9A8C +FR-Designer-Widget-Style_Title_Format=\u6807\u9898\u683C\u5F0F +FR-Designer_Edit_String_To_Formula=\u662F\u5426\u5C06\u5B57\u7B26\u4E32\u7F16\u8F91\u4E3A\u516C\u5F0F +FR-Base_UnSignIn=\ \u672A\u767B\u5F55 +Every=\u6BCF +CellWrite-Preview_Cell_Content=\u9884\u89C8\u5355\u5143\u683C\u5185\u5BB9 +FormulaD-Data_Fields=\u6570\u636E\u9879 +FR-Designer_Role=\u89D2\u8272 +FR-Designer_Permissions=\u6743\u9650 +FR-Designer_Form_Button=\u6309\u94AE +FR-Designer_WF_Name=\u540D\u79F0 \ No newline at end of file diff --git a/designer_base/src/com/fr/design/locale/designer_zh_TW.properties b/designer_base/src/com/fr/design/locale/designer_zh_TW.properties index b97e4969b..9994427d8 100644 --- a/designer_base/src/com/fr/design/locale/designer_zh_TW.properties +++ b/designer_base/src/com/fr/design/locale/designer_zh_TW.properties @@ -508,7 +508,6 @@ FR-Designer_Create_Tree=\u69CB\u5EFA\u6A39 FR-Designer_Set_Callback_Function=\u8A2D\u7F6E\u56DE\u8ABF\u51FD\u6578 FR-Designer_ConfirmDialog_Content=\u662F\u5426\u78BA\u5B9A\u522A\u9664TAB\u63A7\u4EF6 FR-Designer_ConfirmDialog_Title=FineReport 8.0 - FR-Designer_FormulaPane_Tips=\u63D0\u793A\:\u60A8\u53EF\u4EE5\u901A\u904E\u8F38\u5165B1\u4F86\u5BEB\u5165\u7B2C\u4E00\u5217\u7B2C\u4E8C\u6B04\u7684\u8CC7\u6599\u3002 FR-Designer_FormulaPane_Variables=\u8B8A\u91CF FR-Designer_FormulaPane_Formula_Description=\u516C\u5F0F\u8AAA\u660E @@ -517,13 +516,11 @@ FR-Designer_FormulaPane_Search=\u641C\u7D22 FR-Designer_Tab_carousel=Tab\u8F2A\u64AD FR-Designer_setCarousel=\u958B\u555F\u8F2A\u64AD FR-Designer_carouselInterval=\u8F2A\u64AD\u9593\u9694 - FR-Designer_ClassName_panel=\u985E\u540D FR-Designer_Description_panel=\u63CF\u8FF0 FR-Designer_Edit_panel=\u7DE8\u8F2F FR-Designer_Property_panel=\u5C6C\u6027 FR-Designer_Select_panel=\u9078\u64C7 - FR-Designer_LayoutTable_Column_Width=160 FR-Designer_Set_BG_Of_Current_Row=\u586B\u5831\u7576\u524D\u7DE8\u8F2F\u5217\u80CC\u666F\u8A2D\u5B9A FR-Designer_Unload_Check=\u672A\u63D0\u4EA4\u96E2\u958B\u63D0\u793A @@ -539,7 +536,6 @@ FR-Designer_PageSetup_Page=\u9801\u9762 FR-Designer_Custom_Job_Description=\u63CF\u8FF0 FR-Designer_Property=\u5C6C\u6027 FR-Designer_ClassName=\u985E\u540D - FR-Designer_Polyblock_Edit=\u805A\u5408\u584A\u7DE8\u8F2F FR-Designer_Function_Description_Area_Text=\u8A72\u985E\u5FC5\u9808\u7E7C\u627F"com.fr.script.AbstractFunction"\u3002\u61C9\u5C07\u7DE8\u8B6F\u5F8C\u7684\u985E\u6A94\u6848\u62F7\u8C9D\u5230\nJ2EE\u4F3A\u670D\u5668 "{R1}" \u76EE\u9304\uFF0C\u5982\u679C\u5FC5\u8981\u7684\u8A71\u5C07class\u5C0D\u61C9\u7684java\u539F\u59CB\u6A94\u6848\u4E5F\u653E\u7F6E\u5230\u8A72\u76EE\u9304\u4E0B\u65B9\u4FBF\u7DE8\u8F2F\u548C\u67E5\u770B\u3002\n\u4F8B\u5982\uFF1A{R2} FR-Designer_PageSetup_Horizontal=\u6A2A\u5411 @@ -573,10 +569,1421 @@ FR-Designer_Background_Gradient_Color= FR-Designer_Background_Image= FR-Designer_Background_Clear= FR-Designer_Background_Image_Select= +FR-Designer_Too_Large_To_Paste=\u7D44\u4EF6\u5927\u5C0F\u8D85\u51FA\u908A\u754C\uFF0C\u7121\u6CD5\u7C98\u8CBC\uFF01 +FR-Designer_Too_Small_To_Paste=\u6B64\u8655\u7121\u6CD5\u7C98\u8CBC\uFF0C\u5C0F\u65BC\u7D44\u4EF6\u6700\u5C0F\u9AD8\u5EA6\uFF01 FR-Designer_Initial_Background_Tips= FR-Designer_Mouse_Move_Tips= FR-Designer_Mouse_Click_Tips= FR-Designer_AxisReversed=\u8EF8\u9006\u5E8F FR-Designer_Logarithmic=\u5C0D\u6578\u523B\u5EA6 FR-Designer_Chart_Log_Base=\u5E95\u6578 -FR-Designer_Chart_F_Radar_Axis=\u503C\u8EF8 \ No newline at end of file +FR-Designer_Chart_F_Radar_Axis=\u503C\u8EF8 +FR-Designer_Style=\u6A23\u5F0F +FR-Designer_Color=\u984F\u8272 +FR-Designer_Border=\u6846\u7DDA +FR-Designer_Background-Pattern=\u5716\u6848 +FR-Designer_SimpleDetail_Report= +FR-Designer_Reset= +FR-Designer_AllCategories= +FR-Designer-Selected_Widget= +FR-Designer_SimpleCross_Report= +FR-Designer_LocalWidget= +FR-Designer_Edit_Button_ToolBar=\u7DE8\u8F2F\u6309\u9215\u6240\u5728\u5DE5\u5177\u6B04 +FR-Designer_Remove_Button_ToolBar=\u79FB\u9664\u6309\u9215\u6240\u5728\u5DE5\u5177\u6B04 +FR-Designer_Install_Template= +FR-Designer_Allow-Blank= +FR-Designer_Delete_Template= +FR-Designer_Download_Template= +FR-Designer_DoubleLayer_Report= +FR-Designer_Validate= +CellWrite-InsertRow_NULL=\u7A7A\u503C +DashBoard-ChartFloat=\u5716\u8868 +contact_info=\u806F\u7E6B\u8A0A\u606F(\u9078\u586B) +Page_Setup=\u9801\u9762\u8A2D\u5B9A +CellWrite-Print_Export=\u5217\u5370\u532F\u51FA +Cannot_Get_Date=\u4E0D\u80FD\u7372\u53D6\u65E5\u671F +FR-Designer_Modify=\u4FEE\u6539 +M-Write_Preview=\u586B\u5831\u9810\u89BD +FR-Base_RWA-Key=\u4E3B\u9375 +China=\u4E2D\u570B +Set_Legend_Sytle=\u8A2D\u5B9A\u5716\u4F8B\u683C\u5F0F +FR-Designer_Number=\u6578\u5B57 +FR-Designer-Widget-Style_Common=\u666E\u901A +M-Save_As=\u53E6\u5B58\u70BA +Following_parameters_are_not_generated=\u4EE5\u4E0B\u53C3\u6578\u672A\u751F\u6210 +FR-Designer-Basic_Activation_Key_Copy_OK=Key has been copy to clipboard +Utils-Current_Sheet=\u7576\u524D\u7684Sheet +ConditionB-is_less_than=\u5C0F\u65BC +BorderLayout-West=\u897F +AnalysisLine=\u5206\u6790\u7DDA\u578B +Layer_Report_Warnning_info=\u5217\u5F0F\u5F15\u64CE\u9069\u7528\u65BC\u5927\u8CC7\u6599\u91CF\u60C5\u5F62\u4E0B\u3002
\u4F7F\u7528\u6B64\u5F15\u64CE\u5F88\u591A\u5831\u8868\u7279\u6027\u5C07\u4E0D\u518D\u652F\u6301\uFF0C
\u8A73\u7D30\u5167\u5BB9\u8ACB\u898B\u76F8\u95DC\u6587\u6A94\u3002 +Tree-Width=\u5BEC\u5EA6 +alert_word=\u9078\u64C7\u4E0D\u56FA\u5B9A\u5217\u9AD8\u532F\u51FA\u6642, \u7DE8\u8F2F\u532F\u51FA\u7684word, \u5132\u5B58\u683C\u5217\u9AD8\u6703\u96A8\u8457\u5167\u5BB9\u81EA\u52D5\u62C9\u4F38, \u6B64\u60C5\u6CC1\u4E0B\u532F\u51FA\u7D50\u679C\u8207\u9810\u89BD\u7D50\u679C\u53EF\u80FD\u6703\u4E0D\u518D\u4E00\u81F4. +PageSetup-Paper_Size=\u7D19\u5F35\u5927\u5C0F +M-Page_Setup=\u9801\u9762\u8A2D\u5B9A +DashBoard-FormBook=\u8868\u55AE +X-Coordinate=\u6A6B\u5EA7\u6A19 +Style-Line_Spacing=\u5217\u9593\u8DDD +FR-Designer_Plugin_Should_Update_Title=Warning +Server-Define_Data_Connection=\u5B9A\u7FA9\u8CC7\u6599\u9023\u63A5 +BarInside=\u67F1\u5B50\u5167\u5074 +Border-Color=\u6846\u7DDA\u984F\u8272 +NotAllow=\u4E0D\u5408\u6CD5 +Utils-File_type=\u6A94\u6848\u985E\u578B +FR-Designer-Plugin_Install_From_Local=Install plugin from local file +Summary_Method=\u532F\u7E3D\u65B9\u5F0F +Select_Specified_Grouping=\u9078\u64C7\u81EA\u5B9A\u7FA9\u5206\u7D44 +HF-Number_of_Page=\u7E3D\u9801\u6578 +FR-Designer-Tree_Height=\u9AD8\u5EA6 +Owner=\u4E3B +Home=\u4E3B\u9801 +FR-Server_Embedded_Server_Stop=\u5167\u7F6E\u7684\u4F3A\u670D\u5668-\u505C\u6B62 +FR-Designer-Plugin_Detecting_Update=Detecting update +HF-Whether_to_define_the_selected_type=\u662F\u5426\u5B9A\u7FA9\u9078\u4E2D\u7684\u985E\u578B +StyleAlignment-Right=\u9760\u53F3\u5C0D\u9F4A +FR-Designer_Alignment-Style=\u5C0D\u9F4A\u65B9\u5F0F +PageSetup-Title_Start_Column=\u91CD\u8907\u6A19\u984C\u6B04 +Tree-Mutiple_Selection_Or_Not=\u591A\u9078 +FR-Designer-Plugin_Search=Search +Choose_Role=\u6B0A\u9650\u63A7\u5236 +Append_Delete_Row_Message=\u6CE8\u610F\uFF01\u6307\u5B9A\u7684\u5132\u5B58\u683C\u9700\u8981\u8A2D\u5B9A\u64F4\u5C55\u5C6C\u6027 +Form-ComboBox=\u4E0B\u62C9\u6846 +PageSetup-Footer=\u9801\u5C3E +Sorting=\u6392\u5E8F\u4E2D +DBCP_TEST_WHILE_IDLE=\u958B\u555F\u7A7A\u9591\u56DE\u6536\u5668\u6AA2\u9A57 +DS-Embedded_TableData=\u5167\u7F6E\u8CC7\u6599\u96C6 +FR-Designer_No-Privilege=\u6C92\u6709\u6B0A\u9650 +FRFont-Subscript=\u4E0B\u6A19 +Background_Settings=\u80CC\u666F\u8A2D\u5B9A +FormulaD-Invalid_Formula=\u975E\u6CD5\u7684\u516C\u5F0F +FR-Base_Margin=\u908A\u8DDD +FR-Designer-Plugin_Shop_Installed=\u63D2\u4EF6\u5546\u5E97\u5B89\u88DD\u5B8C\u7562,\u662F\u5426\u7ACB\u523B\u555F\u52D5? +M_Edit-Send_to_Back=\u7F6E\u65BC\u5E95\u5C64(K) +Email-Can_Preview_Report_Content=\u6B63\u6587\u9810\u89BD\u5831\u8868\u5167\u5BB9 +FR-Designer-FRFont_Italic=\u659C\u9AD4 +CellWrite-Print_Background=\u5217\u5370/\u532F\u51FA\u5132\u5B58\u683C\u80CC\u666F +Wizard=\u56AE\u5C0E +Preference-Is_Drag_Permited=\u652F\u6301\u62D6\u62FD +FR-Designer_Release_Lock=\u89E3\u9396 +Form-Delimiter=\u5206\u9694\u7B26 +wrong=\u51FA\u932F\u4E86 +FR-Menu-Server_Chart_PreStyle=\u9810\u5B9A\u7FA9\u5716\u8868 +Form-Button=\u6309\u9215 +FormulaD-Valid_Formula=\u5408\u6CD5\u7684\u516C\u5F0F +ParameterD-Parameter_Interface=\u53C3\u6578\u754C\u9762 +At_least_one_visual_worksheet=\u5DE5\u4F5C\u7C3F\u4E2D\u81F3\u5C11\u8981\u6709\u4E00\u5F35\u53EF\u8996\u5316\u5DE5\u4F5C\u8868,\u5982\u679C\u60F3\u8981\u522A\u9664\uFF0C\u8ACB\u5148\u63D2\u5165\u4E00\u5F35\u65B0\u5DE5\u4F5C\u8868 +Need_Min_Value=\u9700\u8981\u6700\u5C0F\u503C +Allow_Blank=\u5141\u8A31\u70BA\u7A7A\u767D +CellWrite-InsertRow_DEFAULT=\u9810\u8A2D\u503C +Widget-Load_By_Complete=\u5B8C\u5168\u8F09\u5165 +FR-Designer-Basic_Only_Submit_Current_Sheet= +Sort-Sort_Order=\u6392\u5217\u9806\u5E8F +File-File_Size_Limit=\u6A94\u6848\u5927\u5C0F\u9650\u5236 +PrintP-Print=\u5217\u5370(T) +FR-Designer-StyleAlignment_Center=\u7F6E\u4E2D +Preference-Setting_Colors=\u984F\u8272\u914D\u7F6E +Judge=\u5224\u65B7 +Image-Adjust=\u9069\u61C9 +Collect-User_Information_DES=\u7528\u6236\u8A0A\u606F\u78BC\u53EA\u662F\u7528\u4F86\u6536\u96C6\u4F7F\u7528\u8005\u8A0A\u606F\u7684\uFF0C\u53EA\u8981\u9EDE\u64CA\u4E0A\u9762\u7684"\u7372\u53D6\u7528\u6236\u8A0A\u606F\u78BC"\u6309\u9215\uFF0C\u5C31\u6703\u5F48\u51FA\u4E00\u500B\u65B0\u7684\u700F\u89BD\u5668\u7A97\u9AD4\uFF0C\u767B\u9304\u5230\u7522\u54C1\u5B98\u65B9\u7DB2\u7AD9\u7372\u5F97\u9019\u500B\u7528\u6236\u8A0A\u606F\u78BC\uFF0C\u6574\u500B\u7A0B\u5E8F\u53EA\u9700\u89813\u5206\u9418\uFF0C\u53EA\u9700\u8981\u64CD\u4F5C\u4E00\u6B21\uFF0C\u800C\u4E14\u5B8C\u5168\u514D\u8CBB\u3002 +FR-Designer_Plugin_Normal_Update_From_Local=Update from local file +BackgroundTexture-Canvas=\u756B\u5E03 +BarOutSide=\u67F1\u5B50\u5916\u5074 +Preview_ToolTips=\u9810\u89BD\u63D0\u793A +FRFont-Family=\u540D\u5B57 +FR-Lic_does_not_Support_Remote=\u60A8\u7576\u524D\u4F7F\u7528\u7684lic\u4E0D\u652F\u6301\u9060\u7A0B\u8A2D\u8A08\u529F\u80FD\uFF0C\u8ACB\u5347\u7D1A\u60A8\u7684lic +InterfaceStyle=\u98A8\u683C +RWA-Key=\u4E3B\u9375 +WF-Name=\u540D\u7A31 +RWA-Click_Cell_To_Edit_Value=\u55AE\u64CA\u6A21\u677F\u5132\u5B58\u683C\u4FEE\u6539\u503C +Utils-Row_Height=\u5217\u9AD8 +ReportD-Excel_Export=\u5831\u8868\u532F\u51FA\u5C6C\u6027 +Form-Please_Select_A_Kind_Of_Form_Container=\u8ACB\u9078\u64C7\u4E00\u7A2E\u8868\u55AE\u5BB9\u5668 +Column_Does_Not_Exsit=\u6B04\u4E0D\u5B58\u5728 +M_Insert-Hyperlink=\u8D85\u7D1A\u93C8\u63A5 +can_not_include_underline=\u4E0D\u80FD\u5305\u542B"_" +FR-Designer-Plugin_Jar_Expired=Jar\u5305\u904E\u820A +FR-Background_Image_Extend=\u62C9\u4F38 +TopDownShade=\u4E0A\u4E0B\u6F38\u8B8A +FR-Base_Right=\u53F3 +DataBinding=\u8CC7\u6599\u7D81\u5B9A +ConnectionPool_Attr=\u9023\u63A5\u6C60\u5C6C\u6027 +Connect_SQL_Cannot_Null=\u8CC7\u6599\u9023\u63A5\u548CSQL\u9762\u677F\u4E0D\u80FD\u70BA\u7A7A +DBCP_MAX_ACTIVE=\u6700\u5927\u6D3B\u52D5\u9023\u63A5\u6578 +M_Window-Preference=\u9078\u9805 +ToolBar_Top=\u9802\u90E8\u5DE5\u5177\u6B04 +FR-Designer_Indent-Pixel=\u50CF\u7D20 +FR-Designer_Unit_MM=\u516C\u5398 +IDLE=\u7A7A\u9592 +FRFont-Underline=\u4E0B\u5283\u7DAB +FR-Designer-Plugin_Read_Plugin_List_Error=Error to read plugin list +Type_Set=\u985E\u578B\u8A2D\u5B9A +M_Format_A-Cell_Attributes=\u5176\u4ED6\u5C6C\u6027 +CellWrite-Show_As_Image=\u7528\u5716\u7247\u986F\u793A\u5167\u5BB9 +ShowAsDownload=\u7528\u4E0B\u8F09\u93C8\u63A5\u986F\u793A\u4E8C\u9032\u5236\u5167\u5BB9 +Form-ComboCheckBox=\u4E0B\u62C9\u8907\u9078\u6846 +BackgroundTexture-WovenMat=\u7DE8\u7E54\u7269 +BindColumn-Custom_Data_Appearance=\u81EA\u5B9A\u7FA9\u986F\u793A +Actived=\u6D3B\u52D5\u7684 +Env-Local_Directory=\u672C\u6A5F\u76EE\u9304 +Form-Colon=\u5192\u865F +Preference-Vertical_Scroll_Bar_Visible=\u8C4E\u76F4\u6EFE\u52D5\u689D\u53EF\u898B +Utils-Show_Cell_Value=\u986F\u793A\u5132\u5B58\u683C\u503C +FR-Designer_ReportColumns-Repeat_Row=\u8907\u88FD\u5217\u5E8F\u6B04 +SpecifiedG-Specified_Group=\u81EA\u5B9A\u7FA9\u5206\u7D44 +RWA-Smart_Add_Cells=\u667A\u80FD\u65B0\u589E\u5132\u5B58\u683C +HF-Left_Section=\u5DE6\u5340\u57DF +M_Report-Report_Background=\u5831\u8868\u80CC\u666F +Image-Extend=\u62C9\u4F38 +FS_BI=\u6C7A\u7B56\u5E73\u81FA +ToolBar_Bottom=\u5E95\u90E8\u5DE5\u5177\u6B04 +Hgap=\u6C34\u5E73\u9593\u9699 +FR-Designer_Enter-New-FileName=\u8ACB\u8F38\u5165\u65B0\u7684\u6A94\u6848\u540D +Verify_Fail=\u6821\u9A57\u5931\u6557 +CellWrite-InsertRow_Policy=\u63D2\u5165\u5217\u7B56\u7565 +FR-Designer-Plugin_Illegal_Plugin_Zip=Illegal plugin zip +RCodeVersion=\u7248\u672C +Convert=\u8F49\u63DB +Please_Drag=\u8ACB\u62D6\u5165\u5217\u6B04\u6B04\u4F4D\u3001\u532F\u7E3D\u6B04\u4F4D +FR-Designer-Widget-Style_Preview=\u9810\u89BD +mobile_number=\u624B\u6A5F\u865F\u78BC +FR-Designer_Form-ComboCheckBox=\u4E0B\u62C9\u8907\u9078\u6846 +CacheValidateTime=\u5831\u8868\u7DE9\u5B58\u6709\u6548\u6642\u9593 +Hyperlink-Extends_Report_Parameters=\u7E7C\u627F\u5831\u8868\u7684\u53C3\u6578 +FR-Designer_Values-Editor=\u503C\u7DE8\u8F2F\u5668 +Export-Excel=Excel\u683C\u5F0F +Utils-Left_to_Right=\u6A6B\u5411 +ExpandD-Vertical_Extendable=\u7E31\u5411\u53EF\u4F38\u5C55 +Utils-Report_Runtime_Env=\u5831\u8868\u5DE5\u4F5C\u76EE\u9304 +Utils-Right_to_Left=\u5F9E\u53F3\u5230\u5DE6 +Utils-Beyond_the_top_side_of_Border=\u8D85\u51FA\u4E0A\u908A\u754C +Exception_StackTrace=\u932F\u8AA4\u7570\u5E38\u5806\u68E7\u8A0A\u606F +Corresponding_Fields=\u5C0D\u61C9\u6B04\u4F4D +Form-CheckBox=\u5FA9\u9078\u6846 +Utils-Current_Row=\u7576\u524D\u5217 +BuildIn=\u5167\u7F6E +BindColumn-Results_Filter=\u7D50\u679C\u96C6\u7BE9\u9078 +FR-Designer-Plugin_Manager=\u63D2\u4EF6\u7BA1\u7406 +M_File-Export-CSV=CSV\u683C\u5F0F(\u9017\u865F\u5206\u9694) +Data_Filter=\u8CC7\u6599\u7BE9\u9078 +ReportServerP-Edit_Printer=\u7DE8\u8F2F\u5370\u8868\u6A5F +FR-Designer_Datasource-Stored_Procedure=\u5B58\u5132\u7A0B\u5E8F +RESTART=\u91CD\u5553 +FormulaD-Function_name=\u51FD\u6578\u540D +ChooseOneButton=\u8ACB\u9078\u64C7\u4E00\u500B\u63A7\u5236\u9805\u5F8C\u518D\u65B0\u589E +Priority=\u512A\u5148\u7D1A +Datasource-Datasource=\u8CC7\u6599\u6E90 +FR-Designer_Width=\u5BEC +Cannot-Add_To_This_Area=\u7121\u6CD5\u65B0\u589E\u5230\u8A72\u5340\u57DF +Run=\u904B\u884C +Set_Submit_Condition=\u8A2D\u5B9A\u63D0\u4EA4\u689D\u4EF6 +FR-Base_Value=\u503C +fileLocked_undeleted=\u6A21\u677F\u88AB\u9396\u5B9A\uFF0C\u4E0D\u80FD\u522A\u9664\uFF01\u9EDE\u64CA\u78BA\u5B9A\uFF0C\u91CD\u65B0\u6574\u7406\u6A21\u677F\u6B04\u8868 +Web_Apply=WEB\u61C9\u7528 +Refresh_Database=\u91CD\u65B0\u6574\u7406\u8CC7\u6599\u5EAB +Set_Row_Title_End=\u8A2D\u5B9A\u91CD\u8907\u7D50\u5C3E\u5217 +FR-Utils-New_Folder=\u65B0\u589E\u8CC7\u6599\u593E +BiasD-From-upper_left_to_lower_right=\u5F9E\u5DE6\u4E0A\u5230\u53F3\u4E0B\u767C\u6563 +CapsLock=\u5927\u5BEB\u9396\u5B9A\u5DF2\u6253\u958B +StyleFormat-Sample=\u793A\u4F8B +RWA-Smart_Add_Cell_Group=\u667A\u80FD\u65B0\u589E\u5132\u5B58\u683C\u7D44 +MConfig-CancelButton=\u53D6\u6D88 +Function-Choose_Function_Class=\u9078\u64C7\u51FD\u6578\u985E +LatLng=\u7D93\u7DEF\u5EA6 +DS-Server_TableData=\u4F3A\u670D\u5668\u8CC7\u6599\u96C6 +BackgroundTexture-GreenMarble=\u7DA0\u8272\u5927\u7406\u77F3 +read_time_out=\u52A0\u8F09\u8D85\u6642 +JavaScript-Commit_to_Database=\u63D0\u4EA4\u5165\u5EAB +DS-Relation_TableData=\u95DC\u806F\u8CC7\u6599\u96C6 +CellWrite-Page_Before_Row=\u5217\u524D\u5206\u9801 +FR-Designer-Plugin_Load_Plugins_From_Server=Loading plugins from store +D-Dispaly_Divide_Result_Set_into_Groups=\u5C07\u7D50\u679C\u96C6\u9032\u884C\u5206\u7D44 +Closed=\u5DF2\u95DC\u9589 +RWA-Help=\u8A2D\u5B9A\u672A\u4FEE\u6539\u4E0D\u66F4\u65B0\u5F8C\uFF0C\u586B\u5831\u9810\u89BD\u5831\u8868\uFF0C\u8A18\u9304\u6240\u5728\u5132\u5B58\u683C\u6C92\u6709\u88AB\u7DE8\u8F2F\u4FEE\u6539\uFF0C\u5247\u6B64\u8A18\u9304\u4E0D\u6703\u9032\u884C\u66F4\u65B0\uFF1B\n\u5728\u5927\u8CC7\u6599\u91CF\u8A18\u9304\u67E5\u8A62\u4E26\u56DE\u586B\u60C5\u6CC1\u4E0B\uFF0C\u555F\u7528\u8A72\u8A2D\u5B9A\uFF0C\u53EF\u4EE5\u63D0\u9AD8\u586B\u5831\u63D0\u4EA4\u6027\u80FD\u3002 +FR-Designer-Widget-Style_Custom=\u81EA\u5B9A\u7FA9 +FR-Designer-Widget-Style_Render_Style=\u6E32\u67D3\u98A8\u683C +Highlight-Barcode=\u689D\u78BC +FR-Designer_Connect_SQL_Cannot_Null=\u8CC7\u6599\u9023\u63A5\u548CSQL\u9762\u677F\u4E0D\u80FD\u70BA\u7A7A +trigger=\u89F8\u767C +M-Data_Analysis=\u8CC7\u6599\u5206\u6790 +Function-The_selected_file_cannot_be_null=\u6A94\u6848\u4E0D\u80FD\u70BA\u7A7A +No-Privilege=\u6C92\u6709\u6B0A\u9650 +ReportColumns-Repeat_Column=\u91CD\u8907\u6B04\u5E8F\u6B04 +SecondGraduationUnit=\u6B21\u8981\u523B\u5EA6\u55AE\u4F4D +Form-Widget_Property_Value=\u5C6C\u6027\u503C +GIVE-NAME=Give Name +FR-Designer_Rename=\u91CD\u547D\u540D +Utils-Merge_Cell=\u5408\u5E76\u5132\u5B58\u683C +Style-Spacing_After=\u6BB5\u5F8C +Enlarge_Or_Reduce=\u7E2E\u653E +Tree-Height=\u9AD8\u5EA6 +RCodeErrorCorrect=\u7CFE\u932F +Enter-New-FileName=\u8ACB\u8F38\u5165\u65B0\u7684\u6A94\u6848\u540D +try_resending=\u8ACB\u5617\u8A66\u91CD\u65B0\u767C\u9001 +M-Open_Report=\u958B\u555F\u820A\u6A94 +Please_Select=\u8ACB\u9078\u64C7 +InRow=\u5217(R) +Form-TextArea=\u6587\u672C\u57DF +FR-Designer_Https_Enable=\u555F\u7528https +Widget-Custom_Widget_Config=\u81EA\u5B9A\u7FA9\u63A7\u5236\u9805 +already_exists=\u5DF2\u7D93\u5B58\u5728 +Original_Marked_Filed=\u539F\u59CB\u6A19\u8A18\u6B04\u4F4D +BackgroundTexture-Sand=\u6C99\u7058 +Values=\u503C +Not_use_a_cell_attribute_table_editing=\u60A8\u4E0D\u53EF\u4EE5\u7528\u5132\u5B58\u683C\u5C6C\u6027\u8868\u7DE8\u8F2F +Root=\u6839\u7BC0\u9EDE +cycle=\u5468\u671F +open-new-form-tip=\u7576\u524D\u6A21\u677F\u70BA711\u4EE5\u4E0B\u7248\u672C\u88FD\u4F5C, \u7121\u6CD5\u517C\u5BB9, \u4E0D\u80FD\u6253\u958B. \u5047\u5982\u60F3\u6253\u958B\u4FEE\u6539\u6B64\u8868\u55AE, \u8ACB\u4F7F\u7528\u5C0D\u61C9\u7248\u672C\u8A2D\u8A08\u5668\u6253\u958B. +Support-Current_Auto_Complete_Shortcut=Current Shortcut +GROUPING_MODE=\u666E\u901A\u5206\u7D44 +DBCP_MAX_IDLE=\u6700\u5927\u7A7A\u9591\u9023\u63A5\u6578 +BackgroundTexture-BlueTissuePaper=\u85CD\u8272\u7802\u7D19 +ReportD-Export_Hided_Row=\u532F\u51FA\u96B1\u85CF\u5217 +FR-Custom_styles_lost=\u81EA\u5B9A\u7FA9\u6A23\u5F0F\u5DF2\u4E1F\u5931 +Env-Des2=Servlet\u4F4D\u7F6E\u662F\u4E3B\u6A5F\u540D\uFF0C\u57E0\uFF0CWEB\u61C9\u7528\uFF0CServlet\u7684\u7D44\u5408\uFF0C\u5B83\u61C9\u7576\u6307\u5411\u4E00\u500BServlet\uFF0C\u6BD4\u5982"http\://localhost\:8080/WebReport/ReportServer"\u3002\u60A8\u53EF\u4EE5\u9078\u64C7\u586B\u5BEB\u4E3B\u6A5F\u540D\uFF0C\u57E0\uFF0CWEB\u61C9\u7528\uFF0CServlet\uFF0C\u5B83\u6703\u81EA\u52D5\u751F\u6210\u60A8\u6240\u9700\u8981\u7684Servlet\u4F4D\u7F6E\u3002 +Env-Des1=\u8ACB\u9078\u64C7\u5831\u8868\u4F3A\u670D\u5668\u6240\u5728\u7684WEB-INF\u76EE\u9304 +PageSetup-Placement_Center_on_Page=\u7F6E\u4E2D\u65B9\u5F0F +sure_to_delete=\u78BA\u8A8D\u522A\u9664 +Already_exists_not_add_repeat=\u5DF2\u7D93\u5B58\u5728\uFF0C\u8ACB\u4E0D\u8981\u91CD\u8907\u65B0\u589E +Axis_Title=\u8EF8\u6A19\u984C +FR-Designer-Plugin_Install_Failed=Install failed +FR-Designer-Widget-Style_Frame=\u6846\u67B6 +MainGraduationUnit=\u4E3B\u8981\u523B\u5EA6\u55AE\u4F4D +Second_Axis=\u6B21\u5750\u6A19\u8EF8 +Classifier-Ge=\u500B +MSBold=\u5FAE\u8EDF\u96C5\u9ED1 +Form-Design_Size=\u8A2D\u8A08\u5C3A\u5BF8 +FR-App-Template_Save=\u5132\u5B58 +ExpandD-Horizontal_Extendable=\u6A6B\u5411\u53EF\u4F38\u5C55 +RP_Authority_Edit=\u6B0A\u9650\u7DE8\u8F2F +Warnning=\u63D0\u9192 +RoleName_Can_Not_Be_Null=\u89D2\u8272\u540D\u4E0D\u5141\u8A31\u70BA\u7A7A\u4E14\u4E0D\u80FD\u91CD\u8907 +Application=\u61C9\u7528\u7A0B\u5F0F +Formula_Dictionary_Display_Examples_Html= +ECP-error_pwd=\u5BC6\u78BC\u932F\u8AA4 +FR-Hyperlink_ChartHyperlink=\u5716\u8868\u8D85\u93C8 +M_Edit-FormatBrush=\u8907\u88FD\u683C\u5F0F(B) +Indent-Pixel=\u50CF\u7D20 +FR-Designer-Widget-Style_Border_Line=\u6846\u7DDA\u7C97\u7D30 +Widget-Default_Widget_Config=\u57FA\u672C\u63A7\u5236\u9805 +Version-does-not-support=\u60A8\u7576\u524D\u4F7F\u7528\u7684lic\u4E0D\u652F\u6301\u9060\u7A0B\u8A2D\u8A08\u529F\u80FD\uFF0C\u8ACB\u5347\u7D1A\u60A8\u7684lic +StyleAlignment-Right_To_Left=\u5F9E\u53F3\u5411\u5DE6 +Style-Spacing_Before=\u6BB5\u524D +Has_Existed=\u5DF2\u7D93\u5B58\u5728 +FR-Designer_DisplayNothingBeforeQuery=\u9EDE\u6483\u67E5\u8A62\u524D\u4E15\u986F\u793A\u68CA\u4ED6\u5167\u84C9 +Still=\u4ECD\u7136 +JS_WARNING2=\ \u4F8B\uFF1Ahttp\://localhost\:8075/WebReport/demo.js +JS_WARNING1=\ \u76F8\u5C0D\u5831\u8868\u5DE5\u7A0B\u76EE\u9304\u5982WebReport,\u5982WebReport\\js\u4E0B\u6709\u5F15\u7528\u7684js\u6A94\u6848test.js\uFF0C\u5247\u76F8\u5C0D\u8DEF\u5F91\u70BAjs/test.js +Connectionline=\u9023\u7DDA\u6A21\u5F0F +Utils-Insert_Record=\u63D2\u5165\u8A18\u9304 +Set-Parameter-Name=\u8ACB\u5148\u8A2D\u5B9A\u53C3\u6578\u540D +More-information=\u66F4\u591A\u8A0A\u606F +Parameter-Boolean=\u5E03\u723E\u578B +FRFont-Strikethrough=\u522A\u9664\u7DDA +Server-version-tip=\u60A8\u7576\u524D\u9023\u63A5\u7684\u4F3A\u670D\u5668\u7248\u672C\u4F4E\u65BC\u60A8\u4F7F\u7528\u7684\u8A2D\u8A08\u5668\u7248\u672C\u865F\uFF0C\u7E7C\u7E8C\u9023\u63A5\uFF0C\u60A8\u7DE8\u8F2F\u7684\u4E00\u4E9B\u5C6C\u6027\u53EF\u80FD\u7121\u6CD5\u6709\u6548\u5132\u5B58\u3002\u5047\u5982\u9700\u8981\u9023\u63A5\u8ACB\u5C07\u60A8\u7684\u8A2D\u8A08\u5668\u7248\u672C\u8207\u4F3A\u670D\u5668\u7248\u672C\u4FDD\u6301\u4E00\u81F4 +Form-All_Files=\u5168\u90E8\u6A94\u6848 +DBCP_NUM_TEST_PER_EVCTION_RUN=\u7A7A\u9591\u93C8\u63A5\u56DE\u6536\u6AA2\u67E5\u6578 +FR-Designer-FRFont_Family=\u540D\u5B57 +Device=\u8A2D\u5099 +M_Insert-Cell=\u5132\u5B58\u683C\u5143\u7D20 +Present-Formula_Present=\u516C\u5F0F\u6A21\u5F0F +FRFont-Superscript=\u4E0A\u6A19 +CellWrite-Page_Before_Column=\u6B04\u524D\u5206\u9801 +Golden=\u91D1\u8272 +Preference-Support_Cell_Editor_Definition=\u652F\u6301\u5132\u5B58\u683C\u7DE8\u8F2F\u5668 +M-Page_Preview=\u5206\u9801\u9810\u89BD +HJS-CC_to=\u6284\u9001 +Tree-Select_Leaf_Only=\u53EA\u8FD4\u56DE\u8449\u5B50\u7BC0\u9EDE +Pointer-A-Tick-Order=\u6307\u91DD\u503C\u53CA\u523B\u5EA6\u503C\u6578\u91CF\u7D1A +Pink=\u7C89\u7D05 +StyleAlignment-Distibuted=\u5206\u6563\u5C0D\u9F4A +Odd=\u5947\u6578 +already-saved=\u5DF2\u7D93\u5132\u5B58 +FR-Hyperlink_Chart_Cell=\u5716\u8868\u8D85\u93C8-\u806F\u52D5\u5132\u5B58\u683C +Style-Left_Indent=\u5DE6\u7E2E\u9032 +Offline=\u96E2\u7DDA +Form-Hierarchy_Tree_Next=\u4E0B\u4E00\u500B +Needle=\u6307\u91DD +GoogleMap=\u8C37\u6B4C\u5730\u5716 +Running=\u904B\u884C\u4E2D +M_Edit-Unmerge_Cell=\u53D6\u6D88\u5408\u4F75\u5132\u5B58\u683C +Out_Border_Line=\u5916\u5074\u6846\u7DDA +Style-Spacing=\u9593\u8DDD +FR-Utils_Submit=\u63D0\u4EA4 +ReportServerP-Previous=\u4E0A\u4E00\u9801 +StyleAlignment-Text_Style=\u6587\u672C\u63A7\u5236 +RelatedChart=\u5716\u8868\u806F\u52D5 +ProcessManager=\u6D41\u7A0B\u7BA1\u7406 +Cancel_Repeat_Attributes=\u53D6\u6D88\u91CD\u8907\u5217\u6B04 +FR-App-File_Message=\u8A0A\u606F +Datasource-Stored_Procedure=\u5132\u5B58\u7A0B\u5E8F +RWA-Row_Offset=\u5217\u504F\u79FB +M_Format-Style=\u6A23\u5F0F +detail_description=\u8A73\u7D30\u63CF\u8FF0 +FR-Designer-Widget-Style_Title_Content=\u6A19\u984C\u5167\u5BB9 +ParameterD-Report_Parameter=\u6A21\u7D44\u53C3\u6578 +HF-Edit_Header=\u7DE8\u8F2F\u9801\u9996 +Sytle-FRFont=\u5B57\u9AD4 +FR-Designer_Finish_Export=\u532F\u51FA\u5B8C\u7562 +MultiFileUpload=\u591A\u6A94\u6848\u4E0A\u50B3 +HF-Page_Number=\u9801\u78BC +Style-Right_Indent=\u53F3\u7E2E\u9032 +Desktop=\u684C\u9762 +FR-Server-All_Error=\u932F\u8AA4 +ConditionB-Operator=\u64CD\u4F5C +Today=\u4ECA\u5929 +Form-Widget_Name=\u63A7\u5236\u9805\u540D +Covered_All=\u5168\u90E8\u8986\u84CB +Day=\u5929 +External=\u5916\u90E8 +Black_Font=\u9ED1\u9AD4 +LOG-Report_Server_IS_Started=\u5831\u8868\u4F3A\u670D\u5668\u5DF2\u555F\u52D5 +Tips\:You_Can_Input_B1_To_Input_The_Data_Of_The_First_Row_Second_Column=\u63D0\u793A\:\u60A8\u53EF\u4EE5\u901A\u904E\u8F38\u5165B1\u4F86\u5BEB\u5165\u7B2C\u4E00\u5217\u7B2C\u4E8C\u6B04\u7684\u8CC7\u6599\u3002 +FR-Designer_ChooseOneButton=\u8ACB\u9078\u64C7\u4E00\u500B\u63A7\u5236\u9805\u5F8C\u518D\u65B0\u589E +Widget-Sizing=\u5927\u5C0F\u8ABF\u6574 +NO_Border_Line=\u7121\u6846\u7DDA +Cell_Data=\u5132\u5B58\u683C\u8CC7\u6599 +StyleAlignment-Vertical_Text=\u6587\u5B57\u8C4E\u6392 +Label=\u6A19\u7C64 +Orange=\u6854\u9EC3 +zeroMarginWarn=\u7531\u65BC\u5370\u8868\u6A5F\u5B58\u5728\u7269\u7406\u908A\u8DDD
\u5831\u8868\u7684\u9801\u908A\u8DDD\u8A2D\u5B9A\u904E\u5C0F\u53EF
\u80FD\u6703\u51FA\u73FE\u5167\u5BB9\u5217\u5370\u4E0D\u5168.
  +Widget-Date_Selector_Return_Type=\u8FD4\u56DE\u503C\u985E\u578B +Utils-Switch_To_Template_Reportlet=\u5207\u63DB\u5230\u7BC4\u672C\u7DB2\u8DEF\u5831\u8868 +satisfy=\u6EFF\u8DB3\u689D\u4EF6 +FR-Designer_WidgetDisplyPosition=\u63A7\u5236\u9805\u986F\u793A\u4F4D\u7F6E +FR-Base_Top=\u4E0A +FR-Designer_Form-CheckBox=\u5FA9\u9078\u6846 +Reportlet-Parameter_Type=\u53C3\u6578\u50B3\u905E\u65B9\u5F0F +sending=\u6B63\u5728\u767C\u9001... +FR-Designer-FRFont_Foreground=\u984F\u8272 +FR-Import-Export_SVG=SVG\u683C\u5F0F +M_Edit-Clear_Contents=\u5167\u5BB9(C) +Session=\u6703\u8A71 +Widget-Load_Type=\u8F09\u5165 +template_unsaved=\u7BC4\u672C\u7121\u6CD5\u5132\u5B58 +check_communication=\u8ACB\u6AA2\u67E5\u7DB2\u8DEF\u901A\u8A0A\u662F\u5426\u6B63\u5E38\u53CA\u4F3A\u670D\u5668\u662F\u5426\u6B63\u5E38\u904B\u884C +List-Need_Head=\u9700\u8981\u6B04\u8868\u982D +FR-Designer-Plugin_Has_Been_Installed=Plugin has been installed +FR-Widget_Tree_And_Table=\u63A7\u5236\u9805\u6A39\u548C\u63A7\u5236\u9805\u8868 +FR-Base_Help=\u8AAA\u660E +FR-Designer-Plugin_Update_Successful=Update successfully +August=\u516B\u6708 +LOG-Is_Being_Openned=\u6B63\u5728\u6253\u958B +BackgroundTexture-Oak=\u6A61\u6728 +Multi_nam_formula=\ \u8CC7\u6599\u96C6\u540D\: \u8CC7\u6599\u96C6\u689D\u4EF6\: +TurnOn=\u958B\u5553 +HJS-Send_Successfully=\u767C\u9001\u6210\u529F +Mon=\u661F\u671F\u4E00 +Inner_Parameter=Inner Parameter +Required=\u5FC5\u586B +Summary=\u532F\u7E3D +template_unopened=\u7121\u6CD5\u6253\u958B\u7BC4\u672C +FR-Base_Bottom=\u4E0B +DataFunction-Min=\u6700\u5C0F\u503C +StyleFormat-Percent=\u767E\u5206\u6BD4 +FR-App-All_Custom=\u81EA\u5B9A\u7FA9 +M_Insert-Data_Column=\u63D2\u5165\u8CC7\u6599\u6B04 +PLEASE=Please +Numbers=\u6578\u76EE +Release_Lock=\u89E3\u9396 +Background-Background_is_NULL=\u6C92\u6709\u80CC\u666F +FR-Designer_Sytle-FRFont=\u5B57\u9AD4 +Gradation=\u5C64\u6B21 +The_current_list_is_empty=\u7576\u524D\u6B04\u8868\u70BA\u7A7A +Formula_Dictionary_Display_Examples= +Schedule-Template_Parameter=\u7BC4\u672C\u53C3\u6578 +JSShow=\u52D5\u614B\u5C55\u793A +Level_coordinates=\u5C64\u6B21\u5750\u6A19 +MainGraduationLine=\u4E3B\u8981\u523B\u5EA6\u7DDA +Hyperlink-Web_link=\u7DB2\u9801\u93C8\u63A5 +StyleAlignment-between_-90_and_90=\u5728-90\u548C90\u4E4B\u9593 +FormulaD-Custom_Function=\u81EA\u5B9A\u7FA9\u51FD\u6578 +FR-Designer_Integer=\u6574\u6578 +PageSetup-Finis_Start_Row=\u91CD\u8907\u7D50\u5C3E\u5217 +RWA-Remove_Field=\u79FB\u9664\u6B04\u4F4D +Form-Desin_Width=\u8A2D\u8A08\u5BEC\u5EA6 +No-tableData=\u6C92\u6709\u8FD4\u56DE\u8CC7\u6599\u96C6 +Page_Total=\u5171 +FR-Designer-Plugin_Connect_Server_Error=Error to connect plugin store +Import-Excel_Source=Excel\u6E90\u6A94\u6848 +Utils-Left_to_Right_a=\u5F9E\u5DE6\u5F80\u53F3 +ExpandD-Expand_Attribute=\u64F4\u5C55\u5C6C\u6027 +Report-Write_Attributes=\u5831\u8868\u586B\u5831\u5C6C\u6027 +Utils-Current_Column=\u7576\u524D\u6B04 +Need_Max_Value=\u9700\u8981\u6700\u5927\u503C +Report_Not_Exist=\u6240\u9078\u5831\u8868\u4E0D\u5B58\u5728\uFF01 +HF-Insert_Content=\u63D2\u5165\u5167\u5BB9 +UpParent=\u4E0A\u7236\u683C +PageSetup-Page=\u9801\u9762 +Utils-Move_Up=\u4E0A\u79FB +BackgroundTexture-PurpleMesh=\u7D2B\u8272\u7DB2\u8DEF +Export-Word=Word\u683C\u5F0F +ServerM-Widget_Manager=\u5143\u4EF6\u7BA1\u7406 +FR-Designer-Basic_Activation_Key=Activation Key\: +FR-App-Template_Report_Not_Exist=\u6240\u9078\u5831\u8868\u4E0D\u5B58\u5728 +Protected=\u4FDD\u8B77 +Skip=\u8DF3\u904E +FR-Designer_PageSetup-Vertically=\u5782\u76F4\u7F6E\u4E2D +revert=\u5FA9\u539F +PageSetup-Predefined=\u9810\u5B9A\u7FA9 +Border-Style-Radius=\u5713\u89D2\u6846\u7DDA +IntPart=\u6574\u6578\u90E8\u4EFD +ExpandD-Data_Column=\u8CC7\u6599\u6B04 +Sort-Ascending=\u5347\u51AA +FR-Designer-Widget_Style=\u6A23\u5F0F +parameter_name_exist=\u8A72\u53C3\u6578\u540D\u5DF2\u5B58\u5728 +FR-Designer_Layer-Build=\u666E\u901A\u5206\u5C64\u69CB\u5EFA +Please_Rename=\u8ACB\u91CD\u547D\u540D +Form-Editing_Listeners=\u4E8B\u4EF6\u7DE8\u8F2F +RWA-Smart_Add_Fields=\u667A\u80FD\u65B0\u589E\u6B04\u4F4D +FR-Designer-Tree_Width=\u5BEC\u5EA6 +Record=\u8A18\u9304 +Poly-Report_Component=\u8907\u5408\u5F0F\u5831\u8868\u5143\u4EF6 +Options=\u9078\u9805 +NS-war-remote=\u932F\u8AA4\u4EE3\u78BC\:1117 \u58D3\u7E2E\u90E8\u7F72\u4E0D\u652F\u6301\u9060\u7A0B\u8A2D\u8A08 +Sche-Minute=\u5206 +Three_Rows_Of_Three_Grid=\u4E09\u5217\u4E09\u6B04\u7684\u683C\u5B50 +WorkSheet=\u81EA\u7531\u5831\u8868 +FR-Designer-Widget_Size=\u63A7\u5236\u9805\u5927\u5C0F +BindColumn-Select=\u6B04\u8868 +FR-Widget_Mobile_Terminal=\u884C\u52D5\u8A2D\u5099 +FR-Background_Image_Titled=\u5E73\u92EA +SetPrinterOffset=\u5370\u8868\u6A5F\u504F\u79FB +FR-Designer-Plugin_Installed=Installed +FR-Designer-Hyperlink_Name=\u540D\u5B57 +FR-Designer_Form-Button=\u6309\u9215 +Black=\u9ED1\u8272 +FR-Designer-Widget-Style_Border_Color=\u6846\u7DDA\u984F\u8272 +Set_Submit_Event=\u8A2D\u5B9A\u63D0\u4EA4\u4E8B\u4EF6 +PDF-Print_isPopup=\u662F\u5426\u5F48\u51FA\u8A2D\u5B9A\u6846 +LayerPageReport_CountPerPage=\u6BCF\u9801\u8A18\u9304\u6578 +Display_Modes=\u986F\u793A\u6A21\u5F0F +RowSpan=\u5217\u8DE8\u5EA6 +Datasource-Test_Connection=\u6E2C\u8A66\u93C8\u63A5 +Function-Function_Manager=\u51FD\u6578\u7BA1\u7406\u5668 +Host_Name=\u4E3B\u6A5F\u540D +CellWrite-Show_As_HTML=\u7528HTML\u986F\u793A\u5167\u5BB9 +FR-Designer-Widget-Style_Shadow=\u9670\u5F71 +FR-Designer_Parameter_String=\u5B57\u5143\u4E32 +Form-SupportTag=\u6A19\u7C64\u5F62\u5F0F\u986F\u793A +ReportD-Report_Write_Attributes=\u5831\u8868\u586B\u5831\u5C6C\u6027 +DataFunction-Count=\u500B\u6578 +Top_And_Thick_Bottom_Border_Line=\u4E0A\u6846\u7DDA\u548C\u7C97\u4E0B\u6846\u7DDA +Client=Client +BindColumn-Result_Serial_Number_Start_From_1=\u5E8F\u865F\u5F9E1\u958B\u59CB +History=\u6B77\u53F2 +Already_exists=\u5DF2\u5B58\u5728\uFF0C\u8ACB\u91CD\u65B0\u8F38\u5165\uFF01 +Datasource-Original_Charset=\u539F\u59CB\u7DE8\u78BC +FR-Base_Left=\u5DE6 +ReportServerP-Next=\u4E0B\u4E00\u9801 +BindColumn-Top_N=\u524DN\u500B +Animation_Special=\u7279\u6548 +Widget-Chart_Widget_Config=\u5716\u8868\u63A7\u5236\u9805 +FR-Designer-Plugin_Cannot_Update_Not_Install=\u7121\u6CD5\u66F4\u65B0\u63D2\u4EF6\uFF0C\u8ACB\u6AA2\u67E5\u8A72\u63D2\u4EF6\u662F\u5426\u5DF2\u7D93\u6210\u529F\u5B89\u88DD +After_Changed_Some_Attributes_Are_Different=\u8F49\u63DB\u5F8C\u5831\u8868\u7684\u67D0\u4E9B\u5C6C\u6027\u6703\u767C\u751F\u6539\u8B8A\uFF0C\u662F\u5426\u7E7C\u7E8C +PieStyle=\u9905\u72C0 +HF-Are_you_sure_to_delete_it=\u4F60\u78BA\u5BE6\u60F3\u8981\u522A\u9664\u9019\u500B\u5143\u7D20\u55CE +Utils-Design-File_Open=\u958B\u555F\u820A\u6A94 +FR-Utils_Label=\u6A19\u7C3D +Data-Label=\u8CC7\u6599\u6A19\u7C64 +M_Insert-Text=\u63D2\u5165\u6587\u5B57 +Form-View_Tree=\u6AA2\u8996\u8868\u6A39 +M_Insert-Chart=\u63D2\u5165\u5716\u8868 +HF-Even_Page=\u5076\u6578\u9801 +ReportServerP-Report_server_parameter=\u5831\u8868\u4F3A\u670D\u5668\u53C3\u6578 +JavaScript-Form_Submit=\u8868\u55AE\u63D0\u4EA4 +Horizontal-Split_Layout=\u6C34\u5E73\u5206\u5272\u5E03\u5C40 +BorderLayout-Center=\u4E2D +INFO-Reset_Webapp=\u91CD\u7F6E\u61C9\u7528\u4F3A\u670D\u5668 +FR-Designer_Text=\u6587\u672C +IN_and_INOUT_type_not_as_cursor=IN\u548CINOUT\u985E\u578B\u4E0D\u53EF\u4EE5\u4F5C\u70BA\u6E38\u6A19 +Main_Axis=\u4E3B\u5750\u6A19\u8EF8 +M_Edit-Cut=\u526A\u4E0B(T) +Utils-The_Name_has_been_existed=\u6B64\u540D\u5DF2\u7D93\u5B58\u5728 +FR-Background_Image=\u5716\u7247 +Character=\u6587\u5B57 +Unit_Thousand=\u4EDF +Test=\u6E2C\u8A66 +Utils-Would_you_like_to_save=\u4F60\u662F\u5426\u9700\u8981\u5132\u5B58 +HF-Header_and_Footer=\u7709\u982D\u548C\u7709\u8173 +LIST_MODE=\u6B04\u8868 +HF-Insert_Image=\u63D2\u5165\u5716\u7247 +FR-Designer-Widget-Style_Standard=\u6A19\u51C6 +FR-Designer_Form-List=\u6B04\u8868 +BackgroundTexture-Denim=\u659C\u7D0B\u5E03 +Execute_Report_by_Layer_Engine=\u7528\u5217\u5F0F\u7684\u5F15\u64CE\u4F86\u57F7\u884C\u5831\u8868 +M_Edit-Bring_Forward=\u4E0A\u79FB\u4E00\u5C64(F) +Choose_All=\u5168\u9078 +Form-RadioGroup=\u55AE\u9078\u6309\u9215\u7D44 +FR-Base_Remove=\u522A\u9664 +FR-Remote_Connect2Server_Again=\u9023\u63A5\u4E2D\u65B7\uFF0C\u662F\u5426\u91CD\u65B0\u9023\u63A5\u4F3A\u670D\u5668? +Semicolon=\u5206\u865F +StyleFormat-Category=\u5206\u985E +Report_Template=\u5831\u8868\u7BC4\u672C +Utils-Beyond_the_right_side_of_Border=\u8D85\u51FA\u53F3\u908A\u754C +BackgroundTexture-Papyrus=\u7D19\u838E\u8349\u7D19 +LayerPageReport_PageEngine=\u4F7F\u7528\u6309\u9801\u904B\u7B97\u5206\u6BB5\u57F7\u884C\u5831\u8868 +Schedule-The_selected_file_must_be_end_with_filter=\u9078\u64C7\u7684\u6A94\u6848\u5FC5\u9808\u4EE5.cpt\u6216\u8005.class\u6216\u8005.frm\u7D50\u5C3E\u3002 +Provide=\u63D0\u4F9B +FormulaD-Math_&_Trig=\u6578\u5B78\u548C\u4E09\u89D2\u51FD\u6578 +FR-Designer-StyleAlignment_Right=\u9760\u53F3\u5C0D\u9F4A +Error_TableDataNameRepeat=\u5DF2\u7D93\u5728\u4F3A\u670D\u5668\u8CC7\u6599\u96C6\u4E2D\u5B58\u5728\u6216\u8005\u591A\u500B\u8CC7\u6599\u96C6\u540D\u91CD\u8907\u3002 +Choose_None=\u4E0D\u9078 +File-tree=\u6A94\u6848\u6A39 +FRFont-bold=\u7C97\u9AD4 +FR-Designer_Set_Submit_Condition=\u8A2D\u5B9A\u63D0\u4EA4\u689D\u4EF6 +Form-Change_Widget_Name=\u66F4\u6539\u63A7\u5236\u9805\u540D +ReportColumns-Report_Columns=\u5831\u8868\u5206\u6B04 +Can_not_use_FormatBursh=\u7121\u6CD5\u4F7F\u7528\u8907\u88FD\u683C\u5F0F +CellElement-Property_Table=\u5132\u5B58\u683C\u5C6C\u6027\u8868 +Dictionary-Dynamic_SQL=\u52D5\u614BSQL +FR-Designer_Form-CheckBoxGroup=\u5FA9\u9078\u6846\u7D44 +DBCP_TIME_BETWEEN_EVICTIONRUNSMILLIS=\u7A7A\u9591\u9023\u63A5\u56DE\u6536\u5668\u4F11\u7720\u6642\u9593 +ReportD-Export_Hided_Column=\u532F\u51FA\u96B1\u85CF\u6B04 +Preference-Support_Undo=\u652F\u6301\u5FA9\u539F +FR-mobile_report_analysis=\u5831\u8868\u89E3\u6790 +Month=\u6708 +Utils-Column_Width=\u6B04\u5BEC +Collect-Use_Designer=\u4F7F\u7528\u8A2D\u8A08\u5668 +Widget-User_Defined_Editor=\u9810\u5B9A\u7FA9\u7DE8\u8F2F\u5668\uFF0C\u8A72\u7DE8\u8F2F\u5668\u53EA\u80FD\u5728\u5143\u4EF6\u7BA1\u7406\u83DC\u55AE\u91CC\u66F4\u6539\u5176\u5C6C\u6027 +Unit_Ten_Thousand=\u842C +Data_Setting=\u8CC7\u6599\u8A2D\u5B9A +ECP_input_pwd=\u8ACB\u8F38\u5165\u5BC6\u78BC\: +period=\u3002 +Note=\u5099\u6CE8 +Multiline=\u591A\u5217\u7DE8\u8F2F +Datasource-Convert_Charset=\u7DE8\u78BC\u8F49\u63DB +DashBoard-ConnectionList=\u8CC7\u6599\u9023\u63A5 +Utils-Submit_Forcibly=\u5F37\u884C\u63D0\u4EA4 +Parent_Marked_Field=\u7236\u6A19\u8A18\u6B04\u4F4D +Logout=\u9000\u51FA +FR-Designer_Show_Blank_Row=\u88DC\u5145\u7A7A\u767D\u5217 +FR-Base_Format=\u683C\u5F0F +FR-App-Export_png=png\u683C\u5F0F +Delete_Column=\u522A\u9664\u6B04 +SecondGraduationLine=\u6B21\u8981\u523B\u5EA6\u7DDA +SpecifiedG-Groups=\u7D44 +CONTINUUM_MODE=\u76F8\u9130\u9023\u7E8C\u5206\u7D44 +Datasource-Connection_failed=\u93C8\u63A5\u5931\u6557 +CategoryName=\u5206\u985E\u540D +DBCP_INITIAL_SIZE=\u521D\u59CB\u5316\u9023\u63A5\u6578 +Colors=\u984F\u8272 +FR-Import-Export_CSV=CSV\u683C\u5F0F(\u9017\u865F\u5206\u9694) +FR-Designer-StyleAlignment_Left=\u9760\u5DE6\u5C0D\u9F4A +BackgroundTexture-PaperBag=\u7D19\u888B +RWA-BuildIn_SQL=\u5167\u7F6ESQL +SingleLayer=\u55AE\u5C64 +Or-you=\u6216\u8005\u60A8 +FR-Designer_Certificate_Path=\u8B49\u66F8\u8DEF\u5F91 +Utils-Last_Page=\u6700\u5F8C\u4E00\u9801 +BarCodeD-Drawing_Text=\u986F\u793A\u689D\u78BC\u7684\u6587\u672C +Warning-Template_Do_Not_Exsit=\u7BC4\u672C\u4E0D\u5B58\u5728 +BindColumn-Group=\u5206\u7D44 +Export-SVG=SVG\u683C\u5F0F +Plane3D=\u5E73\u97623D +SessionID=sessionID\u662F\u7576\u524D\u8A2A\u554F\u6A21\u677F\u7684\u6703\u8A71\u6A19\u8B58\u53C3\u6578\u3002 +FR-Designer_Height=\u9AD8 +HF-Odd_Page=\u5947\u6578\u9801 +About-All_Rights_Reserved=\u4FDD\u7559\u6240\u6709\u7684\u6B0A\u5229 +Utils-Current_Cell=\u7576\u524D\u683C\u5B50 +Web_Preview_Message=\u8ACB\u5C07\u6A21\u677F\u6A94\u6848\u5132\u5B58\u7576\u524D\u904B\u884C\u74B0\u5883\u76EE\u9304\u4E0B +FR-Hyperlink_Chart_Float=\u5716\u8868\u8D85\u93C8-\u806F\u52D5\u61F8\u6D6E\u5143\u7D20 +Dic-Data_Query=\u8CC7\u6599\u67E5\u8A62 +CellWrite-Print_Content=\u5217\u5370/\u532F\u51FA\u5132\u5B58\u683C\u5167\u5BB9 +Privilege-Selected_None_Of_Any_Items=\u6C92\u6709\u9078\u4E2D\u4EFB\u4F55\u4E00\u9805 +FRFont-Size=\u5927\u5C0F +Function-J2EE_server=J2EE\u4F3A\u670D\u5668 +FR-Designer_Allow_Blank=\u5141\u8A31\u70BA\u7A7A +Build_Tree_Accord_Parent_Marked_Filed=\u4F9D\u8CF4\u6240\u9078\u8CC7\u6599\u96C6\u7684\u7236\u6A19\u8A18\u6B04\u4F4D\u69CB\u5EFA\u6A39 +Preference-Horizontal_Scroll_Bar_Visible=\u6C34\u5E73\u6EFE\u52D5\u689D\u53EF\u898B +Scope=\u7BC4\u570D +Save_All_Records_In_Memory=\u6240\u6709\u8A18\u9304\u90FD\u5132\u5B58\u5728\u5167\u5B58\u4E2D +FreezeWarning1=\u521D\u59CB\u503C\u4E0D\u5927\u65BC\u5C3E\u503C +FlowLayout=\u6D41\u5F0F\u5E03\u5C40 +M_Report-Report_Footer=\u5831\u8868\u9801\u5C3E +FR-Action_Add=\u589E\u52A0 +BorderLayout-East=\u6771 +feedback_tip=\u8ACB\u8F38\u5165\u4E0D\u8D85\u904E400\u500B\u5B57\u7684\u554F\u984C\u63CF\u8FF0 +FS_Start_Date=\u958B\u59CB\u65E5\u671F +FR-ConditionB_Operator=\u64CD\u4F5C\u7B26 +Printer-Alias=\u5225\u540D +DS-Class_Name=\u985E\u540D +FR-Designer-Plugin_Has_Been_Disabled=Plugin has been disabled +Sort-Original=\u4E0D\u6392\u5E8F +Utils-Top_to_Bottom_a=\u5F9E\u4E0A\u5F80\u4E0B +Parameter-String=\u5B57\u5143\u4E32 +InnerRadis=\u5167\u5F91\u5927\u5C0F +Want_To_Cover_It=\u662F\u5426\u60F3\u8981\u8986\u84CB\u5854 +Divided_stage=\u5283\u5206\u968E\u6BB5 +Seriously=\u56B4\u91CD +ReportServerP-PDF=PDF +Utils-Switch_To_Class_Reportlet=\u5207\u63DB\u5230\u985E\u5225\u7DB2\u8DEF\u5831\u8868 +FR-Designer_Show_Blank_Column=\u88DC\u5145\u7A7A\u767D\u6B04 +M_Edit-Redo=\u53D6\u6D88\u5FA9\u539F +Visibility=\u53EF\u898B\u6027 +Series_Use_Default=\u7CFB\u5217\u9810\u8A2D\u4F7F\u7528 +Has_Selected=\u5DF2\u7D93\u9078\u64C7 +BackgroundTexture-Walnut=\u8B77\u5957 +FormulaD-Function_category=\u51FD\u6578\u985E\u578B +Interface=\u4ECB\u9762 +FR-Designer-Beyond_Bounds=\u8D85\u51FA\u6216\u8005\u5C0F\u65BCbody\u908A\u754C\uFF0C\u4E0D\u80FD\u8ABF\u6574\u5927\u5C0F +seconds=\u79D2 +Auto-Build=\u81EA\u52D5\u69CB\u5EFA +FR-Designer-Plugin_Install_Successful=Install successful +Template_Path=\u7BC4\u672C\u8DEF\u5F91 +FR-Designer-FRFont_Bold=\u7C97\u9AD4 +Poly_Name=\u805A\u5408\u584A\u540D +WorkBook=\u5DE5\u4F5C\u7C3F +Hyperlink-Self_Window=\u7576\u524D\u7A97\u53E3 +FR-Designer-Widget-Style_Title=\u6A19\u984C +FR-Designer-FRFont_Size=\u5927\u5C0F +M_File-Export-SVG=SVG\u683C\u5F0F +Capacity=Capacity +Rose_Red=\u73AB\u7470\u7D05 +StyleAlignment-The_value_of_rotation_must_between_-90_and_90_degrees=\u65CB\u8F49\u503C\u5FC5\u9808\u5728\u8CA090\u5EA6\u523090\u5EA6 +HF-Move_Left=\u5DE6\u79FB +Cell_Group=\u5132\u5B58\u683C\u7D44 +Week=\u5468 +PageSetup-Orientation=\u65B9\u5411 +M-Open_Recent=\u958B\u555F\u6700\u8FD1\u4F7F\u7528\u6A94 +NNormal=\u6B63\u5E38 +Integer=\u6574\u6578 +Select_The_Source_To_Save=\u9078\u64C7\u8981\u5B58\u5132\u7684\u9805\u76EE +Transition=\u5206\u652F +FR-Designer_Get_Lock=\u52A0\u9396 +one_record_exists_in_many_groups=\u4E00\u500B\u8A18\u9304\u53EF\u4EE5\u5B58\u5728\u8207\u591A\u500B\u7D44\u4E2D +FR-Designer_Cover_None=\u5168\u4E0D\u8986\u84CB +DeciPart=\u5C0F\u6578\u90E8\u4EFD +ExpandD-Up_Father_Cell=\u4E0A\u7236\u683C +Deep=\u6DF1\u5EA6 +FRFont-Shadow=\u9670\u5F71 +Reportlet=\u7DB2\u8DEF\u5831\u8868 +Calendar=\u65E5\u66C6 +DateFormat-Custom_Warning=\u8A3B\uFF1A\u81EA\u5B9A\u7FA9\u65E5\u671F\u683C\u5F0F\u4E0D\u652F\u6301\u683C\u5F0F\u6821\u9A57 +Unit_MM=\u516C\u5398 +Server-Start=\u555F\u52D5 +CellPage-Can_Break_On_Paginate=\u5206\u9801\u6642\u53EF\u4EE5\u65B7\u958B +Build_Tree_Accord_Marked_Filed_Length=\u4F9D\u8CF4\u6240\u9078\u8CC7\u6599\u96C6\u7684\u6A19\u8A18\u6B04\u4F4D\u7684\u9577\u5EA6\u69CB\u5EFA\u6A39\u72C0 +ComboCheckBox-Start_Symbol=\u8D77\u59CB\u7B26 +Real=\u5BE6\u969B +RWA-Batch_Modify_Cells=\u6279\u91CF\u4FEE\u6539\u5132\u5B58\u683C +FR-Designer_Build-Way=\u69CB\u5EFA\u65B9\u5F0F +Read=\u8B80\u53D6 +StyleAlignment-Degrees=\u5EA6\u6578 +M_Format_A-Border=\u6846\u7DDA(B) +Utils-Delete_Record=\u522A\u9664\u8A18\u9304 +Reload=\u91CD\u8F09 +Image-Select_Picture=\u9078\u64C7\u5716\u7247 +RWA-Submit=\u63D0\u4EA4 +the_template=\u8A72\u7BC4\u672C +FR-Designer_Component_Scale=\u5143\u4EF6\u7E2E\u653E +FRFont-italic=\u659C\u9AD4 +Year=\u5E74 +HF-Move_Right=\u53F3\u79FB +Data-Check=\u8CC7\u6599\u76E3\u63A7 +Unknown=\u672A\u77E5 +Submit_Style=\u63D0\u4EA4\u65B9\u5F0F +Left_Border_Line=\u5DE6\u6846\u7DDA +Brown=\u8910\u8272 +Select_A_Tree_DataSource_To_Build=\u9078\u64C7\u4E00\u500B\u6A39\u72C0\u8CC7\u6599\u96C6\u4F86\u69CB\u5EFA +Overlapping=\u91CD\u66E1\u578B +DS-Class_TableData=\u985E\u5225\u8CC7\u6599\u96C6 +FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=Illegal plugin,cannot be installed +DisplayNothingBeforeQuery=\u9EDE\u64CA\u67E5\u8A62\u524D\u4E0D\u986F\u793A\u5176\u4ED6\u5167\u5BB9 +Y_Axis=Y\u8EF8 +FormulaD-Most_Recently_Used=\u5E38\u7528\u51FD\u6578 +FormulaD-Input_formula_in_the_text_area_below=\u8ACB\u5728\u4E0B\u9762\u7684\u6587\u672C\u7DE8\u8F2F\u6846\u88E1\u9762\u8F38\u5165\u516C\u5F0F +Build-Way=\u69CB\u5EFA\u65B9\u5F0F +M_Edit-Undo=\u5FA9\u539F +Line-Style=\u7DAB\u578B +Datasource-Other_Attributes=\u5176\u4ED6\u5C6C\u6027 +M_Server-Global_Parameters=\u5168\u5C40\u53C3\u6578 +Suffix=\u5F8C\u7DB4 +Image-Image_Files=\u5716\u7247\u6A94\u6848 +EditRC-Entire_row=\u6574\u5217(R) +HF-First_Page=\u9996\u9801 +BackgroundTexture-Granite=\u82B1\u5D17\u77F3 +DataList=\u8CC7\u6599\u93C8 +Recursion=\u905E\u6B78 +BarStyle=\u689D\u5F62 +FR-Designer-Min_Width=\u6700\u5C0F\u5BEC\u5EA6 +Utils-Report-Env_Directory=\u5831\u8868\u5DE5\u4F5C\u76EE\u9304 +D-ChartArea=\u5716\u8868\u5340 +Only=\u53EA +FR-Base_No=\u5426 +SpecifiedG-Put_all_others_together=\u5C07\u5176\u4ED6\u6240\u6709\u7684\u5408\u5E76 +HF-NewLine_Des=\u53EF\u4EE5\u9EDE\u64CA\u4E0A\u9762\u7684\u79FB\u52D5\u548C\u522A\u9664\u6309\u9215\u4F86\u64CD\u4F5C\u63DB\u5217\u7B26 +WLayout-Border-ThreeContainer=\u64C1\u6709\u5317\u3001\u897F\u548C\u4E2D\u4E09\u584A\u7684\u908A\u754C\u4F48\u5C40\u5BB9\u5668\uFF0C\u5176\u4E2D\u5317\u90E8\u584A\u53EF\u4EE5\u6839\u64DA\u9700\u8981\u8ABF\u6574\u9AD8\u5EA6\uFF0C\u897F\u90E8\u584A\u53EF\u4EE5\u6839\u64DA\u9700\u8981\u8ABF\u6574\u5BEC\u5EA6\u3002 +Parameter_Name=\u53C3\u6578\u540D +FR-Base_Table=\u8868 +Des-Remove_WorkSheet=\u8981\u522A\u9664\u7684\u8868\u53EF\u80FD\u5B58\u5728\u8CC7\u6599,\u5982\u679C\u8981\u6C38\u4E45\u522A\u9664\u9019\u4E9B\u8CC7\u6599,\u8ACB\u6309'\u78BA\u5B9A'\u6309\u9215. +Rotation=\u65CB\u8F49 +Undefined=\u672A\u5B9A\u7FA9 +Support-Auto_Complete_Shortcut=Auto Complete Shortcut +Set_Column_Title_End=\u8A2D\u5B9A\u91CD\u8907\u7D50\u5C3E\u6B04 +Submit_Url=\u63D0\u4EA4\u5730\u5740 +ReportServerP-Are_you_sure_to_delete_the_selected_printer=\u4F60\u78BA\u5BE6\u60F3\u522A\u9664\u9078\u4E2D\u7684\u5370\u8868\u6A5F\u55CE +long_data_can_not_show_fully=\u9577\u8CC7\u6599\u986F\u793A\u4E0D\u5168 +Utils-Beyond_the_bottom_side_of_Border=\u8D85\u51FA\u4E0B\u908A\u754C +FR-Import-Export_PDF=PDF\u683C\u5F0F +Form-CheckBoxGroup=\u5FA9\u9078\u6846\u7D44 +Click-Me=\u9EDE\u6211\u6709\u9A5A\u559C\u54E6\uFF01 +Hyperlink-Self=\u5728\u539F\u7DB2\u9801\u4E2D\u6253\u958B\u93C8\u63A5(S) +Tree-Select_Leaf_Only_Tips=(\u4E0D\u52FE\u9078\u6B64\u9805\u6642\uFF0C\u8FD4\u56DE\u503C\u50C5\u70BA\u7528\u6236\u52FE\u9078\u7684\u7576\u524D\u7BC0\u9EDE\u800C\u4E0D\u5305\u62EC\u5176\u5B50\u7BC0\u9EDE) +StyleAlignment-Text_Rotation=\u6587\u672C\u65B9\u5411 +Format-Error=\u8F38\u5165\u7684\u503C\u683C\u5F0F\u4E0D\u6B63\u78BA +Server-Stop=\u505C\u6B62 +Preference-Setting_Grid=\u7DB2\u683C\u8A2D\u5B9A +ReportServerP-Add_Printer=\u589E\u52A0\u5370\u8868\u6A5F +FR-Designer-Plugin_Active=Active +Utils-File_name=\u6A94\u6848\u540D +NOT_NULL_Des=\u4E0D\u80FD\u70BA\u7A7A +Right_Border_Line=\u53F3\u6846\u7DDA +EditRC-Entire_column=\u6574\u6B04 (c) +PageSetup-Top_to_bottom=\u5148\u6B04\u5F8C\u5217 +Click-Get_Default_URL=\u9EDE\u64CA\u6B64\u6309\u9215\u7372\u5F97\u9810\u8A2DURL +StyleAlignment-Wrap_Text=\u81EA\u52D5\u63DB\u5217 +Remove_All_Button=\u6E05\u9664\u6240\u6709\u6309\u9215 +FR-Designer_Component_Interval=\u5143\u4EF6\u9593\u9694 +ReportColumns-Columns_vertically=\u6B04\u5206\u6B04 +ReportGUI-Print_Background=\u5217\u5370/\u532F\u51FA\u5831\u8868\u80CC\u666F +Export-CSV=CSV\u683C\u5F0F(\u9017\u865F\u5206\u9694) +M_Edit-Paste=\u8CBC\u4E0A(P) +FR-Designer-Basic_Restart_Designer=Restart designer +ReportServerP-PDF2-INFO=\u50C5\u5728LINUX/UNIX\u4E0B\u672A\u5B89\u88DD\u4E2D\u6587\u5B57\u9AD4\u6642\u4F7F\u7528 +FormulaD-Check_Valid=\u6AA2\u67E5\u5408\u6CD5\u6027 +server_disconnected=\u9023\u63A5\u5DF2\u65B7\u958B +ParameterD-Parameter_name_cannot_be_null=\u53C3\u6578\u7684\u540D\u5B57\u4E0D\u53EF\u4EE5\u70BA\u7A7A +FR-Designer-Plugin_Version_Is_Lower_Than_Current=The version of plugin is lower than current +RWA-NotChange_Unmodified=\u4E0D\u6539\u8B8A\u6642\u4E0D\u66F4\u65B0 +User_Information=\u7528\u6236\u8A0A\u606F +Custom_styles_lost=\u81EA\u5B9A\u7FA9\u6A23\u5F0F\u5DF2\u4E1F\u5931 +PageSetup-Margin=\u9801\u908A\u8DDD +M-New_FormBook=\u5EFA\u7ACB\u65B0\u5831\u8868 +Widget-TreeNode=\u6A39\u7BC0\u9EDE\u6309\u9215 +Form-Url=\u5730\u5740 +Utils-Beyond_the_left_side_of_Border=\u8D85\u51FA\u5DE6\u908A\u754C +Float_Element_Name=\u61F8\u6D6E\u5143\u7D20\u540D\u7A31 +Purple=\u7C89\u7D2B +DashBoard-Potence=\u6B0A\u9650 +M-Close_Template=\u95DC\u9589\u7BC4\u672C(C) +paper=\u7D19\u5F35 +Not_Exsit=\u4E0D\u5B58\u5728\u65BC\u5831\u8868 +Utils-Insert_Row=\u63D2\u5165\u5217 +Utils-Delete_Row=\u522A\u9664\u5217 +not_support_authority_edit=\u8A72\u5143\u7D20\u4E0D\u652F\u6301\u8A31\u53EF\u6B0A\u63A7\u5236 +Formula_Tips=\u516C\u5F0F\u5FC5\u9808\u4EE5"\ +FR-Action_Copy=\u8907\u88FD +Compile_Success=Compile Success +BackgroundTexture-RecycledPaper=\u518D\u751F\u7D19 +StyleAlignment-Single_Line=\u55AE\u5217\u986F\u793A +Utils-Move_Down=\u4E0B\u79FB +Please_Set_Repeat_First=\u8ACB\u5148\u8A2D\u5B9A\u91CD\u8907\u6A19\u984C\u5217\u548C\u6B04 +Writer-ShortCuts_Setting=\u586B\u5831\u5FEB\u6377\u9375\u8A2D\u5B9A +Verify-Data_Verify=\u8CC7\u6599\u6821\u9A57 +FR-mobile_analysis_style=\u89E3\u6790\u65B9\u5F0F +Confirm-Delete-File=\u662F\u5426\u522A\u9664\u6240\u9078\u6A94\u6848\uFF1F +PageSetup-Header=\u9801\u9996 +JavaScrit-Asynch=\u975E\u540C\u6B65 +ReportServerP-Toolbar=\u5DE5\u5177\u6B04 +Utils-Top_to_Bottom=\u7E31\u5411 +Platform=\u5E73\u53F0 +FR-Designer-FRFont_Underline=\u5E95\u7DDA +Show_in_Containing_Folder=\u6253\u958B\u6240\u5728\u8CC7\u6599\u593E +BackgroundTexture-WaterDroplets=\u6C34\u6EF4 +FR-Designer-Dependence_Install_Failed=\u4F9D\u8CF4\u5B89\u88DD\u5931\u6557 +Layout-Padding=\u5167\u908A\u8DDD +roles_already_authority_edited=\u5DF2\u914D\u7F6E\u89D2\u8272 +WidgetDisplyPosition=\u63A7\u5236\u9805\u986F\u793A\u4F4D\u7F6E +SpecifiedG-Force_Group=\u5F37\u5236\u5206\u7D44 +FormulaD-Formula_Definition=\u516C\u5F0F\u5B9A\u7FA9 +I-xyScatterStyle_Marker=\u6563\u9EDE\u5716 +Hour=\u5C0F\u6642 +ColorMatch=\u914D\u8272 +M_Edit-Order=\u758A\u653E\u9806\u5E8F(O) +BackgroundTexture-Bouquet=\u82B1\u675F +Verify-Error_Information=\u6821\u9A57\u51FA\u932F\u8A0A\u606F +LayerData=\u5E95\u5C64\u8CC7\u6599 +Rename=\u91CD\u547D\u540D +Widget-Load_By_Async=\u975E\u540C\u6B65\u8F09\u5165 +Shape=\u5716\u5F62 +BindColumn-This_Condition_has_been_existed=\u6B64\u689D\u4EF6\u5DF2\u7D93\u5B58\u5728 +NS-exception_readError=\u932F\u8AA4\u4EE3\u78BC\:1305 \u6A21\u677F\u6A94\u6848\u89E3\u6790\u51FA\u932F +Set_Column_Title_Start=\u8A2D\u5B9A\u91CD\u8907\u6A19\u984C\u6B04 +Fri=\u4E94 +M_Report-Report_Parameter=\u6A21\u677F\u53C3\u6578 +REPORTLETS=\u8A2A\u554F\u591A\u5F35\u6A21\u677F\u7684\u8DEF\u5F91\u7684\u53C3\u6578 +WLayout-Card-ToolTip=\u5361\u7247\u5F0F\u4F48\u5C40\uFF0C\u8A72\u4F48\u5C40\u5BB9\u5668\u4E2D\u53EF\u4EE5\u65B0\u589E\u591A\u500B\u5176\u5B83\u5143\u4EF6\u3002 +M-Popup_ChartType=\u5716\u8868\u985E\u578B +Please-Wait=\u8ACB\u7A0D\u5019 +FR-Designer-Form-ToolBar_Widget=\u63A7\u5236\u9805 +Widget-Array=\u6578\u7D44 +FieldBinding=\u7D81\u5B9A\u6B04\u4F4D +Top_Bottom_Border_Line=\u4E0A\u4E0B\u6846\u7DDA +M-Others=\u5176\u5B83... +Hyperlink-Link_Opened_in=\u9023\u7D50\u6253\u958B\u65BC +FR-Utils_WorkBook=\u5DE5\u4F5C\u7C3F +M_Insert-Float=\u61F8\u6D6E\u5143\u7D20 +Out_Thick_Border_Line=\u7C97\u5323\u6846\u7DDA +FR-App-File_Lookup_range=\u67E5\u627E\u7BC4\u570D +ReportColumns-Columns_to=\u5206\u6B04\u6210 +Transparent=\u900F\u660E +Parameter-Integer=\u6574\u578B +PDF-Print_Setting=PDF\u5217\u5370\u8A2D\u5B9A +Server-Embedded_Server=\u5167\u7F6E\u7684\u4F3A\u670D\u5668 +M_Server-Server_Config_Manager=\u4F3A\u670D\u5668\u914D\u7F6E(S) +FR-Utils-Would_you_like_to_cover_the_current_file=\u4F60\u5E0C\u671B\u8986\u84CB\u7576\u524D\u6A94\u6848\u55CE +CellWrite-InsertRow_COPY=\u539F\u503C +Edit_String_To_Formula=\u662F\u5426\u5C07\u5B57\u5143\u4E32\u7DE8\u8F2F\u70BA\u516C\u5F0F +Edit-Column_Count=\u6B04\u6578 +Father=\u7236 +ReportColumns-Columns_after=\u8D85\u904E +FR-Designer_Undo=\u5FA9\u539F +DBCP_MIN_IDLE=\u6700\u5C0F\u7A7A\u9591\u9023\u63A5\u6578 +M-Data_Analysis_Settings=\u8CC7\u6599\u5206\u6790\u8A2D\u5B9A +M-Form_Preview=\u8868\u55AE\u9810\u89BD +Form-Basic_Properties=\u57FA\u672C\u5C6C\u6027 +quote=\u5F15\u7528 +Thu=\u56DB +Collect-Collect_User_Information=\u6536\u96C6\u7528\u6236\u8A0A\u606F +Layer-Build=\u5206\u5C64\u69CB\u5EFA +FR-Designer-FRFont_Line_Style=\u7DDA\u578B +BackgroundTexture-BrownMarble=\u68D5\u8272\u5927\u7406\u77F3 +PageSetup-Page_Setup=\u9801\u9762\u8A2D\u5B9A +Form-Semicolon=\u5206\u865F +ECP_re_input=\u8ACB\u91CD\u65B0\u8F38\u5165\u5BC6\u78BC\: +ExpandD-Sort_After_Expand=\u64F4\u5C55\u5F8C +FR-Designer-Dependence_Install_Succeed=\u4F9D\u8CF4\u5B89\u88DD\u6210\u529F +Env-Configure_Workspace=\u914D\u7F6E\u5DE5\u4F5C\u76EE\u9304 +feedback_info=\u6B61\u8FCE\u60A8\u63D0\u51FA\u5BF6\u8CB4\u7684\u610F\u898B\u548C\u5EFA\u8B70\uFF0C\u8ACB\u5C07\u8A0A\u606F\u586B\u5BEB\u5F97\u76E1\u91CF\u8A73\u7D30\uFF0C\u6211\u5011\u6703\u76E1\u5FEB\u806F\u7E6B\u4F60 +Ratio=\u6BD4\u7387 +DBCP_TEST_ON_BORROW=\u7372\u53D6\u9023\u63A5\u524D\u6AA2\u9A57 +FR-Designer_layerIndex=\u4F9D\u8CF4\u7684\u5C64\u6578 +WEB-Write_Setting=\u586B\u5831\u9762\u9762\u8A2D\u5B9A +M-New_WorkBook=\u65B0\u589E\u5DE5\u4F5C\u7C3F +FR-Designer-Plugin_Has_Been_Actived=Plugin is now active +Datasource-Maximum_Number_of_Preview_Rows=\u6700\u5927\u7684\u9810\u89BD\u5217\u6578 +ExpandD-Cell_Expand_Attributes=\u64F4\u5C55\u5C6C\u6027 +Select_the_repeated_row_and_column=\u9078\u64C7\u9700\u8981\u91CD\u8907\u7684\u5217\u6B04 +FormulaD-Date_&_Time=\u65E5\u671F\u548C\u6642\u9593\u51FD\u6578 +Max-Mem-Row-Count=\u7DE9\u5B58\u81F3\u78C1\u7247\u7576\u8A18\u9304\u6578\u5927\u65BC +BorderLayout-South=\u5357 +Export-Text=\u6587\u5B57\u6A94\u6848(\u88FD\u9304\u7B26\u5206\u9694) +JavaScript-Synch=\u540C\u6B65 +FR-App-All_Warning=\u8B66\u544A +M_Edit-Send_Backward=\u4E0B\u79FB\u4E00\u5C64(B) +Form-Layout=\u5E03\u5C40 +FR-Designer-Plugin_Shop_Need_Update=\u63D2\u4EF6\u5546\u5E97\u6709\u65B0\u7248\u672C,\u662F\u5426\u66F4\u65B0? +FR-Designer_WorkBook=\u5DE5\u4F5C\u7C3F +UpBarBorderStyleAndColor=\u6F32\u67F1\u6A23\u5F0F +GridLayout=\u683C\u5B50\u5E03\u5C40 +Utils-Default_Value=\u9810\u8A2D\u503C +Widget-Comb_Widget_Config=\u7D44\u5408\u63A7\u5236\u9805 +Import-Excel2007_Source=Excel2007\u6E90\u6A94\u6848 +Y-Coordinate=\u7E31\u5EA7\u6A19 +FR-Base_SimSun_Not_Found=\u7121\u6CD5\u627E\u5230\u5B8B\u9AD4, \u8ACB\u9078\u64C7\u7576\u524D\u7CFB\u7D71\u4E0B\u9810\u8A2D\u8A9E\u8A00\u4F5C\u70BA\u8A2D\u8A08\u5668\u5B57\u9AD4. +FR-Designer_Seriously=\u56B4\u91CD +Upload=\u4E0A\u50B3 +Form-Widget_Property_Table=\u5C6C\u6027\u8868 +Des-Merger_Cell=\u9078\u64C7\u7684\u5340\u57DF\u5305\u542B\u591A\u500B\u8CC7\u6599\uFF0C\u5408\u5E76\u5132\u5B58\u683C\u5F8C\u5C07\u53EA\u4FDD\u7559\u7DE8\u8F2F\u904E\u7684\u6240\u6709\u5132\u5B58\u683C\u4E2D\u6700\u5DE6\u4E0A\u89D2\u7684\u6578\u503C. +FR-Designer-Basic_Copy_Build_NO=\u96D9\u64CA\u8907\u88FD\u69CB\u5EFA\u7248\u672C\u865F +FR-Base_TurnOn=\u958B\u5553 +FR-Base_Rows=\u5217 +Form-Remove_Repeat=\u53BB\u6389\u91CD\u8907\u9805 +Yes=\u662F +Datasource-JNDI_Name=JNDI\u7684\u540D\u5B57 +Utils-Delete_Column=\u522A\u9664\u6B04 +HF-Delete_it=\u522A\u9664 +JavaScript-Dynamic_Parameters=\u52D5\u614B\u53C3\u6578 +px=\u50CF\u7D20 +FR-App-Report_Template=\u5831\u8868\u7BC4\u672C +Verify-Message=\u932F\u8AA4\u8A0A\u606F +Plan=\u8A08\u756B +Vertical-Split_Layout=\u5782\u76F4\u5206\u5272\u5E03\u5C40 +ParameterD-Delay_Playing=\u9EDE\u64CA\u67E5\u8A62\u524D\u4E0D\u986F\u793A\u5831\u8868\u5167\u5BB9 +TurnOff=\u95DC\u9589 +FR-Please_Rename=\u8ACB\u91CD\u547D\u540D +Select_Data_Set=\u9078\u64C7\u8CC7\u6599\u96C6 +Name_has_Colon=\u540D\u5B57\: +ReportColumns-Columns_horizontally=\u5217\u5206\u6B04 +FR-Base_Yes=\u662F +ReportColumns-Repeat_Row=\u8907\u88FD\u5217\u5E8F\u6B04 +Print_Setting=\u5217\u5370\u8A2D\u5B9A +Registration-User_Name=\u5E33\u865F +Datasource-User_Defined=\u81EA\u5B9A\u7FA9 +FR-Designer-Plugin_DownLoadMessage=\u63D2\u4EF6\u9700\u8981\u4F9D\u8CF4\u7684\u652F\u6301\uFF0C\u662F\u5426\u5B89\u88DD({R1} m)? +Delay=\u5EF6\u9072 +FR-Designer-All_MSBold=\u5FAE\u8EDF\u96C5\u9ED1 +Utils-Now_create_connection=\u6B63\u5728\u5EFA\u7ACB\u8CC7\u6599\u9023\u63A5 +FR-Template-Path_chooseRightPath=\u8ACB\u9078\u64C7\u6B63\u78BA\u8DEF\u5F91 +FR-Remote_Re_Connect_to_Server=\u4F3A\u670D\u5668\u5DF2\u95DC\u9589\uFF0C\u662F\u5426\u91CD\u65B0\u9023\u63A5\u4F3A\u670D\u5668? +Nation=\u570B\u5BB6 +DBCP_MAX_WAIT=\u6700\u5927\u7B49\u5F85\u6642\u9593 +FR-App-Template_Form=\u8868\u55AE +Address=\u5730\u5740 +Sub_Report=\u5B50\u5831\u8868 +FR-Import-Export_Word=Word\u683C\u5F0F +FR-Server_Version_Tip=\u60A8\u7576\u524D\u9023\u63A5\u7684\u4F3A\u670D\u5668\u7248\u672C\u4F4E\u65BC\u60A8\u4F7F\u7528\u7684\u8A2D\u8A08\u5668\u7248\u672C\u865F\uFF0C\u7E7C\u7E8C\u9023\u63A5\uFF0C\u60A8\u7DE8\u8F2F\u7684\u4E00\u4E9B\u5C6C\u6027\u53EF\u80FD\u7121\u6CD5\u6709\u6548\u5132\u5B58\u3002 \u5047\u5982\u9700\u8981\u9023\u63A5\u8ACB\u5C07\u60A8\u7684\u8A2D\u8A08\u5668\u7248\u672C\u8207\u4F3A\u670D\u5668\u7248\u672C\u4FDD\u6301\u4E00\u81F4 +StyleAlignment-Left_To_Right=\u5F9E\u5DE6\u5411\u53F3 +Verify-ToolTips=\u4E0D\u6EFF\u8DB3\u516C\u5F0F\u63D0\u793A\u6821\u9A57\u51FA\u932F\u8A0A\u606F +BackgroundTexture-Stationery=\u4FE1\u7D19 +FR-Designer_RWA-Help=\u8A2D\u5B9A\u672A\u4FEE\u6539\u4E0D\u66F4\u65B0\u5F8C\uFF0C\u586B\u5831\u9810\u89BD\u5831\u8868\uFF0C\u8A18\u9304\u6240\u5728\u5132\u5B58\u683C\u6C92\u6709\u88AB\u7DE8\u8F2F\u4FEE\u6539\uFF0C\u5247\u6B64\u8A18\u9304\u4E0D\u6703\u9032\u884C\u66F4\u65B0\uFF1B\n\u5728\u5927\u8CC7\u6599\u91CF\u8A18\u9304\u67E5\u8A62\u4E26\u56DE\u586B\u60C5\u6CC1\u4E0B\uFF0C\u555F\u7528\u8A72\u8A2D\u5B9A\uFF0C\u53EF\u4EE5\u63D0\u9AD8\u586B\u5831\u63D0\u4EA4\u6027\u80FD\u3002 +M_Insert-Barcode=\u689D\u78BC +Bounds=\u908A\u754C +FR-Designer-Undo_All_Authority_Operations=\u5FA9\u539F\u524D\u4E00\u6B21\u7DE8\u8F2F +Datasource-Context=\u4E0A\u4E0B\u6587 +CellWrite-Page_After_Column=\u6B04\u5F8C\u5206\u9801 +FR-Designer_Cancel=\u53D6\u6D88 +Button-Group-Display-Columns=\u5C55\u793A\u6B04\u6578 +Widget-Height=\u63A7\u5236\u9805\u9AD8\u5EA6 +Examples=\u4F8B\u5B50 +Formula_Dictionary_Display_Example=\u5BE6\u969B\u503C\u7BC4\u570D\u70BA Formula_Dictionary_Display_Examples\ +StyleAlignment-Horizontal=\u6C34\u5E73\u5C0D\u9F4A +HyperLink_Must_Alone_Reset=\u591A\u500B\u8D85\u93C8 +ExpandD-Expand_Direction=\u64F4\u5C55\u65B9\u5411 +Include=\u5305\u62EC +Export-Excel-Page=\u5206\u9801\u532F\u51FA +FR-Designer-Min_Height=\u6700\u5C0F\u9AD8\u5EA6 +Filed=\u5340\u57DF +ReportServerP-Import_Css=\u5F15\u7528Css +M_Insert-Formula=\u63D2\u5165\u516C\u5F0F +FR-Designer_Auto-Build=\u81EA\u52D5\u69CB\u5EFA +FRFont-Foreground=\u984F\u8272 +Bubble-Width=\u6C23\u6CE1\u5BEC\u5EA6 +Form-Hierarchy_Tree=\u7D50\u69CB\u6A39 +WLayout-Border-LayoutContainer=\u64C1\u6709\u4E2D\u90E8\u548C\u5317\u90E8\u5169\u584A\u7684\u908A\u754C\u4F48\u5C40\u5BB9\u5668\uFF0C\u5176\u4E2D\u5317\u90E8\u584A\u53EF\u4EE5\u6839\u64DA\u9700\u8981\u8ABF\u6574\u9AD8\u5EA6 +Preference-JDK_Home=JDK\u8DEF\u5F91 +Utils-Insert_Column=\u63D2\u5165\u6B04 +FR-Designer_ToolBar_Top=\u9802\u90E8\u5DE5\u5177\u6B04 +BindColumn-The_Conditions_of_FatherCell=\u7236\u683C\u689D\u4EF6 +Links=\u93C8\u63A5 +M_Report-Report_Header=\u5831\u8868\u9801\u9996 +Sub_Report_Description=\u5B50\u5831\u8868\u9700\u8981\u5B58\u5728\u65BC\u7236\u8868\u904B\u884C\u74B0\u5883\u4E0B\uFF0C\u4E14\u5169\u8005\u4E0D\u80FD\u662F\u540C\u4E00\u6A21\u677F +T_Insert-Float=\u63D2\u5165\u61F8\u6D6E\u5143\u7D20 +BackgroundTexture-FishFossil=\u9B5A\u985E\u5316\u77F3 +My_Computer=\u6211\u7684\u96FB\u8166 +FORMLET=\u8A2A\u554F\u4E0D\u540C\u8868\u55AE\u7684\u8DEF\u5F91\u7684\u53C3\u6578 +HF-Undefined=\u6C92\u6709\u5B9A\u7FA9 +Widget-User_Defined_Widget_Config=\u9810\u5B9A\u7FA9\u63A7\u5236\u9805 +Report-Write_Attributes_Group_Warning=\u8A2D\u5B9A\u7232\u5132\u5B58\u683C\u7D44\u7684\u5404\u6B04\u4F4D\u4E2D\u7684\u5132\u5B58\u683C\u500B\u6578\u5FC5\u9808\u76F8\u540C +Form-Single_quote=\u55AE\u5F15\u865F +Compile_Success_And_Then_Save=Compile Success And Then Save +FR-Designer_Layout-Padding=\u5167\u908A\u8DDD +Layout_Container=\u4F48\u5C40\u5BB9\u5668 +Admin=\u7BA1\u7406\u54E1 +Form-EC_toolbar=\u5831\u8868\u584A\u5DE5\u5177\u6B04 +FR-App-All_Auto=\u81EA\u52D5 +Utils-Available_Columns=\u53EF\u9078\u6B04 +Form-Change_Widget_Name_Discription=\u8ACB\u8F38\u5165\u4E00\u500B\u65B0\u7684\u63A7\u5236\u9805\u540D +FR-Module_Designer=\u8A2D\u8A08\u5668\u6A21\u584A +FR-Import-Export_Text=\u6587\u5B57\u6A94\u6848(\u88FD\u8868\u7B26\u5206\u9694) +Values-Editor=\u503C\u7DE8\u8F2F\u5668 +FR-Designer_Yes=\u662F +ExpandD-Expandable=\u53EF\u4F38\u5C55\u6027 +Tree-Return_Full_Path=\u7D50\u679C\u8FD4\u56DE\u5B8C\u6574\u5C64\u6B21\u8DEF\u5F91 +FRFont-bolditalic=\u7C97\u9AD4\u659C\u9AD4 +FR-Base_StyleFormat_Sample=\u793A\u4F8B +Area_Value=\u5340\u57DF\u503C +FR-Designer-Plugin_Disable=Disable +Utils-Are_you_sure_to_remove_the_selected_item=\u4F60\u78BA\u5BE6\u6C7A\u5B9A\u522A\u9664\u9078\u4E2D\u7684\u9805 +Face_Write=\u586B\u5831 +Poly-Report_Block=\u8868\u683C\u985E\u578B\u805A\u5408\u584A +Vgap=\u5782\u76F4\u9593\u9699 +FR-Designer_HyperLink_Must_Alone_Reset=\u591A\u500B\u8D85\u93C8 +DS-Class=\u985E\u5225 +FR-Hyperlink_Please_Select_Reportlet=\u8ACB\u9078\u64C7\u7DB2\u8DEF\u5831\u8868 +FS_Report_Type=\u985E\u578B +HF-New_Line=\u63DB\u5217\u7B26 +Privilege=\u6B0A\u9650 +Export-Offline-Html=\u8F38\u51FA\u96E2\u7DDAhtml\u5831\u8868 +FR-Designer_open-new-form-tip=\u7576\u524D\u6A21\u677F\u70BA711\u4EE5\u4E0B\u7248\u672C\u88FD\u4F5C, \u7121\u6CD5\u517C\u5BB9, \u4E0D\u80FD\u6253\u958B. \u5047\u5982\u60F3\u6253\u958B\u4FEE\u6539\u6B64\u8868\u55AE, \u8ACB\u4F7F\u7528\u5C0D\u61C9\u7248\u672C\u8A2D\u8A08\u5668\u6253\u958B. +FR-Designer-Widget-Style_Frame_Style=\u6846\u67B6\u6A23\u5F0F +Present-No_Present=\u53D6\u6D88\u6A21\u5F0F\u8A2D\u5B9A +FR-Designer_Form-Password=\u5BC6\u78BC +X_Axis=X\u8EF8 +FR-mobile_html_analysis=HTML5\u89E3\u6790 +M_Edit-Bring_to_Front=\u7F6E\u65BC\u9802\u5C64(T) +Null_Value_Show=\u7A7A\u503C\u986F\u793A +Datasource-JNDI_DES=\u6CE8\u610F\:\u9700\u8981\u628A\u5305\u542BINITIAL_CONTEXT_FACTORY\u985E\u7684.jar\u6A94\u6848\u8907\u88FD\u5230\u8EDF\u9AD4\u5B89\u88DD\u6A94\u6848\u4E0B\u7684/lib\u76EE\u9304\u4E0B +PrintP-Print_Preview=\u5217\u5370\u9810\u89BD +Form-Hierarchy_Tree_Last=\u4E0A\u4E00\u500B +Has_been_gone=\ \u5DF2\u4E1F\u5931\uFF0C\u662F\u5426\u589E\u52A0\u8A72\u6A23\u5F0F\uFF1F +RWA-Add_Field=\u65B0\u589E\u6B04\u4F4D +newNode=\u65B0\u589E\u7BC0\u9EDE +PageSetup-Shrink_to_fit_content=\u6839\u64DA\u5132\u5B58\u683C\u5167\u5BB9\u81EA\u52D5\u8ABF\u6574 +FR-Designer_Date=\u65E5\u671F +Column_Multiple=\u8CC7\u6599\u500D\u6578 +FR-App-All_File=\u6A94\u6848 +Sort-Descending=\u964D\u51AA +FR-Designer-Plugin_Delete=Delete +Above=\u4EE5\u4E0A\u7248\u672C +Utils-The-Chart=\u5716\u8868 +FRFont-plain=\u5E38\u898F +Calculating=\u8655\u7406\u4E2D +Form-Object=\u8868\u55AE\u5C0D\u8C61 +May=\u4E94\u6708 +FR-Designer_Plugin_Normal_Update=Update +FR-Hyperlink_Reportlet=\u7DB2\u8DEF\u5831\u8868 +M_Edit-Copy=\u8907\u88FD(C) +Sub_Report_Message2=\u7236\u5831\u8868\u4E0D\u5728\u7576\u524D\u904B\u884C\u74B0\u5883\u4E0B +Sub_Report_Message3=\u4E0D\u80FD\u9078\u64C7\u81EA\u8EAB +Sub_Report_Message1=\u8ACB\u9078\u64C7\u6B63\u78BA\u8DEF\u5F91 +Form-Allow_CustomData=\u5141\u8A31\u81EA\u5B9A\u7FA9\u503C +FR-Server_Version_Tip_MoreInfo=\u5EFA\u8B70\u60A8\u6240\u5C6C\u5718\u968A\u4F7F\u7528\u7684\u6211\u65B9FineReport\u7523\u54C1\u7684\u8A2D\u8A08\u5668\u7248\u672C\u865F\u4EE5\u53CA\u90E8\u7F72\u7684\u4F3A\u670D\u5668\u7248\u672C\u865F\u4FDD\u6301\u4E00\u81F4\uFF0C\u4EE5\u907F\u514D\u7248\u672C\u4E0D\u4E00\u81F4\u9020\u6210\u7684\u554F\u984C\u98A8\u96AA\u3002\n\u5047\u5982\u60A8\u6253\u958B\u66F4\u9AD8\u8A2D\u8A08\u5668\u7248\u672C\u88FD\u4F5C\u7684\u6A21\u677F\uFF0C\u53EF\u80FD\u6253\u958B\u51FA\u932F\uFF0C\u4E5F\u53EF\u80FD\u4E1F\u5931\u539F\u6709\u6A21\u677F\u5C6C\u6027\u3002\u5047\u5982\u60A8\u88FD\u4F5C\u7684\u6A21\u677F\u4F7F\u7528\u7684\u8A2D\u8A08\u5668\u7248\u672C\u9AD8\u65BC\u60A8\u6700\u7D42\u90E8\u7F72\u6240\u7528\u7684\u4F3A\u670D\u5668\u7248\u672C\uFF0C\u4F3A\u670D\u5668\u53EF\u80FD\u7121\u6CD5\u6B63\u5E38\u8F09\u5165\u60A8\u88FD\u4F5C\u7684\u6A21\u677F\u3002 +FR-Designer_Server-version-tip-moreInfo=\u5EFA\u8B70\u60A8\u6240\u5C6C\u5718\u968A\u4F7F\u7528\u7684\u6211\u65B9FineReport\u7522\u54C1\u7684\u8A2D\u8A08\u5668\u7248\u672C\u865F\u4EE5\u53CA\u90E8\u7F72\u7684\u4F3A\u670D\u5668\u7248\u672C\u865F\u4FDD\u6301\u4E00\u81F4\uFF0C\u4EE5\u907F\u514D\u7248\u672C\u4E0D\u4E00\u81F4\u9020\u6210\u7684\u554F\u984C\u98A8\u96AA\u3002\u5047\u5982\u60A8\u6253\u958B\u66F4\u9AD8\u8A2D\u8A08\u5668\u7248\u672C\u88FD\u4F5C\u7684\u6A21\u677F\uFF0C\u53EF\u80FD\u6253\u958B\u51FA\u932F\uFF0C\u4E5F\u53EF\u80FD\u4E1F\u5931\u539F\u6709\u6A21\u677F\u5C6C\u6027\u3002\u5047\u5982\u60A8\u88FD\u4F5C\u7684\u6A21\u677F\u4F7F\u7528\u7684\u8A2D\u8A08\u5668\u7248\u672C\u9AD8\u65BC\u60A8\u6700\u7D42\u90E8\u7F72\u6240\u7528\u7684\u4F3A\u670D\u5668\u7248\u672C\uFF0C\u4F3A\u670D\u5668\u53EF\u80FD\u7121\u6CD5\u6B63\u5E38\u8F09\u5165\u60A8\u88FD\u4F5C\u7684\u6A21\u677F +Get_Lock=\u52A0\u9396 +HF-Edit_Footer=\u7DE8\u8F2F\u9801\u5C3E +Datasource-New_Charset=\u65B0\u7DE8\u78BC +Preference-Custom=Custom +BackgroundTexture-Newsprint=\u65B0\u805E\u7D19 +ConditionB-Add_bracket=\u65B0\u589E\u62EC\u865F +Datasource-Connection_successfully=\u93C8\u63A5\u6210\u529F +Function-The_class_must_implement_the_interface=\u6539\u985E\u5FC5\u9808\u5BE6\u73FE\u4ECB\u9762 +FR-Designer_ChartF-Transparency=\u900F\u660E +Crimson=\u6DF1\u7D05 +FR-Hyperlink_Dialog=\u5C0D\u8A71\u6846 +FR-Designer_Covered_All=\u5168\u90E8\u8986\u84CB +Hyperlink-New_Window=\u65B0\u7A97\u53E3 +Style_Name=\u683C\u5F0F\u540D +CSS_warning=\ \u76F8\u5C0D\u5831\u8868\u5DE5\u7A0B\u76EE\u9304\u5982WebReport,\u5982WebReport\\css\u4E0B\u6709\u5F15\u7528\u7684css\u6A94\u6848test.css\uFF0C\u5247\u76F8\u5C0D\u8DEF\u5F91\u70BAcss/test.css +FR-Base_Column=\u6B04 +Three_Rows_Of_Two_Grid=\u4E09\u5217\u5169\u6B04\u7684\u683C\u5B50 +DBCP_VALIDATION_QUERY=SQL\u9A57\u8B49\u67E5\u8A62 +M_Edit-Clear_Formats=\u683C\u5F0F(F) +Parameter_Setting=\u53C3\u6578\u8A2D\u5B9A +Related=\u806F\u52D5 +BorderLayout-Constraints=\u4F4D\u7F6E +Write_Preview=\u586B\u5831\u9810\u89BD +PageSetup-Page_Order=\u5217\u5370\u9806\u5E8F +Verify-Verify_Formula=\u6821\u9A57\u516C\u5F0F +State=\u7701\u5E02 +FR-Designer-Widget-Style_Body_Background=\u4E3B\u9AD4\u80CC\u666F +FR-App-Privilege_No=\u6C92\u6709\u6B0A\u9650 +Please_Drag_ParaPane= +Come_True=\u5BE6\u73FE +ISEMPTY=is empty +Background-Texture=\u7D0B\u7406 +FR-Designer_Verify-Message=\u932F\u8AA4\u8A0A\u606F +Locked=\uFF08\u5DF2\u9396\u5B9A\uFF09 +Utils-Design-Action_Cancel=\u53D6\u6D88 +Image-Titled=\u5E73\u92EA +Gradient-Direction=\u6F38\u8B8A\u65B9\u5411 +Green=\u9752\u7DA0 +Report_Engine=\u5831\u8868\u5F15\u64CE +Return-String=\u8FD4\u56DE\u5B57\u5143\u4E32 +Margin=\u908A\u8DDD +Pitch_Percentage=\u9593\u8DDD\u767E\u5206\u6BD4 +FR-Base_TurnOff=\u95DC\u9589 +Utils-has_been_existed=\u5DF2\u5B58\u5728 +HF-Insert_Formula=\u63D2\u5165\u516C\u5F0F +Utils-Exit_Designer=\u9000\u51FA\u8A2D\u8A08\u5668 +Formula_Dictionary_Display=\u5C0D\u65BC\u4E0A\u9762\u5BE6\u969B\u503C\u7BC4\u570D\u5167\u7684\u6BCF\u500B\u503C($$$)\uFF0C\u5176\u986F\u793A\u503C\u70BA +PageSetup-Left_to_right=\u5148\u5217\u5F8C\u6B04 +Utils-Import_Excel_Data=\u532F\u5165[Excel] +M-Save=\u5132\u5B58 +redo=\u53D6\u6D88\u5FA9\u539F +Status=\u72C0\u614B +Draw=\u7E6A\u88FD +FR-Designer_Message=\u8A0A\u606F +Records=\u689D\u8A18\u9304 +FR-Designer_ComboBox=\u4E0B\u62C9\u6846 +Driver=\u9A45\u52D5\u5668 +Template_Parameters=\u7BC4\u672C\u53C3\u6578 +Form-Remove_Repeat_Data=\u53BB\u9664\u91CD\u8907\u8CC7\u6599 +ECP_decode=\u6A21\u677F\u89E3\u5BC6 +Area_Name=\u5340\u57DF\u540D +Others=\u5176\u5B83 +Merge=\u5408\u5E76 +BackgroundTexture-Parchment=\u7F8A\u76AE\u7D19 +BindColumn-Bottom_N=\u5F8CN\u500B +Frame=\u6846\u67B6 +Bottom_Border_Line=\u4E0B\u6846\u7DDA +Muiti_In=\u591A\u5C64\u947D\u53D6 +FR-Designer-Dependence_Install_Online=\u5728\u7DDA\u5B89\u88DD\u4F9D\u8CF4\u74B0\u5883 +Use_Default_ToolBar=\u4F7F\u7528\u9810\u8A2D\u5DE5\u5177\u6B04 +M_Server-Platform_Manager=\u5831\u8868\u5E73\u81FA\u7BA1\u7406(P) +PageSetup-inches=\u82F1\u5BF8 +Form-Widget_Property=\u5C6C\u6027\u540D +FR-Layout_Padding=\u5167\u908A\u8DDD +Schema=\u4E3B\u984C +Server_Path=\u4E3B\u6A5F\u4F4D\u7F6E +Condition_Display=\u689D\u4EF6\u986F\u793A +FR-Server-Design_template_unopened=\u7121\u6CD5\u6253\u958B\u7BC4\u672C +Function-Function_Class_Name=\u51FD\u6578\u985E\u540D +Schedule-Template=\u7BC4\u672C\u540D\u7A31 +Tree_Data_Field=\u6A39\u72C0\u8CC7\u6599\u6B04\u4F4D +Border-Style-Normal=\u76F4\u89D2\u6846\u7DDA +Top_And_Double_Bottom_Border_Line=\u4E0A\u6846\u7DDA\u548C\u96D9\u4E0B\u6846\u7DDA +FR-Server_Embedded_Server_Start=\u5167\u7F6E\u7684\u4F3A\u670D\u5668-\u555F\u52D5 +FR-Designer-Basic_Restart_Designer_Later=Restart later +StyleAlignment-Top=\u9760\u4E0A\u5C0D\u9F4A +ReportServerP-First=\u9996\u9801 +Not_Exist=\u4E0D\u5B58\u5728 +FR-Remote_File_is_Locked=\u60A8\u6240\u8981\u6253\u958B\u7684\u5831\u8868\u6B63\u5728\u88AB\u5176\u4ED6\u4EBA\u7DE8\u8F2F\uFF0C\u8ACB\u7A0D\u5019\u6253\u958B +Apply=\u61C9\u7528 +Sytle-Indentation=\u7E2E\u9032 +Parameter-Float=\u55AE\u7CBE\u5EA6\u578B +HF-Center_Section=\u4E2D\u9593\u5340\u57DF +Form-Double_quotes=\u96D9\u5F15\u865F +M_File-Export-Word=Word\u683C\u5F0F +M_File-Export-Text=\u6587\u5B57\u6A94\u6848(\u88FD\u9304\u7B26\u5206\u9694) +PageSetup-First_Page_Number=\u8D77\u59CB\u9801\u78BC +Execute=\u57F7\u884C +Task=\u4EFB\u52D9 +Custom_Button_Type_Submit=\u63D0\u4EA4 +FR-Designer-Widget_Settings=\u63A7\u5236\u9805\u8A2D\u5B9A +IS_Need_Password=\u9700\u8981\u5BC6\u78BC +PageSetup-Horizontally=\u6C34\u5E73\u7F6E\u4E2D +No_Editor_Property_Definition=\u8A72\u7DE8\u8F2F\u5668\u6C92\u6709\u5C6C\u6027\u5B9A\u7FA9 +Env-Remote_Server=\u9060\u7A0B\u4F3A\u670D\u5668 +FR-Utils_Background=\u80CC\u666F +FR-Designer-Plugin_Warning=Warning +Server-version-info=\u60A8\u7576\u524D\u6253\u958B\u7684\u6A21\u677F\u6A94\u6848\u662F\u7531\u66F4\u9AD8\u7248\u672C\u7684\u8A2D\u8A08\u5668\u88FD\u4F5C\u7684\uFF0C\u6253\u958B\u6703\u6709\u51FA\u932F\u6216\u8005\u4E1F\u5931\u539F\u6709\u6A21\u677F\u5C6C\u6027\u7684\u98A8\u96AA\u3002\u5047\u5982\u9700\u8981\u6253\u958B\u6B64\u6A21\u677F\u8ACB\u60A8\u5C07\u60A8\u7684\u8A2D\u8A08\u5668\u5347\u7D1A\u81F3 +CellWrite-Page_After_Row=\u5217\u5F8C\u5206\u9801 +HF-Right_Section=\u53F3\u5340\u57DF +PageSetup-Title_Start_Row=\u91CD\u8907\u6A19\u984C\u5217 +From=\u5F9E\u7B2C +Preference-Grid_Line_Color=\u7DB2\u683C\u7DDA\u984F\u8272 +RowTo=\u5217\u81F3\u7B2C +FR-Designer_ReportColumns-Repeat_Column=\u91CD\u8907\u6B04\u5E8F\u6B04 +M_Server-Function_Manager=\u51FD\u6578\u7BA1\u7406\u5668 +KeyWord=\u95DC\u9375\u5B57 +DS-Multi_Dimensional_Database=\u591A\u7DAD\u8CC7\u6599\u5EAB +BiasD-Slope_Line=\u659C\u7DDA +Tue=\u4E8C +ReportServerP-Last=\u672B\u9801 +FR-Base_Columns=\u6B04 +SpecifiedG-Leave_in_their_own_groups=\u7559\u5728\u5404\u81EA\u7684\u7D44\u5167 +LOG-Please_Wait=\u8ACB\u7A0D\u5019 +Form-ToolBar=\u8868\u55AE\u5DE5\u5177\u6B04 +FR-Base_sure_remove_item=\u4F60\u78BA\u5BE6\u6C7A\u5B9A\u522A\u9664\u9078\u4E2D\u7684\u9805 +Component_Scale=\u5143\u4EF6\u7E2E\u653E +Hyperlink-Use_CJK_to_encode_parameter=\u4F7F\u7528CJK\u8655\u7406\u53C3\u6578 +LOG-Has_Been_Openned=\u5DF2\u7D93\u6253\u958B +FR-Designer-Dependence= +ECP_error_pwd=\u5BC6\u78BC\u932F\u8AA4 +REPORTLET=\u8A2A\u554F\u6A21\u677F\u7684\u8DEF\u5F91\u7684\u53C3\u6578\u3002 +RWA-Column_Offset=\u6B04\u504F\u79FB +Forecast=\u9810\u6E2C +Light_Orange=\u6DFA\u6854\u9EC3 +StyleAlignment-Vertical=\u5782\u76F4\u5C0D\u9F4A +Form-List=\u6B04\u8868 +ParameterD-Show_Parameter_Window=\u986F\u793A\u53C3\u6578\u7A97\u9AD4 +FR-Designer_Set_Submit_Event=\u8A2D\u5B9A\u63D0\u4EA4\u4E8B\u4EF6 +Value_Percent=\u503C\u6240\u4F54\u6BD4\u4F8B +DBCP_MIN_EVICTABLE_IDLE_TIMEMILLIS=\u4FDD\u6301\u7A7A\u9591\u6700\u5C0F\u6642\u9593\u503C +Function-The_class_must_be_located_in=\u6539\u985E\u5FC5\u9808\u653E\u7F6E\u5728 +FR-Action_Sort=\u6392\u5E8F +DataFunction-Average=\u5E73\u5747 +FR-Designer_Show_in_Containing_Folder=\u6253\u958B\u6240\u5728\u8CC7\u6599\u593E +M_File-Export-Excel=Excel\u683C\u5F0F +DataFunction-Max=\u6700\u5927\u503C +FR-Designer_Form-Widget_Name=\u63A7\u5236\u9805\u540D +FS_End_Date=\u7D50\u675F\u65E5\u671F +Export-Excel-Simple=\u539F\u6A23\u532F\u51FA +ColumnTo=\u6B04\u81F3\u7B2C +SpecifiedG-Discard_all_others=\u4E1F\u68C4\u5176\u4ED6\u6240\u6709\u7684 +DS-TableData=\u8CC7\u6599\u96C6 +Form-DataTable=\u8CC7\u6599\u8868 +Sub_Report_ToolTips=\u5B50\u5831\u8868\u63D0\u793A +Right_Top=\u53F3\u4E0A +M_Edit-Merge_Cell=\u5408\u5E76\u5132\u5B58\u683C +FR-Designer_Restore_Default=\u6062\u5FA9\u9810\u8A2D +Component_Interval=\u5143\u4EF6\u9593\u9694 +Cover_None=\u5168\u4E0D\u8986\u84CB +Datasource-From_Database=\u8CC7\u6599\u5EAB\u8868 +Folder=\u76EE\u9304 +Form-Allow_Edit=\u5141\u8A31\u76F4\u63A5\u7DE8\u8F2F +M_Edit-Clear=\u6E05\u9664(A) +ParentCell_Setting=\u7236\u683C\u8A2D\u5B9A +Only_selected_cell_can_paste_only=\u53EA\u6709\u9078\u4E2D\u5132\u5B58\u683C\u6642\u624D\u53EF\u4EE5\u8CBC\u4E0A +M_Report-Report_Columns=\u5831\u8868\u5206\u6B04 +Unit_Hundred=\u4F70 +FR-Designer_DataTable-Build=\u6975\u901F\u5206\u5C64\u69CB\u5EFA +Widget-Form_Widget_Config=\u8868\u55AE\u63A7\u5236\u9805 +Server-version-tip-moreInfo=\u5EFA\u8B70\u60A8\u6240\u5C6C\u5718\u968A\u4F7F\u7528\u7684\u6211\u65B9FineReport\u7522\u54C1\u7684\u8A2D\u8A08\u5668\u7248\u672C\u865F\u4EE5\u53CA\u90E8\u7F72\u7684\u4F3A\u670D\u5668\u7248\u672C\u865F\u4FDD\u6301\u4E00\u81F4\uFF0C\u4EE5\u907F\u514D\u7248\u672C\u4E0D\u4E00\u81F4\u9020\u6210\u7684\u554F\u984C\u98A8\u96AA\u3002\u5047\u5982\u60A8\u6253\u958B\u66F4\u9AD8\u8A2D\u8A08\u5668\u7248\u672C\u88FD\u4F5C\u7684\u6A21\u677F\uFF0C\u53EF\u80FD\u6253\u958B\u51FA\u932F\uFF0C\u4E5F\u53EF\u80FD\u4E1F\u5931\u539F\u6709\u6A21\u677F\u5C6C\u6027\u3002\u5047\u5982\u60A8\u88FD\u4F5C\u7684\u6A21\u677F\u4F7F\u7528\u7684\u8A2D\u8A08\u5668\u7248\u672C\u9AD8\u65BC\u60A8\u6700\u7D42\u90E8\u7F72\u6240\u7528\u7684\u4F3A\u670D\u5668\u7248\u672C\uFF0C\u4F3A\u670D\u5668\u53EF\u80FD\u7121\u6CD5\u6B63\u5E38\u8F09\u5165\u60A8\u88FD\u4F5C\u7684\u6A21\u677F +Actions=\u4EFB\u52D9 +FR-Designer-Dependence_Connect_Server_Error=\u7121\u6CD5\u9023\u63A5\u670D\u52D9\u5668\uFF0C\u8ACB\u7A0D\u5F8C\u518D\u8A66 +High=\u9AD8 +HJS-Send_Failed=\u767C\u9001\u5931\u6557 +HJS-Message=\u5167\u5BB9 +File-Allow_Upload_Files=\u5141\u8A31\u4E0A\u50B3\u6A94\u6848\u985E\u578B +FR-Designer-Form-ToolBar_Chart=\u5716\u8868 +Thick_Bottom_Border_Line=\u7C97\u5730\u6846\u7DDA +FR-Action_Remove=\u522A\u9664 +FRFont-Style=\u5B57\u5F62 +Select_DataColumn=\u9078\u64C7\u8CC7\u6599\u6B04 +StartValue=\u958B\u59CB\u503C +SINGLE_FILE_UPLOAD=\u53EA\u652F\u6301\u55AE\u6A94\u6848\u4E0A\u50B3 +BackgroundTexture-Cork=\u8EDF\u6728\u585E +M_Format-Data_Map=\u8CC7\u6599\u5B57\u5178 +FR-mobile_native_analysis=\u539F\u751F\u89E3\u6790 +HighLight=\u9AD8\u5149 +FR-Designer_Dropdown-More-Preview=\u4E0B\u62C9\u7372\u5F97\u66F4\u591A..... +local=\u672C\u6A5F +FR-Designer_Gradation=\u5C64\u6B21 +PageSetup-Finis_Start_Column=\u91CD\u8907\u7D50\u5C3E\u6B04 +Env-Invalid_User_and_Password=\u975E\u6CD5\u7684\u5E33\u865F\u6216\u5BC6\u78BC +FR-Designer-Plugin_All_Plugins=All plugins +FR-Designer_Prepare_Export=\u958B\u59CB\u532F\u51FA\uFF0C\u8ACB\u7A0D\u5019 +DBCP_TEST_ON_RETURN=\u6B78\u9084\u93C8\u63A5\u524D\u6AA2\u9A57 +no-alternatives=\u6C92\u6709\u9078\u64C7\u9805 +FR-Designer_Submmit_WClass=\u5F8C\u53F0\u985E\u63D0\u4EA4 +M_Insert-Slope_Line=\u63D2\u5165\u659C\u7DDA +FR-Designer-Plugin_Plugin_Description=Description +ExpandD-Not_Expand=\u4E0D\u64F4\u5C55 +Utils-Bottom_to_Top=\u5F9E\u4E0B\u5230\u4E0A +Collect-Click\!_Get_user_information_code=\u9EDE\u64CA\!\u7372\u53D6\u7528\u6236\u8A0A\u606F\u78BC +FR-Already_exist=\u7576\u524D\u74B0\u5883\u5DF2\u5B58\u5728 +Send=\u767C\u9001 +M_Edit-Clear_All=\u5168\u90E8(A) +Brown_Orange=\u68D5\u9EC3 +PageSetup-Portrait=\u7E31\u5411 +FR-Designer_Form-RadioGroup=\u55AE\u9078\u6309\u9215\u7D44 +FR-Utils-App_AllFiles=\u6240\u6709\u6A94\u6848 +Popup=\u5F48\u51FA +Server_Charset=\u4F3A\u670D\u5668\u7DE8\u78BC +CellWrite-Repeat_Content_When_Paging=\u5206\u9801\u65B7\u958B\u6642\u503C\u91CD\u8907\u986F\u793A +Utils-No_Pagination=\u4E0D\u5206\u9801 +Form-NullLayout=\u7D55\u5C0D\u5B9A\u4F4D +ConditionB-Remove_bracket=\u53BB\u6389\u62EC\u865F +email=\u90F5\u7BB1 +Minute=\u5206\u9418 +FR-Designer-Plugin_Update=Plugins to update +alraedy_close=\u5DF2\u7D93\u95DC\u9589 +ComboCheckBox-End_Symbol=\u7D50\u675F\u7B26 +DataColumn=\u8CC7\u6599\u6B04 +Form-Password=\u5BC6\u78BC +FR-Background_Image_Adjust=\u9069\u61C9 +Export-Excel-PageToSheet=\u5206\u9801\u5206Sheet\u532F\u51FA +Edit-Row_Count=\u5217\u6578 +DS-Report_TableData=\u5831\u8868\u8CC7\u6599\u96C6 +Sche-Hour=\u6642 +Group_Count=Group Count +EndValue=\u7D50\u675F\u503C +FR-Designer_Sytle-Indentation=\u7E2E\u9032 +DownBarBorderStyleAndColor=\u8DCC\u67F1\u6A23\u5F0F +World=\u4E16\u754C +FR-Designer-Basic_Cancel=Cancel +Finally=\u6700\u5F8C +Low=\u4F4E +Please_Input_The_Key=\u8ACB\u8F38\u5165\u5C0D\u61C9\u5730\u5716\u4F7F\u7528\u7684key +Smart=\u667A\u80FD +Preference-Predefined=Predefined +Current_custom_global=\u7576\u524D\u5831\u8868\u6240\u7528\u81EA\u5B9A\u7FA9\u5168\u5C40\u6A23\u5F0F +FR-Designer-Plugin_Shop_Need_Install=\u60A8\u9084\u6C92\u6709\u63D2\u4EF6\u5546\u5E97\u7684\u8CC7\u6E90,\u662F\u5426\u4E0B\u8F09? +WEB-Pagination_Setting=\u5206\u9801\u9810\u89BD\u8A2D\u5B9A +RCodeDrawPix=\u50CF\u7D20 +FR-Designer-Widget-Style_Alpha=\u4E0D\u900F\u660E\u5EA6 +BorderLayout-North=\u5317 +HJS-Current_Page=\u7576\u524D\u9801 +Compile=Compile +Show_Blank_Row=\u88DC\u5145\u7A7A\u767D\u5217 +TableData_Dynamic_Parameter_Setting=\u52D5\u614B\u53C3\u6578\u6CE8\u5165 +FR-Background_Image_Default=\u9810\u8A2D +BackgroundTexture-WhiteMarble=\u767D\u8272\u5927\u7406\u77F3 +DataFunction-Sum=\u6C42\u548C +Collect-The_user_information_code_is_invalid=\u9019\u500B\u7528\u6236\u8A0A\u606F\u78BC\u662F\u975E\u6CD5\u7684 +Preference-Locale=Locale +M_File-Export-PDF=PDF\u683C\u5F0F +BiasD-From-lower_left_to_upper_right=\u7E3D\u5DE6\u4E0B\u5230\u53F3\u4E0A\u767C\u6563 +Border-Style=\u6846\u7DDA\u6A23\u5F0F +Sort=\u6392\u5E8F +Image-Image_Layout=\u5716\u7247\u5E03\u5C40 +Panel=\u9762\u677F +FR-Designer-Basic_Copy_Build_NO_OK=\u69CB\u5EFA\u7248\u672C\u865F\u5DF2\u7D93\u5FA9\u88FD\u5230\u526A\u8CBC\u677F +All_Border_Line=\u6240\u6709\u6846\u7DDA +FR-Utils-Please_Input_a_New_Name=\u8ACB\u8F38\u5165\u65B0\u7684\u540D\u5B57 +FR-Base_Formula_Plugin=\u63D2\u4EF6\u51FD\u6578 +Two_Rows_Of_Three_Grid=\u5169\u5217\u4E09\u6B04\u7684\u683C\u5B50 +FR-Designer_Certificate_Pass=https\u79D8\u9470 +Bubble-Series_Name=\u7CFB\u5217\u540D +M-New_Multi_Report=\u65B0\u589E\u8907\u5408\u5F0F\u5831\u8868 +BackgroundTexture-PinkTissuePaper=\u7C89\u8272\u7802\u7D19 +Preference-Support_Default_Parent_Calculate=\u9810\u8A2D\u7236\u683C\u8A08\u7B97 +Show_Blank_Column=\u88DC\u5145\u7A7A\u767D\u6B04 +BaiduMap=\u767E\u5EA6\u5730\u5716 +Report-Web_Attributes=\u5831\u8868Web\u5C6C\u6027 +FR-Designer_StyleAlignment-Wrap_Text=\u81EA\u52D5\u63DB\u5217 +Need=\u9700\u8981 +Parameter-Double=\u96D9\u7CBE\u5EA6\u578B +Config_Servlet=\u914D\u7F6E\u9060\u7A0B\u4F3A\u670D\u5668 +Form-Comma=\u9017\u865F +Verify=\u6821\u9A57 +PageSetup-Landscape=\u6A6B\u5411 +Weeks=\u500B\u661F\u671F +FR-Designer-Widget-Style_Title_Background=\u6A19\u984C\u80CC\u666F +Preference-Pagination_Line_Color=\u5206\u9801\u7DDA\u984F\u8272 +Test_URL=\u6E2C\u8A66\u9023\u63A5 +Fill_blank_Data=\u88DC\u5145\u7A7A\u767D\u8CC7\u6599 +ReportServerP-The_name_of_printer_cannot_be_null=\u5370\u8868\u6A5F\u7684\u540D\u5B57\u4E0D\u80FD\u70BA\u7A7A +FR-Designer-Basic_Copy_Activation_Key=Double click to copy key to clipboard +Continuum=\u76F8\u9130\u9023\u7E8C +BackgroundTexture-MediumWood=\u6DF1\u8272\u6728\u88FD +Datasource-Column_Index=\u6B04\u5E8F\u865F +Function-Function_File=\u51FD\u6578\u6A94\u6848 +Form-Component_Bounds=\u5143\u4EF6\u908A\u754C +Utils-Submit=\u63D0\u4EA4 +Conditions_formula=\u689D\u4EF6\u516C\u5F0F +M_Insert-Image=\u63D2\u5165\u5716\u7247 +FR-Designer-Plugin_Will_Be_Delete=Delete plugin +FormulaD-Functions=\u51FD\u6578 +Mobile_Terminal=\u884C\u52D5\u8A2D\u5099 +CheckBox=\u5FA9\u9078\u6846 +FR-Designer-Plugin_Install=Install +Sun=\u65E5 +FR-Designer_ToolBar_Bottom=\u5E95\u90E8\u5DE5\u5177\u6B04 +Widget-Width=\u63A7\u5236\u9805\u5BEC\u5EA6 +Series_Name=\u7CFB\u5217\u540D +Set_Row_Title_Start=\u8A2D\u5B9A\u91CD\u8907\u6A19\u984C\u5217 +HF-Default_Page=\u9810\u8A2D\u9801 +Env_Des=\u5982\u679C\u767B\u9304\u74B0\u5883\u4E2D\u7684\u5831\u8868\u5DE5\u7A0B\u555F\u7528\u4E86\u6B0A\u9650\uFF0C\u5E33\u865F\u548C\u5BC6\u78BC\u7684\u586B\u5BEB\u5FC5\u9808\u5C0D\u61C9\u767B\u9304\u74B0\u5883\u7684\u7528\u6236\u548C\u5BC6\u78BC\u3002 +Widget-User_Defined=\u9810\u5B9A\u7FA9 +Url_location=\u7D55\u5C0D\u8DEF\u5F91 +Disk_File=\u78C1\u789F\u6A94\u6848 +Inside=\u5167\u90E8 +FR-Designer_filedChosen=\u4F9D\u8CF4\u7684\u5B57\u6BB5 +ServerM-Predefined_Styles=\u9810\u5B9A\u7FA9\u6A23\u5F0F +is_need_word_adjust=\u4E0D\u56FA\u5B9A\u5217\u9AD8\u532F\u51FA +Background-Null=\u6C92\u6709\u80CC\u666F +PageSetup-Vertically=\u5782\u76F4\u7F6E\u4E2D +FR-Designer_Root=\u6839\u7BC0\u9EDE +FR-Designer_Form-TextArea=\u6587\u672C\u57DF +ReportServerP-Import_JavaScript=\u5F15\u7528JavaScript +Form-TableTree=\u8868\u683C\u6A39 +Opened=\u5DF2\u958B\u5553 +M_Edit-Delete=\u522A\u9664(D) +Widget-Form_Widget_Container=\u8868\u55AE\u5BB9\u5668 +BindColumn-Summary=\u532F\u7E3D +Sche-Second=\u79D2 +Server-Open_Service_Manager=\u6253\u958B\u4F3A\u670D\u5668\u7BA1\u7406\u5668 +FRFont-Effects=\u7279\u6B8A\u6548\u679C +OtherGroup_Name=\u5176\u4ED6\u7D44\u7684\u540D\u5B57 +Specify=\u6307\u5B9A +Highlight-Click_to_Choose_Property_To_Modify=\u9EDE\u64CA\u9078\u64C7\u8981\u6539\u8B8A\u7684\u5C6C\u6027 +triggered=\u88AB\u89F8\u767C +Double_Bottom_BorderLine=\u96D9\u5E95\u6846\u7DDA +M_Insert-Sub_Report=\u63D2\u5165\u5B50\u5831\u8868 +Unit_Ten=\u5341 +Polybolck=\u805A\u5408\u584A +Select_sort_order=\u9078\u64C7\u6392\u6B04\u9806\u5E8F +HJS-Mail_to=\u6536\u4EF6\u4EBA +StyleAlignment-Left=\u9760\u5DE6\u5C0D\u9F4A +Two_Rows_Of_Two_Grid=\u5169\u5217\u5169\u6B04\u7684\u683C\u5B50 +FR-Designer-Form-Please_Drag_ParaPane=\u8ACB\u62D6\u5165\u53C3\u6578\u9762\u677F +Milliseconds=\u6BEB\u79D2 +DataFunction-None=\u7121 +Delivery=\u50B3\u905E +ColumnSpan=\u6B04\u8DE8\u5EA6 +StyleAlignment-Bottom=\u9760\u4E0B\u5C0D\u9F4A +Read_failure=\u8B80\u53D6\u5931\u6557\uFF0C\u53EF\u80FD\u6E90\u6A94\u6848\u5DF2\u640D\u58DE +Verify-Verify=\u8CC7\u6599\u6821\u9A57 +FR-Designer-Widget-Style_Title_Format=\u6A19\u984C\u683C\u5F0F +FR-Designer_Edit_String_To_Formula=\u662F\u5426\u5C07\u5B57\u5143\u4E32\u7DE8\u8F2F\u70BA\u516C\u5F0F +FR-Base_UnSignIn=\u672A\u767B\u9304 +Every=\u6BCF +CellWrite-Preview_Cell_Content=\u9810\u89BD\u5132\u5B58\u683C\u5167\u5BB9 +FormulaD-Data_Fields=\u8CC7\u6599\u9805 +FR-Designer_Role=\u89D2\u8272 +FR-Designer_Permissions=\u6B0A\u9650 +FR-Designer_Form_Button=\u6309\u9215 +FR-Designer_WF_Name=\u540D\u7A31 \ No newline at end of file diff --git a/designer_base/src/com/fr/design/mainframe/JTemplate.java b/designer_base/src/com/fr/design/mainframe/JTemplate.java index 48371c787..a275d3d5d 100644 --- a/designer_base/src/com/fr/design/mainframe/JTemplate.java +++ b/designer_base/src/com/fr/design/mainframe/JTemplate.java @@ -529,12 +529,13 @@ public abstract class JTemplate> ex } protected boolean saveNewFile(FILE editingFILE, String oldName){ - this.editingFILE = editingFILE; + // 在保存之前,初始化 templateID + initForCollect(); // 如果保存新模板(新建模板直接保存,或者另存为),则添加 templateID + this.editingFILE = editingFILE; boolean result = this.saveFile(); if (result) { DesignerFrameFileDealerPane.getInstance().refresh(); - initForCollect(); // 如果保存新模板(新建模板直接保存,或者另存为),则添加 templateID collectInfo(); } //更换最近打开 @@ -1028,4 +1029,4 @@ public abstract class JTemplate> ex return uiButtons; } -} \ No newline at end of file +} diff --git a/designer_base/src/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java b/designer_base/src/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java index 4e31405d1..16b294955 100644 --- a/designer_base/src/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java +++ b/designer_base/src/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java @@ -26,17 +26,16 @@ import java.awt.geom.Rectangle2D; public class PatternBackgroundQuickPane extends BackgroundQuickPane { private int patternIndex = 0; // pattern setIndex. + private final static int DEFAULT_DIM_HEIGHT = 190; private ColorSelectBox foregroundColorPane; private ColorSelectBox backgroundColorPane; private PatternButton[] patternButtonArray; public PatternBackgroundQuickPane() { this.setLayout(new BorderLayout(0, 4)); - JPanel contentPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); this.add(contentPane, BorderLayout.NORTH); contentPane.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5)); - JPanel typePane2 = new JPanel(); contentPane.add(typePane2); typePane2.setLayout(new GridLayout(0, 8, 1, 1)); @@ -48,15 +47,11 @@ public class PatternBackgroundQuickPane extends BackgroundQuickPane { patternButtonGroup.add(patternButtonArray[i]); typePane2.add(patternButtonArray[i]); } - JPanel colorPane = new JPanel(new GridLayout(0, 2)); foregroundColorPane = new ColorSelectBox(70); backgroundColorPane = new ColorSelectBox(70); - foregroundColorPane.setSelectObject(Color.lightGray); - backgroundColorPane.setSelectObject(Color.black); - - colorPane.add(this.createLabelColorPane(Inter.getLocText("Foreground") + ":", foregroundColorPane)); - colorPane.add(this.createLabelColorPane(Inter.getLocText("Background") + ":", backgroundColorPane)); + colorPane.add(this.createLabelColorPane(Inter.getLocText("FR-Designer_Foreground") + ":", foregroundColorPane)); + colorPane.add(this.createLabelColorPane(Inter.getLocText("FR-Designer_Background") + ":", backgroundColorPane)); this.add(colorPane, BorderLayout.CENTER); foregroundColorPane.addSelectChangeListener(colorChangeListener); backgroundColorPane.addSelectChangeListener(colorChangeListener); @@ -65,7 +60,7 @@ public class PatternBackgroundQuickPane extends BackgroundQuickPane { @Override public Dimension getPreferredSize() { Dimension dim = super.getPreferredSize(); - dim.height = 190; + dim.height = DEFAULT_DIM_HEIGHT; return dim; } @@ -206,6 +201,6 @@ public class PatternBackgroundQuickPane extends BackgroundQuickPane { @Override public String title4PopupWindow() { - return Inter.getLocText("Background-Pattern"); + return Inter.getLocText("FR-Designer_Background-Pattern"); } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/mainframe/templateinfo/TemplateInfoCollector.java b/designer_base/src/com/fr/design/mainframe/templateinfo/TemplateInfoCollector.java index b9b7aa194..17d785a43 100644 --- a/designer_base/src/com/fr/design/mainframe/templateinfo/TemplateInfoCollector.java +++ b/designer_base/src/com/fr/design/mainframe/templateinfo/TemplateInfoCollector.java @@ -6,32 +6,56 @@ import com.fr.design.DesignerEnvManager; import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.JTemplate; import com.fr.env.RemoteEnv; -import com.fr.general.ComparatorUtils; -import com.fr.general.FRLogger; -import com.fr.general.GeneralUtils; -import com.fr.general.SiteCenter; +import com.fr.general.*; import com.fr.general.http.HttpClient; import com.fr.stable.*; -import org.json.JSONObject; +import com.fr.stable.xml.*; +import com.fr.third.javax.xml.stream.XMLStreamException; +import com.fr.json.JSONObject; import java.io.*; import java.text.SimpleDateFormat; import java.util.*; +import java.util.HashMap; /** * 做模板的过程和耗时收集,辅助类 * Created by plough on 2017/2/21. */ -public class TemplateInfoCollector implements Serializable { - private static final String FILE_NAME = "tplInfo.ser"; +public class TemplateInfoCollector implements Serializable, XMLReadable, XMLWriter { + private static final String FILE_NAME = "tpl.info"; + private static final String OBJECT_FILE_NAME = "tplInfo.ser"; private static TemplateInfoCollector instance; - private HashMap> templateInfoList; + private Map> templateInfoList; private String designerOpenDate; //设计器最近一次打开日期 private static final int VALID_CELL_COUNT = 5; // 有效报表模板的格子数 private static final int VALID_WIDGET_COUNT = 5; // 有效报表模板的控件数 private static final int COMPLETE_DAY_COUNT = 15; // 判断模板是否完成的天数 private static final int ONE_THOUSAND = 1000; static final long serialVersionUID = 2007L; + private static final String XML_DESIGNER_OPEN_DATE = "DesignerOpenDate"; + private static final String XML_TEMPLATE_INFO_LIST = "TemplateInfoList"; + private static final String XML_TEMPLATE_INFO = "TemplateInfo"; + private static final String XML_PROCESS_MAP = "processMap"; + private static final String XML_CONSUMING_MAP = "consumingMap"; + private static final String ATTR_DAY_COUNT = "day_count"; + private static final String ATTR_TEMPLATE_ID = "templateID"; + private static final String ATTR_PROCESS = "process"; + private static final String ATTR_FLOAT_COUNT = "float_count"; + private static final String ATTR_WIDGET_COUNT = "widget_count"; + private static final String ATTR_CELL_COUNT = "cell_count"; + private static final String ATTR_BLOCK_COUNT = "block_count"; + private static final String ATTR_REPORT_TYPE = "report_type"; + private static final String ATTR_ACTIVITYKEY = "activitykey"; + private static final String ATTR_JAR_TIME = "jar_time"; + private static final String ATTR_CREATE_TIME = "create_time"; + private static final String ATTR_UUID = "uuid"; + private static final String ATTR_TIME_CONSUME = "time_consume"; + private static final String ATTR_VERSION = "version"; + private static final String ATTR_USERNAME = "username"; + private static final String JSON_CONSUMING_MAP = "jsonConsumingMap"; + private static final String JSON_PROCESS_MAP = "jsonProcessMap"; + @SuppressWarnings("unchecked") private TemplateInfoCollector() { @@ -61,29 +85,57 @@ public class TemplateInfoCollector implements Serializable { return new File(StableUtils.pathJoin(ProductConstants.getEnvHome(), FILE_NAME)); } + private static File getObjectInfoFile() { + return new File(StableUtils.pathJoin(ProductConstants.getEnvHome(), OBJECT_FILE_NAME)); + } + public static TemplateInfoCollector getInstance() { if (instance == null) { - // 先尝试从文件读取 - try{ - ObjectInputStream is = new ObjectInputStream(new FileInputStream(getInfoFile())); - instance = (TemplateInfoCollector) is.readObject(); - } catch (FileNotFoundException ex) { - // 如果之前没有存储过,则创建新对象 - instance = new TemplateInfoCollector(); - } catch (InvalidClassException ex) { - // 如果 TemplateInfoCollecor 类结构有改动,则放弃之前收集的数据(下次保存时覆盖) - // 这种情况主要在开发、测试过程中遇到,正式上线后不应该出现 - FRLogger.getLogger().info(ex.getMessage()); - FRLogger.getLogger().info("use a new instance"); - instance = new TemplateInfoCollector(); - } - catch (Exception ex) { - FRLogger.getLogger().error(ex.getMessage(), ex); + instance = new TemplateInfoCollector(); + readXMLFile(instance, getInfoFile()); + // 兼容过渡。如果没有新文件,则从老文件读取数据。以后都是读写新的 xml 文件 + if (!getInfoFile().exists() && getObjectInfoFile().exists()) { + try { + ObjectInputStream is = new ObjectInputStream(new FileInputStream(getObjectInfoFile())); + instance = (TemplateInfoCollector) is.readObject(); + } catch (Exception ex) { + // 什么也不做,instance 使用新值 + } } } return instance; } + private static void readXMLFile(XMLReadable xmlReadable, File xmlFile){ + if (xmlFile == null || !xmlFile.exists()) { + return; + } + String charset = EncodeConstants.ENCODING_UTF_8; + try { + String fileContent = getFileContent(xmlFile); + InputStream xmlInputStream = new ByteArrayInputStream(fileContent.getBytes(charset)); + InputStreamReader inputStreamReader = new InputStreamReader(xmlInputStream, charset); + XMLableReader xmlReader = XMLableReader.createXMLableReader(inputStreamReader); + + if (xmlReader != null) { + xmlReader.readXMLObject(xmlReadable); + } + xmlInputStream.close(); + } catch (FileNotFoundException e) { + FRContext.getLogger().error(e.getMessage()); + } catch (IOException e) { + FRContext.getLogger().error(e.getMessage()); + } catch (XMLStreamException e) { + FRContext.getLogger().error(e.getMessage()); + } + + } + + private static String getFileContent(File xmlFile) throws FileNotFoundException, UnsupportedEncodingException{ + InputStream is = new FileInputStream(xmlFile); + return IOUtils.inputStream2String(is); + } + private boolean shouldCollectInfo() { if (FRContext.getCurrentEnv() instanceof RemoteEnv) { // 远程设计不收集数据 return false; @@ -106,8 +158,8 @@ public class TemplateInfoCollector implements Serializable { */ @SuppressWarnings("unchecked") public String loadProcess(T t) { - HashMap processMap = (HashMap) templateInfoList.get(t.getTemplateID()).get("processMap"); - return (String)processMap.get("process"); + HashMap processMap = (HashMap) templateInfoList.get(t.getTemplateID()).get(XML_PROCESS_MAP); + return (String)processMap.get(ATTR_PROCESS); } /** @@ -122,17 +174,8 @@ public class TemplateInfoCollector implements Serializable { */ private void saveInfo() { try { - ObjectOutputStream os = new ObjectOutputStream(new FileOutputStream(getInfoFile())); - String log = ""; - int count = 1; - for (String key : templateInfoList.keySet()) { - String createTime = ((HashMap)templateInfoList.get(key).get("consumingMap")).get("create_time").toString(); - log += (count + ". id: " + key + " " + createTime + "\n" + templateInfoList.get(key).toString() + "\n"); - count ++; - } - FRLogger.getLogger().info("writing tplInfo: \n" + log); - os.writeObject(instance); - os.close(); + FileOutputStream out = new FileOutputStream(getInfoFile()); + XMLTools.writeOutputStreamXML(this, out); } catch (Exception ex) { FRLogger.getLogger().error(ex.getMessage()); } @@ -145,8 +188,8 @@ public class TemplateInfoCollector implements Serializable { if (designerOpenFirstTime()) { for (String key : templateInfoList.keySet()) { HashMap templateInfo = templateInfoList.get(key); - int dayCount = (int)templateInfo.get("day_count") + 1; - templateInfo.put("day_count", dayCount); + int dayCount = (int)templateInfo.get(ATTR_DAY_COUNT) + 1; + templateInfo.put(ATTR_DAY_COUNT, dayCount); } setDesignerOpenDate(); } @@ -170,21 +213,20 @@ public class TemplateInfoCollector implements Serializable { if (inList(t)) { // 已有记录 templateInfo = templateInfoList.get(t.getTemplateID()); // 更新 conusmingMap - HashMap consumingMap = (HashMap) templateInfo.get("consumingMap"); - timeConsume += (long)consumingMap.get("time_consume"); // 加上之前的累计编辑时间 - consumingMap.put("time_consume", timeConsume); + HashMap consumingMap = (HashMap) templateInfo.get(XML_CONSUMING_MAP); + timeConsume += (long)consumingMap.get(ATTR_TIME_CONSUME); // 加上之前的累计编辑时间 + consumingMap.put(ATTR_TIME_CONSUME, timeConsume); } else { // 新增 templateInfo = new HashMap<>(); - templateInfo.put("consumingMap", getNewConsumingMap(templateID, openTime, timeConsume)); + templateInfo.put(XML_CONSUMING_MAP, getNewConsumingMap(templateID, openTime, timeConsume)); } // 直接覆盖 processMap - templateInfo.put("processMap", getProcessMap(templateID, jt)); + templateInfo.put(XML_PROCESS_MAP, getProcessMap(templateID, jt)); // 保存模板时,让 day_count 归零 - templateInfo.put("day_count", 0); - + templateInfo.put(ATTR_DAY_COUNT, 0); templateInfoList.put(templateID, templateInfo); @@ -200,14 +242,14 @@ public class TemplateInfoCollector implements Serializable { String createTime = new SimpleDateFormat("yyyy-MM-dd HH:mm").format(Calendar.getInstance().getTime()); String jarTime = GeneralUtils.readBuildNO(); String version = ProductConstants.VERSION; - consumingMap.put("username", username); - consumingMap.put("uuid", uuid); - consumingMap.put("activitykey", activitykey); - consumingMap.put("templateID", templateID); - consumingMap.put("create_time", createTime); - consumingMap.put("time_consume", timeConsume); - consumingMap.put("jar_time", jarTime); - consumingMap.put("version", version); + consumingMap.put(ATTR_USERNAME, username); + consumingMap.put(ATTR_UUID, uuid); + consumingMap.put(ATTR_ACTIVITYKEY, activitykey); + consumingMap.put(ATTR_TEMPLATE_ID, templateID); + consumingMap.put(ATTR_CREATE_TIME, createTime); + consumingMap.put(ATTR_TIME_CONSUME, timeConsume); + consumingMap.put(ATTR_JAR_TIME, jarTime); + consumingMap.put(ATTR_VERSION, version); return consumingMap; } @@ -215,15 +257,15 @@ public class TemplateInfoCollector implements Serializable { private HashMap getProcessMap(String templateID, JTemplate jt) { HashMap processMap = new HashMap<>(); - processMap.put("templateID", templateID); - processMap.put("process", jt.getProcess()); + processMap.put(ATTR_TEMPLATE_ID, templateID); + processMap.put(ATTR_PROCESS, jt.getProcess()); TemplateProcessInfo info = jt.getProcessInfo(); - processMap.put("report_type", info.getReportType()); - processMap.put("cell_count", info.getCellCount()); - processMap.put("float_count", info.getFloatCount()); - processMap.put("block_count", info.getBlockCount()); - processMap.put("widget_count", info.getWidgetCount()); + processMap.put(ATTR_REPORT_TYPE, info.getReportType()); + processMap.put(ATTR_CELL_COUNT, info.getCellCount()); + processMap.put(ATTR_FLOAT_COUNT, info.getFloatCount()); + processMap.put(ATTR_BLOCK_COUNT, info.getBlockCount()); + processMap.put(ATTR_WIDGET_COUNT, info.getWidgetCount()); return processMap; } @@ -237,14 +279,11 @@ public class TemplateInfoCollector implements Serializable { String processUrl = SiteCenter.getInstance().acquireUrlByKind("tempinfo.process") + "/single"; ArrayList> completeTemplatesInfo = getCompleteTemplatesInfo(); for (HashMap templateInfo : completeTemplatesInfo) { - String jsonConsumingMap = templateInfo.get("jsonConsumingMap"); - String jsonProcessMap = templateInfo.get("jsonProcessMap"); + String jsonConsumingMap = templateInfo.get(JSON_CONSUMING_MAP); + String jsonProcessMap = templateInfo.get(JSON_PROCESS_MAP); if (sendSingleTemplateInfo(consumingUrl, jsonConsumingMap) && sendSingleTemplateInfo(processUrl, jsonProcessMap)) { // 清空记录 - FRLogger.getLogger().info("successfully send " + templateInfo.get("templateID")); - removeFromTemplateInfoList(templateInfo.get("templateID")); - } else { - FRLogger.getLogger().info("send template info failed, will try next time, " + templateInfo.get("templateID")); + removeFromTemplateInfoList(templateInfo.get(ATTR_TEMPLATE_ID)); } } saveInfo(); @@ -264,7 +303,12 @@ public class TemplateInfoCollector implements Serializable { } String res = httpClient.getResponseText(); - boolean success = ComparatorUtils.equals(new JSONObject(res).get("status"), "success"); + boolean success; + try { + success = ComparatorUtils.equals(new JSONObject(res).get("status"), "success"); + } catch (Exception ex) { + success = false; + } return success; } @@ -277,21 +321,21 @@ public class TemplateInfoCollector implements Serializable { ArrayList testTemplateKeys = new ArrayList<>(); // 保存测试模板的key for (String key : templateInfoList.keySet()) { HashMap templateInfo = templateInfoList.get(key); - if ((int)templateInfo.get("day_count") <= COMPLETE_DAY_COUNT) { // 未完成模板 + if ((int)templateInfo.get(ATTR_DAY_COUNT) <= COMPLETE_DAY_COUNT) { // 未完成模板 continue; } if (isTestTemplate(templateInfo)) { testTemplateKeys.add(key); continue; } - HashMap consumingMap = (HashMap) templateInfo.get("consumingMap"); - HashMap processMap = (HashMap) templateInfo.get("processMap"); + HashMap consumingMap = (HashMap) templateInfo.get(XML_CONSUMING_MAP); + HashMap processMap = (HashMap) templateInfo.get(XML_PROCESS_MAP); String jsonConsumingMap = new JSONObject(consumingMap).toString(); String jsonProcessMap = new JSONObject(processMap).toString(); HashMap jsonTemplateInfo = new HashMap<>(); - jsonTemplateInfo.put("jsonConsumingMap", jsonConsumingMap); - jsonTemplateInfo.put("jsonProcessMap", jsonProcessMap); - jsonTemplateInfo.put("templateID", key); + jsonTemplateInfo.put(JSON_CONSUMING_MAP, jsonConsumingMap); + jsonTemplateInfo.put(JSON_PROCESS_MAP, jsonProcessMap); + jsonTemplateInfo.put(ATTR_TEMPLATE_ID, key); completeTemplatesInfo.add(jsonTemplateInfo); } // 删除测试模板 @@ -303,17 +347,16 @@ public class TemplateInfoCollector implements Serializable { private void removeFromTemplateInfoList(String key) { templateInfoList.remove(key); - FRLogger.getLogger().info(key + " is removed..."); } @SuppressWarnings("unchecked") private boolean isTestTemplate(HashMap templateInfo) { - HashMap processMap = (HashMap) templateInfo.get("processMap"); - int reportType = (int)processMap.get("report_type"); - int cellCount = (int)processMap.get("cell_count"); - int floatCount = (int)processMap.get("float_count"); - int blockCount = (int)processMap.get("block_count"); - int widgetCount = (int)processMap.get("widget_count"); + HashMap processMap = (HashMap) templateInfo.get(XML_PROCESS_MAP); + int reportType = (int)processMap.get(ATTR_REPORT_TYPE); + int cellCount = (int)processMap.get(ATTR_CELL_COUNT); + int floatCount = (int)processMap.get(ATTR_FLOAT_COUNT); + int blockCount = (int)processMap.get(ATTR_BLOCK_COUNT); + int widgetCount = (int)processMap.get(ATTR_WIDGET_COUNT); boolean isTestTemplate = false; if (reportType == 0) { // 普通报表 isTestTemplate = cellCount <= VALID_CELL_COUNT && floatCount <= 1 && widgetCount <= VALID_WIDGET_COUNT; @@ -325,6 +368,157 @@ public class TemplateInfoCollector implements Serializable { return isTestTemplate; } + @SuppressWarnings("unchecked") + @Override + public void readXML(XMLableReader reader) { + if (reader.isChildNode()) { + try { + String name = reader.getTagName(); + if (XML_DESIGNER_OPEN_DATE.equals(name)) { + this.designerOpenDate = reader.getElementValue(); + } else if(XML_TEMPLATE_INFO_LIST.equals(name)){ + readTemplateInfoList(reader); + } + } catch (Exception ex) { + // 什么也不做,使用默认值 + } + } + } + + private void readTemplateInfoList(XMLableReader reader) { + reader.readXMLObject(new XMLReadable() { + public void readXML(XMLableReader reader) { + if (XML_TEMPLATE_INFO.equals(reader.getTagName())) { + TemplateInfo templateInfo = new TemplateInfo(); + reader.readXMLObject(templateInfo); + templateInfoList.put(templateInfo.getTemplateID(), templateInfo.getTemplateInfo()); + } + } + }); + } + + @Override + public void writeXML(XMLPrintWriter writer) { + writer.startTAG("TplInfo"); + + writer.startTAG(XML_DESIGNER_OPEN_DATE); + writer.textNode(designerOpenDate); + writer.end(); + + writeTemplateInfoList(writer); + + writer.end(); + } + + private void writeTemplateInfoList(XMLPrintWriter writer){ + //启停 + writer.startTAG(XML_TEMPLATE_INFO_LIST); + for (String templateID : templateInfoList.keySet()) { + new TemplateInfo(templateInfoList.get(templateID)).writeXML(writer); + } + writer.end(); + } + + private class TemplateInfo implements XMLReadable, XMLWriter { + + private int dayCount; + private String templateID; + private HashMap processMap = new HashMap<>(); + private HashMap consumingMap = new HashMap<>(); + + @SuppressWarnings("unchecked") + public TemplateInfo(HashMap templateInfo) { + this.dayCount = (int)templateInfo.get(ATTR_DAY_COUNT); + this.processMap = (HashMap) templateInfo.get(XML_PROCESS_MAP); + this.consumingMap = (HashMap) templateInfo.get(XML_CONSUMING_MAP); + this.templateID = (String) processMap.get(ATTR_TEMPLATE_ID); + } + + public TemplateInfo() {} + + public String getTemplateID() { + return templateID; + } + + public HashMap getTemplateInfo() { + HashMap templateInfo = new HashMap<>(); + templateInfo.put(XML_PROCESS_MAP, processMap); + templateInfo.put(XML_CONSUMING_MAP, consumingMap); + templateInfo.put(ATTR_DAY_COUNT, dayCount); + return templateInfo; + } + + public void writeXML(XMLPrintWriter writer) { + writer.startTAG(XML_TEMPLATE_INFO); + if (StringUtils.isNotEmpty(templateID)) { + writer.attr(ATTR_TEMPLATE_ID, this.templateID); + } + if (dayCount >= 0) { + writer.attr(ATTR_DAY_COUNT, this.dayCount); + } + writeProcessMap(writer); + writeConsumingMap(writer); + + writer.end(); + } + + private void writeProcessMap(XMLPrintWriter writer) { + writer.startTAG(XML_PROCESS_MAP); + writer.attr(ATTR_PROCESS, (String)processMap.get(ATTR_PROCESS)); + writer.attr(ATTR_FLOAT_COUNT, (int)processMap.get(ATTR_FLOAT_COUNT)); + writer.attr(ATTR_WIDGET_COUNT, (int)processMap.get(ATTR_WIDGET_COUNT)); + writer.attr(ATTR_CELL_COUNT, (int)processMap.get(ATTR_CELL_COUNT)); + writer.attr(ATTR_BLOCK_COUNT, (int)processMap.get(ATTR_BLOCK_COUNT)); + writer.attr(ATTR_REPORT_TYPE, (int)processMap.get(ATTR_REPORT_TYPE)); + writer.end(); + } + + private void writeConsumingMap(XMLPrintWriter writer) { + writer.startTAG(XML_CONSUMING_MAP); + writer.attr(ATTR_ACTIVITYKEY, (String)consumingMap.get(ATTR_ACTIVITYKEY)); + writer.attr(ATTR_JAR_TIME, (String)consumingMap.get(ATTR_JAR_TIME)); + writer.attr(ATTR_CREATE_TIME, (String)consumingMap.get(ATTR_CREATE_TIME)); + writer.attr(ATTR_UUID, (String)consumingMap.get(ATTR_UUID)); + writer.attr(ATTR_TIME_CONSUME, (long)consumingMap.get(ATTR_TIME_CONSUME)); + writer.attr(ATTR_VERSION, (String)consumingMap.get(ATTR_VERSION)); + writer.attr(ATTR_USERNAME, (String)consumingMap.get(ATTR_USERNAME)); + writer.end(); + } + + public void readXML(XMLableReader reader) { + if (!reader.isChildNode()) { + dayCount = reader.getAttrAsInt(ATTR_DAY_COUNT, 0); + templateID = reader.getAttrAsString(ATTR_TEMPLATE_ID, StringUtils.EMPTY); + } else { + try { + String name = reader.getTagName(); + if (XML_PROCESS_MAP.equals(name)) { + processMap.put(ATTR_PROCESS, reader.getAttrAsString(ATTR_PROCESS, StringUtils.EMPTY)); + processMap.put(ATTR_FLOAT_COUNT, reader.getAttrAsInt(ATTR_FLOAT_COUNT, 0)); + processMap.put(ATTR_WIDGET_COUNT, reader.getAttrAsInt(ATTR_WIDGET_COUNT, 0)); + processMap.put(ATTR_CELL_COUNT, reader.getAttrAsInt(ATTR_CELL_COUNT, 0)); + processMap.put(ATTR_BLOCK_COUNT, reader.getAttrAsInt(ATTR_BLOCK_COUNT, 0)); + processMap.put(ATTR_REPORT_TYPE, reader.getAttrAsInt(ATTR_REPORT_TYPE, 0)); + processMap.put(ATTR_TEMPLATE_ID, templateID); + } else if(XML_CONSUMING_MAP.equals(name)){ + consumingMap.put(ATTR_ACTIVITYKEY, reader.getAttrAsString(ATTR_ACTIVITYKEY, StringUtils.EMPTY)); + consumingMap.put(ATTR_JAR_TIME, reader.getAttrAsString(ATTR_JAR_TIME, StringUtils.EMPTY)); + consumingMap.put(ATTR_CREATE_TIME, reader.getAttrAsString(ATTR_CREATE_TIME, StringUtils.EMPTY)); + consumingMap.put(ATTR_TEMPLATE_ID, templateID); + consumingMap.put(ATTR_UUID, reader.getAttrAsString(ATTR_UUID, StringUtils.EMPTY)); + consumingMap.put(ATTR_TIME_CONSUME, reader.getAttrAsLong(ATTR_TIME_CONSUME, 0)); + consumingMap.put(ATTR_VERSION, reader.getAttrAsString(ATTR_VERSION, "8.0")); + consumingMap.put(ATTR_USERNAME, reader.getAttrAsString(ATTR_USERNAME, StringUtils.EMPTY)); + } + } catch (Exception ex) { + // 什么也不做,使用默认值 + } + } + } + + } + + public static void main(String[] args) { TemplateInfoCollector tic = TemplateInfoCollector.getInstance(); tic.sendTemplateInfo(); diff --git a/designer_base/src/com/fr/design/style/color/ColorSelectDetailPane.java b/designer_base/src/com/fr/design/style/color/ColorSelectDetailPane.java index 5c6c505a3..a84b772ca 100644 --- a/designer_base/src/com/fr/design/style/color/ColorSelectDetailPane.java +++ b/designer_base/src/com/fr/design/style/color/ColorSelectDetailPane.java @@ -1,112 +1,104 @@ package com.fr.design.style.color; -import java.awt.BorderLayout; -import java.awt.Color; -import java.awt.Dimension; +import com.fr.design.dialog.BasicPane; +import com.fr.design.layout.FRGUIPaneFactory; +import com.fr.general.Inter; -import javax.swing.JColorChooser; -import javax.swing.JPanel; +import javax.swing.*; import javax.swing.colorchooser.AbstractColorChooserPanel; import javax.swing.colorchooser.ColorSelectionModel; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; - -import com.fr.design.dialog.BasicPane; -import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.general.Inter; +import java.awt.*; /** * 颜色选择器更多颜色面板 - * @author focus * + * @author focus */ -public class ColorSelectDetailPane extends BasicPane{ - private static final int SELECT_PANEL_HEIGHT = 245; - // Selected color - private Color color; - - // 颜色选择器面板 - JColorChooser selectedPanel; - - // 最近使用颜色面板 - JPanel recentUsePanel; - - // 预览 - JPanel previewPanel; - - public JColorChooser getSelectedPanel() { - return selectedPanel; - } - - public void setSelectedPanel(JColorChooser selectedPanel) { - this.selectedPanel = selectedPanel; - } - - public Color getColor() { - return color; - } - - public void setColor(Color color) { - this.color = color; - } - - public ColorSelectDetailPane() { - super(); - } - - public ColorSelectDetailPane(Color color){ - if(color == null){ - color = Color.white; - } - this.color = color; - initComponents(); - } - - @Override - protected String title4PopupWindow() { - return null; - } - - protected void initComponents() { - this.setLayout(FRGUIPaneFactory.createBorderLayout()); - - // 颜色选择器面板 - selectedPanel = new JColorChooser(this.color); - selectedPanel.setPreferredSize(new Dimension(selectedPanel.getWidth(),SELECT_PANEL_HEIGHT)); - AbstractColorChooserPanel[] choosers = selectedPanel.getChooserPanels(); - for(int i=0;i colorChangeListenerList = new ArrayList(); - - ColorSelectDetailPane pane; - + + + /* default */ ColorSelectDetailPane pane; + /** * Constructor. */ public ColorSelectPane() { - super(true); - initialCompents(true); + super(true); + initialCompents(true); } public ColorSelectPane(boolean isSupportTransparent) { super(isSupportTransparent); initialCompents(isSupportTransparent); } - + private void initialCompents(boolean isSupportTransparent) { - this.setLayout(FRGUIPaneFactory.createBorderLayout()); - this.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5)); - if (isSupportTransparent) { - UIButton transpanrentButton = new UIButton(Inter.getLocText("FR-Designer_ChartF-Transparency")); - this.add(transpanrentButton, BorderLayout.NORTH); - transpanrentButton.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - doTransparent(); - } - }); - } - - // center - JPanel centerPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - this.add(centerPane, BorderLayout.CENTER); - - centerPane.add(getRow1Pane()); - - JPanel menuColorPane1 = getMenuColorPane(); - centerPane.add(menuColorPane1); + this.setLayout(FRGUIPaneFactory.createBorderLayout()); + this.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5)); + if (isSupportTransparent) { + UIButton transpanrentButton = new UIButton(Inter.getLocText("FR-Designer_ChartF-Transparency")); + this.add(transpanrentButton, BorderLayout.NORTH); + transpanrentButton.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + doTransparent(); + } + }); + } + + // center + JPanel centerPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); + this.add(centerPane, BorderLayout.CENTER); + + centerPane.add(getRow1Pane()); + + JPanel menuColorPane1 = getMenuColorPane(); + centerPane.add(menuColorPane1); Color[] colorArray = this.getColorArray(); - for (int i = 0; i < colorArray.length; i++) { - Color color = colorArray[i] == null ? UsedColorPane.DEFAULT_COLOR : colorArray[i]; - menuColorPane1.add(new ColorCell(color, this)); - } - - centerPane.add(Box.createVerticalStrut(1)); - - UIButton customButton = new UIButton(Inter.getLocText("FR-Designer-Basic_More_Color")); - - customButton.addMouseListener(new MouseAdapter() { - @Override - public void mousePressed(MouseEvent e) { - customButtonPressed(); - } - }); - customButton.setCursor(new Cursor(Cursor.HAND_CURSOR)); - JPanel centerPane1 = FRGUIPaneFactory.createBorderLayout_S_Pane(); - centerPane1.setBorder(BorderFactory.createEmptyBorder(2, 8, 8, 8)); - centerPane1.add(customButton, BorderLayout.NORTH); - centerPane.add(centerPane1); - } - - protected JPanel getMenuColorPane() { - JPanel menuColorPane = new JPanel(); - menuColorPane.setLayout(new GridLayout(5, 8, 1, 1)); - menuColorPane.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 8)); - - return menuColorPane; - } - - // 第一行,1个取色按钮 + 7个最近使用的颜色 - protected JPanel getRow1Pane() { - JPanel row1Pane = new JPanel(FRGUIPaneFactory.createBorderLayout()); - row1Pane.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 0)); - row1Pane.setPreferredSize(new Dimension(135, 24)); // 宽度为 16 * 8 + 7 - - // 最近使用 - UsedColorPane usedColorPane = new UsedColorPane(1, 8, 1, ColorSelectConfigManager.getInstance().getColors(), this, true, true); - usedColorPane.getPane().setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 8)); - row1Pane.add(usedColorPane.getPane()); - return row1Pane; - } - - protected Color[] getColorArray(){ + for (int i = 0; i < colorArray.length; i++) { + Color color = colorArray[i] == null ? UsedColorPane.DEFAULT_COLOR : colorArray[i]; + menuColorPane1.add(new ColorCell(color, this)); + } + + centerPane.add(Box.createVerticalStrut(1)); + + UIButton customButton = new UIButton(Inter.getLocText("FR-Designer-Basic_More_Color")); + + customButton.addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + customButtonPressed(); + } + }); + customButton.setCursor(new Cursor(Cursor.HAND_CURSOR)); + JPanel centerPane1 = FRGUIPaneFactory.createBorderLayout_S_Pane(); + centerPane1.setBorder(BorderFactory.createEmptyBorder(2, 8, 8, 8)); + centerPane1.add(customButton, BorderLayout.NORTH); + centerPane.add(centerPane1); + } + + protected JPanel getMenuColorPane() { + JPanel menuColorPane = new JPanel(); + menuColorPane.setLayout(new GridLayout(5, 8, 1, 1)); + menuColorPane.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 8)); + + return menuColorPane; + } + + // 第一行,1个取色按钮 + 1个留空的单元格 + 6个最近使用的颜色 + protected JPanel getRow1Pane() { + JPanel row1Pane = new JPanel(FRGUIPaneFactory.createBorderLayout()); + row1Pane.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 0)); + row1Pane.setPreferredSize(new Dimension(135, 24)); // 宽度为 16 * 8 + 7 + + // 最近使用 + UsedColorPane usedColorPane = new UsedColorPane(1, 8, 1, this, true, true); + usedColorPane.getPane().setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 8)); + row1Pane.add(usedColorPane.getPane()); + return row1Pane; + } + + protected Color[] getColorArray() { return ColorFactory.MenuColors; } @@ -125,15 +123,16 @@ public class ColorSelectPane extends TransparentPane implements ColorSelectable /** * Add change listener. * 增加监听 - * @param 监听 + * + * @param changeListener */ public void addChangeListener(ChangeListener changeListener) { this.colorChangeListenerList.add(changeListener); } - + @Override protected String title4PopupWindow() { - return "Color"; + return "Color"; } /** @@ -166,38 +165,36 @@ public class ColorSelectPane extends TransparentPane implements ColorSelectable /** * 选中颜色 - * @param 颜色单元格 - * */ - @Override - public void colorSetted(ColorCell colorCell) { - colorCell.repaint(); - } - - /** - * 初始化中央面板 - * @param centerPane 中央面板 - * - */ - @Override - public void initCenterPaneChildren(JPanel centerPane) { - GUICoreUtils.initCenterPaneChildren(centerPane, this); - } - - /** - * 透明 - */ - @Override - public void doTransparent() { - this.setColor(null); - } - - /** - * 更多颜色 - */ - @Override - public void customButtonPressed() { - pane = new ColorSelectDetailPane(Color.WHITE); - ColorSelectDialog.showDialog(DesignerContext.getDesignerFrame(), pane, Color.WHITE, this); - } + @Override + public void colorSetted(ColorCell colorCell) { + colorCell.repaint(); + } + + /** + * 初始化中央面板 + * + * @param centerPane 中央面板 + */ + @Override + public void initCenterPaneChildren(JPanel centerPane) { + GUICoreUtils.initCenterPaneChildren(centerPane, this); + } + + /** + * 透明 + */ + @Override + public void doTransparent() { + this.setColor(null); + } + + /** + * 更多颜色 + */ + @Override + public void customButtonPressed() { + pane = new ColorSelectDetailPane(Color.WHITE); + ColorSelectDialog.showDialog(DesignerContext.getDesignerFrame(), pane, Color.WHITE, this); + } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/style/color/NewColorSelectPane.java b/designer_base/src/com/fr/design/style/color/NewColorSelectPane.java index b9903a81f..cb4398fd9 100644 --- a/designer_base/src/com/fr/design/style/color/NewColorSelectPane.java +++ b/designer_base/src/com/fr/design/style/color/NewColorSelectPane.java @@ -1,215 +1,205 @@ package com.fr.design.style.color; -import java.awt.BorderLayout; -import java.awt.Color; -import java.awt.Cursor; -import java.awt.Dimension; -import java.awt.GridLayout; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; -import java.util.ArrayList; - -import javax.swing.BorderFactory; -import javax.swing.Box; -import javax.swing.JPanel; -import javax.swing.event.ChangeEvent; -import javax.swing.event.ChangeListener; - -import com.fr.design.constants.UIConstants; import com.fr.design.border.UIRoundedBorder; +import com.fr.design.constants.UIConstants; +import com.fr.design.dialog.BasicPane; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.DesignerContext; -import com.fr.design.dialog.BasicPane; import com.fr.general.Inter; +import javax.swing.*; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.util.ArrayList; + /** - * * @author zhou * @since 2012-5-29上午10:39:35 */ public class NewColorSelectPane extends BasicPane implements ColorSelectable { - private static final long serialVersionUID = -8634152305687249392L; - - private Color color = null; // color - // color setting action. - private ArrayList colorChangeListenerList = new ArrayList(); - - // 颜色选择器 - private ColorSelectDetailPane pane; - // 是否支持透明 - private boolean isSupportTransparent; - - private final static int TRANSPANENT_WINDOW_HEIGHT = 165; - private final static int WINDWO_HEIGHT = 150; - - // 最近使用颜色 - UsedColorPane usedColorPane; - - /** - * Constructor. - */ - public NewColorSelectPane() { - this(false); - } - - /** - * Constructor. - */ - public NewColorSelectPane(boolean isSupportTransparent) { - this.isSupportTransparent = isSupportTransparent; - this.setLayout(FRGUIPaneFactory.createBorderLayout()); - this.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5)); - if (isSupportTransparent) { - UIButton transpanrentButton = new UIButton(Inter.getLocText("FR-Designer_ChartF-Transparency")); - this.add(transpanrentButton, BorderLayout.NORTH); - transpanrentButton.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - doTransparent(); - } - }); - } - - // center - JPanel centerPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - this.add(centerPane, BorderLayout.CENTER); - - // 第一行 - JPanel row1Pane = new JPanel(FRGUIPaneFactory.createBorderLayout()); - row1Pane.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 0)); - row1Pane.setPreferredSize(new Dimension(135, 16)); // 宽度为 16 * 8 + 7 - centerPane.add(row1Pane); - // 最近使用 - usedColorPane = new UsedColorPane(1, 8, 1, ColorSelectConfigManager.getInstance().getColors(), this, true, false); - usedColorPane.getPane().setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 8)); - row1Pane.add(usedColorPane.getPane()); - - JPanel menuColorPane1 = new JPanel(); - centerPane.add(menuColorPane1); - - menuColorPane1.setLayout(new GridLayout(5, 8, 1, 1)); - menuColorPane1.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 8)); - for (int i = 0; i < ColorFactory.MenuColors.length; i++) { - menuColorPane1.add(new ColorCell(ColorFactory.MenuColors[i], this)); - } - - centerPane.add(Box.createVerticalStrut(1)); - - // mod by anchore 16/11/16 - UIButton customButton = new UIButton(Inter.getLocText("FR-Designer-Basic_More_Color")); - //UIButton customButton = new UIButton(Inter.getLocText(new String[]{"More", "Color"}) + "..."); - - customButton.addMouseListener(new MouseAdapter() { - @Override - public void mousePressed(MouseEvent e) { - customButtonPressed(); - } - }); - customButton.setCursor(new Cursor(Cursor.HAND_CURSOR)); - JPanel centerPane1 = FRGUIPaneFactory.createBorderLayout_S_Pane(); - centerPane1.setBorder(BorderFactory.createEmptyBorder(2, 8, 0, 8)); - centerPane1.add(customButton, BorderLayout.NORTH); - centerPane.add(centerPane1); - } - - - - /** - * 添加监听 - * @param 监听列表 - * Add change listener. - */ - public void addChangeListener(ChangeListener changeListener) { - this.colorChangeListenerList.add(changeListener); - } - - @Override - protected String title4PopupWindow() { - return "Color"; - } - - /** - * 获取颜色 - * @return 颜色 - * Return the color. - */ - public Color getColor() { - return color; - } - - /** - * 获取颜色 - * - * @return 颜色 - */ - public Color getNotNoneColor() { - if (color == null) { - setColor(Color.WHITE); - return Color.WHITE; - } - return color; - } - - /** - * Set the color. - * - * @param color - * the new color. - */ - @Override - public void setColor(Color color) { - this.color = color; - - // fire color change. - if (!colorChangeListenerList.isEmpty()) { - ChangeEvent evt = new ChangeEvent(this); - - for (int i = 0; i < colorChangeListenerList.size(); i++) { - this.colorChangeListenerList.get(i).stateChanged(evt); - } - } - ColorSelectConfigManager.getInstance().addToColorQueue(color); - this.repaint(); - } - - /** - * 设置颜色 - * @param 颜色位置 - */ - @Override - public void colorSetted(ColorCell colorCell) { - colorCell.repaint(); - } - - protected void doTransparent() { - setColor(null); - } - protected void customButtonPressed() { - pane = new ColorSelectDetailPane(Color.WHITE); - ColorSelectDialog.showDialog(DesignerContext.getDesignerFrame(), pane, Color.WHITE, this); - } - - @Override - public Dimension getPreferredSize() { - if(isSupportTransparent){ - return new Dimension(super.getPreferredSize().width, TRANSPANENT_WINDOW_HEIGHT); - } - return new Dimension(super.getPreferredSize().width, WINDWO_HEIGHT); - } - - /** - * 更新最近使用颜色 - * - */ - public void updateUsedColor(){ - usedColorPane.updateUsedColor(); - } - + private static final long serialVersionUID = -8634152305687249392L; + + private Color color = null; // color + // color setting action. + private ArrayList colorChangeListenerList = new ArrayList(); + + // 颜色选择器 + private ColorSelectDetailPane pane; + // 是否支持透明 + private boolean isSupportTransparent; + + private final static int TRANSPANENT_WINDOW_HEIGHT = 165; + private final static int WINDWO_HEIGHT = 150; + + // 最近使用颜色 + private UsedColorPane usedColorPane; + + /** + * Constructor. + */ + public NewColorSelectPane() { + this(false); + } + + /** + * Constructor. + */ + public NewColorSelectPane(boolean isSupportTransparent) { + this.isSupportTransparent = isSupportTransparent; + this.setLayout(FRGUIPaneFactory.createBorderLayout()); + this.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5)); + if (isSupportTransparent) { + UIButton transpanrentButton = new UIButton(Inter.getLocText("FR-Designer_ChartF-Transparency")); + this.add(transpanrentButton, BorderLayout.NORTH); + transpanrentButton.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + doTransparent(); + } + }); + } + + // center + JPanel centerPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); + this.add(centerPane, BorderLayout.CENTER); + + // 第一行 + JPanel row1Pane = new JPanel(FRGUIPaneFactory.createBorderLayout()); + row1Pane.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 0)); + row1Pane.setPreferredSize(new Dimension(135, 16)); // 宽度为 16 * 8 + 7 + centerPane.add(row1Pane); + // 最近使用 + usedColorPane = new UsedColorPane(1, 8, 1, this, true, false); + usedColorPane.getPane().setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 8)); + row1Pane.add(usedColorPane.getPane()); + + JPanel menuColorPane1 = new JPanel(); + centerPane.add(menuColorPane1); + + menuColorPane1.setLayout(new GridLayout(5, 8, 1, 1)); + menuColorPane1.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 8)); + for (int i = 0; i < ColorFactory.MenuColors.length; i++) { + menuColorPane1.add(new ColorCell(ColorFactory.MenuColors[i], this)); + } + + centerPane.add(Box.createVerticalStrut(1)); + + // mod by anchore 16/11/16 + UIButton customButton = new UIButton(Inter.getLocText("FR-Designer-Basic_More_Color")); + + customButton.addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + customButtonPressed(); + } + }); + customButton.setCursor(new Cursor(Cursor.HAND_CURSOR)); + JPanel centerPane1 = FRGUIPaneFactory.createBorderLayout_S_Pane(); + centerPane1.setBorder(BorderFactory.createEmptyBorder(2, 8, 0, 8)); + centerPane1.add(customButton, BorderLayout.NORTH); + centerPane.add(centerPane1); + } + + + /** + * 添加监听 + * + * @param 监听列表 Add change listener. + */ + public void addChangeListener(ChangeListener changeListener) { + this.colorChangeListenerList.add(changeListener); + } + + @Override + protected String title4PopupWindow() { + return "Color"; + } + + /** + * 获取颜色 + * + * @return 颜色 + * Return the color. + */ + public Color getColor() { + return color; + } + + /** + * 获取颜色 + * + * @return 颜色 + */ + public Color getNotNoneColor() { + if (color == null) { + setColor(Color.WHITE); + return Color.WHITE; + } + return color; + } + + /** + * Set the color. + * + * @param color the new color. + */ + @Override + public void setColor(Color color) { + this.color = color; + + // fire color change. + if (!colorChangeListenerList.isEmpty()) { + ChangeEvent evt = new ChangeEvent(this); + + for (int i = 0; i < colorChangeListenerList.size(); i++) { + this.colorChangeListenerList.get(i).stateChanged(evt); + } + } + ColorSelectConfigManager.getInstance().addToColorQueue(color); + this.repaint(); + } + + /** + * 设置颜色 + * + * @param 颜色位置 + */ + @Override + public void colorSetted(ColorCell colorCell) { + colorCell.repaint(); + } + + protected void doTransparent() { + setColor(null); + } + + protected void customButtonPressed() { + pane = new ColorSelectDetailPane(Color.WHITE); + ColorSelectDialog.showDialog(DesignerContext.getDesignerFrame(), pane, Color.WHITE, this); + } + + @Override + public Dimension getPreferredSize() { + if (isSupportTransparent) { + return new Dimension(super.getPreferredSize().width, TRANSPANENT_WINDOW_HEIGHT); + } + return new Dimension(super.getPreferredSize().width, WINDWO_HEIGHT); + } + + /** + * 更新最近使用颜色 + */ + public void updateUsedColor() { + usedColorPane.updateUsedColor(); + } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/style/color/RecentUseColorPane.java b/designer_base/src/com/fr/design/style/color/RecentUseColorPane.java index 914436d0f..c85ff6be8 100644 --- a/designer_base/src/com/fr/design/style/color/RecentUseColorPane.java +++ b/designer_base/src/com/fr/design/style/color/RecentUseColorPane.java @@ -1,55 +1,48 @@ package com.fr.design.style.color; -import java.awt.BorderLayout; -import java.awt.Color; - -import javax.swing.JColorChooser; -import javax.swing.JPanel; - import com.fr.design.dialog.BasicPane; import com.fr.design.layout.FRGUIPaneFactory; -public class RecentUseColorPane extends BasicPane implements ColorSelectable{ - - JColorChooser chooser; - - @Override - protected String title4PopupWindow() { - return null; - } - - public RecentUseColorPane() { - } - - public RecentUseColorPane(JColorChooser chooser) { - this.chooser = chooser; - - // center - JPanel centerPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - this.add(centerPane, BorderLayout.CENTER); - // 最近使用 - UsedColorPane pane = new UsedColorPane(2, 10, ColorSelectConfigManager.getInstance().getColors(),this); - centerPane.add(pane.getPane()); - } - - /** - * 选中颜色 - * - * @param 颜色 - */ - @Override - public void colorSetted(ColorCell color) { - - } - - @Override - public Color getColor() { - return null; - } - - @Override - public void setColor(Color color) { - chooser.getSelectionModel().setSelectedColor(color); - } - +import javax.swing.*; +import java.awt.*; + +public class RecentUseColorPane extends BasicPane implements ColorSelectable { + + private JColorChooser chooser; + + @Override + protected String title4PopupWindow() { + return null; + } + + + public RecentUseColorPane(JColorChooser chooser) { + this.chooser = chooser; + + // center + JPanel centerPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); + this.add(centerPane, BorderLayout.CENTER); + // 最近使用 + UsedColorPane pane = new UsedColorPane(2, 10, this); + centerPane.add(pane.getPane()); + } + + /** + * 选中颜色 + */ + @Override + public void colorSetted(ColorCell color) { + + } + + @Override + public Color getColor() { + return null; + } + + @Override + public void setColor(Color color) { + chooser.getSelectionModel().setSelectedColor(color); + } + } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/style/color/UsedColorPane.java b/designer_base/src/com/fr/design/style/color/UsedColorPane.java index c8dfdcaec..5594254c3 100644 --- a/designer_base/src/com/fr/design/style/color/UsedColorPane.java +++ b/designer_base/src/com/fr/design/style/color/UsedColorPane.java @@ -1,119 +1,112 @@ package com.fr.design.style.color; -import java.awt.Color; -import java.awt.GridLayout; - -import javax.swing.BorderFactory; -import javax.swing.JPanel; - import com.fr.design.dialog.BasicPane; import com.fr.design.gui.ibutton.SpecialUIButton; -public class UsedColorPane extends BasicPane{ - - public static final Color DEFAULT_COLOR = new Color(222,222,222); - - // 最近使用面板列数 - private int columns; - // 最近使用面板行数 - private int rows; - // 留白的单元格数量 - private int reserveCells; - // 是否需要取色器按钮 - private boolean needPickColorButton; - // 是否在取色时实时设定颜色 - private boolean setColorRealTime; - // 最近使用颜色 - private Object[] colors; - // 最近使用面板 - private JPanel pane; - - private ColorSelectable selectable; - - public JPanel getPane() { - return pane; - } - - public void setPane(JPanel pane) { - this.pane = pane; - } - - public UsedColorPane(){ - - } - - /** - * 构造函数 - * - * @param rows 行 - * @param columns 列 - * @param reserveCells 留白的单元格个数 - * @param colors 最近使用的颜色 - * @param needPickColorButton 是否需要加上取色器按钮 - * @param setColorRealTime 取色器是否实时设定颜色 - */ - public UsedColorPane(int rows,int columns,int reserveCells, Object[] colors, ColorSelectable selectable, boolean needPickColorButton, boolean setColorRealTime){ - this.columns = columns; - this.rows = rows; - this.reserveCells = reserveCells; - this.colors = colors; - this.selectable = selectable; - this.needPickColorButton = needPickColorButton; - this.setColorRealTime = setColorRealTime; - initialComponents(); - } - - public UsedColorPane(int rows,int columns, Object[] colors,ColorSelectable selectable){ - this(rows, columns, 0, colors, selectable, false, false); - } - - private void initialComponents(){ - int total = columns * rows; - JPanel panel = new JPanel(); - panel.setLayout(new GridLayout(rows,columns, 1, 1)); - panel.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 8)); - Color[] colors = ColorSelectConfigManager.getInstance().getColors(); - int size = colors.length; - - int i = 0; - if (needPickColorButton) { - // 取色按钮 - SpecialUIButton pickColorButton = PickColorButtonFactory.getPickColorButton(selectable, PickColorButtonFactory.IconType.ICON16, setColorRealTime); - panel.add(pickColorButton); - i++; - this.reserveCells += 1; - } - while (i < this.reserveCells) { - ColorCell cc = new ColorCell(DEFAULT_COLOR, selectable); - cc.setVisible(false); - panel.add(cc); - i++; - } - while (i < total) { - Color color = i < size ? colors[size-1-i]: DEFAULT_COLOR; - panel.add(new ColorCell(color == null ? DEFAULT_COLOR : color, selectable)); - i++; - } - this.pane = panel; - } - - /** - * 更新最近使用颜色 - * - */ - public void updateUsedColor(){ - int total = columns * rows; - Color[] colors = ColorSelectConfigManager.getInstance().getColors(); - int size = colors.length; - for(int i=this.reserveCells; i { parameterList.toArray(parameters); formHyperlink.setParameters(parameters); + } else { + formHyperlink.setParameters(null); } } diff --git a/designer_chart/src/com/fr/design/mainframe/chart/gui/data/TableDataPane.java b/designer_chart/src/com/fr/design/mainframe/chart/gui/data/TableDataPane.java index 42ba6750c..382ca853d 100644 --- a/designer_chart/src/com/fr/design/mainframe/chart/gui/data/TableDataPane.java +++ b/designer_chart/src/com/fr/design/mainframe/chart/gui/data/TableDataPane.java @@ -25,6 +25,10 @@ public class TableDataPane extends FurtherBasicBeanPane{ private ChartDataPane parent; + protected AbstractTableDataContentPane getDataContentPane() { + return dataContentPane; + } + public TableDataPane(ChartDataPane parent) { this.parent = parent; initDataPane(); @@ -103,15 +107,18 @@ public class TableDataPane extends FurtherBasicBeanPane{ * @param collection 图表属性的集合 */ public void refreshContentPane(ChartCollection collection) { + refreshContentPane(getContentPane(collection.getSelectedChart().getPlot())); + } + + protected void refreshContentPane(AbstractTableDataContentPane contentPane) { if(dataContentPane != null) { remove(dataContentPane); } - dataContentPane = getContentPane(collection.getSelectedChart().getPlot()); + dataContentPane = contentPane; if(dataContentPane != null) { add(dataContentPane, BorderLayout.CENTER); } } - /** * 更新界面属性 */ @@ -120,17 +127,21 @@ public class TableDataPane extends FurtherBasicBeanPane{ return; } TableDataDefinition data = (TableDataDefinition)collection.getSelectedChart().getFilterDefinition(); + populateDSName(data); + if(dataContentPane != null) { + dataContentPane.populateBean(collection); + } + } + protected void populateDSName(TableDataDefinition dataDefinition){ + TableData tableData = null; - if(data != null) { - tableData = data.getTableData(); + if(dataDefinition != null) { + tableData = dataDefinition.getTableData(); } onSelectTableData(); checkBoxUse(); tableDataPane.populateBean(tableData); - if(dataContentPane != null) { - dataContentPane.populateBean(collection); - } } /** @@ -141,6 +152,10 @@ public class TableDataPane extends FurtherBasicBeanPane{ dataContentPane.updateBean(collection); } TopDefinition dataDefinition = (TopDefinition)collection.getSelectedChart().getFilterDefinition(); + updateDSName(dataDefinition); + } + + protected void updateDSName(TopDefinition dataDefinition) { if(dataDefinition instanceof TableDataDefinition) { TableDataWrapper tableDataWrapper = tableDataPane.getTableDataWrapper(); if (dataDefinition != null && tableDataWrapper != null){ diff --git a/designer_form/src/com/fr/design/designer/beans/adapters/layout/FRAbsoluteLayoutAdapter.java b/designer_form/src/com/fr/design/designer/beans/adapters/layout/FRAbsoluteLayoutAdapter.java index 7810fc9a6..539e60450 100644 --- a/designer_form/src/com/fr/design/designer/beans/adapters/layout/FRAbsoluteLayoutAdapter.java +++ b/designer_form/src/com/fr/design/designer/beans/adapters/layout/FRAbsoluteLayoutAdapter.java @@ -1,7 +1,5 @@ package com.fr.design.designer.beans.adapters.layout; -import java.awt.*; - import com.fr.design.beans.GroupModel; import com.fr.design.designer.beans.ConstraintsGroupModel; import com.fr.design.designer.beans.HoverPainter; @@ -9,13 +7,14 @@ import com.fr.design.designer.beans.painters.FRAbsoluteLayoutPainter; import com.fr.design.designer.creator.*; import com.fr.design.designer.properties.BoundsGroupModel; import com.fr.design.designer.properties.FRAbsoluteLayoutPropertiesGroupModel; -import com.fr.form.ui.container.WAbsoluteLayout; import com.fr.design.utils.ComponentUtils; import com.fr.design.utils.gui.LayoutUtils; +import com.fr.form.ui.container.WAbsoluteLayout; import com.fr.general.ComparatorUtils; -import com.fr.form.ui.container.WAbsoluteLayout.BoundsWidget; import com.fr.general.FRLogger; +import java.awt.*; + public class FRAbsoluteLayoutAdapter extends FRBodyLayoutAdapter { //是不是添加到父容器上 private boolean isAdd2ParentLayout = false; @@ -74,48 +73,39 @@ public class FRAbsoluteLayoutAdapter extends FRBodyLayoutAdapter { XLayoutContainer topLayout = XCreatorUtils.getHotspotContainer((XCreator)comp).getTopLayout(); if(topLayout != null){ if (topLayout.isEditable()){ - return topLayoutAccept(creator, x, y, topLayout); + return topLayoutAccept(creator, x, y); } //绝对布局嵌套,处于内层,不可编辑,不添加,topLayout只能获取到最外层可编辑的布局 else if (((XLayoutContainer)topLayout.getParent()).acceptType(XWAbsoluteLayout.class)) { return false; + } else { + return acceptWidget(x, y); } - else { - return acceptWidget(creator, x, y); - } - } - else{ + } else { FRLogger.getLogger().error("top layout is null!"); } return false; } - //toplayout假如可以编辑的话就往里面添加组件 - private boolean topLayoutAccept(XCreator creator, int x, int y, XLayoutContainer topLayout) { - //判断有没有和当前控件重叠 - //先计算当前控件的位置 - int creatorX, creatorY; - if (XCreatorUtils.getParentXLayoutContainer(creator) != null) { - + //topLayout假如可以编辑的话就往里面添加组件 + private boolean topLayoutAccept(XCreator creator, int x, int y) { + //允许组件重叠,可以不判断有没有和当前控件重叠 + //先计算当前控件的位置 + int creatorX, creatorY; + if (XCreatorUtils.getParentXLayoutContainer(creator) != null) { Rectangle creatorRectangle = ComponentUtils.getRelativeBounds(creator); creatorX = creatorRectangle.x; creatorY = creatorRectangle.y; } else { + //这边计算得到的组件其实位置是正确的, + //因为传入的x和y已经加上了宽度或者高度的一半,再减去相同的宽度和高度的一半是没区别的, + // 例如高度为21,那么就是+10-10; + // 高度为20,那么就是+10-10; 没区别 int w = creator.getWidth() / 2; int h = creator.getHeight() / 2; creatorX = x - w; creatorY = y - h; - } - //再判断和布局中其他控件重叠 - Rectangle curRec = new Rectangle(creatorX, creatorY, creator.getWidth(), creator.getHeight()); - WAbsoluteLayout wAbsoluteLayout = (WAbsoluteLayout)topLayout.toData(); - for (int i = 0, count = wAbsoluteLayout.getWidgetCount(); i < count; i++) { - BoundsWidget temp = (BoundsWidget) wAbsoluteLayout.getWidget(i); - Rectangle rectangle = temp.getBounds(); - if (curRec.intersects(rectangle)){ - return false; - } } if (creatorX < 0 || creatorX + creator.getWidth() > container.getWidth()) { return false; @@ -168,16 +158,15 @@ public class FRAbsoluteLayoutAdapter extends FRBodyLayoutAdapter { return !ComparatorUtils.equals(trisectAreaDirect, 0); } - //当前绝对布局不可编辑,就当成一个控件,组件添加在周围 - private boolean acceptWidget(XCreator creator, int x, int y){ - isFindRelatedComps = false; - //拖入组件判断时,先判断是否为交叉点区域,其次三等分区域,再次平分区域 - Component comp = container.getComponentAt(x, y); - boolean isMatchEdge = false; - //如果当前处于边缘地带, 那么就把他贴到父容器上 - XLayoutContainer parent = container.findNearestFit(); - container = parent != null ? parent : container; - isAdd2ParentLayout = true; + //当前绝对布局不可编辑,就当成一个控件,组件添加在周围 + private boolean acceptWidget(int x, int y) { + isFindRelatedComps = false; + //拖入组件判断时,先判断是否为交叉点区域,其次三等分区域,再次平分区域 + Component comp = container.getComponentAt(x, y); + //如果当前处于边缘地带, 那么就把他贴到父容器上 + XLayoutContainer parent = container.findNearestFit(); + container = parent != null ? parent : container; + isAdd2ParentLayout = true; int componentHeight = comp.getHeight(); int componentWidth = comp.getWidth(); @@ -244,7 +233,7 @@ public class FRAbsoluteLayoutAdapter extends FRBodyLayoutAdapter { if (creator.hasTitleStyle()) { addParentCreator(creator); } else { - container.add(creator, creator.toData().getWidgetName()); + container.add(creator, creator.toData().getWidgetName(),0); } XWAbsoluteLayout layout = (XWAbsoluteLayout) container; layout.updateBoundsWidget(creator); @@ -255,7 +244,7 @@ public class FRAbsoluteLayoutAdapter extends FRBodyLayoutAdapter { if (creator.shouldScaleCreator() || creator.hasTitleStyle()) { addParentCreator(creator); } else { - container.add(creator, creator.toData().getWidgetName()); + container.add(creator, creator.toData().getWidgetName(),0); } XWFitLayout layout = (XWFitLayout) container; // 更新对应的BoundsWidget @@ -274,7 +263,7 @@ public class FRAbsoluteLayoutAdapter extends FRBodyLayoutAdapter { private void addParentCreator(XCreator child) { XLayoutContainer parentPanel = child.initCreatorWrapper(child.getHeight()); - container.add(parentPanel, child.toData().getWidgetName()); + container.add(parentPanel, child.toData().getWidgetName(),0); } /** @@ -325,17 +314,15 @@ public class FRAbsoluteLayoutAdapter extends FRBodyLayoutAdapter { int height = creator.getHeight(); int width = creator.getWidth(); if (x < 0) { - width += x; - x = 0; + x = container.getX(); } else if (x + creator.getWidth() > container.getWidth()) { - width = container.getWidth() - x; + x = container.getWidth() - width; } if (y < 0) { - height += y; - y = 0; + y = container.getY(); } else if (y + creator.getHeight() > container.getHeight()) { - height = container.getHeight() - y; + y = container.getHeight() - height; } creator.setBounds(x, y, width, height); diff --git a/designer_form/src/com/fr/design/designer/beans/adapters/layout/FRFitLayoutAdapter.java b/designer_form/src/com/fr/design/designer/beans/adapters/layout/FRFitLayoutAdapter.java index 7401b8d07..3a030f7f2 100644 --- a/designer_form/src/com/fr/design/designer/beans/adapters/layout/FRFitLayoutAdapter.java +++ b/designer_form/src/com/fr/design/designer/beans/adapters/layout/FRFitLayoutAdapter.java @@ -3,12 +3,6 @@ */ package com.fr.design.designer.beans.adapters.layout; -import java.awt.Component; -import java.awt.Dimension; -import java.awt.Rectangle; -import java.util.ArrayList; -import java.util.List; - import com.fr.design.beans.GroupModel; import com.fr.design.designer.beans.ConstraintsGroupModel; import com.fr.design.designer.beans.HoverPainter; @@ -22,14 +16,16 @@ import com.fr.design.designer.creator.cardlayout.XWCardMainBorderLayout; import com.fr.design.designer.creator.cardlayout.XWTabFitLayout; import com.fr.design.designer.properties.FRFitLayoutConstraints; import com.fr.design.designer.properties.FRFitLayoutPropertiesGroupModel; -import com.fr.design.file.HistoryTemplateListPane; -import com.fr.design.mainframe.JForm; import com.fr.design.utils.ComponentUtils; import com.fr.form.ui.LayoutBorderStyle; +import com.fr.form.ui.container.WAbsoluteLayout; import com.fr.form.ui.container.WLayout; import com.fr.form.ui.container.cardlayout.WCardMainBorderLayout; import com.fr.general.ComparatorUtils; -import com.fr.form.ui.container.WAbsoluteLayout.BoundsWidget; + +import java.awt.*; +import java.util.ArrayList; +import java.util.List; /** * 自适应布局的容器适配器 @@ -52,6 +48,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { public void setEdit(boolean edit) { isEdit = edit; } + /** * 构造函数 * @@ -134,7 +131,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { isFindRelatedComps = false; //拖入组件判断时,先判断是否为交叉点区域,其次三等分区域,再次平分区域 Component comp = container.getComponentAt(x, y); - if (checkInterval(comp)) { + if (comp == null || checkInterval(comp)) { return false; } //如果当前处于边缘地带, 那么就把他贴到父容器上 @@ -269,25 +266,14 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { return super.isCrossPointArea(currentComp, x, y); } - protected void initCompsList() { - super.initCompsList(); - } - - protected void clearCompsList() { - super.clearCompsList(); - } - protected Rectangle getLayoutBound(XWCardMainBorderLayout mainLayout){ + protected Rectangle getLayoutBound(XWCardMainBorderLayout mainLayout) { return mainLayout.getBounds(); } private Rectangle adjustBackupBound(Rectangle backupBound, XWCardMainBorderLayout mainLayout) { - // 参数界面高度对纵坐标产生的影响 - JForm jform = (JForm) (HistoryTemplateListPane.getInstance().getCurrentEditingTemplate()); - if (jform.getFormDesign().getParaComponent() != null) { - backupBound.y -= jform.getFormDesign().getParaHeight(); - } - + // zhouping: REPORT-2334 表单tab布局中图表放大缩小会明显 + // 这边不需要单独处理参数面板高度了,下面的方法中获取的是XWCardMainBorderLayout相对坐标 Rectangle rec = getLayoutBound(mainLayout); // XWTabLayout里面的横纵坐标收到外层XWCardMainBorderLayout的横纵坐标影响 // 减掉之后可以按照它原来的逻辑执行 @@ -353,13 +339,13 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { * 拖拽控件边框后,根据控件的大小尺寸,进行相关组件的调整 * * @param backupBound 边界备份 - * @param bounds 组件边界 - * @param xCreator 组件 - * @param row 选中的行 - * @param difference 偏移量 + * @param bounds 组件边界 + * @param xCreator 组件 + * @param row 选中的行 + * @param difference 偏移量 */ public void calculateBounds(Rectangle backupBound, Rectangle bounds, XCreator xCreator, int row, int difference) { - Rectangle rc = new Rectangle(0,0,0,0); + Rectangle rc = new Rectangle(0, 0, 0, 0); XLayoutContainer parent = XCreatorUtils.getParentXLayoutContainer(xCreator); if (parent != null) { Rectangle rec = ComponentUtils.getRelativeBounds(parent); @@ -370,17 +356,17 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { //处理左右延伸 switch (row) { case 0: - if (backupBound.width + backupBound.x == container.getWidth() - margin.getRight() +rc.x) { + if (backupBound.width + backupBound.x == container.getWidth() - margin.getRight() + rc.x) { x += difference; } break; case 1: - if(backupBound.y + backupBound.height == container.getHeight() - margin.getBottom() +rc.y){ + if (backupBound.y + backupBound.height == container.getHeight() - margin.getBottom() + rc.y) { y += difference; } break; } - bounds.setLocation(x,y); + bounds.setLocation(x, y); xCreator.setBackupBound(backupBound); xCreator.setBounds(bounds); this.fix(xCreator); @@ -424,7 +410,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { // 根据需要依附的位置调整拖拽的坐标值 private int adjustCoordinateByDependingLine(int coordinate, int[] coordinates) { - if(!isEdit) { + if (!isEdit) { for (int i = 0; i < coordinates.length; i++) { if (coordinate == coordinates[i]) { continue; @@ -440,7 +426,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { // 根据需要依附的位置调整拖拽的距离 private int adjustDiffByDependingLine(int coordinate, int[] coordinates, int diff) { - if(!isEdit) { + if (!isEdit) { for (int i = 0; i < coordinates.length; i++) { if (coordinate + diff > coordinates[i] - DEPENDING_SCOPE && coordinate + diff < coordinates[i] + DEPENDING_SCOPE) { diff = coordinates[i] - coordinate; @@ -558,8 +544,8 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { difference = Math.max(difference, minWidth - getMinWidth(leftComps)); } //重新计算左右两侧组件size、point - if (CalculateLefttRelatComponent(difference)) { - CalculateRightRelatComponent(objx + difference, -difference); + if (calculateLefttRelatComponent(difference)) { + calculateRightRelatComponent(objx + difference, -difference); } } @@ -674,10 +660,9 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { difference = Math.max(difference, minHeight - getMinHeight(upComps)); } //重新计算上下两侧组件size、point - if (CalculateUpRelatComponent(difference)) { - CalculateDownRelatComponent(objY + difference, -difference); + if (calculateUpRelatComponent(difference)) { + calculateDownRelatComponent(objY + difference, -difference); } - ; } /** @@ -757,13 +742,13 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { int height = creatorHeight; calculateRelatedComponent(x, y, width, height); if (!rightComps.isEmpty() && getAllHeight(rightComps) == height) { - CalculateRightRelatComponent(x, width + actualVal); + calculateRightRelatComponent(x, width + actualVal); } else if (!leftComps.isEmpty() && getAllHeight(leftComps) == height) { - CalculateLefttRelatComponent(width + actualVal); + calculateLefttRelatComponent(width + actualVal); } else if (!downComps.isEmpty() && getAllWidth(downComps) == width) { - CalculateDownRelatComponent(y, height + actualVal); + calculateDownRelatComponent(y, height + actualVal); } else if (!upComps.isEmpty() && getAllWidth(upComps) == width) { - CalculateUpRelatComponent(height + actualVal); + calculateUpRelatComponent(height + actualVal); } else { // 由于布局三等分的存在,可能会出现删除组件时,找不到关联的组件填充,此时特殊处理 calculateNoRelatedComponent(x, y, width, height); @@ -1026,7 +1011,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { setAdjustedSize(tabLayout, offset, isHor); for (int m = 0; m < tabLayout.getComponentCount(); m++) { XCreator childCreator = tabLayout.getXCreator(m); - BoundsWidget wgt = (BoundsWidget) tabLayout.toData().getBoundsWidget(childCreator.toData()); + WAbsoluteLayout.BoundsWidget wgt = (WAbsoluteLayout.BoundsWidget) tabLayout.toData().getBoundsWidget(childCreator.toData()); wgt.setBounds(tabLayout.getComponent(m).getBounds()); } adjustCreatorsSize(percent, tabLayout, isHor); @@ -1069,7 +1054,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { * @param objX 调整后的坐标x * @param objWidth 调整后的宽度 */ - protected void CalculateRightRelatComponent(int objX, int objWidth) { + protected void calculateRightRelatComponent(int objX, int objWidth) { int count = rightComps.size(); for (int i = 0; i < count; i++) { XCreator creator = (XCreator) rightComps.get(i); @@ -1109,7 +1094,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { /** * 删除或拉伸控件左边框时 调整左侧的组件位置大小; */ - protected boolean CalculateLefttRelatComponent(int objWidth) { + protected boolean calculateLefttRelatComponent(int objWidth) { if (isBeyondAdjustWidthScope(objWidth)) { return false; } @@ -1127,7 +1112,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { /** * 删除或拉伸下边框 调整下方的组件位置大小 */ - protected void CalculateDownRelatComponent(int objY, int objHeight) { + protected void calculateDownRelatComponent(int objY, int objHeight) { int count = downComps.size(); for (int i = 0; i < count; i++) { XCreator creator = (XCreator) downComps.get(i); @@ -1167,7 +1152,7 @@ public class FRFitLayoutAdapter extends FRBodyLayoutAdapter { /** * 删除或拉伸上边框 调整上方的组件位置大小 */ - protected boolean CalculateUpRelatComponent(int objHeight) { + protected boolean calculateUpRelatComponent(int objHeight) { if (isBeyondAdjustHeightScope(objHeight)) { return false; } diff --git a/designer_form/src/com/fr/design/designer/beans/location/AccessDirection.java b/designer_form/src/com/fr/design/designer/beans/location/AccessDirection.java index 572ac721e..3538d2fd9 100644 --- a/designer_form/src/com/fr/design/designer/beans/location/AccessDirection.java +++ b/designer_form/src/com/fr/design/designer/beans/location/AccessDirection.java @@ -27,32 +27,30 @@ public abstract class AccessDirection implements Direction { abstract int getCursor(); - protected abstract Rectangle getDraggedBounds(int dx, int dy, Rectangle current_bounds, FormDesigner designer, - Rectangle oldbounds); - - protected int[] sorption(int x, int y,Rectangle current_bounds, FormDesigner designer) { - // 自适应布局不需要吸附线,但需要对齐线,对齐线后面处理 - if (!designer.hasWAbsoluteLayout()) { - designer.getStateModel().setEquidistantLine(null); - designer.getStateModel().setXAbsorptionline(null); - designer.getStateModel().setYAbsorptionline(null); - return new int[] { x, y }; - } else { - int posy = current_bounds.y; - - Point relativePoint = getRelativePoint(x, y, current_bounds,designer); - sorptionPoint(relativePoint,current_bounds, designer); - return new int[] { relativePoint.x, relativePoint.y }; - } + protected abstract Rectangle getDraggedBounds(int dx, int dy, Rectangle currentBounds, FormDesigner designer, + Rectangle oldBounds); + + protected int[] sorption(int x, int y, Rectangle currentBounds, FormDesigner designer) { + // 自适应布局不需要吸附线,但需要对齐线,对齐线后面处理 + if (!designer.hasWAbsoluteLayout()) { + designer.getStateModel().setEquidistantLine(null); + designer.getStateModel().setXAbsorptionline(null); + designer.getStateModel().setYAbsorptionline(null); + return new int[]{x, y}; + } else { + Point relativePoint = getRelativePoint(x, y, currentBounds, designer); + sorptionPoint(relativePoint, currentBounds, designer); + return new int[]{relativePoint.x, relativePoint.y}; + } - } + } - protected Point getRelativePoint(int x, int y, Rectangle current_bounds,FormDesigner designer) { - if (x < 0) { - x = 0; - } else if (x > designer.getRootComponent().getWidth() && designer.getSelectionModel().hasSelectionComponent()) { - x = designer.getRootComponent().getWidth(); - } + protected Point getRelativePoint(int x, int y, Rectangle currentBounds, FormDesigner designer) { + if (x < 0) { + x = 0; + } else if (x > designer.getRootComponent().getWidth() && designer.getSelectionModel().hasSelectionComponent()) { + x = designer.getRootComponent().getWidth(); + } //参数面板可以无下限拉长 if (y < 0) { y = 0; @@ -63,112 +61,101 @@ public abstract class AccessDirection implements Direction { return new Point(x, y); } - protected void sorptionPoint(Point point, Rectangle current_bounds,FormDesigner designer) { - boolean findInX = current_bounds.getWidth() <= MoveUtils.SORPTION_UNIT ? true : false; - boolean findInY = current_bounds.getHeight() <= MoveUtils.SORPTION_UNIT ? true : false; - WAbsoluteLayout layout =getLayout(designer); - FormSelection selection = designer.getSelectionModel().getSelection(); - boolean isWidgetsIntersect = false; - for (int i = 0, count = layout.getWidgetCount(); i < count; i++) { - BoundsWidget temp = (BoundsWidget) layout.getWidget(i); - if (!temp.isVisible() || selection.contains(temp.getWidget())) { - continue; - } - Rectangle bounds = getWidgetRelativeBounds(temp.getBounds(), selection); - if (!findInX) { - int x1 = bounds.x; - if (Math.abs(x1 - point.x) <= MoveUtils.SORPTION_UNIT) { - point.x = x1; - findInX = true; - } - int x2 = bounds.x + bounds.width; - if (Math.abs(x2 - point.x) <= MoveUtils.SORPTION_UNIT) { - point.x = x2; - findInX = true; - } - } - if (!findInY) { - int y1 = bounds.y; - if (Math.abs(y1 - point.y) <= MoveUtils.SORPTION_UNIT) { - point.y = y1; - findInY = true; - } - int y2 = bounds.y + bounds.height; - if (Math.abs(y2 - point.y) <= MoveUtils.SORPTION_UNIT) { - point.y = y2; - findInY = true; - } + protected void sorptionPoint(Point point, Rectangle currentBounds, FormDesigner designer) { + boolean findInX = currentBounds.getWidth() <= MoveUtils.SORPTION_UNIT; + boolean findInY = currentBounds.getHeight() <= MoveUtils.SORPTION_UNIT; + WAbsoluteLayout layout = getLayout(designer); + FormSelection selection = designer.getSelectionModel().getSelection(); + for (int i = 0, count = layout.getWidgetCount(); i < count; i++) { + BoundsWidget temp = (BoundsWidget) layout.getWidget(i); + if (!temp.isVisible() || selection.contains(temp.getWidget())) { + continue; + } + Rectangle bounds = getWidgetRelativeBounds(temp.getBounds(), selection); + if (!findInX) { + int x1 = bounds.x; + if (Math.abs(x1 - point.x) <= MoveUtils.SORPTION_UNIT) { + point.x = x1; + findInX = true; + } + int x2 = bounds.x + bounds.width; + if (Math.abs(x2 - point.x) <= MoveUtils.SORPTION_UNIT) { + point.x = x2; + findInX = true; + } + } + if (!findInY) { + int y1 = bounds.y; + if (Math.abs(y1 - point.y) <= MoveUtils.SORPTION_UNIT) { + point.y = y1; + findInY = true; + } + int y2 = bounds.y + bounds.height; + if (Math.abs(y2 - point.y) <= MoveUtils.SORPTION_UNIT) { + point.y = y2; + findInY = true; + } } if (findInX && findInY) { break; } - if (current_bounds.intersects(bounds) && !(layout instanceof WParameterLayout)){ - isWidgetsIntersect = true; - } - } - processRectangleIntersects(designer, point.x, point.y, isWidgetsIntersect); - setDesignerStateModelProperties(designer, findInX, findInY, current_bounds, point); - } + } + setDesignerStateModelProperties(designer, findInX, findInY, currentBounds, point); + } - private void setDesignerStateModelProperties (FormDesigner designer, boolean findInX, boolean findInY, Rectangle current_bounds, Point point) { - designer.getStateModel().setXAbsorptionline(findInX && current_bounds.getWidth() > MoveUtils.SORPTION_UNIT ? Absorptionline.createXAbsorptionline(point.x) : null); - designer.getStateModel().setYAbsorptionline(findInY && current_bounds.getHeight() > MoveUtils.SORPTION_UNIT ? Absorptionline.createYAbsorptionline(point.y) : null); - designer.getStateModel().setEquidistantLine(null); - } + private void setDesignerStateModelProperties(FormDesigner designer, boolean findInX, boolean findInY, Rectangle + currentBounds, Point point) { + designer.getStateModel().setXAbsorptionline(findInX && currentBounds.getWidth() > MoveUtils.SORPTION_UNIT ? Absorptionline.createXAbsorptionline(point.x) : null); + designer.getStateModel().setYAbsorptionline(findInY && currentBounds.getHeight() > MoveUtils.SORPTION_UNIT ? Absorptionline.createYAbsorptionline(point.y) : null); + designer.getStateModel().setEquidistantLine(null); + } - private Rectangle getWidgetRelativeBounds(Rectangle bounds, FormSelection selection){ - Rectangle relativeRec = new Rectangle(bounds.x, bounds.y, bounds.width, bounds.height); - XLayoutContainer parent = XCreatorUtils.getParentXLayoutContainer(selection.getSelectedCreator()); - if (parent == null) { - return relativeRec; - } - Rectangle rec = ComponentUtils.getRelativeBounds(parent); - relativeRec.x += rec.x; - relativeRec.y += rec.y; - return relativeRec; - } + private Rectangle getWidgetRelativeBounds(Rectangle bounds, FormSelection selection) { + Rectangle relativeRec = new Rectangle(bounds.x, bounds.y, bounds.width, bounds.height); + XLayoutContainer parent = XCreatorUtils.getParentXLayoutContainer(selection.getSelectedCreator()); + if (parent == null) { + return relativeRec; + } + Rectangle rec = ComponentUtils.getRelativeBounds(parent); + relativeRec.x += rec.x; + relativeRec.y += rec.y; + return relativeRec; + } - private void processRectangleIntersects(FormDesigner designer, int x, int y, boolean isIntersects){ - if(isIntersects){ - if(designer.getLocationOnScreen() != null) { - MoveUtils.displayForbidWindow(x + designer.getLocationOnScreen().x, y + designer.getLocationOnScreen().y); - } - designer.setWidgetsIntersect(true); - } - else{ - MoveUtils.hideForbidWindow(); - designer.setWidgetsIntersect(false); - } - } private WAbsoluteLayout getLayout(final FormDesigner designer){ XLayoutContainer formLayoutContainer = (XLayoutContainer) XCreatorUtils.createXCreator( designer.getTarget().getContainer()); WAbsoluteLayout layout; - if (formLayoutContainer.acceptType(XWBorderLayout.class)){//看起来这边的作用应该是为了区别cpt(得到XWParameterLayout)还是frm(得到XWBorderLayout)的参数界面 - Container container = designer.getSelectionModel().getSelection().getSelectedCreator().getParent(); - if(container instanceof XWAbsoluteLayout){ - layout = ((XWAbsoluteLayout)container).toData(); - } - else { - layout = (WAbsoluteLayout) designer.getParaComponent().toData(); - } - } else{ + if (formLayoutContainer.acceptType(XWBorderLayout.class)) {//看起来这边的作用应该是为了区别cpt(得到XWParameterLayout)还是frm(得到XWBorderLayout)的参数界面 + Container container = designer.getSelectionModel().getSelection().getSelectedCreator().getParent(); + if (container instanceof XWAbsoluteLayout) { + layout = ((XWAbsoluteLayout) container).toData(); + } else { + layout = (WAbsoluteLayout) designer.getParaComponent().toData(); + } + } else { layout = (WAbsoluteLayout) designer.getTarget().getContainer(); } - return layout; + return layout; } - /** - * 拖拽 - * @param dx 坐标x - * @param dy 坐标y - * @param designer 设计界面 - */ - public void drag(int dx, int dy, FormDesigner designer) { - Rectangle rec = getDraggedBounds(dx, dy, designer.getSelectionModel().getSelection().getRelativeBounds(), designer, designer.getSelectionModel().getSelection().getBackupBounds()); + /** + * 拖拽 + * + * @param dx 坐标x + * @param dy 坐标y + * @param designer 设计界面 + */ + public void drag(int dx, int dy, FormDesigner designer) { + Rectangle rec = getDraggedBounds(dx, dy, designer.getSelectionModel().getSelection().getRelativeBounds(), designer, designer.getSelectionModel().getSelection().getBackupBounds()); + if (rec != null) { + designer.getSelectionModel().getSelection().setSelectionBounds(rec, designer); + } else { + return; + } //设定控件最小高度21,因每次拖曳至少移动1,防止控件高度等于21时,拖曳导致rec.y的变化使得控件不停的向上或向下移动。 if(rec.height == MINHEIGHT){ ymin = rec.y; @@ -191,10 +178,8 @@ public abstract class AccessDirection implements Direction { rec.width = MINWIDTH; rec.x = xmin; } - if(rec != null) { - designer.getSelectionModel().getSelection().setSelectionBounds(rec, designer); - } - } + + } /** * 更新鼠标指针形状 diff --git a/designer_form/src/com/fr/design/designer/beans/models/SelectionModel.java b/designer_form/src/com/fr/design/designer/beans/models/SelectionModel.java index a70d9b156..13eaa18ac 100644 --- a/designer_form/src/com/fr/design/designer/beans/models/SelectionModel.java +++ b/designer_form/src/com/fr/design/designer/beans/models/SelectionModel.java @@ -136,19 +136,35 @@ public class SelectionModel { if (designer.getClass().equals(FormDesigner.class)) { if (selection.getSelectedCreator() instanceof XWFitLayout) { if (selection.getSelectedCreator().getClass().equals(XWTabFitLayout.class)) { - Rectangle rec = selection.getRelativeBounds(); - //Tab布局 - FormSelectionUtils.paste2Container(designer, (XLayoutContainer) selection.getSelectedCreator(), - clipboard, - rec.x + rec.width / 2, - rec.y + DELTA_X_Y); + XLayoutContainer container = (XLayoutContainer) selection.getSelectedCreator(); + //tab布局编辑器内部左上角第一个坐标点 + int leftUpX = container.toData().getMargin().getLeft() + 1; + int leftUpY = container.toData().getMargin().getTop() + 1; + //选中第一个坐标点坐在的组件 + selection.setSelectedCreator((XCreator) container.getComponentAt(leftUpX, leftUpY)); + Rectangle rectangle = selection.getRelativeBounds(); + if (hasSelectedPasteSource()) { + selectedPaste(); + } else { + FormSelectionUtils.paste2Container(designer, container, clipboard, + rectangle.x + rectangle.width / 2, + rectangle.y + DELTA_X_Y); + } } else { - Rectangle rec = selection.getRelativeBounds(); - //自适应布局 - FormSelectionUtils.paste2Container(designer, designer.getRootComponent(), - clipboard, - rec.x + rec.width / 2, - rec.y + DELTA_X_Y); + //自适应布局编辑器内部左上角第一个坐标点 + int leftUpX = designer.getRootComponent().toData().getMargin().getLeft() + 1; + int leftUpY = designer.getRootComponent().toData().getMargin().getTop() + 1; + //选中第一个坐标点坐在的组件 + selection.setSelectedCreator((XCreator) designer.getRootComponent().getComponentAt(leftUpX, leftUpY)); + Rectangle rectangle = selection.getRelativeBounds(); + if (hasSelectedPasteSource()) { + selectedPaste(); + } else { + FormSelectionUtils.paste2Container(designer, designer.getRootComponent(), + clipboard, + rectangle.x + rectangle.width / 2, + rectangle.y + DELTA_X_Y); + } } } else { //绝对布局 @@ -178,12 +194,23 @@ public class SelectionModel { container = XCreatorUtils.getParentXLayoutContainer(selection.getSelectedCreator()); if (container != null && selection.getSelectedCreator().getParent() instanceof XWFitLayout) { //自适应布局 + Rectangle selectionRec = selection.getRelativeBounds(); + //获取父容器位置,补充因参数面板高度导致的位置坐标计算偏移 Rectangle containerRec = ComponentUtils.getRelativeBounds(container); - //计算自适应布局位置 - int positionX = selectionRec.x - containerRec.x + selectionRec.width / 2; - int positionY = (int) (selectionRec.y - containerRec.y + selectionRec.height * OFFSET_RELATIVE); - + int positionX, positionY; + + if (container.getClass().equals(XWTabFitLayout.class)) { + //tab内部粘贴不补充高度偏移 + //且不计算参数面板造成的影响,因为在 + //@see com.fr.design.designer.beans.adapters.layout.FRTabFitLayoutAdapter#addBean中做了 + positionX = selectionRec.x + selectionRec.width / 2; + positionY = (int) (selectionRec.y + selectionRec.height * OFFSET_RELATIVE); + } else { + //计算自适应布局位置 + positionX = selectionRec.x - containerRec.x + selectionRec.width / 2; + positionY = (int) (selectionRec.y - containerRec.y + selectionRec.height * OFFSET_RELATIVE); + } FormSelectionUtils.paste2Container(designer, container, clipboard, positionX, positionY); } else if (container != null && selection.getSelectedCreator().getParent() instanceof XWAbsoluteLayout) { //绝对布局 diff --git a/designer_form/src/com/fr/design/designer/creator/XElementCase.java b/designer_form/src/com/fr/design/designer/creator/XElementCase.java index c7cd3b493..c22c6acf5 100644 --- a/designer_form/src/com/fr/design/designer/creator/XElementCase.java +++ b/designer_form/src/com/fr/design/designer/creator/XElementCase.java @@ -34,8 +34,8 @@ import java.beans.PropertyDescriptor; import java.util.Set; public class XElementCase extends XBorderStyleWidgetCreator implements FormElementCaseContainerProvider{ - private UILabel imageLable; - private CoverReportPane coverPanel; + private UILabel imageLable; + private CoverReportPane coverPanel; private FormDesigner designer; //缩略图 private BufferedImage thumbnailImage; @@ -64,18 +64,18 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme } /** - * 是否支持设置标题 - * @return 是返回true - */ - public boolean hasTitleStyle() { + * 是否支持设置标题 + * @return 是返回true + */ + public boolean hasTitleStyle() { return true; } - /** - * 返回组件属性值 - * @return 返回组件属性值 - * @throws IntrospectionException 异常 - */ + /** + * 返回组件属性值 + * @return 返回组件属性值 + * @throws IntrospectionException 异常 + */ public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException { CRPropertyDescriptor[] propertyTableEditor = new CRPropertyDescriptor[]{ @@ -86,7 +86,8 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme @Override public void propertyChange() { - makeVisible(toData().isVisible());} + makeVisible(toData().isVisible()); + } }), new CRPropertyDescriptor("borderStyle", this.data.getClass()).setEditorClass( WLayoutBorderStyleEditor.class).setI18NName( @@ -97,12 +98,11 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme public void propertyChange() { initStyle(); } - }), new CRPropertyDescriptor("margin", this.data.getClass()).setEditorClass(PaddingMarginEditor.class) .setI18NName(Inter.getLocText("FR-Layout_Padding")) .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"), - new CRPropertyDescriptor("ToolBars", this.data.getClass()).setEditorClass(ElementCaseToolBarEditor.class) + new CRPropertyDescriptor("toolBars", this.data.getClass()).setEditorClass(ElementCaseToolBarEditor.class) .setI18NName(Inter.getLocText("Form-EC_toolbar")) .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced") }; @@ -149,30 +149,30 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme return "text_field_16.png"; } - /** - * 返回组件默认名 - * @return 组件类名(小写) - */ - public String createDefaultName() { - return "report"; - } + /** + * 返回组件默认名 + * @return 组件类名(小写) + */ + public String createDefaultName() { + return "report"; + } @Override protected JComponent initEditor() { if (editor == null) { setBorder(DEFALUTBORDER); - editor = new JPanel(); - editor.setBackground(null); - editor.setLayout(null); - imageLable = initImageBackground(); - - coverPanel = new CoverReportPane(); - coverPanel.setPreferredSize(imageLable.getPreferredSize()); - coverPanel.setBounds(imageLable.getBounds()); - - editor.add(coverPanel); - coverPanel.setVisible(false); - editor.add(imageLable); + editor = new JPanel(); + editor.setBackground(null); + editor.setLayout(null); + imageLable = initImageBackground(); + + coverPanel = new CoverReportPane(); + coverPanel.setPreferredSize(imageLable.getPreferredSize()); + coverPanel.setBounds(imageLable.getBounds()); + + editor.add(coverPanel); + coverPanel.setVisible(false); + editor.add(imageLable); } return editor; } @@ -185,7 +185,7 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme BufferedImage image = getThumbnailImage(); setLabelBackground(image, imageLable); - return imageLable; + return imageLable; } /** @@ -194,16 +194,16 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme private void setLabelBackground(Image image, UILabel imageLable){ ImageIcon icon = new ImageIcon(image); imageLable.setIcon(icon); - imageLable.setOpaque(true); - imageLable.setLayout(null); - imageLable.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight()); + imageLable.setOpaque(true); + imageLable.setLayout(null); + imageLable.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight()); } - /** - * 是否展现覆盖的pane - * @param display 是否 - */ - public void displayCoverPane(boolean display){ + /** + * 是否展现覆盖的pane + * @param display 是否 + */ + public void displayCoverPane(boolean display){ coverPanel.setVisible(display); coverPanel.setBounds(1, 1, (int) editor.getBounds().getWidth(), (int) editor.getBounds().getHeight()); editor.repaint(); @@ -216,41 +216,41 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme coverPanel.destroyHelpDialog(); } - public JComponent getCoverPane(){ - return coverPanel; - } + public JComponent getCoverPane(){ + return coverPanel; + } - /** - * 初始化大小 - * @return 尺寸 - */ + /** + * 初始化大小 + * @return 尺寸 + */ public Dimension initEditorSize() { return BORDER_PREFERRED_SIZE; } - /** - * 是否是报表块 - * @return 是 - */ + /** + * 是否是报表块 + * @return 是 + */ public boolean isReport() { return true; } - /** - * 该组件是否可以拖入参数面板 - * @return 是则返回true - */ - public boolean canEnterIntoParaPane(){ - return false; - } - - /** - * 返回报表块对应的widget - * @return 返回ElementCaseEditor - */ - public ElementCaseEditor toData() { - return ((ElementCaseEditor) data); - } + /** + * 该组件是否可以拖入参数面板 + * @return 是则返回true + */ + public boolean canEnterIntoParaPane(){ + return false; + } + + /** + * 返回报表块对应的widget + * @return 返回ElementCaseEditor + */ + public ElementCaseEditor toData() { + return ((ElementCaseEditor) data); + } public FormElementCaseProvider getElementCase() { return toData().getElementCase(); @@ -301,14 +301,14 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme } - private void switchTab(MouseEvent e,EditingMouseListener editingMouseListener){ - FormDesigner designer = editingMouseListener.getDesigner(); - if (e.getClickCount() == 2 || designer.getCursor().getType() == Cursor.HAND_CURSOR){ - FormElementCaseContainerProvider component = (FormElementCaseContainerProvider) designer.getComponentAt(e); - //切换设计器 - designer.switchTab(component); - } - } + private void switchTab(MouseEvent e,EditingMouseListener editingMouseListener){ + FormDesigner designer = editingMouseListener.getDesigner(); + if (e.getClickCount() == 2 || designer.getCursor().getType() == Cursor.HAND_CURSOR){ + FormElementCaseContainerProvider component = (FormElementCaseContainerProvider) designer.getComponentAt(e); + //切换设计器 + designer.switchTab(component); + } + } @Override public WidgetPropertyUIProvider[] getWidgetPropertyUIProviders() { diff --git a/designer_form/src/com/fr/design/designer/creator/XWAbsoluteLayout.java b/designer_form/src/com/fr/design/designer/creator/XWAbsoluteLayout.java index b585383c6..852cdf122 100644 --- a/designer_form/src/com/fr/design/designer/creator/XWAbsoluteLayout.java +++ b/designer_form/src/com/fr/design/designer/creator/XWAbsoluteLayout.java @@ -3,14 +3,6 @@ */ package com.fr.design.designer.creator; -import java.awt.*; -import java.awt.event.ContainerEvent; -import java.awt.event.MouseEvent; -import java.awt.image.BufferedImage; -import java.beans.IntrospectionException; -import java.util.ArrayList; -import java.util.HashMap; - import com.fr.design.designer.beans.AdapterBus; import com.fr.design.designer.beans.ComponentAdapter; import com.fr.design.designer.beans.LayoutAdapter; @@ -20,345 +12,369 @@ import com.fr.design.designer.beans.models.SelectionModel; import com.fr.design.designer.creator.cardlayout.XWTabFitLayout; import com.fr.design.form.layout.FRAbsoluteLayout; import com.fr.design.icon.IconPathConstants; -import com.fr.design.mainframe.*; +import com.fr.design.mainframe.EditingMouseListener; +import com.fr.design.mainframe.FormArea; +import com.fr.design.mainframe.FormDesigner; import com.fr.form.ui.Connector; import com.fr.form.ui.Widget; import com.fr.form.ui.container.WAbsoluteLayout; -import com.fr.form.ui.container.WLayout; import com.fr.form.ui.container.WAbsoluteLayout.BoundsWidget; +import com.fr.form.ui.container.WLayout; import com.fr.general.FRScreen; import com.fr.general.IOUtils; import com.fr.general.Inter; +import java.awt.*; +import java.awt.event.ContainerEvent; +import java.awt.event.MouseEvent; +import java.awt.image.BufferedImage; +import java.beans.IntrospectionException; +import java.util.ArrayList; +import java.util.HashMap; + /** * @author richer * @since 6.5.3 */ public class XWAbsoluteLayout extends XLayoutContainer { - private static final int EDIT_BTN_WIDTH = 60; - private static final int EDIT_BTN_HEIGHT = 24; - private int minWidth = WLayout.MIN_WIDTH; - private int minHeight = WLayout.MIN_HEIGHT; - - //由于屏幕分辨率不同,界面上的容器大小可能不是默认的100%,此时拖入组件时,保存的大小按照100%时的计算 - protected double containerPercent = 1.0; - - private HashMap xConnectorMap; - - public XWAbsoluteLayout() { - this(new WAbsoluteLayout(),new Dimension()); - } - - public XWAbsoluteLayout(WAbsoluteLayout widget) { - this(widget,new Dimension()); - } - - public XWAbsoluteLayout(WAbsoluteLayout widget, Dimension initSize) { - super(widget, initSize); - this.xConnectorMap = new HashMap(); - Connector connector; - for (int i = 0; i < widget.connectorCount(); i++) { - connector = widget.getConnectorIndex(i); - xConnectorMap.put(connector, new XConnector(connector, this)); - } - - initPercent(widget); - } - - /** - * 初始化时默认的组件大小 - * - * @return 默认Dimension - */ - @Override - public Dimension initEditorSize() { - return new Dimension(500, 300); - } - - //根据屏幕大小来确定显示的百分比, 1440*900默认100%, 1366*768缩放90% - private void initPercent(WAbsoluteLayout widget){ - Toolkit toolkit = Toolkit.getDefaultToolkit(); - Dimension scrnsize = toolkit.getScreenSize(); - double screenValue = FRScreen.getByDimension(scrnsize).getValue(); - if(screenValue != FormArea.DEFAULT_SLIDER){ - this.setContainerPercent(screenValue / FormArea.DEFAULT_SLIDER); - } - } - - /** - * 返回容器大小的百分比 - * @return the containerPercent - */ - public double getContainerPercent() { - return containerPercent; - } - - /** - * 设置容器大小的百分比 - * @param containerPercent the containerPercent to set - */ - public void setContainerPercent(double containerPercent) { - this.containerPercent = containerPercent; - minWidth = (int) (XWAbsoluteLayout.MIN_WIDTH*containerPercent); - minHeight = (int) (XWAbsoluteLayout.MIN_HEIGHT*containerPercent); - } - - /** - * 返回界面处根据百分比调整后的最小宽度 - * @return 最小宽度 - */ - public int getActualMinWidth() { - return this.minWidth; - } - - /** - * 返回界面处根据百分比调整后的最小高度 - * @return 最小高度 - */ - public int getActualMinHeight() { - return this.minHeight; - } - - /** - * 返回界面处根据百分比调整后的间隔大小(且为偶数) - * @return 间隔 - */ - public int getAcualInterval() { - // adapter那边交叉三等分、删除都要判断是否对齐,所以间隔转为偶数 - int interval = (int) (toData().getCompInterval()*containerPercent); - int val = interval/2; - return val*2; - } - - /** - * 界面容器大小不是默认的时,处理控件的BoundsWidget,且避免出现空隙 - */ - private Rectangle dealWidgetBound(Rectangle rec) { - if (containerPercent == 1.0) { - return rec; - } - rec.x = (int) (rec.x/containerPercent); - rec.y = (int) (rec.y/containerPercent); - rec.width = (int) (rec.width/containerPercent); - rec.height = (int) (rec.height/containerPercent); - return rec; - } - - /** - * 新增删除拉伸后单个组件的BoundsWidget - */ - public void updateBoundsWidget(XCreator xCreator) { - WAbsoluteLayout layout = this.toData(); - if (xCreator.hasTitleStyle()) { - xCreator = (XLayoutContainer)xCreator.getParent(); - } - if (xCreator.acceptType(XWAbsoluteLayout.class)){ - ((XWAbsoluteLayout) xCreator).updateBoundsWidget(); - } - // 如果子组件时tab布局,则tab布局内部的组件的wiget也要更新,否则保存后重新打开大小不对 - ArrayList childrenList = xCreator.getTargetChildrenList(); - if(!childrenList.isEmpty()){ - for(int i=0; i xConnectorMap; + + public XWAbsoluteLayout() { + this(new WAbsoluteLayout(), new Dimension()); + } + + public XWAbsoluteLayout(WAbsoluteLayout widget) { + this(widget, new Dimension()); + } + + public XWAbsoluteLayout(WAbsoluteLayout widget, Dimension initSize) { + super(widget, initSize); + this.xConnectorMap = new HashMap(); + Connector connector; + for (int i = 0; i < widget.connectorCount(); i++) { + connector = widget.getConnectorIndex(i); + xConnectorMap.put(connector, new XConnector(connector, this)); + } + + initPercent(widget); + } + + /** + * 初始化时默认的组件大小 + * + * @return 默认Dimension + */ + @Override + public Dimension initEditorSize() { + return new Dimension(500, 300); + } + + //根据屏幕大小来确定显示的百分比, 1440*900默认100%, 1366*768缩放90% + private void initPercent(WAbsoluteLayout widget) { + Toolkit toolkit = Toolkit.getDefaultToolkit(); + Dimension scrnsize = toolkit.getScreenSize(); + double screenValue = FRScreen.getByDimension(scrnsize).getValue(); + if (screenValue != FormArea.DEFAULT_SLIDER) { + this.setContainerPercent(screenValue / FormArea.DEFAULT_SLIDER); + } + } + + /** + * 返回容器大小的百分比 + * + * @return the containerPercent + */ + public double getContainerPercent() { + return containerPercent; + } + + /** + * 设置容器大小的百分比 + * + * @param containerPercent the containerPercent to set + */ + public void setContainerPercent(double containerPercent) { + this.containerPercent = containerPercent; + minWidth = (int) (XWAbsoluteLayout.MIN_WIDTH * containerPercent); + minHeight = (int) (XWAbsoluteLayout.MIN_HEIGHT * containerPercent); + } + + /** + * 返回界面处根据百分比调整后的最小宽度 + * + * @return 最小宽度 + */ + public int getActualMinWidth() { + return this.minWidth; + } + + /** + * 返回界面处根据百分比调整后的最小高度 + * + * @return 最小高度 + */ + public int getActualMinHeight() { + return this.minHeight; + } + + /** + * 返回界面处根据百分比调整后的间隔大小(且为偶数) + * + * @return 间隔 + */ + public int getAcualInterval() { + // adapter那边交叉三等分、删除都要判断是否对齐,所以间隔转为偶数 + int interval = (int) (toData().getCompInterval() * containerPercent); + int val = interval / 2; + return val * 2; + } + + /** + * 界面容器大小不是默认的时,处理控件的BoundsWidget,且避免出现空隙 + */ + private Rectangle dealWidgetBound(Rectangle rec) { + if (containerPercent == 1.0) { + return rec; + } + rec.x = (int) (rec.x / containerPercent); + rec.y = (int) (rec.y / containerPercent); + rec.width = (int) (rec.width / containerPercent); + rec.height = (int) (rec.height / containerPercent); + return rec; + } + + /** + * 新增删除拉伸后单个组件的BoundsWidget + */ + public void updateBoundsWidget(XCreator xCreator) { + WAbsoluteLayout layout = this.toData(); + if (xCreator.hasTitleStyle()) { + xCreator = (XLayoutContainer) xCreator.getParent(); + } + if (xCreator.acceptType(XWAbsoluteLayout.class)) { + ((XWAbsoluteLayout) xCreator).updateBoundsWidget(); + } + // 如果子组件时tab布局,则tab布局内部的组件的wiget也要更新,否则保存后重新打开大小不对 + ArrayList childrenList = xCreator.getTargetChildrenList(); + if (!childrenList.isEmpty()) { + for (int i = 0; i < childrenList.size(); i++) { + XWTabFitLayout tabLayout = (XWTabFitLayout) childrenList.get(i); + tabLayout.updateBoundsWidget(); + } + } + BoundsWidget boundsWidget = (BoundsWidget) layout.getBoundsWidget(xCreator.toData()); + Rectangle rectangle = dealWidgetBound(xCreator.getBounds()); + } + + private Rectangle calculateBound(Rectangle rec, double pw, double ph) { + Rectangle calRec = new Rectangle(0, 0, 0, 0); + calRec.x = (int) (rec.x / pw); + calRec.y = (int) (rec.y / ph); + calRec.width = (int) (rec.width / pw); + calRec.height = (int) (rec.height / ph); + return calRec; + } + + /** + * 新增删除拉伸后每个组件的BoundsWidget + */ + public void updateBoundsWidget() { + WAbsoluteLayout layout = this.toData(); + Rectangle backupBound = this.getBackupBound(); + Rectangle currentBound = this.getBounds(); + if (backupBound != null && layout.getCompState() == WAbsoluteLayout.STATE_FIT) { + double percentW = ((double) backupBound.width / (double) currentBound.width); + double percentH = ((double) backupBound.height / (double) currentBound.height); + for (int index = 0, n = this.getComponentCount(); index < n; index++) { + XCreator creator = (XCreator) this.getComponent(index); + BoundsWidget wgt = (BoundsWidget) layout.getBoundsWidget(creator.toData()); + // 用当前的显示大小计算后调正具体位置 + Rectangle wgtBound = creator.getBounds(); + Rectangle rec = calculateBound(wgtBound, percentW, percentH); + wgt.setBounds(rec); + creator.setBounds(rec); + //绝对布局嵌套,要更新内部的绝对布局 + if (creator.acceptType(XWAbsoluteLayout.class)) { + creator.setBackupBound(wgtBound); + ((XWAbsoluteLayout) creator).updateBoundsWidget(); + } + } + } + } + + /** + * 更新子组件的Bound + * 这边主要用于绝对布局子组件在适应区域选项时 + * 涉及到的不同分辨率下缩放 + * + * @param minHeight 最小高度 + */ + @Override + public void updateChildBound(int minHeight) { + double prevContainerPercent = FRScreen.getByDimension(toData().getDesigningResolution()).getValue() / FormArea.DEFAULT_SLIDER; + if (toData().getCompState() == 0 && prevContainerPercent != containerPercent) { + for (int i = 0; i < this.getComponentCount(); i++) { + XCreator creator = getXCreator(i); + Rectangle rec = new Rectangle(creator.getBounds()); + rec.x = (int) (rec.x / prevContainerPercent * containerPercent); + rec.y = (int) (rec.y / prevContainerPercent * containerPercent); + rec.height = (int) (rec.height / prevContainerPercent * containerPercent); + rec.width = (int) (rec.width / prevContainerPercent * containerPercent); + BoundsWidget wgt = (BoundsWidget) toData().getBoundsWidget(creator.toData()); + wgt.setBounds(rec); + creator.setBounds(rec); + creator.updateChildBound(minHeight); + } + } + toData().setDesigningResolution(Toolkit.getDefaultToolkit().getScreenSize()); + } + + /** + * 增加对齐线 + * + * @param connector 对齐线 + */ + public void addConnector(Connector connector) { + xConnectorMap.put(connector, new XConnector(connector, this)); + ((WAbsoluteLayout) data).addConnector(connector); + } + + public XConnector getXConnector(Connector connector) { + return xConnectorMap.get(connector); + } + + /** + * 去除对齐线 + * + * @param connector 对齐线 + */ + public void removeConnector(Connector connector) { + ((WAbsoluteLayout) data).removeConnector(connector); + xConnectorMap.remove(connector); + } + + /** + * 返回对应的widget容器 + * + * @return 返回WAbsoluteLayout + */ + @Override + public WAbsoluteLayout toData() { + return (WAbsoluteLayout) data; + } + + @Override + protected String getIconName() { + return "layout_absolute_new.png"; + } + + /** + * 返回默认的容器name + * + * @return 返回绝对布局容器名 + */ + @Override + public String createDefaultName() { + return "absolute"; + } + + @Override + protected void initLayoutManager() { + this.setLayout(new FRAbsoluteLayout()); + } + + /** + * 是否支持标题样式 + * + * @return 默认false + */ + @Override + public boolean hasTitleStyle() { + return false; + } + + @Override + public void paintComponent(Graphics g) { + super.paintComponent(g); + WAbsoluteLayout layout = (WAbsoluteLayout) data; + Connector[] connector = layout.getConnector(); + for (int i = 0, size = connector.length; i < size; i++) { + connector[i].draw(g); + } + } + + /** + * 转换保存组件信息的wlayout为对应的container + */ + @Override + public void convert() { + isRefreshing = true; + WAbsoluteLayout abs = toData(); + this.removeAll(); + for (int i = 0, count = abs.getWidgetCount(); i < count; i++) { + BoundsWidget bw = (BoundsWidget) abs.getWidget(i); + if (bw != null) { + Rectangle bounds = bw.getBounds(); + XWidgetCreator comp = (XWidgetCreator) XCreatorUtils.createXCreator(bw.getWidget()); + if (!comp.acceptType(XWParameterLayout.class)) { + comp.setDirections(Direction.ALL); + } + add(comp); + comp.setBounds(bounds); + } + } + isRefreshing = false; + } + + /** + * 当前组件zorder位置替换新的控件 + * + * @param widget 控件 + * @param oldcreator 旧组件 + * @return 组件 + */ + @Override + public XCreator replace(Widget widget, XCreator oldcreator) { + int i = this.getComponentZOrder(oldcreator); + if (i != -1) { + this.toData().replace(new BoundsWidget(widget, oldcreator.getBounds()), + new BoundsWidget(oldcreator.toData(), oldcreator.getBounds())); + this.convert(); + return (XCreator) this.getComponent(i); + } + return null; + } + + /** * 组件增加 + * * @param e 容器事件 */ - @Override - public void componentAdded(ContainerEvent e) { - if (isRefreshing) { - return; - } - XWidgetCreator creator = (XWidgetCreator) e.getChild(); - WAbsoluteLayout wabs = this.toData(); - if (!creator.acceptType(XWFitLayout.class)) { - creator.setDirections(Direction.ALL); - } - wabs.addWidget(new BoundsWidget(creator.toData(), creator.getBounds())); - } - - /** + @Override + public void componentAdded(ContainerEvent e) { + if (isRefreshing) { + return; + } + XWidgetCreator creator = (XWidgetCreator) e.getChild(); + WAbsoluteLayout wabs = this.toData(); + if (!creator.acceptType(XWFitLayout.class)) { + creator.setDirections(Direction.ALL); + } + wabs.addWidget(new BoundsWidget(creator.toData(), creator.getBounds())); + } + + /** * 在设计界面中有组件移除的时候,需要通知WLayout容器重新paint + * * @param e 容器事件 */ @Override @@ -372,128 +388,130 @@ public class XWAbsoluteLayout extends XLayoutContainer { BoundsWidget bw = new BoundsWidget(wgt, xwc.getBounds()); wlayout.removeWidget(bw); } - - @Override - public Dimension getMinimumSize() { - return toData().getMinDesignSize(); - } - - @Override - public LayoutAdapter getLayoutAdapter() { - return new FRAbsoluteLayoutAdapter(this); - } - - @Override - public XLayoutContainer getTopLayout() { - XLayoutContainer xTopLayout = XCreatorUtils.getParentXLayoutContainer(this).getTopLayout(); - if (xTopLayout != null && !xTopLayout.isEditable()){ - return xTopLayout; - } - else{ - return this; - } - } - - /** - * 得到属性名 - * @return 属性名 - * @throws java.beans.IntrospectionException - */ - public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException { - return new CRPropertyDescriptor[] { - new CRPropertyDescriptor("widgetName", this.data.getClass()).setI18NName( - Inter.getLocText("FR-Designer_Form-Widget_Name")) - }; - } - - public void paint(Graphics g) { - super.paint(g); - //如果鼠标移动到布局内且布局不可编辑,画出编辑蒙层 - if (isMouseEnter && !this.editable) { - int x = 0; - int y = 0; - int w = getWidth(); - int h = getHeight(); - - Graphics2D g2d = (Graphics2D) g; - Composite oldComposite = g2d.getComposite(); - //画白色的编辑层 - g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 60 / 100.0F)); - g2d.setColor(Color.WHITE); - g2d.fillRect(x, y, w, h); - //画编辑按钮所在框 - g2d.setComposite(oldComposite); - g2d.setColor(new Color(176, 196, 222)); - g2d.fillRect((x + w / 2 - EDIT_BTN_WIDTH / 2), (y + h / 2 - EDIT_BTN_HEIGHT / 2), EDIT_BTN_WIDTH, EDIT_BTN_HEIGHT); - //画编辑按钮图标 - BufferedImage image = IOUtils.readImage(IconPathConstants.TD_EDIT_ICON_PATH); - g2d.drawImage( - image, - (x + w / 2 - 23), - (y + h / 2 - image.getHeight() / 2), - image.getWidth(), - image.getHeight(), - null, - this - ); - g2d.setColor(Color.BLACK); - //画编辑文字 - g2d.drawString(Inter.getLocText("FR-Designer_Edit"), x + w / 2 - 2, y + h / 2 + 5); - } - } - - /** - * 响应点击事件 - * - * @param editingMouseListener 鼠标点击,位置处理器 - * @param e 鼠标点击事件 - */ - public void respondClick(EditingMouseListener editingMouseListener,MouseEvent e){ - FormDesigner designer = editingMouseListener.getDesigner(); - SelectionModel selectionModel = editingMouseListener.getSelectionModel(); - boolean isEditing = isEditable() || designer.getCursor().getType() == Cursor.HAND_CURSOR || e.getClickCount() == 2; - setEditable(isEditing); - - selectionModel.selectACreatorAtMouseEvent(e); - designer.repaint(); - - if (editingMouseListener.stopEditing()) { - if (this != designer.getRootComponent()) { - ComponentAdapter adapter = AdapterBus.getComponentAdapter(designer, this); - editingMouseListener.startEditing(this, isEditing ? adapter.getDesignerEditor() : null, adapter); - } - } - } - - /** - * body大小手动调整的时候 - * 按照比例调整组件的宽度 - * @param percent 比例 - */ - @Override - public void adjustCompWidth(double percent) { - for (int i = 0; i < getComponentCount(); i++) { - XCreator xCreator = (XCreator) getComponent(i); - Rectangle rectangle = xCreator.getBounds(); - xCreator.setBounds((int) (rectangle.x * percent), rectangle.y, (int) (rectangle.width * percent), rectangle.height); - BoundsWidget widget = (BoundsWidget) toData().getBoundsWidget(xCreator.toData()); - widget.setBounds(xCreator.getBounds()); - } - } - - /** - * body大小手动调整的时候 - * 按照比例调整组件的高度 - * @param percent 比例 - */ - @Override - public void adjustCompHeight(double percent) { - for (int i = 0; i < getComponentCount(); i++) { - XCreator xCreator = (XCreator) getComponent(i); - Rectangle rectangle = xCreator.getBounds(); - xCreator.setBounds(rectangle.x, (int) (rectangle.y * percent), rectangle.width, (int) (rectangle.height * percent)); - BoundsWidget widget = (BoundsWidget) toData().getBoundsWidget(xCreator.toData()); - widget.setBounds(xCreator.getBounds()); - } - } + + @Override + public Dimension getMinimumSize() { + return toData().getMinDesignSize(); + } + + @Override + public LayoutAdapter getLayoutAdapter() { + return new FRAbsoluteLayoutAdapter(this); + } + + @Override + public XLayoutContainer getTopLayout() { + XLayoutContainer xTopLayout = XCreatorUtils.getParentXLayoutContainer(this).getTopLayout(); + if (xTopLayout != null && !xTopLayout.isEditable()) { + return xTopLayout; + } else { + return this; + } + } + + /** + * 得到属性名 + * + * @return 属性名 + * @throws java.beans.IntrospectionException + */ + public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException { + return new CRPropertyDescriptor[]{ + new CRPropertyDescriptor("widgetName", this.data.getClass()).setI18NName( + Inter.getLocText("FR-Designer_Form-Widget_Name")) + }; + } + + public void paint(Graphics g) { + super.paint(g); + //如果鼠标移动到布局内且布局不可编辑,画出编辑蒙层 + if (isMouseEnter && !this.editable) { + int x = 0; + int y = 0; + int w = getWidth(); + int h = getHeight(); + + Graphics2D g2d = (Graphics2D) g; + Composite oldComposite = g2d.getComposite(); + //画白色的编辑层 + g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 60 / 100.0F)); + g2d.setColor(Color.WHITE); + g2d.fillRect(x, y, w, h); + //画编辑按钮所在框 + g2d.setComposite(oldComposite); + g2d.setColor(new Color(176, 196, 222)); + g2d.fillRect((x + w / 2 - EDIT_BTN_WIDTH / 2), (y + h / 2 - EDIT_BTN_HEIGHT / 2), EDIT_BTN_WIDTH, EDIT_BTN_HEIGHT); + //画编辑按钮图标 + BufferedImage image = IOUtils.readImage(IconPathConstants.TD_EDIT_ICON_PATH); + g2d.drawImage( + image, + (x + w / 2 - 23), + (y + h / 2 - image.getHeight() / 2), + image.getWidth(), + image.getHeight(), + null, + this + ); + g2d.setColor(Color.BLACK); + //画编辑文字 + g2d.drawString(Inter.getLocText("FR-Designer_Edit"), x + w / 2 - 2, y + h / 2 + 5); + } + } + + /** + * 响应点击事件 + * + * @param editingMouseListener 鼠标点击,位置处理器 + * @param e 鼠标点击事件 + */ + public void respondClick(EditingMouseListener editingMouseListener, MouseEvent e) { + FormDesigner designer = editingMouseListener.getDesigner(); + SelectionModel selectionModel = editingMouseListener.getSelectionModel(); + boolean isEditing = isEditable() || designer.getCursor().getType() == Cursor.HAND_CURSOR || e.getClickCount() == 2; + setEditable(isEditing); + + selectionModel.selectACreatorAtMouseEvent(e); + designer.repaint(); + + if (editingMouseListener.stopEditing()) { + if (this != designer.getRootComponent()) { + ComponentAdapter adapter = AdapterBus.getComponentAdapter(designer, this); + editingMouseListener.startEditing(this, isEditing ? adapter.getDesignerEditor() : null, adapter); + } + } + } + + /** + * body大小手动调整的时候 + * 按照比例调整组件的宽度 + * + * @param percent 比例 + */ + @Override + public void adjustCompWidth(double percent) { + for (int i = 0; i < getComponentCount(); i++) { + XCreator xCreator = (XCreator) getComponent(i); + Rectangle rectangle = xCreator.getBounds(); + xCreator.setBounds((int) (rectangle.x * percent), rectangle.y, (int) (rectangle.width * percent), rectangle.height); + BoundsWidget widget = (BoundsWidget) toData().getBoundsWidget(xCreator.toData()); + widget.setBounds(xCreator.getBounds()); + } + } + + /** + * body大小手动调整的时候 + * 按照比例调整组件的高度 + * + * @param percent 比例 + */ + @Override + public void adjustCompHeight(double percent) { + for (int i = 0; i < getComponentCount(); i++) { + XCreator xCreator = (XCreator) getComponent(i); + Rectangle rectangle = xCreator.getBounds(); + xCreator.setBounds(rectangle.x, (int) (rectangle.y * percent), rectangle.width, (int) (rectangle.height * percent)); + BoundsWidget widget = (BoundsWidget) toData().getBoundsWidget(xCreator.toData()); + widget.setBounds(xCreator.getBounds()); + } + } } \ No newline at end of file diff --git a/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveEndAction.java b/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveEndAction.java index 5da5dd1c7..e8c7c04b0 100644 --- a/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveEndAction.java +++ b/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveEndAction.java @@ -14,7 +14,7 @@ public class TabMoveEndAction extends TabMoveAction { public TabMoveEndAction(FormDesigner t, XCardSwitchButton xCardSwitchButton) { super(t, xCardSwitchButton); this.setName(Inter.getLocText("FR-Designer-Move_Tab_End")); - this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/rightright.png")); + this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/tab/end.png")); } //改变Tab的索引号 diff --git a/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveFirstAction.java b/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveFirstAction.java index 26195b946..a2483c01e 100644 --- a/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveFirstAction.java +++ b/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveFirstAction.java @@ -14,7 +14,7 @@ public class TabMoveFirstAction extends TabMoveAction { public TabMoveFirstAction(FormDesigner t, XCardSwitchButton xCardSwitchButton) { super(t, xCardSwitchButton); this.setName(Inter.getLocText("FR-Designer-Move_Tab_First")); - this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/leftleft.png")); + this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/tab/first.png")); } @Override diff --git a/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveNextAction.java b/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveNextAction.java index 10e796abc..f3e34208c 100644 --- a/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveNextAction.java +++ b/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMoveNextAction.java @@ -14,7 +14,7 @@ public class TabMoveNextAction extends TabMoveAction { public TabMoveNextAction(FormDesigner t, XCardSwitchButton xCardSwitchButton) { super(t, xCardSwitchButton); this.setName(Inter.getLocText("FR-Designer-Move_Tab_Next")); - this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/right.png")); + this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/tab/next.png")); } @Override diff --git a/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMovePrevAction.java b/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMovePrevAction.java index 859a27eea..94f501c57 100644 --- a/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMovePrevAction.java +++ b/designer_form/src/com/fr/design/designer/creator/cardlayout/TabMovePrevAction.java @@ -14,7 +14,7 @@ public class TabMovePrevAction extends TabMoveAction { public TabMovePrevAction(FormDesigner t, XCardSwitchButton xCardSwitchButton) { super(t, xCardSwitchButton); this.setName(Inter.getLocText("FR-Designer-Move_Tab_Prev")); - this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/left.png")); + this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/tab/prev.png")); } @Override diff --git a/designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java b/designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java index dece338ec..8f60672ec 100644 --- a/designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java +++ b/designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java @@ -3,10 +3,6 @@ */ package com.fr.design.designer.creator.cardlayout; -import java.awt.*; -import java.awt.event.MouseEvent; -import java.awt.image.BufferedImage; -import java.util.ArrayList; import com.fr.design.designer.beans.AdapterBus; import com.fr.design.designer.beans.ComponentAdapter; import com.fr.design.designer.beans.models.SelectionModel; @@ -17,12 +13,18 @@ import com.fr.design.designer.creator.XWBorderLayout; import com.fr.design.icon.IconPathConstants; import com.fr.design.mainframe.EditingMouseListener; import com.fr.design.mainframe.FormDesigner; +import com.fr.form.ui.container.WAbsoluteLayout.BoundsWidget; import com.fr.form.ui.container.WBorderLayout; import com.fr.form.ui.container.cardlayout.WCardMainBorderLayout; import com.fr.general.IOUtils; import com.fr.form.ui.container.WAbsoluteLayout.BoundsWidget; import com.fr.general.Inter; +import java.awt.*; +import java.awt.event.MouseEvent; +import java.awt.image.BufferedImage; +import java.util.ArrayList; + /** * card布局主体框架 * diff --git a/designer_form/src/com/fr/design/mainframe/ComponentTree.java b/designer_form/src/com/fr/design/mainframe/ComponentTree.java index 4d58c4887..1ceab13c0 100644 --- a/designer_form/src/com/fr/design/mainframe/ComponentTree.java +++ b/designer_form/src/com/fr/design/mainframe/ComponentTree.java @@ -1,21 +1,14 @@ package com.fr.design.mainframe; import java.awt.Component; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; import java.util.ArrayList; import javax.swing.DropMode; -import javax.swing.JPopupMenu; import javax.swing.JTree; import javax.swing.tree.TreePath; import javax.swing.tree.TreeSelectionModel; import com.fr.design.constants.UIConstants; -import com.fr.design.designer.beans.AdapterBus; -import com.fr.design.designer.beans.ComponentAdapter; -import com.fr.design.designer.beans.events.DesignerEditListener; -import com.fr.design.designer.beans.events.DesignerEvent; import com.fr.design.designer.creator.*; import com.fr.design.designer.treeview.ComponentTreeCellRenderer; import com.fr.design.designer.treeview.ComponentTreeModel; @@ -92,9 +85,9 @@ public class ComponentTree extends JTree { } } - public void setAndScrollSelectionPath(TreePath treepath) { - setSelectionPath(treepath); - scrollPathToVisible(treepath); + public void setAndScrollSelectionPath(TreePath[] treepath) { + setSelectionPaths(treepath); + scrollPathToVisible(treepath[0]); } @@ -112,7 +105,6 @@ public class ComponentTree extends JTree { public TreePath[] getSelectedTreePath() { XCreator[] creators = designer.getSelectionModel().getSelection().getSelectedCreators(); TreePath[] paths = new TreePath[creators.length]; - for (int i = 0; i < paths.length; i++) { paths[i] = buildTreePath(creators[i]); } @@ -141,7 +133,7 @@ public class ComponentTree extends JTree { paths[i] = buildTreePath(searchList.get(i)); } if(paths.length > 0) { - setAndScrollSelectionPath(paths[0]); + setAndScrollSelectionPath(paths); } else { setSelectionPath(); } @@ -217,4 +209,5 @@ public class ComponentTree extends JTree { Object[] components = path.toArray(); return new TreePath(components); } + } \ No newline at end of file diff --git a/designer_form/src/com/fr/design/mainframe/FormDesigner.java b/designer_form/src/com/fr/design/mainframe/FormDesigner.java index 0c7705993..3aa9e24ee 100644 --- a/designer_form/src/com/fr/design/mainframe/FormDesigner.java +++ b/designer_form/src/com/fr/design/mainframe/FormDesigner.java @@ -1018,7 +1018,6 @@ public class FormDesigner extends TargetComponent

implements TreeSelection } if (!BaseUtils.isAuthorityEditing()) { - selectionModel.setSelectedCreators(selected); TreePath path = e.getNewLeadSelectionPath(); diff --git a/designer_form/src/com/fr/design/mainframe/FormSelectionUtils.java b/designer_form/src/com/fr/design/mainframe/FormSelectionUtils.java index 79f52519e..7a03782c2 100644 --- a/designer_form/src/com/fr/design/mainframe/FormSelectionUtils.java +++ b/designer_form/src/com/fr/design/mainframe/FormSelectionUtils.java @@ -3,8 +3,10 @@ package com.fr.design.mainframe; import com.fr.base.FRContext; import com.fr.design.designer.beans.LayoutAdapter; import com.fr.design.designer.beans.adapters.layout.AbstractLayoutAdapter; +import com.fr.design.designer.beans.adapters.layout.FRTabFitLayoutAdapter; import com.fr.design.designer.beans.events.DesignerEvent; import com.fr.design.designer.creator.*; +import com.fr.design.utils.ComponentUtils; import com.fr.form.ui.Widget; import com.fr.form.ui.container.WTitleLayout; import com.fr.general.ComparatorUtils; @@ -83,14 +85,26 @@ public class FormSelectionUtils { * 相对布局粘贴 */ private static void relativePaste(FormDesigner designer, FormSelection clipboard, LayoutAdapter adapter, int x, int y) { + + //@see FRTabFitLayoutAdapter + Rectangle tabContainerRect = ComponentUtils.getRelativeBounds(designer.getSelectionModel().getSelection() + .getSelectedCreator().getParent()); + designer.getSelectionModel().getSelection().reset(); for (XCreator creator : clipboard.getSelectedCreators()) { try { Widget copied = copyWidget(designer, creator); XCreator copiedCreator = XCreatorUtils.createXCreator(copied, creator.getSize()); - if (!adapter.accept(copiedCreator, x, y)) { - designer.showMessageDialog(Inter.getLocText("FR-Designer_Too_Small_To_Paste")); - return; + if (adapter.getClass().equals(FRTabFitLayoutAdapter.class)) { + if (!adapter.accept(copiedCreator, x - tabContainerRect.x, y - tabContainerRect.y)) { + designer.showMessageDialog(Inter.getLocText("FR-Designer_Too_Small_To_Paste")); + return; + } + } else { + if (!adapter.accept(copiedCreator, x, y)) { + designer.showMessageDialog(Inter.getLocText("FR-Designer_Too_Small_To_Paste")); + return; + } } boolean addSuccess = adapter.addBean(copiedCreator, x, y); if (addSuccess) { @@ -118,29 +132,20 @@ public class FormSelectionUtils { XLayoutContainer container = layoutAdapter.getContainer(); boolean xOut = x < 0 || x + copiedCreator.getWidth() / 2 + xoffset > container.getWidth(); boolean yOut = y < 0 || y + copiedCreator.getHeight() / 2 + yoffset > container.getHeight(); - /* - * 组件原始位置位于布局的右下角, - * 和布局右下边界线紧挨, - * 粘贴时组件在原始位置向左错开20像素。 - * x,y同时越界 - */ - if (xOut && yOut) { - //向左偏移 - x = container.getWidth() - copiedCreator.getWidth() / 2 - DELAY_X_Y - xoffset; + + boolean isEdge = (x - DELAY_X_Y == container.getWidth() - copiedCreator.getWidth() / 2 - xoffset) + && (y - DELAY_X_Y == container.getHeight() - copiedCreator.getHeight() / 2 - yoffset); + + y = yOut ? container.getHeight() - copiedCreator.getHeight() / 2 - yoffset : y; + if (xOut) { + if (isEdge) { + //向左偏移 + x = container.getWidth() - copiedCreator.getWidth() / 2 - DELAY_X_Y - xoffset; + } //紧贴下边界 - y = container.getHeight() - copiedCreator.getHeight() / 2 - yoffset; - return new Point(x, y); - } - /* - * 组件原始位置与布局边界距离小于20像素(下边界&右边界同时小于或者任意一个边界小于), - * 则粘贴时距离小于20像素一侧直接贴近布局边界, - * 距离大于20像素的一侧正常错开。 - * x,y中只有一个越界 - */ - if ((xOut || yOut)) { - x = xOut ? container.getWidth() - copiedCreator.getWidth() / 2 - xoffset : x; - y = yOut ? container.getHeight() - copiedCreator.getHeight() / 2 - yoffset : y; - return new Point(x, y); + else { + x = container.getWidth() - copiedCreator.getWidth() / 2 - xoffset; + } } } return new Point(x, y); diff --git a/designer_form/src/com/fr/design/mainframe/WidgetPropertyPane.java b/designer_form/src/com/fr/design/mainframe/WidgetPropertyPane.java index 6a8480206..201ab203e 100644 --- a/designer_form/src/com/fr/design/mainframe/WidgetPropertyPane.java +++ b/designer_form/src/com/fr/design/mainframe/WidgetPropertyPane.java @@ -259,8 +259,11 @@ public class WidgetPropertyPane extends FormDockView implements BaseWidgetProper xCreator = designer.getRootComponent(); } XLayoutContainer container = XCreatorUtils.getHotspotContainer(xCreator); - //TODO container可能为空,引发空指针异常 - return xCreator.acceptType(XWParameterLayout.class) || container.acceptType(XWParameterLayout.class); + + boolean xCreatorAccept = xCreator.acceptType(XWParameterLayout.class); + boolean containerAccept = container!=null && container.acceptType(XWParameterLayout.class); + + return xCreatorAccept || containerAccept; } public void setEditingFormDesigner(BaseFormDesigner editor) { diff --git a/designer_form/src/com/fr/design/mainframe/widget/UITreeComboBox.java b/designer_form/src/com/fr/design/mainframe/widget/UITreeComboBox.java index 0d7b224f6..62c9aa067 100644 --- a/designer_form/src/com/fr/design/mainframe/widget/UITreeComboBox.java +++ b/designer_form/src/com/fr/design/mainframe/widget/UITreeComboBox.java @@ -65,7 +65,6 @@ public class UITreeComboBox extends JComboBox{ * @param o Object */ public void setSelectedItem(Object o){ - tree.setSelectionPath((TreePath)o); getModel().setSelectedItem(o); } @@ -110,7 +109,7 @@ public class UITreeComboBox extends JComboBox{ int index, boolean isSelected, boolean cellHasFocus){ if(tree != null && tree.getSelectedTreePath().length > 0){ TreePath path = tree.getSelectedTreePath()[0]; - tree.setAndScrollSelectionPath(path); + tree.setAndScrollSelectionPath(tree.getSelectedTreePath()); Object node = path.getLastPathComponent(); value = node; TreeCellRenderer r = tree.getCellRenderer(); @@ -132,7 +131,7 @@ public class UITreeComboBox extends JComboBox{ if (evt.getCreatorEventID() == DesignerEvent.CREATOR_SELECTED) { TreePath[] paths = tree.getSelectedTreePath(); if (tree != null && paths.length > 0) { - tree.setAndScrollSelectionPath(paths[0]); + tree.setAndScrollSelectionPath(paths); setSelectedItem(paths[0]); MenuSelectionManager.defaultManager().clearSelectedPath(); } @@ -141,7 +140,7 @@ public class UITreeComboBox extends JComboBox{ tree.refreshUI(); TreePath[] paths = tree.getSelectedTreePath(); if (tree != null && paths.length > 0) { - tree.setAndScrollSelectionPath(paths[0]); + tree.setAndScrollSelectionPath(paths); setSelectedItem(paths[0]); MenuSelectionManager.defaultManager().clearSelectedPath(); }