Browse Source

冲突

master
neil 7 years ago
parent
commit
fc72c48776
  1. 5
      designer/src/com/fr/design/mainframe/AuthorityToolBarPane.java
  2. 5
      designer/src/com/fr/design/mainframe/FormatBrushAction.java
  3. 5
      designer/src/com/fr/grid/GridKeyListener.java
  4. 5
      designer/src/com/fr/grid/GridMouseAdapter.java
  5. 45
      designer_base/src/com/fr/design/extra/LoginWebBridge.java
  6. 365
      designer_base/src/com/fr/design/extra/PluginHelper.java
  7. 46
      designer_base/src/com/fr/design/extra/exe/PluginLoginExecutor.java
  8. 5
      designer_base/src/com/fr/design/gui/autocomplete/AutoCompletion.java
  9. 8
      designer_base/src/com/fr/design/gui/frpane/UIAdvancedTextPane.java
  10. 24
      designer_base/src/com/fr/design/gui/icombobox/ExtendedComboBox.java
  11. 33
      designer_base/src/com/fr/design/gui/icombobox/UIComboBoxUI.java
  12. 3
      designer_base/src/com/fr/design/gui/itable/TableSorter.java
  13. 4
      designer_base/src/com/fr/design/gui/itabpane/UITabsHeaderIconPane.java
  14. 7
      designer_base/src/com/fr/design/gui/itextfield/UITextField.java
  15. 95
      designer_base/src/com/fr/design/locale/designer.properties
  16. 156
      designer_base/src/com/fr/design/locale/designer_en_US.properties
  17. 2523
      designer_base/src/com/fr/design/locale/designer_ja_JP.properties
  18. 46
      designer_base/src/com/fr/design/locale/designer_ko_KR.properties
  19. 62
      designer_base/src/com/fr/design/locale/designer_zh_CN.properties
  20. 270
      designer_base/src/com/fr/design/locale/designer_zh_TW.properties
  21. 8
      designer_base/src/com/fr/design/mainframe/loghandler/DesignerLogHandler.java
  22. 423
      designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java
  23. 118
      designer_form/src/com/fr/design/designer/creator/XCreatorUtils.java
  24. 18
      designer_form/src/com/fr/design/designer/properties/WidgetPropertyTable.java
  25. 4
      designer_form/src/com/fr/design/mainframe/widget/editors/DataTableConfigPane.java

5
designer/src/com/fr/design/mainframe/AuthorityToolBarPane.java

@ -3,6 +3,7 @@ package com.fr.design.mainframe;
import com.fr.base.ConfigManager; import com.fr.base.ConfigManager;
import com.fr.base.ConfigManagerProvider; import com.fr.base.ConfigManagerProvider;
import com.fr.base.FRContext; import com.fr.base.FRContext;
import com.fr.common.inputevent.InputEventBaseOnOS;
import com.fr.design.beans.BasicBeanPane; import com.fr.design.beans.BasicBeanPane;
import com.fr.design.file.HistoryTemplateListPane; import com.fr.design.file.HistoryTemplateListPane;
import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.icombobox.UIComboBox;
@ -67,7 +68,7 @@ public class AuthorityToolBarPane<T extends WebContent> extends BasicBeanPane<Re
buttonlists.get(i).setSelected(true); buttonlists.get(i).setSelected(true);
} }
} }
} else if (!e.isControlDown()) { } else if (!InputEventBaseOnOS.isControlDown(e)) {
//实现单选 //实现单选
removeSelection(); removeSelection();
if (selectedIndex != -1) { if (selectedIndex != -1) {
@ -235,7 +236,7 @@ public class AuthorityToolBarPane<T extends WebContent> extends BasicBeanPane<Re
dealWithWebContent(webAttr.getWebView(), widget, isSelected, selectedRole); dealWithWebContent(webAttr.getWebView(), widget, isSelected, selectedRole);
} }
} }
} }
private void dealWithWebContent(WebContent wc, Widget widget, boolean isSelected, String selectedRole) { private void dealWithWebContent(WebContent wc, Widget widget, boolean isSelected, String selectedRole) {

5
designer/src/com/fr/design/mainframe/FormatBrushAction.java

@ -12,9 +12,10 @@ import com.fr.report.elementcase.TemplateElementCase;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent; import java.awt.event.KeyEvent;
import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER;
/** /**
* Author : daisy * Author : daisy
* Date: 13-8-7 * Date: 13-8-7
@ -31,7 +32,7 @@ public class FormatBrushAction extends ElementCaseAction {
this.setName(Inter.getLocText("M_Edit-FormatBrush")); this.setName(Inter.getLocText("M_Edit-FormatBrush"));
this.setMnemonic('B'); this.setMnemonic('B');
this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/formatBrush.png")); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/formatBrush.png"));
this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_B, InputEvent.CTRL_MASK)); this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_B, DEFAULT_MODIFIER));
} }
public boolean executeActionReturnUndoRecordNeeded() { public boolean executeActionReturnUndoRecordNeeded() {

5
designer/src/com/fr/grid/GridKeyListener.java

@ -1,5 +1,6 @@
package com.fr.grid; package com.fr.grid;
import com.fr.common.inputevent.InputEventBaseOnOS;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.FloatSelection; import com.fr.grid.selection.FloatSelection;
@ -66,7 +67,7 @@ public class GridKeyListener implements KeyListener {
} }
// Richie:Ctrl + A全选单元格 // Richie:Ctrl + A全选单元格
case KeyEvent.VK_A: case KeyEvent.VK_A:
if (evt.isControlDown()) { if (InputEventBaseOnOS.isControlDown(evt)) {
reportPane.setSelection(new CellSelection(0, 0, report.getColumnCount(), report.getRowCount())); reportPane.setSelection(new CellSelection(0, 0, report.getColumnCount(), report.getRowCount()));
} }
isNeedRepaint = true; isNeedRepaint = true;
@ -160,7 +161,7 @@ public class GridKeyListener implements KeyListener {
return; return;
} }
KeyEvent newEvt = KeyEventWork.processKeyEvent(evt); KeyEvent newEvt = KeyEventWork.processKeyEvent(evt);
if (newEvt == null || evt.isControlDown()) {// uneditable. if (newEvt == null || InputEventBaseOnOS.isControlDown(evt)) {// uneditable.
return; return;
} }
char ch = evt.getKeyChar(); char ch = evt.getKeyChar();

5
designer/src/com/fr/grid/GridMouseAdapter.java

@ -3,6 +3,7 @@ package com.fr.grid;
import com.fr.base.BaseUtils; import com.fr.base.BaseUtils;
import com.fr.base.DynamicUnitList; import com.fr.base.DynamicUnitList;
import com.fr.base.ScreenResolution; import com.fr.base.ScreenResolution;
import com.fr.common.inputevent.InputEventBaseOnOS;
import com.fr.design.constants.UIConstants; import com.fr.design.constants.UIConstants;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
@ -164,7 +165,7 @@ public class GridMouseAdapter implements MouseListener, MouseWheelListener, Mous
ElementCasePane reportPane = grid.getElementCasePane(); ElementCasePane reportPane = grid.getElementCasePane();
TemplateElementCase report = reportPane.getEditingElementCase(); TemplateElementCase report = reportPane.getEditingElementCase();
boolean isShiftDown = evt.isShiftDown(); boolean isShiftDown = evt.isShiftDown();
boolean isControlDown = evt.isControlDown(); boolean isControlDown = InputEventBaseOnOS.isControlDown(evt);
int clickCount = evt.getClickCount(); int clickCount = evt.getClickCount();
// peter:需要判断是否在可移动CellSelection的区域 // peter:需要判断是否在可移动CellSelection的区域
grid.setDragType(isMoveCellSelection(this.oldEvtX, this.oldEvtY)); grid.setDragType(isMoveCellSelection(this.oldEvtX, this.oldEvtY));
@ -336,7 +337,7 @@ public class GridMouseAdapter implements MouseListener, MouseWheelListener, Mous
return; return;
} }
boolean isControlDown = evt.isControlDown(); boolean isControlDown = InputEventBaseOnOS.isControlDown(evt);
long systemCurrentTime = System.currentTimeMillis(); long systemCurrentTime = System.currentTimeMillis();
if (systemCurrentTime - lastMouseMoveTime <= DRAG_REFRESH_TIME) {// alex:Drag if (systemCurrentTime - lastMouseMoveTime <= DRAG_REFRESH_TIME) {// alex:Drag

45
designer_base/src/com/fr/design/extra/LoginWebBridge.java

@ -8,6 +8,9 @@ import com.fr.design.extra.ucenter.XMLHelper;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.general.SiteCenter; import com.fr.general.SiteCenter;
import com.fr.general.http.HttpClient; import com.fr.general.http.HttpClient;
import com.fr.json.JSONObject;
import com.fr.plugin.manage.bbs.BBSPluginLogin;
import com.fr.plugin.manage.bbs.BBSUserInfo;
import com.fr.stable.EncodeConstants; import com.fr.stable.EncodeConstants;
import com.fr.stable.StringUtils; import com.fr.stable.StringUtils;
import javafx.scene.web.WebEngine; import javafx.scene.web.WebEngine;
@ -17,6 +20,7 @@ import java.awt.*;
import java.io.UnsupportedEncodingException; import java.io.UnsupportedEncodingException;
import java.net.URI; import java.net.URI;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.util.HashMap;
import java.util.LinkedList; import java.util.LinkedList;
public class LoginWebBridge { public class LoginWebBridge {
@ -106,6 +110,9 @@ public class LoginWebBridge {
if (StringUtils.isEmpty(userName)) { if (StringUtils.isEmpty(userName)) {
return; return;
} }
if (StringUtils.isNotEmpty(this.userName)) {
updateMessageCount();
}
this.userName = userName; this.userName = userName;
} }
@ -119,6 +126,43 @@ public class LoginWebBridge {
return client.isServerAlive(); return client.isServerAlive();
} }
/**
* 定时取后台论坛消息
*/
public void updateMessageCount() {
//启动获取消息更新的线程
//登陆状态, 根据存起来的用户名密码, 每1分钟发起一次请求, 更新消息条数.
Thread updateMessageThread = new Thread(new Runnable() {
@Override
public void run() {
sleep(CHECK_MESSAGE_TIME);
while (StringUtils.isNotEmpty(DesignerEnvManager.getEnvManager().getBBSName())) {
HashMap<String, String> 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()) {
try {
String res = getMessage.getResponseText();
if (res.equals(FAILED_MESSAGE_STATUS)) {
} else {
JSONObject jo = new JSONObject(res);
if (jo.optString("status").equals(SUCCESS_MESSAGE_STATUS)) {
setMessageCount(Integer.parseInt(jo.getString("message")));
}
}
} catch (Exception e) {
FRContext.getLogger().info(e.getMessage());
}
}
sleep(CHECK_MESSAGE_TIME);
}
}
});
updateMessageThread.start();
}
/** /**
* 设置获取的消息长度并设置显示 * 设置获取的消息长度并设置显示
* *
@ -278,6 +322,7 @@ public class LoginWebBridge {
DesignerEnvManager.getEnvManager().setBBSName(username); DesignerEnvManager.getEnvManager().setBBSName(username);
DesignerEnvManager.getEnvManager().setInShowBBsName(username); DesignerEnvManager.getEnvManager().setInShowBBsName(username);
DesignerEnvManager.getEnvManager().setBBSPassword(password); DesignerEnvManager.getEnvManager().setBBSPassword(password);
BBSPluginLogin.getInstance().login(new BBSUserInfo(username, password));
return LOGININ;//登录成功,0 return LOGININ;//登录成功,0
} else if ($uid == -1) { } else if ($uid == -1) {
return USERNAME_NOT_EXSIT;//用户名不存在,-1 return USERNAME_NOT_EXSIT;//用户名不存在,-1

365
designer_base/src/com/fr/design/extra/PluginHelper.java

@ -1,365 +0,0 @@
package com.fr.design.extra;
import com.fr.base.Env;
import com.fr.base.FRContext;
import com.fr.design.DesignerEnvManager;
import com.fr.design.extra.plugindependence.DownLoadDependenceUI;
import com.fr.general.*;
import com.fr.general.http.HttpClient;
import com.fr.plugin.Plugin;
import com.fr.plugin.PluginConfigManager;
import com.fr.plugin.PluginLoader;
import com.fr.plugin.PluginManagerHelper;
import com.fr.plugin.dependence.PluginDependence;
import com.fr.plugin.dependence.PluginDependenceException;
import com.fr.plugin.dependence.PluginDependenceUnit;
import com.fr.stable.ArrayUtils;
import com.fr.stable.EncodeConstants;
import com.fr.stable.StableUtils;
import com.fr.stable.StringUtils;
import com.fr.stable.plugin.PluginConstants;
import com.fr.stable.project.ProjectConstants;
import com.fr.stable.xml.XMLTools;
import javax.swing.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.concurrent.ExecutionException;
/**
* @author richie
* @date 2015-03-10
* @since 8.0
*/
public class PluginHelper {
private static final String TEMP_PATH = System.getProperty("user.dir") + "/tmp";
public static final String DOWNLOAD_PATH = System.getProperty("user.dir") + "/download";
//插件依赖的下载位置
public static final String DEPENDENCE_DOWNLOAD_PATH = System.getProperty("user.dir") + "/download/dependence";
public static final String TEMP_FILE = "temp.zip";
public static final String CONNECTION_404 = "404";
/**
* 下载插件
*
* @param id 插件id
* @param p 下载百分比处理
*/
public static void downloadPluginFile(String id, String username, String password, Process<Double> p) throws Exception {
HttpClient httpClient = new HttpClient(getDownloadPath(id, username, password));
if (httpClient.getResponseCode() == HttpURLConnection.HTTP_OK) {
int totalSize = httpClient.getContentLength();
InputStream reader = httpClient.getResponseStream();
String temp = StableUtils.pathJoin(DOWNLOAD_PATH, TEMP_FILE);
StableUtils.makesureFileExist(new File(temp));
FileOutputStream writer = new FileOutputStream(temp);
byte[] buffer = new byte[PluginConstants.BYTES_NUM];
int bytesRead = 0;
int totalBytesRead = 0;
while ((bytesRead = reader.read(buffer)) > 0) {
writer.write(buffer, 0, bytesRead);
buffer = new byte[PluginConstants.BYTES_NUM];
totalBytesRead += bytesRead;
p.process(totalBytesRead / (double) totalSize);
}
reader.close();
writer.flush();
writer.close();
} else {
throw new com.fr.plugin.PluginVerifyException(Inter.getLocText("FR-Designer-Plugin_Connect_Server_Error"));
}
}
private static boolean invalidUser(String id, String username, String password) {
if (StringUtils.isEmpty(id)) {
return false;
} else if (StringUtils.isEmpty(username) || StringUtils.isEmpty(password)){
return false;
} else {
return true;
}
}
private static String getDownloadPath(String id, String username, String password) throws Exception {
HashMap<String, String> map = new HashMap<String, String>();
map.put("id", id);
map.put("username", username);
map.put("password", password);
HttpClient httpClient = new HttpClient(SiteCenter.getInstance().acquireUrlByKind("plugin.download"), map);
String resText = httpClient.getResponseText();
String charSet = EncodeConstants.ENCODING_UTF_8;
resText = URLDecoder.decode(URLDecoder.decode(resText, charSet), charSet);
return resText;
}
public static File getDownloadTempFile() {
return new File(StableUtils.pathJoin(DOWNLOAD_PATH, TEMP_FILE));
}
/**
* 从压缩文件中读取插件信息
*
* @param chosenFile 选择的压缩文件
* @return 返回插件对象
* @throws Exception 读取插件信息失败则抛出异常
*/
public static Plugin readPlugin(File chosenFile) throws Exception {
// 需要先删除临时目录保证加压出来的文件不会和安装失败的文件混合到一起
StableUtils.deleteFile(new File(TEMP_PATH));
IOUtils.unzip(chosenFile, TEMP_PATH);
File pluginFileDir = getTempPluginFileDirectory();
if (pluginFileDir == null) {
return null;
}
Plugin plugin = null;
if (pluginFileDir.isDirectory()) {
File[] pluginFiles = pluginFileDir.listFiles();
if (ArrayUtils.isNotEmpty(pluginFiles)) {
for (File f : pluginFiles) {
if (f.getName().equals("plugin.xml")) {
plugin = new Plugin();
InputStream inputStream = plugin.readEncryptXml(new FileInputStream(f));
XMLTools.readInputStreamXML(plugin, inputStream);
//检查是否需要准备插件依赖环境
checkDependenceEnv(plugin);
if (!plugin.isValidate()) {
return null;
}
inputStream.close();
break;
}
}
}
}
return plugin;
}
//将所有未配置好的资源文件依赖准备好
private static void checkDependenceEnv(Plugin plugin) throws PluginDependenceException {
PluginDependence dependence = plugin.getDependence();
if (dependence == null) {
return;
}
List<PluginDependenceUnit> needInstallDependence = new ArrayList<PluginDependenceUnit>();
String currentID = dependence.getCurrentPluginID();
List<PluginDependenceUnit> list = dependence.getDependPlugins();
for (int i = 0; list != null && i < list.size(); i++) {
PluginDependenceUnit dependenceUnit = list.get(i);
if (!dependenceUnit.checkFileEnv()) {
needInstallDependence.add(dependenceUnit);
}
}
if (needInstallDependence.isEmpty()) {
return;
}
//安装插件依赖
installDependenceOnline(currentID, needInstallDependence);
}
/**
* 构造一个下载UI
*
* @param currentID
* @param list
* @throws PluginDependenceException
*/
private static void installDependenceOnline(String currentID, List<PluginDependenceUnit> list) throws PluginDependenceException {
DownLoadDependenceUI ui = new DownLoadDependenceUI(currentID, list);
ui.installOnline();
}
/**
* 从选中的压缩文件中安装插件
*
* @param chosenFile 选择的压缩文件
* @param after 操作完成事件
* @throws Exception 安装失败则抛出异常
*/
public static void installPluginFromDisk(File chosenFile, After after) throws Exception {
Plugin plugin = readPlugin(chosenFile);
installPluginFromUnzippedTempDir(FRContext.getCurrentEnv(), plugin, after);
}
/**
* 从压缩文件中复制Restart*.class和restart.exe到bin目录下
*
* @param file 插件文件
* @param plugin 插件
* @throws Exception
*/
public static void copyFilesToBinFolder(File file, Plugin plugin) throws Exception {
File[] pluginFiles = file.listFiles();
for (File restartFile : pluginFiles) {
if (restartFile.getAbsolutePath().endsWith(".class")) {
String installHome = StableUtils.getInstallHome();
IOUtils.copy(restartFile, new File(StableUtils.pathJoin(new String[]{installHome, "bin"})));
}
}
}
/**
* 从插件压缩包解压到得临时文件中安装插件
*
* @param env 报表运行环境
* @param plugin 插件
* @param after 操作完成事件
* @throws Exception
*/
public static void installPluginFromUnzippedTempDir(Env env, final Plugin plugin, final After after) throws Exception {
validPlugin(plugin);
if (plugin.isValidate()) {
File file = getTempPluginFileDirectory();
env.copyFilesToPluginAndLibFolder(file, plugin);
copyFilesToBinFolder(file, plugin);
env.movePluginEmbFile(file, plugin);
}
// 删除放解压文件的临时文件夹
StableUtils.deleteFile(new File(TEMP_PATH));
PluginConfigManager.getProviderInstance().pushNewPlugin(plugin);
PluginConfigManager.getProviderInstance().syncPluginConfig();
new SwingWorker<String, Void>() {
@Override
protected String doInBackground() throws Exception {
return sendInstalledPluginInfo(plugin);
}
@Override
protected void done() {
try {
String text = get();
FRLogger.getLogger().info("plugin install:" + text);
} catch (InterruptedException e) {
FRLogger.getLogger().error(e.getMessage(), e);
} catch (ExecutionException e) {
FRLogger.getLogger().error(e.getMessage(), e);
}
if (after != null) {
after.done();
}
}
}.execute();
}
private static void validPlugin(Plugin plugin) throws Exception {
if (plugin == null) {
throw new com.fr.plugin.PluginVerifyException(Inter.getLocText("FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install"));
}
if (PluginLoader.getLoader().isInstalled(plugin)) {
throw new com.fr.plugin.PluginVerifyException(Inter.getLocText("FR-Designer-Plugin_Has_Been_Installed"));
}
if (plugin.checkIfJarExpired()) {
String jarExpiredInfo = Inter.getLocText(new String[]{"FR-Designer-Plugin_Jar_Expired", ",", "FR-Designer-Plugin_Install_Failed", ",", "FR-Designer-Plugin_Please_Update_Jar", plugin.getRequiredJarTime()});
FRLogger.getLogger().error(jarExpiredInfo);
throw new com.fr.plugin.PluginVerifyException(jarExpiredInfo);
}
File fileToCheck = getTempPluginFileDirectory();
File oldfile = new File(StableUtils.pathJoin(FRContext.getCurrentEnv().getPath(), ProjectConstants.PLUGINS_NAME, "plugin-" + plugin.getId()));
if (!PluginManagerHelper.checkLic(plugin, fileToCheck)) {
if (!PluginManagerHelper.checkLic(plugin, oldfile)) {//安装时,在安装目录下和压缩包里都没有才弹框
String checkLicFail = Inter.getLocText("FR-Designer-PluginLicense_Check_Failed");
FRLogger.getLogger().error(checkLicFail);
throw new com.fr.plugin.PluginVerifyException(checkLicFail);
}
}
}
/**
* 获取插件解压的临时文件夹
*
* @return 临时文件
*/
public static File getTempPluginFileDirectory() {
File file = new File(TEMP_PATH);
if (file.isDirectory() && !file.getName().startsWith(".")) {
File[] files = file.listFiles();
if (ArrayUtils.isNotEmpty(files)) {
for (File f : files) {
if (foundConfigFile(f)) {
return f;
}
}
}
}
return null;
}
private static boolean foundConfigFile(File dir) {
if (!dir.isDirectory()) {
return false;
}
File[] files = dir.listFiles();
if (ArrayUtils.isNotEmpty(files)) {
for (File f : files) {
if ("plugin.xml".equals(f.getName())) {
return true;
}
}
}
return false;
}
/**
* 从运行环境中卸载插件
*
* @param env 报表运行环境
* @param plugin 插件
* @return 返回没有删除掉的文件的集合
* @throws Exception 卸载出错的时候抛出此异常
*/
public static String[] uninstallPlugin(Env env, Plugin plugin) throws Exception {
if (plugin == null || env == null) {
return ArrayUtils.EMPTY_STRING_ARRAY;
}
//卸载前监听
plugin.preUninstall();
PluginLoader.getLoader().deletePlugin(plugin);
return env.deleteFileFromPluginAndLibFolder(plugin);
}
/**
* 比较插件的版本这里简单的比价字符串不需要用数字作为标号
* 版本号相同也认为是更新
*
* @param plugin 当前的插件
* @param oldPlugin 老的插件
* @return 当前插件比老的插件版本高则返回true否则返回false
*/
public static boolean isNewThan(Plugin plugin, Plugin oldPlugin) {
return plugin.versionCompareTo(oldPlugin) >= 0;
}
private static String sendInstalledPluginInfo(final Plugin plugin) {
if (StableUtils.isDebug()) {
return "debug status";
}
HashMap<String, String> map = new HashMap<String, String>();
map.put("key", DesignerEnvManager.getEnvManager().getActivationKey());
map.put("detail", plugin.toJSONObject().toString());
map.put("build", GeneralUtils.readBuildNO());
//第三个参数encode, nodejs服务器那边如果参数不encode, 带了空格会报错, 直接用urlconnection也是一样, jetty没能还原.
HttpClient httpClient = new HttpClient(SiteCenter.getInstance().acquireUrlByKind("plugin.install"), map, true);
httpClient.setTimeout(TIME_OUT);
httpClient.asGet();
return httpClient.getResponseText();
}
private static final int TIME_OUT = 5000;
}

46
designer_base/src/com/fr/design/extra/exe/PluginLoginExecutor.java

@ -1,46 +0,0 @@
package com.fr.design.extra.exe;
import com.fr.design.extra.LoginWebBridge;
import com.fr.design.extra.Process;
import com.fr.design.gui.ilable.UILabel;
/**
* Created by Slpire on 2016/11/7.
*/
public class PluginLoginExecutor implements Executor {
private String result = "[]";
private String username;
private String password;
private UILabel uiLabel;
public PluginLoginExecutor(String username, String password, UILabel uiLabel) {
this.username = username;
this.password = password;
this.uiLabel = uiLabel;
}
@Override
public String getTaskFinishMessage() {
return result;
}
@Override
public Command[] getCommands() {
return new Command[] {
new Command() {
@Override
public String getExecuteMessage() {
return null;
}
@Override
public void run(Process<String> process) {
String loginResult = LoginWebBridge.getHelper().login(username, password, uiLabel);
result = loginResult;
}
}
};
}
}

5
designer_base/src/com/fr/design/gui/autocomplete/AutoCompletion.java

@ -20,6 +20,9 @@ import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener; import java.beans.PropertyChangeListener;
import java.util.List; import java.util.List;
import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER;
/** /**
* Adds auto-completion to a text component. Provides a popup window with a * Adds auto-completion to a text component. Provides a popup window with a
* list of auto-complete choices on a given keystroke, such as Crtrl+Space.<p> * list of auto-complete choices on a given keystroke, such as Crtrl+Space.<p>
@ -307,7 +310,7 @@ public class AutoCompletion {
*/ */
public static KeyStroke getDefaultTriggerKey() { public static KeyStroke getDefaultTriggerKey() {
// Default to CTRL, even on Mac, since Ctrl+Space activates Spotlight // Default to CTRL, even on Mac, since Ctrl+Space activates Spotlight
return KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, InputEvent.CTRL_MASK); return KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, DEFAULT_MODIFIER);
} }

8
designer_base/src/com/fr/design/gui/frpane/UIAdvancedTextPane.java

@ -20,6 +20,8 @@ import com.fr.design.actions.UpdateAction;
import com.fr.design.menu.KeySetUtils; import com.fr.design.menu.KeySetUtils;
import com.fr.general.Inter; import com.fr.general.Inter;
import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER;
/** /**
* p:这是一个增强的JTextPane,支持很多Action * p:这是一个增强的JTextPane,支持很多Action
*/ */
@ -143,7 +145,7 @@ public class UIAdvancedTextPane extends UITextPane {
setName(Inter.getLocText("M_Edit-Cut")); setName(Inter.getLocText("M_Edit-Cut"));
setMnemonic('T'); setMnemonic('T');
setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/cut.png")); setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/cut.png"));
setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, KeyEvent.CTRL_MASK)); setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, DEFAULT_MODIFIER));
} }
public void actionPerformed(ActionEvent evt) { public void actionPerformed(ActionEvent evt) {
@ -162,7 +164,7 @@ public class UIAdvancedTextPane extends UITextPane {
this.setName(Inter.getLocText("M_Edit-Copy")); this.setName(Inter.getLocText("M_Edit-Copy"));
this.setMnemonic('C'); this.setMnemonic('C');
this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/copy.png")); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/copy.png"));
this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, KeyEvent.CTRL_MASK)); this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, DEFAULT_MODIFIER));
} }
public void actionPerformed(ActionEvent evt) { public void actionPerformed(ActionEvent evt) {
@ -181,7 +183,7 @@ public class UIAdvancedTextPane extends UITextPane {
this.setName(Inter.getLocText("M_Edit-Paste")); this.setName(Inter.getLocText("M_Edit-Paste"));
this.setMnemonic('P'); this.setMnemonic('P');
this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/paste.png")); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/paste.png"));
this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, KeyEvent.CTRL_MASK)); this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, DEFAULT_MODIFIER));
} }
public void actionPerformed(ActionEvent evt) { public void actionPerformed(ActionEvent evt) {

24
designer_base/src/com/fr/design/gui/icombobox/ExtendedComboBox.java

@ -1,14 +1,24 @@
package com.fr.design.gui.icombobox; package com.fr.design.gui.icombobox;
import javax.swing.*; import com.fr.common.inputevent.InputEventBaseOnOS;
import javax.swing.plaf.ComponentUI;
import javax.swing.plaf.basic.BasicComboPopup; import java.awt.Component;
import javax.swing.plaf.basic.ComboPopup; import java.awt.Dimension;
import java.awt.*; import java.awt.Point;
import java.awt.Rectangle;
import java.awt.event.InputEvent; import java.awt.event.InputEvent;
import java.awt.event.MouseEvent; import java.awt.event.MouseEvent;
import java.util.Vector; import java.util.Vector;
import javax.swing.ComboBoxModel;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JList;
import javax.swing.ListCellRenderer;
import javax.swing.plaf.ComponentUI;
import javax.swing.plaf.basic.BasicComboPopup;
import javax.swing.plaf.basic.ComboPopup;
import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER; import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER;
@ -68,12 +78,12 @@ public class ExtendedComboBox extends UIComboBox {
protected JList createList() { protected JList createList() {
return new JList(comboBox.getModel()) { return new JList(comboBox.getModel()) {
public void processMouseEvent(MouseEvent e) { public void processMouseEvent(MouseEvent e) {
if (e.isControlDown()) { if (InputEventBaseOnOS.isControlDown(e)) {
// Fix for 4234053. Filter out the Control // Fix for 4234053. Filter out the Control
// Key from the list. // Key from the list.
// ie., don't allow CTRL key deselection. // ie., don't allow CTRL key deselection.
e = new MouseEvent((Component) e.getSource(), e.getID(), e.getWhen(), e.getModifiers() e = new MouseEvent((Component) e.getSource(), e.getID(), e.getWhen(), e.getModifiers()
^ InputEvent.CTRL_MASK, e.getX(), e.getY(), e.getClickCount(), e.isPopupTrigger()); ^ DEFAULT_MODIFIER, e.getX(), e.getY(), e.getClickCount(), e.isPopupTrigger());
} }
super.processMouseEvent(e); super.processMouseEvent(e);
} }

33
designer_base/src/com/fr/design/gui/icombobox/UIComboBoxUI.java

@ -1,20 +1,31 @@
package com.fr.design.gui.icombobox; package com.fr.design.gui.icombobox;
import java.awt.Color;
import java.awt.Component;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.RenderingHints;
import java.awt.event.InputEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.*;
import javax.swing.plaf.basic.BasicComboBoxUI;
import javax.swing.plaf.basic.BasicComboPopup;
import javax.swing.plaf.basic.ComboPopup;
import com.fr.common.inputevent.InputEventBaseOnOS;
import com.fr.design.constants.UIConstants; import com.fr.design.constants.UIConstants;
import sun.swing.DefaultLookup;
import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.icontainer.UIScrollPane;
import com.fr.stable.Constants; import com.fr.stable.Constants;
import com.fr.stable.StringUtils; import com.fr.stable.StringUtils;
import sun.swing.DefaultLookup;
import javax.swing.*; import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER;
import javax.swing.plaf.basic.BasicComboBoxUI;
import javax.swing.plaf.basic.BasicComboPopup;
import javax.swing.plaf.basic.ComboPopup;
import java.awt.*;
import java.awt.event.InputEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
/** /**
* @author zhou F * @author zhou F
@ -199,8 +210,8 @@ public class UIComboBoxUI extends BasicComboBoxUI implements MouseListener {
@Override @Override
public void processMouseEvent(MouseEvent e) { public void processMouseEvent(MouseEvent e) {
if (e.isControlDown()) { if (InputEventBaseOnOS.isControlDown(e)) {
e = new MouseEvent((Component) e.getSource(), e.getID(), e.getWhen(), e.getModifiers() ^ InputEvent.CTRL_MASK, e.getX(), e.getY(), e.getClickCount(), e = new MouseEvent((Component) e.getSource(), e.getID(), e.getWhen(), e.getModifiers() ^ DEFAULT_MODIFIER, e.getX(), e.getY(), e.getClickCount(),
e.isPopupTrigger()); e.isPopupTrigger());
} }
super.processMouseEvent(e); super.processMouseEvent(e);

3
designer_base/src/com/fr/design/gui/itable/TableSorter.java

@ -16,6 +16,7 @@ import java.util.Map;
import javax.swing.Icon; import javax.swing.Icon;
import com.fr.common.inputevent.InputEventBaseOnOS;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import javax.swing.JTable; import javax.swing.JTable;
import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelEvent;
@ -393,7 +394,7 @@ public class TableSorter extends AbstractTableModel {
int column = columnModel.getColumn(viewColumn).getModelIndex(); int column = columnModel.getColumn(viewColumn).getModelIndex();
if (column != -1) { if (column != -1) {
int status = getSortingStatus(column); int status = getSortingStatus(column);
if (!e.isControlDown()) { if (!InputEventBaseOnOS.isControlDown(e)) {
cancelSorting(); cancelSorting();
} }
// Cycle the sorting states through {NOT_SORTED, ASCENDING, DESCENDING} or // Cycle the sorting states through {NOT_SORTED, ASCENDING, DESCENDING} or

4
designer_base/src/com/fr/design/gui/itabpane/UITabsHeaderIconPane.java

@ -17,6 +17,8 @@ import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER;
/** /**
* 本来想弄个延迟加载的发现在单元格属性表那边没有意义就算了.这个面板是纯粹的没有与模板的任何交互操作(比如说populate() update()) * 本来想弄个延迟加载的发现在单元格属性表那边没有意义就算了.这个面板是纯粹的没有与模板的任何交互操作(比如说populate() update())
* *
@ -111,7 +113,7 @@ public class UITabsHeaderIconPane extends JPanel implements UITabComponent {
inputMapAncestor.clear(); inputMapAncestor.clear();
actionMap.clear(); actionMap.clear();
inputMapAncestor.put(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.CTRL_MASK), "switch"); inputMapAncestor.put(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, DEFAULT_MODIFIER), "switch");
actionMap.put("switch", new AbstractAction() { actionMap.put("switch", new AbstractAction() {
/** /**

7
designer_base/src/com/fr/design/gui/itextfield/UITextField.java

@ -1,5 +1,6 @@
package com.fr.design.gui.itextfield; package com.fr.design.gui.itextfield;
import com.fr.common.inputevent.InputEventBaseOnOS;
import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameListener;
import com.fr.design.event.GlobalNameObserver; import com.fr.design.event.GlobalNameObserver;
import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserver;
@ -27,26 +28,32 @@ public class UITextField extends JTextField implements UIObserver, GlobalNameObs
public UITextField() { public UITextField() {
super(); super();
InputEventBaseOnOS.addBasicEditInputMap(this);
initListener(); initListener();
} }
public UITextField(int columns) { public UITextField(int columns) {
super(columns); super(columns);
InputEventBaseOnOS.addBasicEditInputMap(this);
initListener(); initListener();
} }
public UITextField(String text, int columns) { public UITextField(String text, int columns) {
super(text, columns); super(text, columns);
InputEventBaseOnOS.addBasicEditInputMap(this);
initListener(); initListener();
} }
public UITextField(String text) { public UITextField(String text) {
super(text); super(text);
InputEventBaseOnOS.addBasicEditInputMap(this);
initListener(); initListener();
} }
public UITextField(Document doc, String text, int columns) { public UITextField(Document doc, String text, int columns) {
super(doc, text, columns); super(doc, text, columns);
InputEventBaseOnOS.addBasicEditInputMap(this);
initListener(); initListener();
} }

95
designer_base/src/com/fr/design/locale/designer.properties

@ -1,3 +1,4 @@
# generated time: \u661F\u671F\u56DB \u5341\u4E00\u6708 24 12:02:51 CST 2016
FR-Designer-BBSLogin_Account= FR-Designer-BBSLogin_Account=
FR-Designer-BBSLogin_Connection-Failure= FR-Designer-BBSLogin_Connection-Failure=
FR-Designer-BBSLogin_Connection-Failure-Tip= FR-Designer-BBSLogin_Connection-Failure-Tip=
@ -11,7 +12,7 @@ FR-Designer-BBSLogin_Switch-Account=
FR-Designer-BBSLogin_Privite-Message= FR-Designer-BBSLogin_Privite-Message=
FR-Designer-BBSLogin_Times= FR-Designer-BBSLogin_Times=
FR-Designer-BBSLogin_Username-Empty-Tip= FR-Designer-BBSLogin_Username-Empty-Tip=
FR-Designer-Basic_More_Color=More colors FR-Designer-Basic_More_Color=
FR-Designer-Estate_Any= FR-Designer-Estate_Any=
FR-Designer-Estate_Default_Font= FR-Designer-Estate_Default_Font=
FR-Designer-Estate_Default_Null= FR-Designer-Estate_Default_Null=
@ -86,18 +87,18 @@ FR-Designer_Currency_Line=
FR-Designer_Current_tab= FR-Designer_Current_tab=
FR-Designer_Custom= FR-Designer_Custom=
FR-Designer_Custom-Angle= FR-Designer_Custom-Angle=
FR-Designer_DS-Dictionary=Dictionary FR-Designer_DS-Dictionary=
FR-Designer_Data-confusion= FR-Designer_Data-confusion=
FR-Designer_Data_Type= FR-Designer_Data_Type=
FR-Designer_Double_Click_Edit_OR_Clear= FR-Designer_Double_Click_Edit_OR_Clear=
FR-Designer_Email=email FR-Designer_Email=
FR-Designer_Enabled= FR-Designer_Enabled=
FR-Designer_End-Date= FR-Designer_End-Date=
FR-Designer_ExportAndOutput= FR-Designer_ExportAndOutput=
FR-Designer_FRFont= FR-Designer_FRFont=
FR-Designer_FS_Close_Other_Templates=close other templates FR-Designer_FS_Close_Other_Templates=
FR-Designer_File=File FR-Designer_File=
FR-Designer_Filter_Conditions=Filter Conditions FR-Designer_Filter_Conditions=
FR-Designer_Finish-Modify-Share= FR-Designer_Finish-Modify-Share=
FR-Designer_Fit= FR-Designer_Fit=
FR-Designer_Fit-App= FR-Designer_Fit-App=
@ -105,7 +106,7 @@ FR-Designer_Font-Family=
FR-Designer_Font-Size= FR-Designer_Font-Size=
FR-Designer_Forbid_Drag_into_Adapt_Pane=Forbid Drag into Para Pane FR-Designer_Forbid_Drag_into_Adapt_Pane=Forbid Drag into Para Pane
FR-Designer_Forbid_Drag_into_Para_Pane=Forbid Drag into Para Pane FR-Designer_Forbid_Drag_into_Para_Pane=Forbid Drag into Para Pane
FR-Designer_Foreground=Foreground FR-Designer_Foreground=
FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=Form authority editing can not be supported FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=Form authority editing can not be supported
FR-Designer_Form-Report= FR-Designer_Form-Report=
FR-Designer_Form_EmbeddedTD= FR-Designer_Form_EmbeddedTD=
@ -116,12 +117,12 @@ FR-Designer_Forum=
FR-Designer_Get-Cube= FR-Designer_Get-Cube=
FR-Designer_Help= FR-Designer_Help=
FR-Designer_Hide= FR-Designer_Hide=
FR-Designer_Hyperlink=Hyperlink FR-Designer_Hyperlink=
FR-Designer_Hyperlink-Form_link= FR-Designer_Hyperlink-Form_link=
FR-Designer_IDCard= FR-Designer_IDCard=
FR-Designer_Icon= FR-Designer_Icon=
FR-Designer_Index= FR-Designer_Index=
FR-Designer_Input_Rule=Input Rule FR-Designer_Input_Rule=
FR-Designer_Language_Default= FR-Designer_Language_Default=
FR-Designer_Layout= FR-Designer_Layout=
FR-Designer_Layout-HBox= FR-Designer_Layout-HBox=
@ -142,7 +143,7 @@ FR-Designer_M_Help-Tutorial=
FR-Designer_Max_Value= FR-Designer_Max_Value=
FR-Designer_Min_Value= FR-Designer_Min_Value=
FR-Designer_MobilePhone= FR-Designer_MobilePhone=
FR-Designer_New_Value=New_Value FR-Designer_New_Value=
FR-Designer_None= FR-Designer_None=
FR-Designer_PaperSize-Mobile= FR-Designer_PaperSize-Mobile=
FR-Designer_PaperSize-Mobile-Large= FR-Designer_PaperSize-Mobile-Large=
@ -151,12 +152,12 @@ FR-Designer_Para-Body=
FR-Designer_Parameters= FR-Designer_Parameters=
FR-Designer_Phone= FR-Designer_Phone=
FR-Designer_PostCode= FR-Designer_PostCode=
FR-Designer_Present=Present FR-Designer_Present=
FR-Designer_Preview=Preview FR-Designer_Preview=
FR-Designer_Preview-Data-Confusion= FR-Designer_Preview-Data-Confusion=
FR-Designer_Product_Demo= FR-Designer_Product_Demo=
FR-Designer_Query_Type= FR-Designer_Query_Type=
FR-Designer_Refresh=Refresh FR-Designer_Refresh=
FR-Designer_Refresh_Parameter_In_SQL= FR-Designer_Refresh_Parameter_In_SQL=
FR-Designer_Reg_Expressions= FR-Designer_Reg_Expressions=
FR-Designer_Reg_Max_Length= FR-Designer_Reg_Max_Length=
@ -194,8 +195,8 @@ FR-Designer_Vertical-RightToLeft=
FR-Designer_VerticalBoxLayout= FR-Designer_VerticalBoxLayout=
FR-Designer_Visible= FR-Designer_Visible=
FR-Designer_WLayout-Border-ToolTips= FR-Designer_WLayout-Border-ToolTips=
FR-Designer_WaterMark=WaterMark FR-Designer_WaterMark=
FR-Designer_Widget=Widget FR-Designer_Widget=
FR-Designer_Widget-Settings= FR-Designer_Widget-Settings=
FR-Designer_Widget-Visible= FR-Designer_Widget-Visible=
FR-Designer_XMLA_Explain= FR-Designer_XMLA_Explain=
@ -400,14 +401,14 @@ FR-Designer_Choose_Language=
FR-Designer_Work_After_Restart_Designer= FR-Designer_Work_After_Restart_Designer=
FR-Designer_Setting-Ruler-Units= FR-Designer_Setting-Ruler-Units=
FR-Designer_PageSetup-mm= FR-Designer_PageSetup-mm=
FR-Designer_Unit_CM=CM FR-Designer_Unit_CM=
FR-Designer_Page-Setup-Scale-Units= FR-Designer_Page-Setup-Scale-Units=
FR-Designer_Report-Design-Ruler-Units= FR-Designer_Report-Design-Ruler-Units=
FR-Designer_Web_Preview_Port_Setting= FR-Designer_Web_Preview_Port_Setting=
FR-Designer_Designer_Language= FR-Designer_Designer_Language=
FR-Designer_Unit_INCH=INCH FR-Designer_Unit_INCH=
FR-Designer_Web_Preview_Port= FR-Designer_Web_Preview_Port=
FR-Designer_Unit_PT=PT FR-Designer_Unit_PT=
FR-Designer-Write_Auto_Stash=auto stash FR-Designer-Write_Auto_Stash=auto stash
FR-Designer_Printer_Native_Button= FR-Designer_Printer_Native_Button=
FR-Designer_Event_ShowWidgets= FR-Designer_Event_ShowWidgets=
@ -482,10 +483,10 @@ FR-Designer_Browser_Background=Browser Background
FR-Designer_Import_Css=Import Css FR-Designer_Import_Css=Import Css
FR-Designer_Import_JavaScript=Import JavaScript FR-Designer_Import_JavaScript=Import JavaScript
FR-Designer-Datasource-Param_DES=<html>&nbsp;you can type "${abc}" as a parameter, here, abc is a parameter name. <br/>&nbsp;for example\: select * from table where id\=${abc}.<br/>&nbsp;select * from table where id\='${abc}'.(if the field id is typeof string)</html> FR-Designer-Datasource-Param_DES=<html>&nbsp;you can type "${abc}" as a parameter, here, abc is a parameter name. <br/>&nbsp;for example\: select * from table where id\=${abc}.<br/>&nbsp;select * from table where id\='${abc}'.(if the field id is typeof string)</html>
FR-Designer-DS-Database_Query=Database Query FR-Designer-DS-Database_Query=
FR-Designer_Is_Share_DBTableData=Is_Share_DBTableData FR-Designer_Is_Share_DBTableData=
FR-Designer-LayerPageReport_PageQuery=Query for page FR-Designer-LayerPageReport_PageQuery=
FR-Designer-LayerPageReport_Define_PageQuerySQL=Define sql for page FR-Designer-LayerPageReport_Define_PageQuerySQL=
FR-Designer_Event= FR-Designer_Event=
FR-Designer_Properties= FR-Designer_Properties=
FR-Designer_Permissions_Edition=Permissions Edition FR-Designer_Permissions_Edition=Permissions Edition
@ -511,7 +512,7 @@ FR-Designer_Attribute=
FR-Designer_Form_Editing_Listeners= FR-Designer_Form_Editing_Listeners=
FR-Designer_Form_Basic_Properties= FR-Designer_Form_Basic_Properties=
FR-Designer_DS_Dictionary= FR-Designer_DS_Dictionary=
FR-Designer_Create_Tree=Create Tree FR-Designer_Create_Tree=
FR-Designer_Set_Callback_Function= FR-Designer_Set_Callback_Function=
FR-Designer_ConfirmDialog_Content= FR-Designer_ConfirmDialog_Content=
FR-Designer_ConfirmDialog_Title= FR-Designer_ConfirmDialog_Title=
@ -542,7 +543,6 @@ FR-Designer_Allow_Null=Allow null
FR-Designer_PageSetup_Page=Page FR-Designer_PageSetup_Page=Page
FR-Designer_Custom_Job_Description=Description FR-Designer_Custom_Job_Description=Description
FR-Designer_Property=Property FR-Designer_Property=Property
FR-Designer_ClassName=Class Name
FR-Designer_Polyblock_Edit=Polyblock Edit 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_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 FR-Designer_PageSetup_Horizontal=Horizontal
@ -557,7 +557,7 @@ FR-Designer_Auto_Adjust_Size=Auto adjust
FR-Designer_Show_As_Download=Display the binary content using download link FR-Designer_Show_As_Download=Display the binary content using download link
FR-Designer_File_Name_For_Download=File Name For Download FR-Designer_File_Name_For_Download=File Name For Download
FR-Designer_No=No FR-Designer_No=No
FR-Designer_Pagination=Pagination FR-Designer_Pagination=Page Break
FR-Designer_DS_TableData=Data Set FR-Designer_DS_TableData=Data Set
FR-Designer_Parameter-Formula=Formula FR-Designer_Parameter-Formula=Formula
FR-Designer_Plugin_Should_Update_Please_Contact_Developer=Plugin version is too low, and is not compatible with current API. Please contact the developer to update. FR-Designer_Plugin_Should_Update_Please_Contact_Developer=Plugin version is too low, and is not compatible with current API. Please contact the developer to update.
@ -844,7 +844,6 @@ PageSetup-Placement_Center_on_Page=Page Center
sure_to_delete=sure to delete sure_to_delete=sure to delete
Already_exists_not_add_repeat=Already exists, do not add repeat Already_exists_not_add_repeat=Already exists, do not add repeat
Axis_Title=Axis title Axis_Title=Axis title
FR-Designer-Plugin_Install_Failed=Install failed
FR-Designer-Widget-Style_Frame= FR-Designer-Widget-Style_Frame=
MainGraduationUnit=MainGraduationUnit MainGraduationUnit=MainGraduationUnit
Second_Axis=Second Axis Second_Axis=Second Axis
@ -857,7 +856,7 @@ RP_Authority_Edit=Authority
Warnning=Warning Warnning=Warning
RoleName_Can_Not_Be_Null=RoleName_Can_Not_Be_Null RoleName_Can_Not_Be_Null=RoleName_Can_Not_Be_Null
Application=Applications Application=Applications
Formula_Dictionary_Display_Examples_Html=<html>the real value is \=range(100), the real value($$$)'s display value is \=0 - $$$, <br>the result is 1, 2, ..., 100 and -1, -2, ..., -100.<br></html> Formula_Dictionary_Display_Examples_Html=<html>the real value is \
ECP-error_pwd= ECP-error_pwd=
FR-Hyperlink_ChartHyperlink= FR-Hyperlink_ChartHyperlink=
M_Edit-FormatBrush=Format Painter M_Edit-FormatBrush=Format Painter
@ -988,7 +987,7 @@ Background-Background_is_NULL=No Background
FR-Designer_Sytle-FRFont=Font FR-Designer_Sytle-FRFont=Font
Gradation=Gradation Gradation=Gradation
The_current_list_is_empty=The current list is empty The_current_list_is_empty=The current list is empty
Formula_Dictionary_Display_Examples=the real value is \=range(100), the real value($$$)'s display value is \=0 - $$$, \nthe result is 1, 2, ..., 100 and -1, -2, ..., -100. Formula_Dictionary_Display_Examples=the real value is \
Schedule-Template_Parameter=Template Parameter Schedule-Template_Parameter=Template Parameter
JSShow=Show In Action JSShow=Show In Action
Level_coordinates=Level coordinates Level_coordinates=Level coordinates
@ -1370,7 +1369,7 @@ Not_Exsit=not exist in WorkSheet.
Utils-Insert_Row=Insert Row Utils-Insert_Row=Insert Row
Utils-Delete_Row=Delete Row Utils-Delete_Row=Delete Row
not_support_authority_edit=this element does not support authority edit not_support_authority_edit=this element does not support authority edit
Formula_Tips=The formula must be from the beginning of the "\="\! Formula_Tips=The formula must be from the beginning of the "\
FR-Action_Copy= FR-Action_Copy=
Compile_Success=Compile Success Compile_Success=Compile Success
BackgroundTexture-RecycledPaper=Recycled Paper BackgroundTexture-RecycledPaper=Recycled Paper
@ -1535,7 +1534,7 @@ FR-Designer_Cancel=
Button-Group-Display-Columns=Display Column Count Button-Group-Display-Columns=Display Column Count
Widget-Height=Height Widget-Height=Height
Examples=Examples Examples=Examples
Formula_Dictionary_Display_Example=the real value is \=range(100), the real value($$$)'s display value is \=0 - $$$, \nthe result is 1, 2, ..., 100 and -1, -2, ..., -100. Formula_Dictionary_Display_Example=the real value is \
StyleAlignment-Horizontal=Horizontal StyleAlignment-Horizontal=Horizontal
HyperLink_Must_Alone_Reset=HyperLink_Must_Alone_Reset HyperLink_Must_Alone_Reset=HyperLink_Must_Alone_Reset
ExpandD-Expand_Direction=Display Data Direction ExpandD-Expand_Direction=Display Data Direction
@ -1986,18 +1985,24 @@ FR-Designer_Role=Role
FR-Designer_Permissions=Permissions FR-Designer_Permissions=Permissions
FR-Designer_Form_Button=Button FR-Designer_Form_Button=Button
FR-Designer_WF_Name=Name FR-Designer_WF_Name=Name
FR-Designer_Double=Double FR-Designer_ClassName=Class Name
FR-Designer_Query= FR-Designer_AlphaFine_Enable=Enable
FR-Designer_Font=Font FR-Designer_AlphaFine_EnableAlphaFine=FR-Designer_AlphaFine_EnableAlphaFine
FR-Designer_Confirm= FR-Designer_AlphaFine_EnableInternet=Designer_AlphaFine_EnableInternet
FR-Designer_Parameter= FR-Designer_AlphaFine_EnableInternetSearch=SearchOnLine
FR-Designer-Plugin_Plugin=Plugin FR-Designer_AlphaFine_Shortcut_Config=Shortcut Config
FR-Designer_Background=Background FR-Designer_AlphaFine_SearchRange=Search Range
Template=Template FR-Designer_AlphaFine_Recommend=Recommend
FR-Designer-Plugin_Addon=Plugin Addon
FR-Designer_Parent_Marked_Field=Parent Marked Field FR-Designer_Templates=FR-Designer_Templates
FR-Designer_Original_Marked_Filed=Original Marked Filed FR-Designer_Templates_Content=Templates Contents
FR-Designer_Build_Tree_Accord_Parent_Marked_Filed=Build Tree according parent's marked filed FR-Designer_AlphaFine_ShowAll=show all
FR-Designer_Build_Tree_Accord_Marked_Filed_Length=Build Tree according marked filed's length FR-Designer_AlphaFine_Latest=Latest
FR-Product_Demo=Demo FR-Designer_AlphaFine_ShowLess=show less
FR-Designer_Tree_Data_Field=Tree Data Field FR-Designer_Alphafine=AlphaFine
FR-Designer-Alphafine_No_Remind=
<<<<<<< HEAD
FR-Designer_AlphaFine_NoResult=no results
FR-Designer_ConnectionFailed=connection failed
FR-Designer_NoResult=No results
FR-Designer-AlphaFine_SetShortcuts=

156
designer_base/src/com/fr/design/locale/designer_en_US.properties

@ -1,3 +1,4 @@
# generated time: \u661F\u671F\u56DB \u5341\u4E00\u6708 24 12:02:51 CST 2016
FR-Designer-BBSLogin_Account=User name FR-Designer-BBSLogin_Account=User name
FR-Designer-BBSLogin_Connection-Failure=Connection failure, check your network status FR-Designer-BBSLogin_Connection-Failure=Connection failure, check your network status
FR-Designer-BBSLogin_Connection-Failure-Tip=Tip FR-Designer-BBSLogin_Connection-Failure-Tip=Tip
@ -8,19 +9,19 @@ FR-Designer-BBSLogin_Password=Password
FR-Designer-BBSLogin_Password-Empty-Tip=Password can not be null FR-Designer-BBSLogin_Password-Empty-Tip=Password can not be null
FR-Designer-BBSLogin_Register-Account=Register Account FR-Designer-BBSLogin_Register-Account=Register Account
FR-Designer-BBSLogin_Switch-Account=Switch Account FR-Designer-BBSLogin_Switch-Account=Switch Account
FR-Designer-BBSLogin_Privite-Message=Private Message FR-Designer-BBSLogin_Privite-Message=Privite Message
FR-Designer-BBSLogin_Times=times FR-Designer-BBSLogin_Times=times
FR-Designer-BBSLogin_Username-Empty-Tip=User name can not be null FR-Designer-BBSLogin_Username-Empty-Tip=User name can not be null
FR-Designer-Basic_More_Color=More colors FR-Designer-Basic_More_Color=More Color...
FR-Designer-Estate_Any=Any FR-Designer-Estate_Any=Any
FR-Designer-Estate_Default_Font=Default font FR-Designer-Estate_Default_Font=Default font
FR-Designer-Estate_Default_Null=Default null FR-Designer-Estate_Default_Null=Default null
FR-Designer-Estate_Default_Text=Default FR-Designer-Estate_Default_Text=Default
FR-Designer-Estate_Parameter_Null_Text=Parameter is null, then display as FR-Designer-Estate_Parameter_Null_Text=Parameter is null, then display as
FR-Designer-Estate_Radio-Group=Common button group controls of real estate FR-Designer-Estate_Radio-Group=Common button group controls of real estate
FR-Designer-Estate_Selected_Font=Selected font FR-Designer-Estate_Selected_Font=Selected font
FR-Designer-Estate_Widget_Value=Control value FR-Designer-Estate_Widget_Value=Control value
FR-Designer-Layout_Adaptive_Layout=Adaptive Layout FR-Designer-Layout_Adaptive_Layout=Adaptive layout
FR-Designer-Output_Background_Set=Background set FR-Designer-Output_Background_Set=Background set
FR-Designer-Output_Default_Background=Default background FR-Designer-Output_Default_Background=Default background
FR-Designer-Output_Excel_Page=Excel Export(page break) FR-Designer-Output_Excel_Page=Excel Export(page break)
@ -28,7 +29,7 @@ FR-Designer-Output_Excel_Sheet=Excel Export(one page per sheet)
FR-Designer-Output_Excel_Simple=Excel Export(original) FR-Designer-Output_Excel_Simple=Excel Export(original)
FR-Designer-Plugin_PluginMarket_Coding=Plugin store is developing, stay tuned FR-Designer-Plugin_PluginMarket_Coding=Plugin store is developing, stay tuned
FR-Desinger-Plugin_Updater_UpdateAndUpgrade=Update&Upgrade FR-Desinger-Plugin_Updater_UpdateAndUpgrade=Update&Upgrade
FR-Desinger-Plugin_Updater_Checking_Jar_Update=Checking JARpackage update FR-Desinger-Plugin_Updater_Checking_Jar_Update=Checking jarpackage update
FR-Desinger-Plugin_Updater_Checking_Version_Update=Checking version update FR-Desinger-Plugin_Updater_Checking_Version_Update=Checking version update
FR-Desinger-Plugin_Updater_Update=update FR-Desinger-Plugin_Updater_Update=update
FR-Desinger-Plugin_Updater_Upgrade=upgrade FR-Desinger-Plugin_Updater_Upgrade=upgrade
@ -67,7 +68,7 @@ FR-Designer_Block-intersect=The overlap between block and block is prohibited
FR-Designer_BorderLayout=BorderLayout FR-Designer_BorderLayout=BorderLayout
FR-Designer_Button-Hotkeys=Hotkeys FR-Designer_Button-Hotkeys=Hotkeys
FR-Designer_Button-Icon=Button Icon FR-Designer_Button-Icon=Button Icon
FR-Designer_Button-Name=Button Name FR-Designer_Button-Name=Button Name
FR-Designer_Button-Type=Button Type FR-Designer_Button-Type=Button Type
FR-Designer_CardLayout=TabLayout FR-Designer_CardLayout=TabLayout
FR-Designer_Cell=cell FR-Designer_Cell=cell
@ -90,20 +91,20 @@ FR-Designer_DS-Dictionary=Data Dictionary
FR-Designer_Data-confusion=Data Confusion FR-Designer_Data-confusion=Data Confusion
FR-Designer_Data_Type=Data type FR-Designer_Data_Type=Data type
FR-Designer_Double_Click_Edit_OR_Clear=Double Click to Edit or Clear FR-Designer_Double_Click_Edit_OR_Clear=Double Click to Edit or Clear
FR-Designer_Email=Email FR-Designer_Email=Mail
FR-Designer_Enabled=Enabled FR-Designer_Enabled=Enabled
FR-Designer_End-Date=End Date FR-Designer_End-Date=End Date
FR-Designer_ExportAndOutput=Export FR-Designer_ExportAndOutput=Export
FR-Designer_FRFont=Font FR-Designer_FRFont=Font
FR-Designer_FS_Close_Other_Templates=Close other templates FR-Designer_FS_Close_Other_Templates=Close other templates
FR-Designer_File=File FR-Designer_File=file
FR-Designer_Filter_Conditions=Filter Conditions FR-Designer_Filter_Conditions=Filter condition
FR-Designer_Finish-Modify-Share=Finish Modification And Share FR-Designer_Finish-Modify-Share=Finish Modification And Share
FR-Designer_Fit-App=App self-adaption FR-Designer_Fit-App=App self-adaption
FR-Designer_Fit=self-adaption FR-Designer_Fit=self-adaption
FR-Designer_Font-Family=Font name FR-Designer_Font-Family=Font name
FR-Designer_Font-Size=Font size FR-Designer_Font-Size=Font size
FR-Designer_Forbid_Drag_into_Adapt_Pane=Form body cannot be dragged into the object FR-Designer_Forbid_Drag_into_Adapt_Pane=Form body cannot be dragged into the object
FR-Designer_Forbid_Drag_into_Para_Pane=The object cannot be dragged into the parameter panel FR-Designer_Forbid_Drag_into_Para_Pane=The object cannot be dragged into the parameter panel
FR-Designer_Foreground=Foreground FR-Designer_Foreground=Foreground
FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=Form permissions edition is not supported FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=Form permissions edition is not supported
@ -134,7 +135,7 @@ FR-Designer_M-Help=Help
FR-Designer_M-Insert=Insert FR-Designer_M-Insert=Insert
FR-Designer_M-Repeat-Freeze=Duplicate and freeze FR-Designer_M-Repeat-Freeze=Duplicate and freeze
FR-Designer_M-Server=Server FR-Designer_M-Server=Server
FR-Designer_M-SwitchWorkspace=Switch Working Directory FR-Designer_M-SwitchWorkspace=Switch Working Directory
FR-Designer_M-Template=Template FR-Designer_M-Template=Template
FR-Designer_MDX_Explain=Syntax Reference MDX syntax.\nFor example\:\nWITH\nMEMBER [Measures].[Special Discount] AS\n[Measures].[Discount Amount] * 1.5\nSELECT\n[Measures].[Special Discount] on COLUMNS,\nNON EMPTY [Product].[Product].MEMBERS ON Rows\nFROM [Adventure Works]\nWHERE [Product].[Category].[Bikes]\nNOTE\: COLUMNS, ROWS can be replaced by 0,1, the query axis only supports returning two axis FR-Designer_MDX_Explain=Syntax Reference MDX syntax.\nFor example\:\nWITH\nMEMBER [Measures].[Special Discount] AS\n[Measures].[Discount Amount] * 1.5\nSELECT\n[Measures].[Special Discount] on COLUMNS,\nNON EMPTY [Product].[Product].MEMBERS ON Rows\nFROM [Adventure Works]\nWHERE [Product].[Category].[Bikes]\nNOTE\: COLUMNS, ROWS can be replaced by 0,1, the query axis only supports returning two axis
FR-Designer_M_Help-About_Software=About software FR-Designer_M_Help-About_Software=About software
@ -142,7 +143,7 @@ FR-Designer_M_Help-Tutorial=Help tutorial
FR-Designer_Max_Value=max value FR-Designer_Max_Value=max value
FR-Designer_Min_Value=min value FR-Designer_Min_Value=min value
FR-Designer_MobilePhone=Mobile phone FR-Designer_MobilePhone=Mobile phone
FR-Designer_New_Value=New Value FR-Designer_New_Value=new value
FR-Designer_None=none FR-Designer_None=none
FR-Designer_PaperSize-Mobile=Mobile FR-Designer_PaperSize-Mobile=Mobile
FR-Designer_PaperSize-Mobile-Large=Large screen FR-Designer_PaperSize-Mobile-Large=Large screen
@ -151,7 +152,7 @@ FR-Designer_Para-Body=Parameter interface
FR-Designer_Parameters=Parameters FR-Designer_Parameters=Parameters
FR-Designer_Phone=Phone FR-Designer_Phone=Phone
FR-Designer_PostCode=Postcode FR-Designer_PostCode=Postcode
FR-Designer_Present=Present FR-Designer_Present=present
FR-Designer_Preview=Preview FR-Designer_Preview=Preview
FR-Designer_Preview-Data-Confusion=Preview Data After Confusion FR-Designer_Preview-Data-Confusion=Preview Data After Confusion
FR-Designer_Product_Demo=Demo FR-Designer_Product_Demo=Demo
@ -161,7 +162,7 @@ FR-Designer_Refresh_Parameter_In_SQL=Whether to refresh parameters in the SQL
FR-Designer_Reg_Expressions=Regular expressions FR-Designer_Reg_Expressions=Regular expressions
FR-Designer_Reg_Max_Length=max length FR-Designer_Reg_Max_Length=max length
FR-Designer_Reg_Min_Length=min length FR-Designer_Reg_Min_Length=min length
FR-Designer_ReportColumns-Columns=Fixed columns per line FR-Designer_ReportColumns-Columns=Multi-columns/lines
FR-Designer_Return-Date=Return Date FR-Designer_Return-Date=Return Date
FR-Designer_RichText=Insert Rich Text FR-Designer_RichText=Insert Rich Text
FR-Designer_RichTextEditor=Rich Text Editor FR-Designer_RichTextEditor=Rich Text Editor
@ -172,7 +173,7 @@ FR-Designer_Search=Search
FR-Designer_Set=Set FR-Designer_Set=Set
FR-Designer_Share-Template=Share Template FR-Designer_Share-Template=Share Template
FR-Designer_Simple_general=Simple custom query FR-Designer_Simple_general=Simple custom query
FR-Designer_Song_TypeFace=Song TypeFace FR-Designer_Song_TypeFace=Song typeface
FR-Designer_Start-Date=Start Date FR-Designer_Start-Date=Start Date
FR-Designer_Subscript=Subscript FR-Designer_Subscript=Subscript
FR-Designer_Superscript=Superscript FR-Designer_Superscript=Superscript
@ -181,7 +182,7 @@ FR-Designer_Swatch=Sample
FR-Designer_Tab_title=Tab title FR-Designer_Tab_title=Tab title
FR-Designer_TableData=Data set FR-Designer_TableData=Data set
FR-Designer_Thank_guest=Special thanks to FR-Designer_Thank_guest=Special thanks to
FR-Designer_Thanks-To=Thanks To FR-Designer_Thanks-To=Thanks
FR-Designer_Title=Title FR-Designer_Title=Title
FR-Designer_Total=Total FR-Designer_Total=Total
FR-Designer_UnSignIn=Not Sign In FR-Designer_UnSignIn=Not Sign In
@ -239,7 +240,7 @@ FR-Designer_Refresh_Successfully=Refresh successfully
FR-Designer_SQL-Table=Tab FR-Designer_SQL-Table=Tab
FR-Designer_SQL-View=View FR-Designer_SQL-View=View
FR-Designer_Failed=Failed FR-Designer_Failed=Failed
FR-Designer_Chart_Field_Name=Field Name FR-Designer_Chart_Field_Name=FieldName
FR-Designer_FormulaD-Text=Text FR-Designer_FormulaD-Text=Text
FR-Designer_FormulaD-Logical=Logical Function FR-Designer_FormulaD-Logical=Logical Function
FR-Designer_FormulaD-Array=Array FR-Designer_FormulaD-Array=Array
@ -248,13 +249,13 @@ FR-Designer_FormulaD-Other=Other Functions
FR-Designer_FormulaD-All=All Functions FR-Designer_FormulaD-All=All Functions
FR-Designer_Function=Function FR-Designer_Function=Function
FR-Designer_Select=Sel FR-Designer_Select=Sel
FR-Designer_Edit=Edt FR-Designer_Edit=Edit
FR-Designer_Description=Description FR-Designer_Description=Description
FR-Designer_Role_changed_isRefresh=Roles change, whether to refresh FR-Designer_Role_changed_isRefresh=Roles change, whether to refresh
FR-Designer_FS_Name=FineBI FR-Designer_FS_Name=FineBI
FR-Designer_Datasource-Parameter=Datasource Parameter FR-Designer_Datasource-Parameter=Datasource Parameter
FR-Designer_Tree-ComboBox=Drop-down Tree FR-Designer_Tree-ComboBox=Tree Combobox
FR-Designer_Form-Iframe=WebView FR-Designer_Form-Iframe=Iframe
FR-Designer_Type=Type FR-Designer_Type=Type
FR-Designer_User-defined=User_defined FR-Designer_User-defined=User_defined
FR-Designer_Simple_general_forV6=Simple general for Version6+ FR-Designer_Simple_general_forV6=Simple general for Version6+
@ -266,11 +267,11 @@ FR-Designer_Parameters_name=parameters name
FR-Designer_SAP_datatype=SAP datatype FR-Designer_SAP_datatype=SAP datatype
FR-Designer_Return_set_name=Return set FR-Designer_Return_set_name=Return set
FR-Designer_Datatype=Datatype FR-Designer_Datatype=Datatype
FR-Designer_Corre_parameter=Corresponding parameter FR-Designer_Corre_parameter=Corresponse parameter
FR-Designer_Default_value=Default value FR-Designer_Default_value=Default value
FR-Designer_SAP_column_name=Column name FR-Designer_SAP_column_name=Column name
FR-Designer_Table_name=Table name FR-Designer_Table_name=Table name
FR-Designer_Columns_choosed=Columns chosen FR-Designer_Columns_choosed=Columns choosed
FR-Designer_Where_claus=Where claus FR-Designer_Where_claus=Where claus
FR-Designer_PreStyle=Pre Style FR-Designer_PreStyle=Pre Style
FR-Designer_Loading=Loading FR-Designer_Loading=Loading
@ -286,18 +287,18 @@ FR-Designer_file-is-locked=File is locked by others.
FR-Designer_Custom_Icon_Message1=The 16 * 16 standard PNG image is better. FR-Designer_Custom_Icon_Message1=The 16 * 16 standard PNG image is better.
FR-Designer_Add=Add FR-Designer_Add=Add
FR-Designer_Custom_Icon_Message2=The icon name is already exist or your operation is unreasonable. FR-Designer_Custom_Icon_Message2=The icon name is already exist or your operation is unreasonable.
FR-Designer_Tooltips=Tip FR-Designer_Tooltips=Tooltips
FR-Designer_Remove=Delete FR-Designer_Remove=Remove
FR-Designer_Custom_Icon_SelectIcon=Select icon FR-Designer_Custom_Icon_SelectIcon=Select icon
FR-Designer_Click_this_button=Click this button to set path FR-Designer_Click_this_button=Click this button to set path
FR-Designer_Custom_Icon_Message3=The icon name is already exist. FR-Designer_Custom_Icon_Message3=The icon name is already exist.
FR-Designer_Set_default_browser=Cannot find the default browser, please set default browser in Internet options . FR-Designer_Set_default_browser=Cannot find the default browser, please set default browser in Intenet options .
FR-Designer_Open=Open FR-Designer_Open=Open
FR-Designer_Utils-OpenDemoEnv=To open the demo, it needs to switch to the workspace\: FR-Designer_Utils-OpenDemoEnv=To open the demo, it needs to switch to the workspace\:
FR-Designer_Utils-switch=\nThe current unsaved editing files will be saved under current environment?\nGo on? FR-Designer_Utils-switch=\nThe current unsaved editing files will be saved under current environment?\nGo on?
FR-Designer_Utils-NewDemoEnv=To open the demo,it needs to create the workspace\: FR-Designer_Utils-NewDemoEnv=To open the demo,it needs to create the workspace\:
FR-Designer_Save_As_Global_Style=Save as Global Style FR-Designer_Save_As_Global_Style=Save as Global Style
FR-Designer_Input_The_Name_Of_Gloabel_Style=Input the name of global style FR-Designer_Input_The_Name_Of_Gloabel_Style=Input the name of gloabel style
FR-Designer_This_Name_Has_Exsit=This name has existed FR-Designer_This_Name_Has_Exsit=This name has existed
FR-Designer_Shortcut_Set=Shortcut Setting FR-Designer_Shortcut_Set=Shortcut Setting
FR-Designer_Feature_Name=Feature Name\: FR-Designer_Feature_Name=Feature Name\:
@ -330,7 +331,7 @@ FR-Designer_Event_Set=Event Setup
FR-Designer_Blow_set=Following Settings FR-Designer_Blow_set=Following Settings
FR-Designer_I_Want_To_Set_Single=Individually set for the report FR-Designer_I_Want_To_Set_Single=Individually set for the report
FR-Designer_Using_Server_Report_View_Settings=Use server report settings FR-Designer_Using_Server_Report_View_Settings=Use server report settings
FR-Designer_ErrorHandlerTemplate=Error Template Definition FR-Designer_ErrorHandlerTemplate=Error Template Definition
FR-Designer_Save_Path=Save Path FR-Designer_Save_Path=Save Path
FR-Designer-Collect_OSXTips=Tip\: Press control + v to paste the activation code FR-Designer-Collect_OSXTips=Tip\: Press control + v to paste the activation code
FR-Designer_X_Coordinate=Abscissa FR-Designer_X_Coordinate=Abscissa
@ -356,7 +357,7 @@ FR-Designer-Series_Dismenber_As_Single=Regard consecutive separators as one
FR-Designer_KeyPoint=KeyPoint FR-Designer_KeyPoint=KeyPoint
FR-Designer_loadedTreeModel=loadedTreeModel FR-Designer_loadedTreeModel=loadedTreeModel
FR-Designer-Failed_to_load_the_plugin=Failed to load the plugin\uFF0Cplease update the plugin\: FR-Designer-Failed_to_load_the_plugin=Failed to load the plugin\uFF0Cplease update the plugin\:
FR-Designer-Plugin_Please_Update_Jar=Please Update Jar To\: FR-Designer-Plugin_Please_Update_Jar=Please Update Jar
FR-Designer-Invalid_Page_Number=Invalid Page Number FR-Designer-Invalid_Page_Number=Invalid Page Number
FR-Designer_XMLA_Database=DB FR-Designer_XMLA_Database=DB
FR-Designer_XMLA_UserName=User name FR-Designer_XMLA_UserName=User name
@ -379,7 +380,7 @@ FR-Designer_Clear_All=Clear All
FR-Designer_Log=Log FR-Designer_Log=Log
FR-Designer-Plugin_Expire_Dialog_Title=Plug expired FR-Designer-Plugin_Expire_Dialog_Title=Plug expired
FR-Designer-Plugin_Expire_Dialog_Text=Plugin expired, go sail soft application center to make a purchase. FR-Designer-Plugin_Expire_Dialog_Text=Plugin expired, go sail soft application center to make a purchase.
FR-Designer-Plugin_Finerest_Addon=Fanruan Plugins FR-Designer-Plugin_Finerest_Addon=Fineres Addon
FR-Designer_Performance_First=Performance First FR-Designer_Performance_First=Performance First
FR-Designer_Total_N_Grade=Total\:${N}Layer FR-Designer_Total_N_Grade=Total\:${N}Layer
FR-Designer-BBSLogin_Login-Title=BBS Login FR-Designer-BBSLogin_Login-Title=BBS Login
@ -392,7 +393,7 @@ FR-Designer_Product_improve=Product improvement
FR-Designer_Join_Product_improve=Join product improvement plan FR-Designer_Join_Product_improve=Join product improvement plan
FR-Designer_Preference-Function=Function FR-Designer_Preference-Function=Function
FR-Designer_max_undo_limit=Max FR-Designer_max_undo_limit=Max
FR-Designer_Surport_String_To_Formula=Support String To Formula FR-Designer_Surport_String_To_Formula=Surport String To Formula
FR-Designer_Always=Default execute this operation FR-Designer_Always=Default execute this operation
FR-Designer_Export_Setting=Export Configuration FR-Designer_Export_Setting=Export Configuration
FR-Designer_Select_Export_Log_Directory=Select Export Log Directory FR-Designer_Select_Export_Log_Directory=Select Export Log Directory
@ -530,7 +531,7 @@ FR-Designer_Select_panel=Sel
FR-Designer_LayoutTable_Column_Width=250 FR-Designer_LayoutTable_Column_Width=250
FR-Designer_Set_BG_Of_Current_Row=Set BG of the row being edited FR-Designer_Set_BG_Of_Current_Row=Set BG of the row being edited
FR-Designer_Unload_Check=Prompt users when leave without submitting FR-Designer_Unload_Check=Prompt users when leave without submitting
FR-Designer_ReportColumns_Columns_Optional=Multi-column/row FR-Designer_ReportColumns_Columns_Optional=\u3000
FR-Designer_Row_Icon_File_Name=row_en.png FR-Designer_Row_Icon_File_Name=row_en.png
FR-Designer_Center_Display=Center FR-Designer_Center_Display=Center
FR-Designer_Left_Display=Left FR-Designer_Left_Display=Left
@ -617,7 +618,7 @@ BorderLayout-West=West
AnalysisLine=Line AnalysisLine=Line
Layer_Report_Warnning_info=<html>Line report engine is suitable for large data.<br/>Many report features will no longer support if use it,<br/>more information in helpdocument.</html> Layer_Report_Warnning_info=<html>Line report engine is suitable for large data.<br/>Many report features will no longer support if use it,<br/>more information in helpdocument.</html>
Tree-Width=Tree Width Tree-Width=Tree Width
alert_word=Export without fixed height, cell height will change according to the content and pagination position will different from the preview result. 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 PageSetup-Paper_Size=Paper Size
M-Page_Setup=Page Setup M-Page_Setup=Page Setup
DashBoard-FormBook=Form DashBoard-FormBook=Form
@ -697,7 +698,7 @@ RWA-Click_Cell_To_Edit_Value=Click Cell to Edit Value
Utils-Row_Height=Row Height Utils-Row_Height=Row Height
ReportD-Excel_Export=Export Attributes ReportD-Excel_Export=Export Attributes
Form-Please_Select_A_Kind_Of_Form_Container=Select A Form Container Form-Please_Select_A_Kind_Of_Form_Container=Select A Form Container
Column_Does_Not_Exsit=Column Does Not Exist Column_Does_Not_Exsit=Column Does Not Exsit
M_Insert-Hyperlink=Hyperlink M_Insert-Hyperlink=Hyperlink
can_not_include_underline=Can not contain "_" can_not_include_underline=Can not contain "_"
FR-Designer-Plugin_Jar_Expired=Jar Expired FR-Designer-Plugin_Jar_Expired=Jar Expired
@ -797,7 +798,7 @@ CellWrite-Page_Before_Row=Before Row
FR-Designer-Plugin_Load_Plugins_From_Server=Loading data from plugins store FR-Designer-Plugin_Load_Plugins_From_Server=Loading data from plugins store
D-Dispaly_Divide_Result_Set_into_Groups=Grouping on Result Set D-Dispaly_Divide_Result_Set_into_Groups=Grouping on Result Set
Closed=Closed Closed=Closed
RWA-Help=Set "No update if no modify", so if cell is not modified, the record will not update; it improves filling and submit performance when data is large. 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_Custom=Custom
FR-Designer-Widget-Style_Render_Style=Rendering style FR-Designer-Widget-Style_Render_Style=Rendering style
Highlight-Barcode=BarCode Highlight-Barcode=BarCode
@ -844,7 +845,6 @@ PageSetup-Placement_Center_on_Page=Center on Page
sure_to_delete=sure to delete sure_to_delete=sure to delete
Already_exists_not_add_repeat=Already exist, please do not repeat Already_exists_not_add_repeat=Already exist, please do not repeat
Axis_Title=Axis title Axis_Title=Axis title
FR-Designer-Plugin_Install_Failed=Install failed
FR-Designer-Widget-Style_Frame=Frame FR-Designer-Widget-Style_Frame=Frame
MainGraduationUnit=Major Graduation Unit MainGraduationUnit=Major Graduation Unit
Second_Axis=Secondary Axis Second_Axis=Secondary Axis
@ -857,7 +857,7 @@ RP_Authority_Edit=Permission
Warnning=Warning Warnning=Warning
RoleName_Can_Not_Be_Null=Role name can not be null or duplicate RoleName_Can_Not_Be_Null=Role name can not be null or duplicate
Application=Applications Application=Applications
Formula_Dictionary_Display_Examples_Html=<html>Real value range is \=range(100), displayed formula of every $$$ in the range is \=0 - $$$, <br> the real result is 1, 2, ..., 100 and diaplay result is -1, -2, ..., -100.<br>&nbsp;</html> Formula_Dictionary_Display_Examples_Html=<html>Real value range is \
ECP-error_pwd=Password Error ECP-error_pwd=Password Error
FR-Hyperlink_ChartHyperlink=Chart Hyperlink FR-Hyperlink_ChartHyperlink=Chart Hyperlink
M_Edit-FormatBrush=Format Painter M_Edit-FormatBrush=Format Painter
@ -948,7 +948,7 @@ zeroMarginWarn=The printer exist the physical margins <br> report page margin se
Widget-Date_Selector_Return_Type=Return value type Widget-Date_Selector_Return_Type=Return value type
Utils-Switch_To_Template_Reportlet=Switch to template web report Utils-Switch_To_Template_Reportlet=Switch to template web report
satisfy=satisfy satisfy=satisfy
FR-Designer_WidgetDisplyPosition=Control DisplayPosition FR-Designer_WidgetDisplyPosition=Control DisplyPosition
FR-Base_Top=Top FR-Base_Top=Top
FR-Designer_Form-CheckBox=CheckBox FR-Designer_Form-CheckBox=CheckBox
Reportlet-Parameter_Type=Parameter passing mode Reportlet-Parameter_Type=Parameter passing mode
@ -966,7 +966,7 @@ FR-Widget_Tree_And_Table=Control tree and control table
FR-Base_Help=Help FR-Base_Help=Help
FR-Designer-Plugin_Update_Successful=Update successfully, restart the sever to enable it FR-Designer-Plugin_Update_Successful=Update successfully, restart the sever to enable it
August=August August=August
LOG-Is_Being_Openned=Is Being Opened LOG-Is_Being_Openned=Is Being Openned
BackgroundTexture-Oak=Oak BackgroundTexture-Oak=Oak
Multi_nam_formula=\ data set name\: Multi_nam_formula=\ data set name\:
TurnOn=TurnOn TurnOn=TurnOn
@ -988,7 +988,7 @@ Background-Background_is_NULL=No Background
FR-Designer_Sytle-FRFont=Font FR-Designer_Sytle-FRFont=Font
Gradation=Gradation Gradation=Gradation
The_current_list_is_empty=The current list is empty The_current_list_is_empty=The current list is empty
Formula_Dictionary_Display_Examples=\Real value range is \=range(100), displayed formula of every $$$ in the range is \=0 - $$$, \n the real result is 1, 2, ..., 100 and diaplay result is -1, -2, ..., -100. Formula_Dictionary_Display_Examples=\Real value range is \
Schedule-Template_Parameter=Template Parameter Schedule-Template_Parameter=Template Parameter
JSShow=Dynamic display JSShow=Dynamic display
Level_coordinates=Hierarchy coordinate Level_coordinates=Hierarchy coordinate
@ -1038,7 +1038,7 @@ FR-Designer-Tree_Width=Tree Width
Record=Record Record=Record
Poly-Report_Component=Aggregate Report Component Poly-Report_Component=Aggregate Report Component
Options=Options Options=Options
NS-war-remote=Error codes\:1117 Compression deployment does not support remote design NS-war-remote=Error codes\:11100017 Compression deployment does not support remote design
Sche-Minute=Minute Sche-Minute=Minute
Three_Rows_Of_Three_Grid=A grid with 3 rows and 3 columns Three_Rows_Of_Three_Grid=A grid with 3 rows and 3 columns
WorkSheet=Free Report WorkSheet=Free Report
@ -1094,7 +1094,7 @@ Horizontal-Split_Layout=Horizontal partitioning layout
BorderLayout-Center=Center BorderLayout-Center=Center
INFO-Reset_Webapp=Reset Application Server INFO-Reset_Webapp=Reset Application Server
FR-Designer_Text=Text FR-Designer_Text=Text
IN_and_INOUT_type_not_as_cursor=IN and INOUT type cannot be cursor IN_and_INOUT_type_not_as_cursor=IN and INOUT type canot be cursor
Main_Axis=Primary axis Main_Axis=Primary axis
M_Edit-Cut=Cut M_Edit-Cut=Cut
Utils-The_Name_has_been_existed=The name already exists Utils-The_Name_has_been_existed=The name already exists
@ -1125,14 +1125,14 @@ Schedule-The_selected_file_must_be_end_with_filter=The selected file must end wi
Provide=Provide Provide=Provide
FormulaD-Math_&_Trig=Math and Trig FormulaD-Math_&_Trig=Math and Trig
FR-Designer-StyleAlignment_Right=Right FR-Designer-StyleAlignment_Right=Right
Error_TableDataNameRepeat=\ already exists in Server DataSet or the name is repeated. Error_TableDataNameRepeat=\ already exsits in Server DataSet or the name is repeated.
Choose_None=Deselect Choose_None=Deselect
File-tree=File tree File-tree=File tree
FRFont-bold=Bold FRFont-bold=Bold
FR-Designer_Set_Submit_Condition=Submit Condition FR-Designer_Set_Submit_Condition=Submit Condition
Form-Change_Widget_Name=Change Control Name Form-Change_Widget_Name=Change Control Name
ReportColumns-Report_Columns=Multi-columns/lines display ReportColumns-Report_Columns=Multi-columns/lines display
Can_not_use_FormatBursh=Can't use format painter in multiple selections FR-Designer_Can_not_use_FormatBursh=Can't use format painter in multiple selections
CellElement-Property_Table=Cell Attribute Table CellElement-Property_Table=Cell Attribute Table
Dictionary-Dynamic_SQL=Dynamic SQL Dictionary-Dynamic_SQL=Dynamic SQL
FR-Designer_Form-CheckBoxGroup=CheckBoxGroup FR-Designer_Form-CheckBoxGroup=CheckBoxGroup
@ -1161,7 +1161,7 @@ FR-App-Export_png=png
Delete_Column=Delete Column Delete_Column=Delete Column
SecondGraduationLine=Minor Graduation Line SecondGraduationLine=Minor Graduation Line
SpecifiedG-Groups=Groups SpecifiedG-Groups=Groups
CONTINUUM_MODE=Continuous grouping CONTINUUM_MODE=Continous grouping
Datasource-Connection_failed=Connection Failed Datasource-Connection_failed=Connection Failed
CategoryName=Category Name CategoryName=Category Name
DBCP_INITIAL_SIZE=Initialize Connections DBCP_INITIAL_SIZE=Initialize Connections
@ -1175,7 +1175,7 @@ Or-you=or you
FR-Designer_Certificate_Path=Certificate Path FR-Designer_Certificate_Path=Certificate Path
Utils-Last_Page=Last Page Utils-Last_Page=Last Page
BarCodeD-Drawing_Text=Display Barcode Text BarCodeD-Drawing_Text=Display Barcode Text
Warning-Template_Do_Not_Exsit=Template do not exist Warning-Template_Do_Not_Exsit=Template do not exsit
BindColumn-Group=Group BindColumn-Group=Group
Export-SVG=SVG Export-SVG=SVG
Plane3D=Plane 3D Plane3D=Plane 3D
@ -1289,7 +1289,7 @@ DS-Class_TableData=Class Data Set
FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=Illegal plugin,cannot be installed FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=Illegal plugin,cannot be installed
DisplayNothingBeforeQuery=Display Nothing Before Query DisplayNothingBeforeQuery=Display Nothing Before Query
Y_Axis=Y Axis Y_Axis=Y Axis
FormulaD-Most_Recently_Used=Recently used FormulaD-Most_Recently_Used=Rencently used
FormulaD-Input_formula_in_the_text_area_below=Input formula in the text area below FormulaD-Input_formula_in_the_text_area_below=Input formula in the text area below
Build-Way=Build Way Build-Way=Build Way
M_Edit-Undo=Undo M_Edit-Undo=Undo
@ -1370,7 +1370,7 @@ Not_Exsit=Not exist in report
Utils-Insert_Row=Insert Row Utils-Insert_Row=Insert Row
Utils-Delete_Row=Delete Row Utils-Delete_Row=Delete Row
not_support_authority_edit=this element does not support authority edit not_support_authority_edit=this element does not support authority edit
Formula_Tips=The formula must be begin with "\="\! Formula_Tips=The formula must be begin with "\
FR-Action_Copy=Copy FR-Action_Copy=Copy
Compile_Success=Compile Successfully Compile_Success=Compile Successfully
BackgroundTexture-RecycledPaper=Recycled Paper BackgroundTexture-RecycledPaper=Recycled Paper
@ -1392,7 +1392,7 @@ BackgroundTexture-WaterDroplets=Water Drop
FR-Designer-Dependence_Install_Failed=install failed FR-Designer-Dependence_Install_Failed=install failed
Layout-Padding=Padding Layout-Padding=Padding
roles_already_authority_edited=Configured role roles_already_authority_edited=Configured role
WidgetDisplyPosition=Control display position WidgetDisplyPosition=Control disply position
SpecifiedG-Force_Group=Mandatory Group SpecifiedG-Force_Group=Mandatory Group
FormulaD-Formula_Definition=Formula Definition FormulaD-Formula_Definition=Formula Definition
I-xyScatterStyle_Marker=Scatter I-xyScatterStyle_Marker=Scatter
@ -1406,7 +1406,7 @@ Rename=Rename
Widget-Load_By_Async=Async load Widget-Load_By_Async=Async load
Shape=Shape Shape=Shape
BindColumn-This_Condition_has_been_existed=The Condition Already Exists BindColumn-This_Condition_has_been_existed=The Condition Already Exists
NS-exception_readError=Error codes\:1305 Template file parsing error NS-exception_readError=Error codes\:11300005 Template file parsing error
Set_Column_Title_Start=Set Duplicate Title Columns Set_Column_Title_Start=Set Duplicate Title Columns
Fri=Fri Fri=Fri
M_Report-Report_Parameter=Report Parameter M_Report-Report_Parameter=Report Parameter
@ -1525,7 +1525,7 @@ FR-Server_Version_Tip=The version of the server you are connecting is older than
StyleAlignment-Left_To_Right=Left To Right StyleAlignment-Left_To_Right=Left To Right
Verify-ToolTips=If not meet formula, throw up validation error message Verify-ToolTips=If not meet formula, throw up validation error message
BackgroundTexture-Stationery=Letter Paper BackgroundTexture-Stationery=Letter Paper
FR-Designer_RWA-Help=Set "No update if no modify", so if cell is not modified, the record will not update; it improves filling and submit performance when data is large. 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 M_Insert-Barcode=Barcode
Bounds=Bounds Bounds=Bounds
FR-Designer-Undo_All_Authority_Operations=Undo all the privilege edit operations FR-Designer-Undo_All_Authority_Operations=Undo all the privilege edit operations
@ -1535,7 +1535,7 @@ FR-Designer_Cancel=Cancel
Button-Group-Display-Columns=Number of columns displayed Button-Group-Display-Columns=Number of columns displayed
Widget-Height=Control Height Widget-Height=Control Height
Examples=Examples Examples=Examples
Formula_Dictionary_Display_Example=Real value range is \=range(100), displayed formula of every $$$ in the range is \=0 - $$$, \n the real result is 1, 2, ..., 100 and diaplay result is -1, -2, ..., -100. Formula_Dictionary_Display_Example=Real value range is \
StyleAlignment-Horizontal=Horizontal StyleAlignment-Horizontal=Horizontal
HyperLink_Must_Alone_Reset=Multiple hyperlink HyperLink_Must_Alone_Reset=Multiple hyperlink
ExpandD-Expand_Direction=Extension Direction ExpandD-Expand_Direction=Extension Direction
@ -1625,7 +1625,7 @@ FR-Hyperlink_Reportlet=Webreport
M_Edit-Copy=Copy M_Edit-Copy=Copy
Sub_Report_Message2=The parent-report is not in the current runtime environment Sub_Report_Message2=The parent-report is not in the current runtime environment
Sub_Report_Message3=Can not choose itself Sub_Report_Message3=Can not choose itself
Sub_Report_Message1=Please choose the correct path Sub_Report_Message1=Please choose the currect path
Form-Allow_CustomData=Allow custom data 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-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. 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.
@ -1757,7 +1757,7 @@ Form-ToolBar=Form ToolBar
FR-Base_sure_remove_item=Are you sure to delete the selected item FR-Base_sure_remove_item=Are you sure to delete the selected item
Component_Scale=Component Scale Component_Scale=Component Scale
Hyperlink-Use_CJK_to_encode_parameter=Use CJK to process parameter Hyperlink-Use_CJK_to_encode_parameter=Use CJK to process parameter
LOG-Has_Been_Openned=Report Has Been Opened LOG-Has_Been_Openned=Report Has Been Openned
FR-Designer-Dependence= FR-Designer-Dependence=
ECP_error_pwd=Password Error ECP_error_pwd=Password Error
REPORTLET=Parameter of access path to template REPORTLET=Parameter of access path to template
@ -1786,7 +1786,7 @@ Form-DataTable=DataTable
Sub_Report_ToolTips=Sub Report ToolTips Sub_Report_ToolTips=Sub Report ToolTips
Right_Top=Upper right Right_Top=Upper right
M_Edit-Merge_Cell=Merge Cell M_Edit-Merge_Cell=Merge Cell
FR-Designer_Restore_Default=Back to default FR-Designer_Restore_Default=Back to default\
Component_Interval=Components Interval Component_Interval=Components Interval
Cover_None=Override None Cover_None=Override None
Datasource-From_Database=DB table Datasource-From_Database=DB table
@ -1797,7 +1797,7 @@ ParentCell_Setting=Parent Cell Setting
Only_selected_cell_can_paste_only=Paste when cell is selected Only_selected_cell_can_paste_only=Paste when cell is selected
M_Report-Report_Columns=Multi-columns/lines M_Report-Report_Columns=Multi-columns/lines
Unit_Hundred=Hundred Unit_Hundred=Hundred
FR-Designer_DataTable-Build=Quick build (hierarchical) FR-Designer_DataTable-Build=
Widget-Form_Widget_Config=Form control 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. 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 Actions=Task
@ -1817,7 +1817,7 @@ BackgroundTexture-Cork=Cork
M_Format-Data_Map=Data Dictionary M_Format-Data_Map=Data Dictionary
FR-mobile_native_analysis=native analysis FR-mobile_native_analysis=native analysis
HighLight=High Light HighLight=High Light
FR-Designer_Dropdown-More-Preview=Drop down for more FR-Designer_Dropdown-More-Preview=
local=local local=local
FR-Designer_Gradation=Gradation FR-Designer_Gradation=Gradation
PageSetup-Finis_Start_Column=Duplicate Last Column PageSetup-Finis_Start_Column=Duplicate Last Column
@ -1826,7 +1826,7 @@ FR-Designer-Plugin_All_Plugins=All plugins
FR-Designer_Prepare_Export=Ready to export, please wait FR-Designer_Prepare_Export=Ready to export, please wait
DBCP_TEST_ON_RETURN=Test before Returning Connections DBCP_TEST_ON_RETURN=Test before Returning Connections
no-alternatives=no alternatives no-alternatives=no alternatives
FR-Designer_Submmit_WClass=Submit By Custom Class FR-Designer_Submmit_WClass=Submmit By Custom Class
M_Insert-Slope_Line=Insert Slope Line M_Insert-Slope_Line=Insert Slope Line
FR-Designer-Plugin_Plugin_Description=Description FR-Designer-Plugin_Plugin_Description=Description
ExpandD-Not_Expand=No extend ExpandD-Not_Expand=No extend
@ -1889,12 +1889,12 @@ Border-Style=Border Style
Sort=Sort Sort=Sort
Image-Image_Layout=Image Layout Image-Image_Layout=Image Layout
Panel=Panel Panel=Panel
FR-Designer-Basic_Copy_Build_NO_OK=Build No. has been copied FR-Designer-Basic_Copy_Build_NO_OK=Build No. has been copyed
All_Border_Line=All Border All_Border_Line=All Border
FR-Utils-Please_Input_a_New_Name=Input a New Name FR-Utils-Please_Input_a_New_Name=Input a New Name
FR-Base_Formula_Plugin=Plugin Function FR-Base_Formula_Plugin=Plugin Function
Two_Rows_Of_Three_Grid=A grid with 2 rows and 3 columns Two_Rows_Of_Three_Grid=A grid with 2 rows and 3 columns
FR-Designer_Certificate_Pass=Certificate Password FR-Designer_Certificate_Pass=Certificate Password\
Bubble-Series_Name=Series Name Bubble-Series_Name=Series Name
M-New_Multi_Report=New Aggregate Report M-New_Multi_Report=New Aggregate Report
BackgroundTexture-PinkTissuePaper=Pink Sandpaper BackgroundTexture-PinkTissuePaper=Pink Sandpaper
@ -1940,7 +1940,7 @@ Widget-User_Defined=Predefine
Url_location=Absolute path Url_location=Absolute path
Disk_File=Disk File Disk_File=Disk File
Inside=Inside Inside=Inside
FR-Designer_filedChosen=Dependent fields FR-Designer_filedChosen=
ServerM-Predefined_Styles=Predefined Styles ServerM-Predefined_Styles=Predefined Styles
is_need_word_adjust=Word Auto Adjust is_need_word_adjust=Word Auto Adjust
Background-Null=No Background Background-Null=No Background
@ -1986,19 +1986,23 @@ FR-Designer_Role=Role
FR-Designer_Permissions=Permissions FR-Designer_Permissions=Permissions
FR-Designer_Form_Button=Button FR-Designer_Form_Button=Button
FR-Designer_WF_Name=Name FR-Designer_WF_Name=Name
FR-Designer_Double=Decimal FR-Designer_AlphaFine_Enable=Enable
FR-Designer_Query=Query FR-Designer_AlphaFine_EnableInternetSearch=Search OnLine
FR-Designer_Font=Font FR-Designer_AlphaFine_Shortcut_Config=Shortcut Config
FR-Designer_Confirm=OK FR-Designer_AlphaFine_SearchRange=Search Range
FR-Designer_Parameter=Parameter FR-Designer_AlphaFine_Recommend=Recommend
FR-Designer-Plugin_Plugin=Plugin FR-Designer-Plugin_Addon=Plugin Addon
FR-Designer_Background=BG FR-Designer_Templates=Files
Template=Template FR-Designer_Templates_Content=Files'contents
FR-Designer_AlphaFine_ShowAll=Show all
FR-Designer_Original_Marked_Filed=Original Tag Field FR-Designer_AlphaFine_Latest=Recent
FR-Designer_Build_Tree_Accord_Marked_Filed_Length=Build tree according to tag field's length FR-Designer_AlphaFine_ShowLess=Show less
FR-Designer_Can_not_use_FormatBursh=Can't use format painter in multiple selections FR-Designer_Alphafine=AlphaFine
FR-Designer_Tree_Data_Field=Tree Data Field <<<<<<< HEAD
FR-Designer_Parent_Marked_Field=Parent Tag Field FR-Designer-Alphafine_No_Remind=don't remind
FR-Designer_Build_Tree_Accord_Parent_Marked_Filed=Build Tree according to the parent tag field of the selected data set FR-Designer_AlphaFine_NoResult=No results
FR-Product_Demo=Demo FR-Designer_ConnectionFailed=Connection failed
FR-Designer_AlphaFine_EnableAlphaFine=Enable AlphaFine
FR-Designer_AlphaFine_EnableInternet=Internet
FR-Designer_NoResult=No results
FR-Designer-AlphaFine_SetShortcuts=please press two key to set shortcut

2523
designer_base/src/com/fr/design/locale/designer_ja_JP.properties

File diff suppressed because it is too large Load Diff

46
designer_base/src/com/fr/design/locale/designer_ko_KR.properties

@ -1,3 +1,4 @@
# generated time: \u661F\u671F\u56DB \u5341\u4E00\u6708 24 12:02:51 CST 2016
FR-Designer-BBSLogin_Account=\u7528\u6237\u540D FR-Designer-BBSLogin_Account=\u7528\u6237\u540D
FR-Designer-BBSLogin_Connection-Failure=\uB124\uD2B8\uC6CC\uD06C\uB9C1\uD06C\uC2E4\uD328.\uD604\uC7AC\uB124\uD2B8\uC6CC\uD06C\uC0C1\uD0DC\uB97C\uAC80\uC0AC\uD574\uC8FC\uC2ED\uC2DC\uC624. FR-Designer-BBSLogin_Connection-Failure=\uB124\uD2B8\uC6CC\uD06C\uB9C1\uD06C\uC2E4\uD328.\uD604\uC7AC\uB124\uD2B8\uC6CC\uD06C\uC0C1\uD0DC\uB97C\uAC80\uC0AC\uD574\uC8FC\uC2ED\uC2DC\uC624.
FR-Designer-BBSLogin_Connection-Failure-Tip=\uC54C\uB9BC FR-Designer-BBSLogin_Connection-Failure-Tip=\uC54C\uB9BC
@ -11,7 +12,7 @@ FR-Designer-BBSLogin_Switch-Account=\uC804\uD658\uACC4\uC815\uBC88\uD638
FR-Designer-BBSLogin_Privite-Message=\uAC1C\uC778\u0020\uBA54\uC2DC\uC9C0 FR-Designer-BBSLogin_Privite-Message=\uAC1C\uC778\u0020\uBA54\uC2DC\uC9C0
FR-Designer-BBSLogin_Times=\uD68C FR-Designer-BBSLogin_Times=\uD68C
FR-Designer-BBSLogin_Username-Empty-Tip=\uC0AC\uC6A9\uC790\uC774\uB984\uC740\uBE48\uCE78\uC73C\uB85C\uB458\uC218\uC5C6\uC2B5\uB2C8\uB2E4. FR-Designer-BBSLogin_Username-Empty-Tip=\uC0AC\uC6A9\uC790\uC774\uB984\uC740\uBE48\uCE78\uC73C\uB85C\uB458\uC218\uC5C6\uC2B5\uB2C8\uB2E4.
FR-Designer-Basic_More_Color=\uB354\uBCF4\uAE30\uC0C9 FR-Designer-Basic_More_Color=\uC0C9\uB354\uBCF4\uAE30...
FR-Designer-Estate_Any=\uC81C\uD55C\uC5C6\uC74C FR-Designer-Estate_Any=\uC81C\uD55C\uC5C6\uC74C
FR-Designer-Estate_Default_Font=\uAE30\uBCF8\uAE00\uAF34 FR-Designer-Estate_Default_Font=\uAE30\uBCF8\uAE00\uAF34
FR-Designer-Estate_Default_Null=\uAE30\uBCF8\uBE44\uC5B4\uC788\uC74C FR-Designer-Estate_Default_Null=\uAE30\uBCF8\uBE44\uC5B4\uC788\uC74C
@ -75,7 +76,7 @@ FR-Designer_Chart_Cell=\uCC28\uD2B8 \uD558\uC774\uD37C\uB9C1\uD06C-\uC140 \uC5F0
FR-Designer_Chart_Float=\uCC28\uD2B8\uD558\uC774\uD37C\uB9C1\uD06C-\uC5F0\uB3D9\uC11C\uC2A4\uD39C\uC2A4\uC694\uC18C FR-Designer_Chart_Float=\uCC28\uD2B8\uD558\uC774\uD37C\uB9C1\uD06C-\uC5F0\uB3D9\uC11C\uC2A4\uD39C\uC2A4\uC694\uC18C
FR-Designer_Chart_Float_chart=\uCC28\uD2B8 \uD558\uC774\uD37C\uB9C1\uD06C-\uC704\uC82F \uCC28\uD2B8 FR-Designer_Chart_Float_chart=\uCC28\uD2B8 \uD558\uC774\uD37C\uB9C1\uD06C-\uC704\uC82F \uCC28\uD2B8
FR-Designer_Check-for-Updates=\uC5C5\uB370\uC774\uD2B8\uAC80\uC0AC FR-Designer_Check-for-Updates=\uC5C5\uB370\uC774\uD2B8\uAC80\uC0AC
FR-Designer_Choose-Data-Confusion-Tip=\\ud63c\uD569\uD560\uD544\uB4DC\uB97C\uC120\uD0DD\uD6C4\uBBF8\uB9AC\uBCF4\uAE30 FR-Designer_Choose-Data-Confusion-Tip=\\ud63c\uD569\uD560\uD544\uB4DC\uB97C\uC120\uD0DD\uD6C4\uBBF8\uB9AC\uBCF4\uAE30
FR-Designer_Close=\uB2EB\uAE30 FR-Designer_Close=\uB2EB\uAE30
FR-Designer_Column=\uC5F4 FR-Designer_Column=\uC5F4
FR-Designer_Column_Measure=\uC5F4\uCD95/\uCE21\uC815\uAC12 FR-Designer_Column_Measure=\uC5F4\uCD95/\uCE21\uC815\uAC12
@ -105,7 +106,7 @@ FR-Designer_Font-Family=\uAE00\uAF34\uBA85\uCE6D
FR-Designer_Font-Size=\uAE00\uAF34\uD06C\uAE30 FR-Designer_Font-Size=\uAE00\uAF34\uD06C\uAE30
FR-Designer_Forbid_Drag_into_Adapt_Pane=\uD574\uB2F9\uAC1D\uCCB4\uB294\uD3FC\uD14C\uC774\uBE14\uBC14\uB514\uB4DC\uB798\uADF8\uB97C\uD5C8\uC6A9\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. FR-Designer_Forbid_Drag_into_Adapt_Pane=\uD574\uB2F9\uAC1D\uCCB4\uB294\uD3FC\uD14C\uC774\uBE14\uBC14\uB514\uB4DC\uB798\uADF8\uB97C\uD5C8\uC6A9\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4.
FR-Designer_Forbid_Drag_into_Para_Pane=\uD574\uB2F9\uAC1D\uCCB4\uB294\uB9E4\uAC1C\uBCC0\uC218\uD328\uB110\uC744\uB4DC\uB798\uADF8\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4. FR-Designer_Forbid_Drag_into_Para_Pane=\uD574\uB2F9\uAC1D\uCCB4\uB294\uB9E4\uAC1C\uBCC0\uC218\uD328\uB110\uC744\uB4DC\uB798\uADF8\uD560\uC218\uC5C6\uC2B5\uB2C8\uB2E4.
FR-Designer_Foreground=\uBE44\uC804 FR-Designer_Foreground=\uC0C9
FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=\uD3FC\uAD8C\uD55C\uD3B8\uC9D1\uC744\uC9C0\uC6D0\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=\uD3FC\uAD8C\uD55C\uD3B8\uC9D1\uC744\uC9C0\uC6D0\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4.
FR-Designer_Form-Report=\uBB38\uC11C\uBE14\uB7ED FR-Designer_Form-Report=\uBB38\uC11C\uBE14\uB7ED
FR-Designer_Form_EmbeddedTD=\uD3FC(\uB0B4\uC7A5\uB370\uC774\uD130) FR-Designer_Form_EmbeddedTD=\uD3FC(\uB0B4\uC7A5\uB370\uC774\uD130)
@ -161,7 +162,7 @@ FR-Designer_Refresh_Parameter_In_SQL=SQL\uC758\uB9E4\uAC1C\uBCC0\uC218\uB97C\uC0
FR-Designer_Reg_Expressions=\uC815\uADDC\uD45C\uD604\uC2DD FR-Designer_Reg_Expressions=\uC815\uADDC\uD45C\uD604\uC2DD
FR-Designer_Reg_Max_Length=\uCD5C\uB300\uAE38\uC774 FR-Designer_Reg_Max_Length=\uCD5C\uB300\uAE38\uC774
FR-Designer_Reg_Min_Length=\uCD5C\uC18C\uAE38\uC774 FR-Designer_Reg_Min_Length=\uCD5C\uC18C\uAE38\uC774
FR-Designer_ReportColumns-Columns=\uC5F4\uC140\uB098\uB204\uAE30 FR-Designer_ReportColumns-Columns=\uC140\uB098\uB204\uAE30
FR-Designer_Return-Date=\uB0A0\uC9DC\uB3CC\uC544\uAC00\uAE30 FR-Designer_Return-Date=\uB0A0\uC9DC\uB3CC\uC544\uAC00\uAE30
FR-Designer_RichText=\uB9AC\uCE58\uD14D\uC2A4\uD2B8\uBC15\uC2A4\uC0BD\uC785 FR-Designer_RichText=\uB9AC\uCE58\uD14D\uC2A4\uD2B8\uBC15\uC2A4\uC0BD\uC785
FR-Designer_RichTextEditor=\uB9AC\uCE58\uD14D\uC2A4\uD2B8\uBC15\uC2A4\uD3B8\uC9D1\uAE30 FR-Designer_RichTextEditor=\uB9AC\uCE58\uD14D\uC2A4\uD2B8\uBC15\uC2A4\uD3B8\uC9D1\uAE30
@ -445,6 +446,7 @@ FR-Designer_WLayout-Absolute-ToolTips=\uC790\uC720\uC2DD\uB808\uC774\uC544\uC6C3
FR-Designer_Add_all=\uBAA8\uB450\uCD94\uAC00 FR-Designer_Add_all=\uBAA8\uB450\uCD94\uAC00
FR-Designer_Reset= FR-Designer_Reset=
FR-Designer_Language_Change_Successful= FR-Designer_Language_Change_Successful=
FR-Designer_Template_Web_Attributes=
FR-Designer_Basic=\uAE30\uBCF8 FR-Designer_Basic=\uAE30\uBCF8
FR-Designer_Printers(Server)=\uD504\uB9B0\uD130(\uC11C\uBC84) FR-Designer_Printers(Server)=\uD504\uB9B0\uD130(\uC11C\uBC84)
FR-Designer_Pagination_Setting=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uBBF8\uB9AC\uBCF4\uAE30\uC124\uC815 FR-Designer_Pagination_Setting=\uD398\uC774\uC9C0\uB098\uB204\uAE30\uBBF8\uB9AC\uBCF4\uAE30\uC124\uC815
@ -470,7 +472,7 @@ FR-Designer_Exporting=\uB0B4\uBCF4\uB0B4\uAE30\uC911
FR-Designer_Export-PDF=PDF\uC11C\uC2DD FR-Designer_Export-PDF=PDF\uC11C\uC2DD
FR-Designer_Button_OK=\uD655\uC778 FR-Designer_Button_OK=\uD655\uC778
FR-Designer_Button_Cancel=\uCDE8\uC18C FR-Designer_Button_Cancel=\uCDE8\uC18C
FR-Designer_JavaScript=\uC790\uBC14\uC2A4\uD06C\uB9BD\uD2B8 FR-Designer_JavaScript=
FR-Designer_JavaScript_Form_Submit= FR-Designer_JavaScript_Form_Submit=
FR-Designer_JavaScript_Commit_to_Database= FR-Designer_JavaScript_Commit_to_Database=
FR-Designer_JavaScript_Custom= FR-Designer_JavaScript_Custom=
@ -483,7 +485,7 @@ FR-Designer_Attribute=
FR-Designer_Form_Editing_Listeners= FR-Designer_Form_Editing_Listeners=
FR-Designer_Form_Basic_Properties= FR-Designer_Form_Basic_Properties=
FR-Designer_DS_Dictionary= FR-Designer_DS_Dictionary=
FR-Designer_Create_Tree=\uD2B8\uB9AC\uC0DD\uC131 FR-Designer_Create_Tree=
FR-Designer_Set_Callback_Function= FR-Designer_Set_Callback_Function=
FR-Designer_ConfirmDialog_Content= FR-Designer_ConfirmDialog_Content=
FR-Designer_ConfirmDialog_Title= FR-Designer_ConfirmDialog_Title=
@ -844,7 +846,6 @@ PageSetup-Placement_Center_on_Page=\uAC00\uC6B4\uB370\uC815\uB82C\uBC29\uC2DD
sure_to_delete=\uC0AD\uC81C\uD655\uC778 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. 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 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 FR-Designer-Widget-Style_Frame=\uD504\uB808\uC784
MainGraduationUnit=\uC8FC\uB208\uAE08\uB2E8\uC704 MainGraduationUnit=\uC8FC\uB208\uAE08\uB2E8\uC704
Second_Axis=\uBCF4\uC870\uC88C\uD45C\uCD95 Second_Axis=\uBCF4\uC870\uC88C\uD45C\uCD95
@ -857,7 +858,7 @@ RP_Authority_Edit=\uAD8C\uD55C\uD3B8\uC9D1
Warnning=\uC54C\uB9BC 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. 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 Application=\uC560\uD50C\uB9AC\uCF00\uC774\uC158
Formula_Dictionary_Display_Examples_Html=<html>\uC2E4\uC81C\uAC12\uBC94\uC704:\=0 - $$$\uFF0C<br>\uCD5C\uC885\uACB0\uACFC\uC758\uC2E4\uC81C\uAC12: 1, 2, ..., 100,\uD45C\uC2DC\uAC12: -1, -2, ... , -100. <br>&nbsp;</html> Formula_Dictionary_Display_Examples_Html=<html>\uC2E4\uC81C\uAC12\uBC94\uC704:\
ECP-error_pwd=\uBE44\uBC00\uBC88\uD638\uC785\uB825\uC624\uB958 ECP-error_pwd=\uBE44\uBC00\uBC88\uD638\uC785\uB825\uC624\uB958
FR-Hyperlink_ChartHyperlink=\uCC28\uD2B8\uD558\uC774\uD37C\uB9C1\uD06C FR-Hyperlink_ChartHyperlink=\uCC28\uD2B8\uD558\uC774\uD37C\uB9C1\uD06C
M_Edit-FormatBrush=\uC11C\uC2DD\uD504\uB9B0\uD2B8(B) M_Edit-FormatBrush=\uC11C\uC2DD\uD504\uB9B0\uD2B8(B)
@ -988,7 +989,7 @@ Background-Background_is_NULL=\uBC30\uACBD\uC5C6\uC74C
FR-Designer_Sytle-FRFont=\uAE00\uAF34 FR-Designer_Sytle-FRFont=\uAE00\uAF34
Gradation=\uB2E8\uACC4 Gradation=\uB2E8\uACC4
The_current_list_is_empty=\uD604\uC7AC\uB9AC\uC2A4\uD2B8\uBE44\uC5B4\uC788\uC74C The_current_list_is_empty=\uD604\uC7AC\uB9AC\uC2A4\uD2B8\uBE44\uC5B4\uC788\uC74C
Formula_Dictionary_Display_Examples=\\uc2e4\uC81C\uAC12\uBC94\uC704:\=0 - $$$\uFF0C\n \uCD5C\uC885\uACB0\uACFC\uC758\uC2E4\uC81C\uAC12: 1, 2, ..., 100, \n \uD45C\uC2DC\uAC12: -1, -2, ... , -100. Formula_Dictionary_Display_Examples=\\uc2e4\uC81C\uAC12\uBC94\uC704:\
Schedule-Template_Parameter=\uD15C\uD50C\uB9BF\uB9E4\uAC1C\uBCC0\uC218 Schedule-Template_Parameter=\uD15C\uD50C\uB9BF\uB9E4\uAC1C\uBCC0\uC218
JSShow=\uB3D9\uC801\uB514\uC2A4\uD50C\uB808\uC774 JSShow=\uB3D9\uC801\uB514\uC2A4\uD50C\uB808\uC774
Level_coordinates=\uACC4\uCE35\uBCF4\uC870\uC88C\uD45C Level_coordinates=\uACC4\uCE35\uBCF4\uC870\uC88C\uD45C
@ -1038,7 +1039,7 @@ FR-Designer-Tree_Width=\uB108\uBE44
Record=\uB808\uCF54\uB4DC Record=\uB808\uCF54\uB4DC
Poly-Report_Component=\uCDE8\uD569\uBB38\uC11C\uC5B4\uC148\uBE14\uB9AC Poly-Report_Component=\uCDE8\uD569\uBB38\uC11C\uC5B4\uC148\uBE14\uB9AC
Options=\uC635\uC158 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 NS-war-remote=\uC624\uB958\uCF54\uB4DC\:11100017 \uC555\uCD95\uC124\uCE58\uB97C\uC9C0\uC6D0\uD558\uC9C0\uC54A\uC2B5\uB2C8\uB2E4. \uC6D0\uACA9\uB514\uC790\uC778
Sche-Minute=\uBD84 Sche-Minute=\uBD84
Three_Rows_Of_Three_Grid=3\uD589 3\uC5F4\uC758\uADF8\uB9AC\uB4DC Three_Rows_Of_Three_Grid=3\uD589 3\uC5F4\uC758\uADF8\uB9AC\uB4DC
WorkSheet=\uC790\uC720\uBB38\uC11C WorkSheet=\uC790\uC720\uBB38\uC11C
@ -1406,7 +1407,7 @@ Rename=\uB9AC\uB124\uC784
Widget-Load_By_Async=\uBE44\uB3D9\uAE30\uB85C\uB529 Widget-Load_By_Async=\uBE44\uB3D9\uAE30\uB85C\uB529
Shape=\uADF8\uB798\uD504 Shape=\uADF8\uB798\uD504
BindColumn-This_Condition_has_been_existed=\uC774\uC870\uAC74\uC740\uC774\uBBF8\uC874\uC7AC\uD569\uB2C8\uB2E4. 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 NS-exception_readError=\uC624\uB958\uCF54\uB4DC\:11300005 \uD15C\uD50C\uB9BF\uD30C\uC77C\uD574\uC11D\uC624\uB958
Set_Column_Title_Start=\uC911\uBCF5\uC81C\uBAA9\uC5F4\uC124\uC815 Set_Column_Title_Start=\uC911\uBCF5\uC81C\uBAA9\uC5F4\uC124\uC815
Fri=5 Fri=5
M_Report-Report_Parameter=\uD15C\uD50C\uB9BF\uB9E4\uAC1C\uBCC0\uC218 M_Report-Report_Parameter=\uD15C\uD50C\uB9BF\uB9E4\uAC1C\uBCC0\uC218
@ -1535,7 +1536,7 @@ FR-Designer_Cancel=\uCDE8\uC18C
Button-Group-Display-Columns=\uC5F4\uC758\uC218\uB97C\uB098\uD0C0\uB0C4 Button-Group-Display-Columns=\uC5F4\uC758\uC218\uB97C\uB098\uD0C0\uB0C4
Widget-Height=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uB192\uC774 Widget-Height=\uC18C\uD504\uD2B8\uC6E8\uC5B4\uC81C\uC5B4\uB192\uC774
Examples=\uC608\uC2DC Examples=\uC608\uC2DC
Formula_Dictionary_Display_Example=\uC2E4\uC81C\uAC12\uBC94\uC704:\=0 - $$$\uFF0C\n\uCD5C\uC885\uACB0\uACFC\uC758\uC2E4\uC81C\uAC12: 1, 2, ..., 100, \uD45C\uC2DC\uAC12: -1, -2, ... , -100. Formula_Dictionary_Display_Example=\uC2E4\uC81C\uAC12\uBC94\uC704:\
StyleAlignment-Horizontal=\uC218\uD3C9\uC815\uB82C StyleAlignment-Horizontal=\uC218\uD3C9\uC815\uB82C
HyperLink_Must_Alone_Reset=\uC5EC\uB7EC\uAC1C\uD558\uC774\uD37C\uB9C1\uD06C HyperLink_Must_Alone_Reset=\uC5EC\uB7EC\uAC1C\uD558\uC774\uD37C\uB9C1\uD06C
ExpandD-Expand_Direction=\uD655\uB300\uBC29\uD5A5 ExpandD-Expand_Direction=\uD655\uB300\uBC29\uD5A5
@ -1981,23 +1982,4 @@ FR-Designer_Edit_String_To_Formula=\uBB38\uC790\uC5F4\uC744\uC218\uC2DD\uC73C\uB
FR-Base_UnSignIn=\uC544\uC9C1 \uB4F1\uB85D FR-Base_UnSignIn=\uC544\uC9C1 \uB4F1\uB85D
Every=\uAC01 Every=\uAC01
CellWrite-Preview_Cell_Content=\uC140\uB0B4\uC6A9\uBBF8\uB9AC\uBCF4\uAE30 CellWrite-Preview_Cell_Content=\uC140\uB0B4\uC6A9\uBBF8\uB9AC\uBCF4\uAE30
FormulaD-Data_Fields=\uB370\uC774\uD130\uD56D\uBAA9 FormulaD-Data_Fields=\uB370\uC774\uD130\uD56D\uBAA9
FR-Designer_Permissions=
FR-Designer_Form_Button=
FR-Designer_WF_Name=
FR-Designer_Role=
FR-Designer_Double=\uC18C\uC218
FR-Designer_Query=\uCC3E\uC544\uBCF4\uAE30
FR-Designer_Font=\uAE00\uAF34
FR-Designer_Confirm=\uD655\uC778
FR-Designer_Parameter=\uB9E4\uAC1C\uBCC0\uC218
FR-Designer-Plugin_Plugin=\uD50C\uB7EC\uADF8\uC778
FR-Designer_Background=\uBC30\uACBD
Template=\uD15C\uD50C\uB9BF
FR-Designer_Original_Marked_Filed=\uCD08\uAE30\uD0DC\uADF8\uD544\uB4DC
FR-Designer_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
FR-Designer_Tree_Data_Field=\uD2B8\uB9AC\uB370\uC774\uD130\uD544\uB4DC
FR-Designer_Parent_Marked_Field=\uBD80\uBAA8\uD0DC\uADF8\uD544\uB4DC
FR-Designer_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
FR-Product_Demo=\uC81C\uD488\uC2DC\uC5F0

62
designer_base/src/com/fr/design/locale/designer_zh_CN.properties

@ -1,3 +1,4 @@
# generated time: \u661F\u671F\u56DB \u5341\u4E00\u6708 24 12:02:51 CST 2016
FR-Designer-BBSLogin_Account=\u7528\u6237\u540D FR-Designer-BBSLogin_Account=\u7528\u6237\u540D
FR-Designer-BBSLogin_Connection-Failure=\u7F51\u7EDC\u8FDE\u63A5\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u5F53\u524D\u7F51\u7EDC\u72B6\u6001 FR-Designer-BBSLogin_Connection-Failure=\u7F51\u7EDC\u8FDE\u63A5\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u5F53\u524D\u7F51\u7EDC\u72B6\u6001
FR-Designer-BBSLogin_Connection-Failure-Tip=\u63D0\u793A FR-Designer-BBSLogin_Connection-Failure-Tip=\u63D0\u793A
@ -11,7 +12,7 @@ FR-Designer-BBSLogin_Switch-Account=\u5207\u6362\u8D26\u53F7
FR-Designer-BBSLogin_Privite-Message=\u79C1\u4EBA\u6D88\u606F FR-Designer-BBSLogin_Privite-Message=\u79C1\u4EBA\u6D88\u606F
FR-Designer-BBSLogin_Times=\u6B21 FR-Designer-BBSLogin_Times=\u6B21
FR-Designer-BBSLogin_Username-Empty-Tip=\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A FR-Designer-BBSLogin_Username-Empty-Tip=\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A
FR-Designer-Basic_More_Color=\u66F4\u591A\u989C\u8272 FR-Designer-Basic_More_Color=\u66F4\u591A\u989C\u8272...
FR-Designer-Estate_Any=\u4E0D\u9650 FR-Designer-Estate_Any=\u4E0D\u9650
FR-Designer-Estate_Default_Font=\u9ED8\u8BA4\u5B57\u4F53 FR-Designer-Estate_Default_Font=\u9ED8\u8BA4\u5B57\u4F53
FR-Designer-Estate_Default_Null=\u9ED8\u8BA4\u4E3A\u7A7A FR-Designer-Estate_Default_Null=\u9ED8\u8BA4\u4E3A\u7A7A
@ -75,7 +76,7 @@ FR-Designer_Chart_Cell=\u56FE\u8868\u8D85\u94FE-\u8054\u52A8\u5355\u5143\u683C
FR-Designer_Chart_Float=\u56FE\u8868\u8D85\u94FE-\u8054\u52A8\u60AC\u6D6E\u5143\u7D20 FR-Designer_Chart_Float=\u56FE\u8868\u8D85\u94FE-\u8054\u52A8\u60AC\u6D6E\u5143\u7D20
FR-Designer_Chart_Float_chart=\u56FE\u8868\u8D85\u94FE-\u60AC\u6D6E\u7A97\u56FE\u8868 FR-Designer_Chart_Float_chart=\u56FE\u8868\u8D85\u94FE-\u60AC\u6D6E\u7A97\u56FE\u8868
FR-Designer_Check-for-Updates=\u68C0\u67E5\u66F4\u65B0 FR-Designer_Check-for-Updates=\u68C0\u67E5\u66F4\u65B0
FR-Designer_Choose-Data-Confusion-Tip=\ \u8BF7\u9009\u62E9\u9700\u8981\u6DF7\u6DC6\u7684\u5B57\u6BB5\u540E\u9884\u89C8 FR-Designer_Choose-Data-Confusion-Tip=\ \u8BF7\u9009\u62E9\u9700\u8981\u6DF7\u6DC6\u7684\u5B57\u6BB5\u540E\u9884\u89C8
FR-Designer_Close=\u5173\u95ED FR-Designer_Close=\u5173\u95ED
FR-Designer_Column=\u5217 FR-Designer_Column=\u5217
FR-Designer_Column_Measure=\u5217\u8F74/\u5EA6\u91CF\u503C FR-Designer_Column_Measure=\u5217\u8F74/\u5EA6\u91CF\u503C
@ -95,7 +96,7 @@ FR-Designer_Enabled=\u53EF\u7528
FR-Designer_End-Date=\u7ED3\u675F\u65E5\u671F FR-Designer_End-Date=\u7ED3\u675F\u65E5\u671F
FR-Designer_ExportAndOutput=\u5BFC\u51FA FR-Designer_ExportAndOutput=\u5BFC\u51FA
FR-Designer_FRFont=\u5B57\u4F53 FR-Designer_FRFont=\u5B57\u4F53
FR-Designer_FS_Close_Other_Templates=\u5173\u95ED\u5176\u4ED6\u6A21\u7248 FR-Designer_FS_Close_Other_Templates=\u5173\u95ED\u5176\u4ED6\u6A21\u677F
FR-Designer_File=\u6587\u4EF6 FR-Designer_File=\u6587\u4EF6
FR-Designer_Filter_Conditions=\u8FC7\u6EE4\u6761\u4EF6 FR-Designer_Filter_Conditions=\u8FC7\u6EE4\u6761\u4EF6
FR-Designer_Finish-Modify-Share=\u5B8C\u6210\u4FEE\u6539\u5E76\u5206\u4EAB FR-Designer_Finish-Modify-Share=\u5B8C\u6210\u4FEE\u6539\u5E76\u5206\u4EAB
@ -105,7 +106,7 @@ FR-Designer_Font-Family=\u5B57\u4F53\u540D\u79F0
FR-Designer_Font-Size=\u5B57\u4F53\u5927\u5C0F FR-Designer_Font-Size=\u5B57\u4F53\u5927\u5C0F
FR-Designer_Forbid_Drag_into_Adapt_Pane=\u8BE5\u5BF9\u8C61\u4E0D\u5141\u8BB8\u62D6\u5165\u8868\u5355\u4E3B\u4F53 FR-Designer_Forbid_Drag_into_Adapt_Pane=\u8BE5\u5BF9\u8C61\u4E0D\u5141\u8BB8\u62D6\u5165\u8868\u5355\u4E3B\u4F53
FR-Designer_Forbid_Drag_into_Para_Pane=\u8BE5\u5BF9\u8C61\u4E0D\u80FD\u62D6\u5165\u53C2\u6570\u9762\u677F FR-Designer_Forbid_Drag_into_Para_Pane=\u8BE5\u5BF9\u8C61\u4E0D\u80FD\u62D6\u5165\u53C2\u6570\u9762\u677F
FR-Designer_Foreground=\u524D\u666F FR-Designer_Foreground=\u989C\u8272
FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=\u6682\u4E0D\u652F\u6301\u8868\u5355\u6743\u9650\u7F16\u8F91 FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=\u6682\u4E0D\u652F\u6301\u8868\u5355\u6743\u9650\u7F16\u8F91
FR-Designer_Form-Report=\u62A5\u8868\u5757 FR-Designer_Form-Report=\u62A5\u8868\u5757
FR-Designer_Form_EmbeddedTD=\u8868\u5355(\u5185\u7F6E\u6570\u636E) FR-Designer_Form_EmbeddedTD=\u8868\u5355(\u5185\u7F6E\u6570\u636E)
@ -162,7 +163,7 @@ FR-Designer_Refresh_Parameter_In_SQL=\u662F\u5426\u5237\u65B0SQL\u4E2D\u7684\u53
FR-Designer_Reg_Expressions=\u6B63\u5219\u8868\u8FBE\u5F0F FR-Designer_Reg_Expressions=\u6B63\u5219\u8868\u8FBE\u5F0F
FR-Designer_Reg_Max_Length=\u6700\u5927\u957F\u5EA6 FR-Designer_Reg_Max_Length=\u6700\u5927\u957F\u5EA6
FR-Designer_Reg_Min_Length=\u6700\u5C0F\u957F\u5EA6 FR-Designer_Reg_Min_Length=\u6700\u5C0F\u957F\u5EA6
FR-Designer_ReportColumns-Columns=\u5217\u5206\u680F FR-Designer_ReportColumns-Columns=\u5206\u680F
FR-Designer_Return-Date=\u8FD4\u56DE\u65E5\u671F FR-Designer_Return-Date=\u8FD4\u56DE\u65E5\u671F
FR-Designer_RichText=\u63D2\u5165\u5BCC\u6587\u672C FR-Designer_RichText=\u63D2\u5165\u5BCC\u6587\u672C
FR-Designer_RichTextEditor=\u5BCC\u6587\u672C\u7F16\u8F91\u5668 FR-Designer_RichTextEditor=\u5BCC\u6587\u672C\u7F16\u8F91\u5668
@ -357,7 +358,7 @@ FR-Designer-Series_Dismenber_As_Single=\u8FDE\u7EED\u5206\u9694\u7B26\u89C6\u4E3
FR-Designer_KeyPoint=\u5173\u952E\u8282\u70B9 FR-Designer_KeyPoint=\u5173\u952E\u8282\u70B9
FR-Designer_loadedTreeModel=\u52A0\u8F7D\u5931\u8D25,\u8BF7\u68C0\u67E5\u540E\u91CD\u8BD5 FR-Designer_loadedTreeModel=\u52A0\u8F7D\u5931\u8D25,\u8BF7\u68C0\u67E5\u540E\u91CD\u8BD5
FR-Designer-Failed_to_load_the_plugin=\u65E0\u6CD5\u52A0\u8F7D\u63D2\u4EF6\uFF0C\u8BF7\u66F4\u65B0\u63D2\u4EF6\uFF1A FR-Designer-Failed_to_load_the_plugin=\u65E0\u6CD5\u52A0\u8F7D\u63D2\u4EF6\uFF0C\u8BF7\u66F4\u65B0\u63D2\u4EF6\uFF1A
FR-Designer-Plugin_Please_Update_Jar=\u8BF7\u66F4\u65B0Jar\u5305\u81F3\: FR-Designer-Plugin_Please_Update_Jar=\u8BF7\u66F4\u65B0Jar\u5305, \u63D2\u4EF6\u9700\u6C42\u6700\u4F4E\u7248\u672C
FR-Designer-Invalid_Page_Number=\u65E0\u6548\u9875\u7801 FR-Designer-Invalid_Page_Number=\u65E0\u6548\u9875\u7801
FR-Designer_Get-CubeGetting=\u83B7\u53D6cube FR-Designer_Get-CubeGetting=\u83B7\u53D6cube
FR-Designer_XMLA_Database=\u6570\u636E\u5E93 FR-Designer_XMLA_Database=\u6570\u636E\u5E93
@ -844,7 +845,6 @@ PageSetup-Placement_Center_on_Page=\u5C45\u4E2D\u65B9\u5F0F
sure_to_delete=\u786E\u8BA4\u5220\u9664 sure_to_delete=\u786E\u8BA4\u5220\u9664
Already_exists_not_add_repeat=\u5DF2\u7ECF\u5B58\u5728\uFF0C\u8BF7\u4E0D\u8981\u91CD\u590D\u6DFB\u52A0 Already_exists_not_add_repeat=\u5DF2\u7ECF\u5B58\u5728\uFF0C\u8BF7\u4E0D\u8981\u91CD\u590D\u6DFB\u52A0
Axis_Title=\u8F74\u6807\u9898 Axis_Title=\u8F74\u6807\u9898
FR-Designer-Plugin_Install_Failed=\u63D2\u4EF6\u5B89\u88C5\u5931\u8D25
FR-Designer-Widget-Style_Frame=\u6846\u67B6 FR-Designer-Widget-Style_Frame=\u6846\u67B6
MainGraduationUnit=\u4E3B\u8981\u523B\u5EA6\u5355\u4F4D MainGraduationUnit=\u4E3B\u8981\u523B\u5EA6\u5355\u4F4D
Second_Axis=\u6B21\u5750\u6807\u8F74 Second_Axis=\u6B21\u5750\u6807\u8F74
@ -857,7 +857,7 @@ RP_Authority_Edit=\u6743\u9650\u7F16\u8F91
Warnning=\u63D0\u9192 Warnning=\u63D0\u9192
RoleName_Can_Not_Be_Null=\u89D2\u8272\u540D\u4E0D\u5141\u8BB8\u4E3A\u7A7A\u4E14\u4E0D\u80FD\u91CD\u590D RoleName_Can_Not_Be_Null=\u89D2\u8272\u540D\u4E0D\u5141\u8BB8\u4E3A\u7A7A\u4E14\u4E0D\u80FD\u91CD\u590D
Application=\u5E94\u7528\u7A0B\u5E8F Application=\u5E94\u7528\u7A0B\u5E8F
Formula_Dictionary_Display_Examples_Html=<html>\u5B9E\u9645\u503C\u8303\u56F4\u4E3A \=range(100),\u5BF9\u5B9E\u9645\u503C\u8303\u56F4\u5185\u7684\u6BCF\u4E2A$$$\u7684\u663E\u793A\u516C\u5F0F\u4E3A \=0 - $$$\uFF0C<br>\u5219\u6700\u7EC8\u7684\u7ED3\u679C\u5B9E\u9645\u503C\u4E3A1, 2, ..., 100,\u663E\u793A\u503C\u4E3A-1, -2, ... , -100\u3002<br>&nbsp;</html> Formula_Dictionary_Display_Examples_Html=<html>\u5B9E\u9645\u503C\u8303\u56F4\u4E3A \
ECP-error_pwd=\u5BC6\u7801\u9519\u8BEF ECP-error_pwd=\u5BC6\u7801\u9519\u8BEF
FR-Hyperlink_ChartHyperlink=\u56FE\u8868\u8D85\u94FE FR-Hyperlink_ChartHyperlink=\u56FE\u8868\u8D85\u94FE
M_Edit-FormatBrush=\u683C\u5F0F\u5237(B) M_Edit-FormatBrush=\u683C\u5F0F\u5237(B)
@ -988,7 +988,7 @@ Background-Background_is_NULL=\u6CA1\u6709\u80CC\u666F
FR-Designer_Sytle-FRFont=\u5B57\u4F53 FR-Designer_Sytle-FRFont=\u5B57\u4F53
Gradation=\u5C42\u6B21 Gradation=\u5C42\u6B21
The_current_list_is_empty=\u5F53\u524D\u5217\u8868\u4E3A\u7A7A The_current_list_is_empty=\u5F53\u524D\u5217\u8868\u4E3A\u7A7A
Formula_Dictionary_Display_Examples=\ \u5B9E\u9645\u503C\u8303\u56F4\u4E3A \=range(100),\u5BF9\u5B9E\u9645\u503C\u8303\u56F4\n \u5185\u7684\u6BCF\u4E2A$$$\u7684\u663E\u793A\u516C\u5F0F\u4E3A \=0 - $$$\uFF0C\n \u5219\u6700\u7EC8\u7684\u7ED3\u679C\u5B9E\u9645\u503C\u4E3A1, 2, ..., 100, \n \u663E\u793A\u503C\u4E3A-1, -2, ... , -100\u3002 Formula_Dictionary_Display_Examples=\ \u5B9E\u9645\u503C\u8303\u56F4\u4E3A \
Schedule-Template_Parameter=\u6A21\u677F\u53C2\u6570 Schedule-Template_Parameter=\u6A21\u677F\u53C2\u6570
JSShow=\u52A8\u6001\u5C55\u793A JSShow=\u52A8\u6001\u5C55\u793A
Level_coordinates=\u5C42\u6B21\u5750\u6807 Level_coordinates=\u5C42\u6B21\u5750\u6807
@ -1038,7 +1038,7 @@ FR-Designer-Tree_Width=\u5BBD\u5EA6
Record=\u8BB0\u5F55 Record=\u8BB0\u5F55
Poly-Report_Component=\u805A\u5408\u62A5\u8868\u7EC4\u4EF6 Poly-Report_Component=\u805A\u5408\u62A5\u8868\u7EC4\u4EF6
Options=\u9009\u9879 Options=\u9009\u9879
NS-war-remote=\u9519\u8BEF\u4EE3\u7801\:1117 \u538B\u7F29\u90E8\u7F72\u4E0D\u652F\u6301\u8FDC\u7A0B\u8BBE\u8BA1 NS-war-remote=\u9519\u8BEF\u4EE3\u7801\:11100017 \u538B\u7F29\u90E8\u7F72\u4E0D\u652F\u6301\u8FDC\u7A0B\u8BBE\u8BA1
Sche-Minute=\u5206 Sche-Minute=\u5206
Three_Rows_Of_Three_Grid=\u4E09\u884C\u4E09\u5217\u7684\u683C\u5B50 Three_Rows_Of_Three_Grid=\u4E09\u884C\u4E09\u5217\u7684\u683C\u5B50
WorkSheet=\u81EA\u7531\u62A5\u8868 WorkSheet=\u81EA\u7531\u62A5\u8868
@ -1206,7 +1206,6 @@ FS_Start_Date=\u8D77\u59CB\u65E5\u671F
FR-ConditionB_Operator=\u64CD\u4F5C\u7B26 FR-ConditionB_Operator=\u64CD\u4F5C\u7B26
Printer-Alias=\u522B\u540D Printer-Alias=\u522B\u540D
DS-Class_Name=\u7C7B\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 Sort-Original=\u4E0D\u6392\u5E8F
Utils-Top_to_Bottom_a=\u4ECE\u4E0A\u5F80\u4E0B Utils-Top_to_Bottom_a=\u4ECE\u4E0A\u5F80\u4E0B
Parameter-String=\u5B57\u7B26\u4E32 Parameter-String=\u5B57\u7B26\u4E32
@ -1370,7 +1369,7 @@ Not_Exsit=\u4E0D\u5B58\u5728\u4E8E\u62A5\u8868
Utils-Insert_Row=\u63D2\u5165\u884C Utils-Insert_Row=\u63D2\u5165\u884C
Utils-Delete_Row=\u5220\u9664\u884C Utils-Delete_Row=\u5220\u9664\u884C
not_support_authority_edit=\u8BE5\u5143\u7D20\u4E0D\u652F\u6301\u6743\u9650\u63A7\u5236 not_support_authority_edit=\u8BE5\u5143\u7D20\u4E0D\u652F\u6301\u6743\u9650\u63A7\u5236
Formula_Tips=\u516C\u5F0F\u5FC5\u987B\u4EE5"\="\u53F7\u5F00\u5934\uFF01 Formula_Tips=\u516C\u5F0F\u5FC5\u987B\u4EE5"\
FR-Action_Copy=\u590D\u5236 FR-Action_Copy=\u590D\u5236
Compile_Success=\u7F16\u8BD1\u6210\u529F Compile_Success=\u7F16\u8BD1\u6210\u529F
BackgroundTexture-RecycledPaper=\u518D\u751F\u7EB8 BackgroundTexture-RecycledPaper=\u518D\u751F\u7EB8
@ -1406,7 +1405,7 @@ Rename=\u91CD\u547D\u540D
Widget-Load_By_Async=\u5F02\u6B65\u52A0\u8F7D Widget-Load_By_Async=\u5F02\u6B65\u52A0\u8F7D
Shape=\u56FE\u5F62 Shape=\u56FE\u5F62
BindColumn-This_Condition_has_been_existed=\u6B64\u6761\u4EF6\u5DF2\u7ECF\u5B58\u5728 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 NS-exception_readError=\u9519\u8BEF\u4EE3\u7801\:11300005 \u6A21\u677F\u6587\u4EF6\u89E3\u6790\u51FA\u9519
Set_Column_Title_Start=\u8BBE\u7F6E\u91CD\u590D\u6807\u9898\u5217 Set_Column_Title_Start=\u8BBE\u7F6E\u91CD\u590D\u6807\u9898\u5217
Fri=\u4E94 Fri=\u4E94
M_Report-Report_Parameter=\u6A21\u677F\u53C2\u6570 M_Report-Report_Parameter=\u6A21\u677F\u53C2\u6570
@ -1459,7 +1458,6 @@ DBCP_TEST_ON_BORROW=\u83B7\u53D6\u8FDE\u63A5\u524D\u68C0\u9A8C
FR-Designer_layerIndex=\u4F9D\u8D56\u7684\u5C42\u6570 FR-Designer_layerIndex=\u4F9D\u8D56\u7684\u5C42\u6570
WEB-Write_Setting=\u586B\u62A5\u9875\u9762\u8BBE\u7F6E WEB-Write_Setting=\u586B\u62A5\u9875\u9762\u8BBE\u7F6E
M-New_WorkBook=\u65B0\u5EFA\u5DE5\u4F5C\u7C3F 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 Datasource-Maximum_Number_of_Preview_Rows=\u6700\u5927\u7684\u9884\u89C8\u884C\u6570
ExpandD-Cell_Expand_Attributes=\u6269\u5C55\u5C5E\u6027 ExpandD-Cell_Expand_Attributes=\u6269\u5C55\u5C5E\u6027
Select_the_repeated_row_and_column=\u9009\u62E9\u9700\u8981\u91CD\u590D\u7684\u884C\u5217 Select_the_repeated_row_and_column=\u9009\u62E9\u9700\u8981\u91CD\u590D\u7684\u884C\u5217
@ -1535,7 +1533,7 @@ FR-Designer_Cancel=\u53D6\u6D88
Button-Group-Display-Columns=\u5C55\u793A\u5217\u6570 Button-Group-Display-Columns=\u5C55\u793A\u5217\u6570
Widget-Height=\u63A7\u4EF6\u9AD8\u5EA6 Widget-Height=\u63A7\u4EF6\u9AD8\u5EA6
Examples=\u4F8B\u5B50 Examples=\u4F8B\u5B50
Formula_Dictionary_Display_Example=\u5B9E\u9645\u503C\u8303\u56F4\u4E3A \=range(100), \u5BF9\u5B9E\u9645\u503C\u8303\u56F4\u5185\u7684\u6BCF\u4E2A$$$\u7684\u663E\u793A\u516C\u5F0F\u4E3A \=0 - $$$\uFF0C\n\u5219\u6700\u7EC8\u7684\u7ED3\u679C\u5B9E\u9645\u503C\u4E3A1, 2, ..., 100, \u663E\u793A\u503C\u4E3A-1, -2, ... , -100\u3002 Formula_Dictionary_Display_Example=\u5B9E\u9645\u503C\u8303\u56F4\u4E3A \
StyleAlignment-Horizontal=\u6C34\u5E73\u5BF9\u9F50 StyleAlignment-Horizontal=\u6C34\u5E73\u5BF9\u9F50
HyperLink_Must_Alone_Reset=\u591A\u4E2A\u8D85\u94FE HyperLink_Must_Alone_Reset=\u591A\u4E2A\u8D85\u94FE
ExpandD-Expand_Direction=\u6269\u5C55\u65B9\u5411 ExpandD-Expand_Direction=\u6269\u5C55\u65B9\u5411
@ -1986,18 +1984,22 @@ FR-Designer_Role=\u89D2\u8272
FR-Designer_Permissions=\u6743\u9650 FR-Designer_Permissions=\u6743\u9650
FR-Designer_Form_Button=\u6309\u94AE FR-Designer_Form_Button=\u6309\u94AE
FR-Designer_WF_Name=\u540D\u79F0 FR-Designer_WF_Name=\u540D\u79F0
FR-Designer_Double=\u5C0F\u6570 FR-Designer_AlphaFine_Enable=\u5F00\u542F
FR-Designer_Query=\u67E5\u8BE2 FR-Designer_AlphaFine_EnableAlphaFine=\u5F00\u542FAlphaFine\u529F\u80FD
FR-Designer_Font=\u5B57\u4F53 FR-Designer_AlphaFine_EnableInternet=\u8054\u7F51
FR-Designer_Confirm=\u786E\u8BA4 FR-Designer_AlphaFine_EnableInternetSearch=\u8054\u7F51\u641C\u7D22
FR-Designer_Parameter=\u53C2\u6570 FR-Designer_AlphaFine_Shortcut_Config=\u5FEB\u6377\u952E\u914D\u7F6E
FR-Designer-Plugin_Plugin=\u63D2\u4EF6 FR-Designer_AlphaFine_SearchRange=\u641C\u7D22\u8303\u56F4
FR-Designer_Background=\u80CC\u666F FR-Designer-Plugin_Addon=\u5E94\u7528\u4E2D\u5FC3
Template=\u6A21\u7248 FR-Designer_Templates=\u6A21\u677F
FR-Designer_Templates_Content=\u6A21\u677F\u5185\u5BB9
FR-Designer_Original_Marked_Filed=\u539F\u59CB\u6807\u8BB0\u5B57\u6BB5 FR-Designer_AlphaFine_ShowAll=\u663E\u793A\u5168\u90E8
FR-Designer_Build_Tree_Accord_Marked_Filed_Length=\u4F9D\u8D56\u6240\u9009\u6570\u636E\u96C6\u7684\u6807\u8BB0\u5B57\u6BB5\u7684\u957F\u5EA6\u6784\u5EFA\u6811 FR-Designer_AlphaFine_Recommend=\u731C\u60A8\u9700\u8981
FR-Designer_Tree_Data_Field=\u6811\u6570\u636E\u5B57\u6BB5 FR-Designer_AlphaFine_Latest=\u672C\u5730\u5E38\u7528
FR-Designer_Parent_Marked_Field=\u7236\u6807\u8BB0\u5B57\u6BB5 FR-Designer_AlphaFine_ShowLess=\u6536\u8D77
FR-Designer_Build_Tree_Accord_Parent_Marked_Filed=\u4F9D\u8D56\u6240\u9009\u6570\u636E\u96C6\u7684\u7236\u6807\u8BB0\u5B57\u6BB5\u6784\u5EFA\u6811 FR-Designer_Alphafine=AlphaFine\u667A\u80FD\u641C\u7D22
FR-Product_Demo=\u4EA7\u54C1\u6F14\u793A FR-Designer-Alphafine_No_Remind=\u4E0D\u518D\u63D0\u793A
FR-Designer_AlphaFine_NoResult=\u6682\u65E0\u76F8\u5173\u5185\u5BB9
FR-Designer_ConnectionFailed=\u94FE\u63A5\u5931\u8D25
FR-Designer_NoResult=\u6682\u4E0D\u652F\u6301\u663E\u793A
FR-Designer-AlphaFine_SetShortcuts=\u8BF7\u76F4\u63A5\u5728\u952E\u76D8\u4E0A\u6309\u4E24\u4E2A\u7EC4\u5408\u952E

270
designer_base/src/com/fr/design/locale/designer_zh_TW.properties

@ -1,6 +1,7 @@
# generated time: \u661F\u671F\u56DB \u5341\u4E00\u6708 24 12:02:51 CST 2016
FR-Designer-BBSLogin_Account=\u767B\u5165\u5E33\u865F FR-Designer-BBSLogin_Account=\u767B\u5165\u5E33\u865F
FR-Designer-BBSLogin_Connection-Failure=\u767B\u5165\u9023\u63A5\u5931\u6557\uFF0C\u8ACB\u6AA2\u67E5\u7576\u524D\u7DB2\u8DEF\u72C0\u614B FR-Designer-BBSLogin_Connection-Failure=\u767B\u5165\u9023\u63A5\u5931\u6557\uFF0C\u8ACB\u6AA2\u67E5\u7576\u524D\u7DB2\u8DEF\u72C0\u614B
FR-Designer-BBSLogin_Connection-Failure-Tip=\u9023\u7DDA\u5931\u6557\u63D0\u793A FR-Designer-BBSLogin_Connection-Failure-Tip=\u9023\u7DDA\u5931\u6557\u63D0\u793A
FR-Designer-BBSLogin_Forgot-Password=\u5FD8\u8A18\u5BC6\u78BC FR-Designer-BBSLogin_Forgot-Password=\u5FD8\u8A18\u5BC6\u78BC
FR-Designer-BBSLogin_Login=\u767B\u9304 FR-Designer-BBSLogin_Login=\u767B\u9304
FR-Designer-BBSLogin_Login-Failure-Tip=\u5E33\u865F\u6216\u5BC6\u78BC\u932F\u8AA4\uFF0C\u8ACB\u91CD\u65B0\u767B\u9304 FR-Designer-BBSLogin_Login-Failure-Tip=\u5E33\u865F\u6216\u5BC6\u78BC\u932F\u8AA4\uFF0C\u8ACB\u91CD\u65B0\u767B\u9304
@ -8,10 +9,10 @@ FR-Designer-BBSLogin_Password=\u5BC6 \u78BC
FR-Designer-BBSLogin_Password-Empty-Tip=\u5BC6\u78BC\u4E0D\u80FD\u70BA\u7A7A FR-Designer-BBSLogin_Password-Empty-Tip=\u5BC6\u78BC\u4E0D\u80FD\u70BA\u7A7A
FR-Designer-BBSLogin_Register-Account=\u8A3B\u518A\u5E33\u865F FR-Designer-BBSLogin_Register-Account=\u8A3B\u518A\u5E33\u865F
FR-Designer-BBSLogin_Switch-Account=\u5207\u63DB\u5E33\u865F FR-Designer-BBSLogin_Switch-Account=\u5207\u63DB\u5E33\u865F
FR-Designer-BBSLogin_Privite-Message=\u79C1\u4EBA\u8A0A\u606F FR-Designer-BBSLogin_Privite-Message=\u79C1\u4EBA\u6D88\u606F
FR-Designer-BBSLogin_Times=\u6B21 FR-Designer-BBSLogin_Times=\u6B21
FR-Designer-BBSLogin_Username-Empty-Tip=\u4F7F\u7528\u8005\u70BA\u7A7A\u63D0\u793A FR-Designer-BBSLogin_Username-Empty-Tip=\u4F7F\u7528\u8005\u70BA\u7A7A\u63D0\u793A
FR-Designer-Basic_More_Color=\u66F4\u591A\u984F\u8272 FR-Designer-Basic_More_Color=\u66F4\u591A\u984F\u8272...
FR-Designer-Estate_Any=\u4E0D\u9650 FR-Designer-Estate_Any=\u4E0D\u9650
FR-Designer-Estate_Default_Font=\u9810\u8A2D\u5B57\u9AD4 FR-Designer-Estate_Default_Font=\u9810\u8A2D\u5B57\u9AD4
FR-Designer-Estate_Default_Null=\u9810\u8A2D\u70BA\u7A7A FR-Designer-Estate_Default_Null=\u9810\u8A2D\u70BA\u7A7A
@ -105,8 +106,8 @@ FR-Designer_Font-Family=\u5B57\u9AD4\u540D\u7A31
FR-Designer_Font-Size=\u5B57\u9AD4\u5927\u5C0F FR-Designer_Font-Size=\u5B57\u9AD4\u5927\u5C0F
FR-Designer_Forbid_Drag_into_Adapt_Pane=\u8A72\u5C0D\u8C61\u4E0D\u5141\u8A31\u62D6\u5165\u8868\u55AE\u4E3B\u9AD4 FR-Designer_Forbid_Drag_into_Adapt_Pane=\u8A72\u5C0D\u8C61\u4E0D\u5141\u8A31\u62D6\u5165\u8868\u55AE\u4E3B\u9AD4
FR-Designer_Forbid_Drag_into_Para_Pane=\u8A72\u5C0D\u8C61\u4E0D\u80FD\u62D6\u5165\u53C3\u6578\u9762\u677F FR-Designer_Forbid_Drag_into_Para_Pane=\u8A72\u5C0D\u8C61\u4E0D\u80FD\u62D6\u5165\u53C3\u6578\u9762\u677F
FR-Designer_Foreground=\u5B57\u5F62\u8272\u5F69 FR-Designer_Foreground=\u984F\u8272
FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=\u66AB\u4E0D\u652F\u63F4\u8868\u55AE\u6B0A\u9650\u7DE8\u8F2F FR-Designer_Form-AuthorityEdited_Cannot_be_Supported=\u66AB\u4E0D\u652F\u6301\u8868\u55AE\u6B0A\u9650\u7DE8\u8F2F
FR-Designer_Form-Report=\u5831\u8868\u683C\u5F0F FR-Designer_Form-Report=\u5831\u8868\u683C\u5F0F
FR-Designer_Form_EmbeddedTD=\u5167\u5D01\u683C\u5F0F FR-Designer_Form_EmbeddedTD=\u5167\u5D01\u683C\u5F0F
FR-Designer_Form_Module=\u6A21\u7D44\u683C\u5F0F FR-Designer_Form_Module=\u6A21\u7D44\u683C\u5F0F
@ -121,7 +122,7 @@ FR-Designer_Hyperlink-Form_link=\u7576\u524D\u8868\u55AE\u5C0D\u8C61
FR-Designer_IDCard=\u8EAB\u4EFD\u8B49 FR-Designer_IDCard=\u8EAB\u4EFD\u8B49
FR-Designer_Icon=\u5716\u793A FR-Designer_Icon=\u5716\u793A
FR-Designer_Index=\u7D22\u5F15 FR-Designer_Index=\u7D22\u5F15
FR-Designer_Input_Rule=\u586B\u5BEB\u898F\u5247 FR-Designer_Input_Rule=\u8F38\u5165\u898F\u5247
FR-Designer_Language_Default=\u9810\u8A2D\u8A9E\u8A00 FR-Designer_Language_Default=\u9810\u8A2D\u8A9E\u8A00
FR-Designer_Layout=\u5E03\u5C40\u3001\u898F\u5283 FR-Designer_Layout=\u5E03\u5C40\u3001\u898F\u5283
FR-Designer_Layout-HBox=\u6C34\u5E73\u76D2\u5B50\u5E03\u5C40 FR-Designer_Layout-HBox=\u6C34\u5E73\u76D2\u5B50\u5E03\u5C40
@ -136,7 +137,7 @@ FR-Designer_M-Repeat-Freeze=\u91CD\u8907\u8207\u51CD\u7D50
FR-Designer_M-Server=\u4F3A\u670D\u5668 FR-Designer_M-Server=\u4F3A\u670D\u5668
FR-Designer_M-SwitchWorkspace=\u5207\u63DB\u5DE5\u4F5C\u5340\u9593 FR-Designer_M-SwitchWorkspace=\u5207\u63DB\u5DE5\u4F5C\u5340\u9593
FR-Designer_M-Template=\u7BC4\u672C FR-Designer_M-Template=\u7BC4\u672C
FR-Designer_MDX_Explain=\u8A9E\u6CD5\u683C\u5F0F\u53C3\u8003MDX\u8A9E\u6CD5\u3002\n\u4F8B\u5982\uFF1A\nWITH\nMEMBER [Measures].[Special Discount] AS\n[Measures].[Discount Amount] * 1.5\nSELECT\n[Measures].[Special Discount] on COLUMNS,\nNON EMPTY [Product].[Product].MEMBERS ON Rows\nFROM [Adventure Works]\nWHERE [Product].[Category].[Bikes]\n\u8A3B\uFF1ACOLUMNS\u3001ROWS\u53EF\u4EE5\u4F7F\u75280\u30011\u4EE3\u66FF\u67E5\u8EF8\u53EA\u652F\u63F4\u8FD4\u56DE\u5169\u500B\u8EF8\u3002 FR-Designer_MDX_Explain=\u8A9E\u6CD5\u683C\u5F0F\u53C3\u8003MDX\u8A9E\u6CD5\u3002\n\u4F8B\u5982\uFF1A\nWITH\nMEMBER [Measures].[Special Discount] AS\n[Measures].[Discount Amount] * 1.5\nSELECT\n[Measures].[Special Discount] on COLUMNS,\nNON EMPTY [Product].[Product].MEMBERS ON Rows\nFROM [Adventure Works]\nWHERE [Product].[Category].[Bikes]\n\u8A3B\uFF1ACOLUMNS\u3001ROWS\u53EF\u4EE5\u4F7F\u75280\u30011\u4EE3\u66FF\u67E5\u8EF8\u53EA\u652F\u6301\u8FD4\u56DE\u5169\u500B\u8EF8\u3002
FR-Designer_M_Help-About_Software=\u95DC\u65BC\u8EDF\u9AD4 FR-Designer_M_Help-About_Software=\u95DC\u65BC\u8EDF\u9AD4
FR-Designer_M_Help-Tutorial=\u64CD\u4F5C\u8AAA\u660E FR-Designer_M_Help-Tutorial=\u64CD\u4F5C\u8AAA\u660E
FR-Designer_Max_Value=\u6700\u5927\u503C FR-Designer_Max_Value=\u6700\u5927\u503C
@ -151,7 +152,7 @@ FR-Designer_Para-Body=\u53C3\u6578\u672C\u6587
FR-Designer_Parameters=\u53C3\u6578 FR-Designer_Parameters=\u53C3\u6578
FR-Designer_Phone=\u96FB\u8A71 FR-Designer_Phone=\u96FB\u8A71
FR-Designer_PostCode=\u90F5\u905E\u5340\u865F FR-Designer_PostCode=\u90F5\u905E\u5340\u865F
FR-Designer_Present=\u6A21\u5F0F FR-Designer_Present=\u7576\u4E0B
FR-Designer_Preview=\u9810\u89BD FR-Designer_Preview=\u9810\u89BD
FR-Designer_Preview-Data-Confusion=\u6DF7\u6DC6\u8CC7\u6599\u9810\u89BD FR-Designer_Preview-Data-Confusion=\u6DF7\u6DC6\u8CC7\u6599\u9810\u89BD
FR-Designer_Product_Demo=\u7522\u54C1\u5C55\u793A FR-Designer_Product_Demo=\u7522\u54C1\u5C55\u793A
@ -161,9 +162,9 @@ FR-Designer_Refresh_Parameter_In_SQL=\u5728SQL\u4E2D\u91CD\u65B0\u6574\u7406\u76
FR-Designer_Reg_Expressions=\u6B63\u5247\u8868\u9054\u5F0F FR-Designer_Reg_Expressions=\u6B63\u5247\u8868\u9054\u5F0F
FR-Designer_Reg_Max_Length=\u6700\u5927\u9577\u5EA6 FR-Designer_Reg_Max_Length=\u6700\u5927\u9577\u5EA6
FR-Designer_Reg_Min_Length=\u6700\u5C0F\u9577\u5EA6 FR-Designer_Reg_Min_Length=\u6700\u5C0F\u9577\u5EA6
FR-Designer_ReportColumns-Columns=\u6B04\u5206\u6B04 FR-Designer_ReportColumns-Columns=\u5831\u8868\u6B04\u4F4D
FR-Designer_Return-Date=\u8FD4\u56DE\u65E5\u671F FR-Designer_Return-Date=\u8FD4\u56DE\u65E5\u671F
FR-Designer_RichText=RTF FR-Designer_RichText= RTF
FR-Designer_RichTextEditor=RTF\u7DE8\u8F2F\u5668 FR-Designer_RichTextEditor=RTF\u7DE8\u8F2F\u5668
FR-Designer_Row=\u5217 FR-Designer_Row=\u5217
FR-Designer_Row_Dimension=\u5217\u7DAD\u5EA6 FR-Designer_Row_Dimension=\u5217\u7DAD\u5EA6
@ -180,7 +181,7 @@ FR-Designer_Support_QQ=\u652F\u63F4QQ
FR-Designer_Swatch=\u6A23\u54C1 FR-Designer_Swatch=\u6A23\u54C1
FR-Designer_Tab_title=tab\u6A19\u984C FR-Designer_Tab_title=tab\u6A19\u984C
FR-Designer_TableData=\u8CC7\u6599\u96C6 FR-Designer_TableData=\u8CC7\u6599\u96C6
FR-Designer_Thank_guest=\u611F\u8B1D\u5BA2\u6236 FR-Designer_Thank_guest=\u611F\u8B1D\u5BA2\u6236
FR-Designer_Thanks-To=\u9CF4\u8B1D FR-Designer_Thanks-To=\u9CF4\u8B1D
FR-Designer_Title=\u6A19\u984C FR-Designer_Title=\u6A19\u984C
FR-Designer_Total=\u7E3D\u5171 FR-Designer_Total=\u7E3D\u5171
@ -194,10 +195,10 @@ FR-Designer_VerticalBoxLayout=\u6A6B\u5411\u4F48\u5C40
FR-Designer_Visible=\u53EF\u898B FR-Designer_Visible=\u53EF\u898B
FR-Designer_WLayout-Border-ToolTips=\u908A\u754C\u4F48\u5C40 FR-Designer_WLayout-Border-ToolTips=\u908A\u754C\u4F48\u5C40
FR-Designer_WaterMark=\u6C34\u5370 FR-Designer_WaterMark=\u6C34\u5370
FR-Designer_Widget=\u63A7\u5236\u9805 FR-Designer_Widget=\u5C0F\u5DE5\u5177
FR-Designer_Widget-Settings=\u8A2D\u5B9A FR-Designer_Widget-Settings=\u8A2D\u5B9A
FR-Designer_Widget-Visible=\u53EF\u898B FR-Designer_Widget-Visible=\u53EF\u898B
FR-Designer_XMLA_Explain=\u5728\u4F7F\u7528\u591A\u7DAD\u8CC7\u6599\u96C6\u53D6\u6578\u524D\uFF0C\u60A8\u9996\u5148\u9700\u8981\u4E00\u500B\u53EF\u6210\u529F\u9023\u63A5\u7684\u591A\u7DAD\u8CC7\u6599\u5EAB\u9023\u63A5\u3002\n\u8A2D\u5B9A\u5B8C\u8CC7\u6599\u9023\u63A5\u5F8C\uFF0C\u67E5\u8A62\u8CC7\u6599\u6642,\u6709\u5169\u7A2E\u4E0D\u540C\u7684\u53D6\u6578\u624B\u6BB5\u3002\n1.\u7C21\u55AE\u901A\u7528\u67E5\u8A62\uFF1A\n\u7C21\u55AE\u901A\u7528\u67E5\u8A62\u9069\u7528\u65BCFineBI\u53CA\u5176\u4ED6\u591A\u7DAD\u8CC7\u6599\u5EAB\u3002\n\u4F7F\u7528\u7C21\u55AE\u901A\u7528\u67E5\u8A62\uFF0CFR\u5C07\u81EA\u52D5\u8B80\u53D6\u9078\u64C7cube\u7684\u5C64\u6B21\u7D50\u69CB\uFF0C\u60A8\u53EF\u4EE5\u76F4\u63A5\u9078\u64C7\u6240\u9700\u7684\u5EA6\u91CF\u503C\u53CA\u7DAD\u5EA6\uFF0C\u4E26\u6DFB\u52A0\u7BE9\u9078\u689D\u4EF6\uFF0CFR\u6703\u6839\u64DA\u60A8\u7684\u9078\u64C7\u81EA\u52D5\u67E5\u8A62\u8CC7\u6599\u3002\n\u7C21\u55AE\u901A\u7528\u67E5\u8A62\u50C5\u652F\u63F4\u7DAD\u5EA6\u53CA\u5EA6\u91CF\u503C\u5169\u500B\u8EF8\u7684\u67E5\u8A62\u3002\n\u5728\u5EA6\u91CF\u503C\u53CA\u7DAD\u5EA6\u8A2D\u5B9A\u4E2D\uFF0C\u76EE\u524D\u60A8\u53EA\u80FD\u9078\u64C7\u6240\u9700\u7DAD\u5EA6\uFF0C\u7121\u6CD5\u624B\u52D5\u4FEE\u6539\u3002\n\u904E\u6FFE\u689D\u4EF6\u63A1\u7528OPEN SQL\u8A9E\u6CD5\uFF0C\u60A8\u53EF\u4EE5\u9375\u5165${abc}\u4F5C\u70BA\u4E00\u500B\u53C3\u6578\uFF0C\u7528\u6CD5\u540C\u8CC7\u6599\u5EAB\u8CC7\u6599\u96C6\u3002\n2.\u81EA\u5B9A\u7FA9MDX\u67E5\u8A62\uFF1A\n\u4F7F\u7528\u81EA\u5B9A\u7FA9MDX\u67E5\u8A62\uFF0C\u60A8\u53EF\u4EE5\u81EA\u5B9A\u7FA9\u7FA9MDX\u8A9E\u53E5\u67E5\u8A62\u6240\u9700\u7D50\u679C\u3002\n\u6CE8\u610F\uFF0C\u81EA\u5B9A\u7FA9MDX\u67E5\u8A62\u4E5F\u53EA\u652F\u63F4\u5169\u500B\u8EF8\u7684\u67E5\u8A62\u3002\n\u60A8\u53EF\u9375\u5165${abc}\u4F5C\u70BA\u4E00\u500B\u53C3\u6578\uFF0C\u7528\u6CD5\u540C\u8CC7\u6599\u5EAB\u8CC7\u6599\u96C6\u3002\nFineBI\u7684cube\u4E0D\u652F\u63F4MDX\u67E5\u8A62\u3002 FR-Designer_XMLA_Explain=\u5728\u4F7F\u7528\u591A\u7DAD\u8CC7\u6599\u96C6\u53D6\u6578\u524D\uFF0C\u60A8\u9996\u5148\u9700\u8981\u4E00\u500B\u53EF\u6210\u529F\u9023\u63A5\u7684\u591A\u7DAD\u8CC7\u6599\u5EAB\u9023\u63A5\u3002\n\u8A2D\u5B9A\u5B8C\u8CC7\u6599\u9023\u63A5\u5F8C\uFF0C\u67E5\u8A62\u8CC7\u6599\u6642,\u6709\u5169\u7A2E\u4E0D\u540C\u7684\u53D6\u6578\u624B\u6BB5\u3002\n1.\u7C21\u55AE\u901A\u7528\u67E5\u8A62\uFF1A\n\u7C21\u55AE\u901A\u7528\u67E5\u8A62\u9069\u7528\u65BCFineBI\u53CA\u5176\u4ED6\u591A\u7DAD\u8CC7\u6599\u5EAB\u3002\n\u4F7F\u7528\u7C21\u55AE\u901A\u7528\u67E5\u8A62\uFF0CFR\u5C07\u81EA\u52D5\u8B80\u53D6\u9078\u64C7cube\u7684\u5C64\u6B21\u7D50\u69CB\uFF0C\u60A8\u53EF\u4EE5\u76F4\u63A5\u9078\u64C7\u6240\u9700\u7684\u5EA6\u91CF\u503C\u53CA\u7DAD\u5EA6\uFF0C\u4E26\u6DFB\u52A0\u7BE9\u9078\u689D\u4EF6\uFF0CFR\u6703\u6839\u64DA\u60A8\u7684\u9078\u64C7\u81EA\u52D5\u67E5\u8A62\u8CC7\u6599\u3002\n\u7C21\u55AE\u901A\u7528\u67E5\u8A62\u50C5\u652F\u6301\u7DAD\u5EA6\u53CA\u5EA6\u91CF\u503C\u5169\u500B\u8EF8\u7684\u67E5\u8A62\u3002\n\u5728\u5EA6\u91CF\u503C\u53CA\u7DAD\u5EA6\u8A2D\u5B9A\u4E2D\uFF0C\u76EE\u524D\u60A8\u53EA\u80FD\u9078\u64C7\u6240\u9700\u7DAD\u5EA6\uFF0C\u7121\u6CD5\u624B\u52D5\u4FEE\u6539\u3002\n\u904E\u6FFE\u689D\u4EF6\u63A1\u7528OPEN SQL\u8A9E\u6CD5\uFF0C\u60A8\u53EF\u4EE5\u9375\u5165${abc}\u4F5C\u70BA\u4E00\u500B\u53C3\u6578\uFF0C\u7528\u6CD5\u540C\u8CC7\u6599\u5EAB\u8CC7\u6599\u96C6\u3002\n2.\u81EA\u5B9A\u7FA9MDX\u67E5\u8A62\uFF1A\n\u4F7F\u7528\u81EA\u5B9A\u7FA9MDX\u67E5\u8A62\uFF0C\u60A8\u53EF\u4EE5\u81EA\u5B9A\u7FA9\u7FA9MDX\u8A9E\u53E5\u67E5\u8A62\u6240\u9700\u7D50\u679C\u3002\n\u6CE8\u610F\uFF0C\u81EA\u5B9A\u7FA9MDX\u67E5\u8A62\u4E5F\u53EA\u652F\u6301\u5169\u500B\u8EF8\u7684\u67E5\u8A62\u3002\n\u60A8\u53EF\u9375\u5165${abc}\u4F5C\u70BA\u4E00\u500B\u53C3\u6578\uFF0C\u7528\u6CD5\u540C\u8CC7\u6599\u5EAB\u8CC7\u6599\u96C6\u3002\nFineBI\u7684cube\u4E0D\u652F\u6301MDX\u67E5\u8A62\u3002
FR-Designer_bold=\u7C97\u9AD4 FR-Designer_bold=\u7C97\u9AD4
FR-Designer_font=\u5B57\u9AD4 FR-Designer_font=\u5B57\u9AD4
FR-Designer_italic=\u659C\u9AD4 FR-Designer_italic=\u659C\u9AD4
@ -348,7 +349,7 @@ FR-Designer_Add_JS_warning=\u8ACB\u8F38\u51FA\u6B63\u78BA\u7684url\u5730\u5740\u
FR-Designer-Encoding_Type=\u7DE8\u78BC\u985E\u578B FR-Designer-Encoding_Type=\u7DE8\u78BC\u985E\u578B
FR-Designer-FirstRow_IS_ColumnName=\u7B2C\u4E00\u5217\u5305\u542B\u6B04\u6A19\u984C FR-Designer-FirstRow_IS_ColumnName=\u7B2C\u4E00\u5217\u5305\u542B\u6B04\u6A19\u984C
FR-Designer_Dismenber=\u5206\u9694\u7B26 FR-Designer_Dismenber=\u5206\u9694\u7B26
FR-Designer_TableDismember=\u88FD\u8868\u7B26 FR-Designer_TableDismember=\u88FD\u9336\u7B26
FR-Designer_Space=\u7A7A\u683C FR-Designer_Space=\u7A7A\u683C
FR-Designer_CommaDismenber=\u9017\u865F FR-Designer_CommaDismenber=\u9017\u865F
FR-Designer_Other=\u5176\u4ED6 FR-Designer_Other=\u5176\u4ED6
@ -356,7 +357,7 @@ FR-Designer-Series_Dismenber_As_Single=\u9023\u7E8C\u5206\u9694\u7B26\u8996\u70B
FR-Designer_KeyPoint=\u95DC\u9375\u7BC0\u9EDE FR-Designer_KeyPoint=\u95DC\u9375\u7BC0\u9EDE
FR-Designer_loadedTreeModel=\u52A0\u8F09\u5931\u6557,\u8ACB\u6AA2\u67E5\u5F8C\u91CD\u8A66 FR-Designer_loadedTreeModel=\u52A0\u8F09\u5931\u6557,\u8ACB\u6AA2\u67E5\u5F8C\u91CD\u8A66
FR-Designer-Failed_to_load_the_plugin=\u7121\u6CD5\u52A0\u8F09\u63D2\u4EF6\uFF0C\u8ACB\u66F4\u65B0\u63D2\u4EF6\uFF1A FR-Designer-Failed_to_load_the_plugin=\u7121\u6CD5\u52A0\u8F09\u63D2\u4EF6\uFF0C\u8ACB\u66F4\u65B0\u63D2\u4EF6\uFF1A
FR-Designer-Plugin_Please_Update_Jar=\u8ACB\u66F4\u65B0Jar\u5305\u81F3\: FR-Designer-Plugin_Please_Update_Jar=\u8ACB\u66F4\u65B0Jar\u5305, \u63D2\u4EF6\u9700\u6C42\u6700\u4F4E\u7248\u672C
FR-Designer-Invalid_Page_Number=\u7121\u6548\u9801\u78BC FR-Designer-Invalid_Page_Number=\u7121\u6548\u9801\u78BC
FR-Designer_Get-CubeGetting=\u7372\u53D6cube FR-Designer_Get-CubeGetting=\u7372\u53D6cube
FR-Designer_XMLA_Database=\u8CC7\u6599\u5EAB FR-Designer_XMLA_Database=\u8CC7\u6599\u5EAB
@ -392,7 +393,7 @@ FR-Designer_Product_improve=\u7522\u54C1\u6539\u826F
FR-Designer_Join_Product_improve=\u52A0\u5165\u7522\u54C1\u6539\u826F\u8A08\u5283 FR-Designer_Join_Product_improve=\u52A0\u5165\u7522\u54C1\u6539\u826F\u8A08\u5283
FR-Designer_Preference-Function=\u529F\u80FD\u8A2D\u5B9A FR-Designer_Preference-Function=\u529F\u80FD\u8A2D\u5B9A
FR-Designer_max_undo_limit=\u6700\u5927\u5FA9\u539F\u6B21\u6578 FR-Designer_max_undo_limit=\u6700\u5927\u5FA9\u539F\u6B21\u6578
FR-Designer_Surport_String_To_Formula=\u652F\u63F4\u5B57\u5143\u4E32\u7DE8\u8F2F\u70BA\u516C\u5F0F FR-Designer_Surport_String_To_Formula=\u652F\u6301\u5B57\u5143\u4E32\u7DE8\u8F2F\u70BA\u516C\u5F0F
FR-Designer_Always=\u59CB\u7D42 FR-Designer_Always=\u59CB\u7D42
FR-Designer_Export_Setting=\u532F\u51FA\u914D\u7F6E FR-Designer_Export_Setting=\u532F\u51FA\u914D\u7F6E
FR-Designer_Select_Export_Log_Directory=\u9078\u64C7\u532F\u51FA\u76EE\u9304 FR-Designer_Select_Export_Log_Directory=\u9078\u64C7\u532F\u51FA\u76EE\u9304
@ -559,20 +560,20 @@ FR-Designer_Parameter-Formula=\u516C\u5F0F
FR-Designer_Plugin_Should_Update_Please_Contact_Developer=\u633F\u4EF6\u7248\u672C\u904E\u4F4E\uFF0C\u5B58\u5728API\u4E0D\u76F8\u5BB9\uFF0C\u8ACB\u806F\u7CFB\u958B\u767C\u8005\u965E\u7D1A\u633F\u4EF6 FR-Designer_Plugin_Should_Update_Please_Contact_Developer=\u633F\u4EF6\u7248\u672C\u904E\u4F4E\uFF0C\u5B58\u5728API\u4E0D\u76F8\u5BB9\uFF0C\u8ACB\u806F\u7CFB\u958B\u767C\u8005\u965E\u7D1A\u633F\u4EF6
FR-Designer_WidgetOrder=\u63A7\u4EF6\u9806\u5E8F FR-Designer_WidgetOrder=\u63A7\u4EF6\u9806\u5E8F
FR-Designer_Mobile_Form_Analysis_Annotation=\u6CE8\u91CB\uFF1A\u53EF\u4EE5\u901A\u904E\u8A72\u5C6C\u6027\u63A7\u5236\u8868\u55AE\u5728APP\u4E2D\u7684\u89E3\u6790\u65B9\u5F0F\u3002 FR-Designer_Mobile_Form_Analysis_Annotation=\u6CE8\u91CB\uFF1A\u53EF\u4EE5\u901A\u904E\u8A72\u5C6C\u6027\u63A7\u5236\u8868\u55AE\u5728APP\u4E2D\u7684\u89E3\u6790\u65B9\u5F0F\u3002
FR-Designer_Mobile_Report_Analysis_Annotation=\u6CE8\u91CB\uFF1A\u53EF\u4EE5\u901A\u904E\u8A72\u5C6C\u6027\u63A7\u5236\u5831\u8868\u5728APP\u4E2D\u7684\u89E3\u6790\u65B9\u5F0F\uFF0C\u53EA\u652F\u63F4\u5206\u9801\u9810\u89BD\uFF0C\u586B\u5831\u9810\u89BD\u6642\u5C6C\u6027\u7121\u6548\u3002 FR-Designer_Mobile_Report_Analysis_Annotation=\u6CE8\u91CB\uFF1A\u53EF\u4EE5\u901A\u904E\u8A72\u5C6C\u6027\u63A7\u5236\u5831\u8868\u5728APP\u4E2D\u7684\u89E3\u6790\u65B9\u5F0F\uFF0C\u53EA\u652F\u6301\u5206\u9801\u9810\u89BD\uFF0C\u586B\u5831\u9810\u89BD\u6642\u5C6C\u6027\u7121\u6548\u3002
FR-Designer_Background_Null=\u6C92\u6709\u80CC\u666F FR-Designer_Background_Null=
FR-Designer_Background_Color=\u984F\u8272 FR-Designer_Background_Color=
FR-Designer_Background_Texture=\u7D0B\u7406 FR-Designer_Background_Texture=
FR-Designer_Background_Pattern=\u5716\u6848 FR-Designer_Background_Pattern=
FR-Designer_Background_Gradient_Color=\u6F38\u8B8A\u8272 FR-Designer_Background_Gradient_Color=
FR-Designer_Background_Image=\u5716\u7247 FR-Designer_Background_Image=
FR-Designer_Background_Clear=\u6E05\u9664 FR-Designer_Background_Clear=
FR-Designer_Background_Image_Select=\u9078\u64C7\u5716\u7247 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_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_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=\u6309\u9215\u7684\u521D\u59CB\u80CC\u666F FR-Designer_Initial_Background_Tips=
FR-Designer_Mouse_Move_Tips=\u6ED1\u9F20\u79FB\u52D5\u5230\u6309\u9215\u4E0A\u7684\u80CC\u666F\uFF0C\u82E5\u7121\u5247\u4E0D\u6539\u8B8A\u80CC\u666F FR-Designer_Mouse_Move_Tips=
FR-Designer_Mouse_Click_Tips=\u6ED1\u9F20\u9EDE\u64CA\u6309\u9215\u6642\u80CC\u666F\uFF0C\u82E5\u7121\u5247\u4E0D\u6539\u8B8A\u80CC\u666F FR-Designer_Mouse_Click_Tips=
FR-Designer_AxisReversed=\u8EF8\u9006\u5E8F FR-Designer_AxisReversed=\u8EF8\u9006\u5E8F
FR-Designer_Logarithmic=\u5C0D\u6578\u523B\u5EA6 FR-Designer_Logarithmic=\u5C0D\u6578\u523B\u5EA6
FR-Designer_Chart_Log_Base=\u5E95\u6578 FR-Designer_Chart_Log_Base=\u5E95\u6578
@ -581,20 +582,20 @@ FR-Designer_Style=\u6A23\u5F0F
FR-Designer_Color=\u984F\u8272 FR-Designer_Color=\u984F\u8272
FR-Designer_Border=\u6846\u7DDA FR-Designer_Border=\u6846\u7DDA
FR-Designer_Background-Pattern=\u5716\u6848 FR-Designer_Background-Pattern=\u5716\u6848
FR-Designer_SimpleDetail_Report=\u7C21\u55AE\u660E\u7D30\u8868 FR-Designer_SimpleDetail_Report=
FR-Designer_Reset=\u53D6\u6D88\u522A\u9664 FR-Designer_Reset=
FR-Designer_AllCategories=\u6240\u6709\u5206\u985E FR-Designer_AllCategories=
FR-Designer-Selected_Widget=\u7576\u524D\u63A7\u5236\u9805 FR-Designer-Selected_Widget=
FR-Designer_SimpleCross_Report=\u7C21\u55AE\u4EA4\u53C9\u8868 FR-Designer_SimpleCross_Report=
FR-Designer_LocalWidget=\u672C\u5730\u7D44\u4EF6\u5EAB FR-Designer_LocalWidget=
FR-Designer_Edit_Button_ToolBar=\u7DE8\u8F2F\u6309\u9215\u6240\u5728\u5DE5\u5177\u6B04 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_Remove_Button_ToolBar=\u79FB\u9664\u6309\u9215\u6240\u5728\u5DE5\u5177\u6B04
FR-Designer_Install_Template=\u5B89\u88DD\u7D44\u4EF6 FR-Designer_Install_Template=
FR-Designer_Allow-Blank=\u5141\u8A31\u70BA\u7A7A FR-Designer_Allow-Blank=
FR-Designer_Delete_Template=\u522A\u9664\u7D44\u4EF6 FR-Designer_Delete_Template=
FR-Designer_Download_Template=\u4E0B\u8F09\u7D44\u4EF6 FR-Designer_Download_Template=
FR-Designer_DoubleLayer_Report=\u96D9\u5C64\u8868\u982D FR-Designer_DoubleLayer_Report=
FR-Designer_Validate=\u6821\u9A57 FR-Designer_Validate=
CellWrite-InsertRow_NULL=\u7A7A\u503C CellWrite-InsertRow_NULL=\u7A7A\u503C
DashBoard-ChartFloat=\u5716\u8868 DashBoard-ChartFloat=\u5716\u8868
contact_info=\u806F\u7E6B\u8A0A\u606F(\u9078\u586B) contact_info=\u806F\u7E6B\u8A0A\u606F(\u9078\u586B)
@ -610,12 +611,12 @@ FR-Designer_Number=\u6578\u5B57
FR-Designer-Widget-Style_Common=\u666E\u901A FR-Designer-Widget-Style_Common=\u666E\u901A
M-Save_As=\u53E6\u5B58\u70BA M-Save_As=\u53E6\u5B58\u70BA
Following_parameters_are_not_generated=\u4EE5\u4E0B\u53C3\u6578\u672A\u751F\u6210 Following_parameters_are_not_generated=\u4EE5\u4E0B\u53C3\u6578\u672A\u751F\u6210
FR-Designer-Basic_Activation_Key_Copy_OK=\u5DF2\u8907\u88FD\u5230\u526A\u8CBC\u677F FR-Designer-Basic_Activation_Key_Copy_OK=Key has been copy to clipboard
Utils-Current_Sheet=\u7576\u524D\u7684Sheet Utils-Current_Sheet=\u7576\u524D\u7684Sheet
ConditionB-is_less_than=\u5C0F\u65BC ConditionB-is_less_than=\u5C0F\u65BC
BorderLayout-West=\u897F BorderLayout-West=\u897F
AnalysisLine=\u5206\u6790\u7DDA\u578B AnalysisLine=\u5206\u6790\u7DDA\u578B
Layer_Report_Warnning_info=<html>\u5217\u5F0F\u5F15\u64CE\u9069\u7528\u65BC\u5927\u8CC7\u6599\u91CF\u60C5\u5F62\u4E0B\u3002<br/>\u4F7F\u7528\u6B64\u5F15\u64CE\u5F88\u591A\u5831\u8868\u7279\u6027\u5C07\u4E0D\u518D\u652F\u63F4\uFF0C<br/>\u8A73\u7D30\u5167\u5BB9\u8ACB\u898B\u76F8\u95DC\u6587\u6A94\u3002</html> Layer_Report_Warnning_info=<html>\u5217\u5F0F\u5F15\u64CE\u9069\u7528\u65BC\u5927\u8CC7\u6599\u91CF\u60C5\u5F62\u4E0B\u3002<br/>\u4F7F\u7528\u6B64\u5F15\u64CE\u5F88\u591A\u5831\u8868\u7279\u6027\u5C07\u4E0D\u518D\u652F\u6301\uFF0C<br/>\u8A73\u7D30\u5167\u5BB9\u8ACB\u898B\u76F8\u95DC\u6587\u6A94\u3002</html>
Tree-Width=\u5BEC\u5EA6 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. 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 PageSetup-Paper_Size=\u7D19\u5F35\u5927\u5C0F
@ -623,13 +624,13 @@ M-Page_Setup=\u9801\u9762\u8A2D\u5B9A
DashBoard-FormBook=\u8868\u55AE DashBoard-FormBook=\u8868\u55AE
X-Coordinate=\u6A6B\u5EA7\u6A19 X-Coordinate=\u6A6B\u5EA7\u6A19
Style-Line_Spacing=\u5217\u9593\u8DDD Style-Line_Spacing=\u5217\u9593\u8DDD
FR-Designer_Plugin_Should_Update_Title=\u63D2\u4EF6\u5347\u7D1A\u63D0\u9192 FR-Designer_Plugin_Should_Update_Title=Warning
Server-Define_Data_Connection=\u5B9A\u7FA9\u8CC7\u6599\u9023\u63A5 Server-Define_Data_Connection=\u5B9A\u7FA9\u8CC7\u6599\u9023\u63A5
BarInside=\u67F1\u5B50\u5167\u5074 BarInside=\u67F1\u5B50\u5167\u5074
Border-Color=\u6846\u7DDA\u984F\u8272 Border-Color=\u6846\u7DDA\u984F\u8272
NotAllow=\u4E0D\u5408\u6CD5 NotAllow=\u4E0D\u5408\u6CD5
Utils-File_type=\u6A94\u6848\u985E\u578B Utils-File_type=\u6A94\u6848\u985E\u578B
FR-Designer-Plugin_Install_From_Local=\u5F9E\u672C\u5730\u6587\u4EF6\u5B89\u88DD FR-Designer-Plugin_Install_From_Local=Install plugin from local file
Summary_Method=\u532F\u7E3D\u65B9\u5F0F Summary_Method=\u532F\u7E3D\u65B9\u5F0F
Select_Specified_Grouping=\u9078\u64C7\u81EA\u5B9A\u7FA9\u5206\u7D44 Select_Specified_Grouping=\u9078\u64C7\u81EA\u5B9A\u7FA9\u5206\u7D44
HF-Number_of_Page=\u7E3D\u9801\u6578 HF-Number_of_Page=\u7E3D\u9801\u6578
@ -637,13 +638,13 @@ FR-Designer-Tree_Height=\u9AD8\u5EA6
Owner=\u4E3B Owner=\u4E3B
Home=\u4E3B\u9801 Home=\u4E3B\u9801
FR-Server_Embedded_Server_Stop=\u5167\u7F6E\u7684\u4F3A\u670D\u5668-\u505C\u6B62 FR-Server_Embedded_Server_Stop=\u5167\u7F6E\u7684\u4F3A\u670D\u5668-\u505C\u6B62
FR-Designer-Plugin_Detecting_Update=\u6B63\u5728\u6AA2\u6E2C\u66F4\u65B0 FR-Designer-Plugin_Detecting_Update=Detecting update
HF-Whether_to_define_the_selected_type=\u662F\u5426\u5B9A\u7FA9\u9078\u4E2D\u7684\u985E\u578B HF-Whether_to_define_the_selected_type=\u662F\u5426\u5B9A\u7FA9\u9078\u4E2D\u7684\u985E\u578B
StyleAlignment-Right=\u9760\u53F3\u5C0D\u9F4A StyleAlignment-Right=\u9760\u53F3\u5C0D\u9F4A
FR-Designer_Alignment-Style=\u5C0D\u9F4A\u65B9\u5F0F FR-Designer_Alignment-Style=\u5C0D\u9F4A\u65B9\u5F0F
PageSetup-Title_Start_Column=\u91CD\u8907\u6A19\u984C\u6B04 PageSetup-Title_Start_Column=\u91CD\u8907\u6A19\u984C\u6B04
Tree-Mutiple_Selection_Or_Not=\u591A\u9078 Tree-Mutiple_Selection_Or_Not=\u591A\u9078
FR-Designer-Plugin_Search=\u641C\u7D22 FR-Designer-Plugin_Search=Search
Choose_Role=\u6B0A\u9650\u63A7\u5236 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 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 Form-ComboBox=\u4E0B\u62C9\u6846
@ -662,7 +663,7 @@ Email-Can_Preview_Report_Content=\u6B63\u6587\u9810\u89BD\u5831\u8868\u5167\u5BB
FR-Designer-FRFont_Italic=\u659C\u9AD4 FR-Designer-FRFont_Italic=\u659C\u9AD4
CellWrite-Print_Background=\u5217\u5370/\u532F\u51FA\u5132\u5B58\u683C\u80CC\u666F CellWrite-Print_Background=\u5217\u5370/\u532F\u51FA\u5132\u5B58\u683C\u80CC\u666F
Wizard=\u56AE\u5C0E Wizard=\u56AE\u5C0E
Preference-Is_Drag_Permited=\u652F\u63F4\u62D6\u62FD Preference-Is_Drag_Permited=\u652F\u6301\u62D6\u62FD
FR-Designer_Release_Lock=\u89E3\u9396 FR-Designer_Release_Lock=\u89E3\u9396
Form-Delimiter=\u5206\u9694\u7B26 Form-Delimiter=\u5206\u9694\u7B26
wrong=\u51FA\u932F\u4E86 wrong=\u51FA\u932F\u4E86
@ -675,7 +676,7 @@ Need_Min_Value=\u9700\u8981\u6700\u5C0F\u503C
Allow_Blank=\u5141\u8A31\u70BA\u7A7A\u767D Allow_Blank=\u5141\u8A31\u70BA\u7A7A\u767D
CellWrite-InsertRow_DEFAULT=\u9810\u8A2D\u503C CellWrite-InsertRow_DEFAULT=\u9810\u8A2D\u503C
Widget-Load_By_Complete=\u5B8C\u5168\u8F09\u5165 Widget-Load_By_Complete=\u5B8C\u5168\u8F09\u5165
FR-Designer-Basic_Only_Submit_Current_Sheet=\u53EA\u63D0\u4EA4\u7576\u524Dsheet FR-Designer-Basic_Only_Submit_Current_Sheet=
Sort-Sort_Order=\u6392\u5217\u9806\u5E8F Sort-Sort_Order=\u6392\u5217\u9806\u5E8F
File-File_Size_Limit=\u6A94\u6848\u5927\u5C0F\u9650\u5236 File-File_Size_Limit=\u6A94\u6848\u5927\u5C0F\u9650\u5236
PrintP-Print=\u5217\u5370(T) PrintP-Print=\u5217\u5370(T)
@ -684,12 +685,12 @@ Preference-Setting_Colors=\u984F\u8272\u914D\u7F6E
Judge=\u5224\u65B7 Judge=\u5224\u65B7
Image-Adjust=\u9069\u61C9 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 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=\u5F9E\u672C\u5730\u6A94\u6848\u66F4\u65B0 FR-Designer_Plugin_Normal_Update_From_Local=Update from local file
BackgroundTexture-Canvas=\u756B\u5E03 BackgroundTexture-Canvas=\u756B\u5E03
BarOutSide=\u67F1\u5B50\u5916\u5074 BarOutSide=\u67F1\u5B50\u5916\u5074
Preview_ToolTips=\u9810\u89BD\u63D0\u793A Preview_ToolTips=\u9810\u89BD\u63D0\u793A
FRFont-Family=\u540D\u5B57 FRFont-Family=\u540D\u5B57
FR-Lic_does_not_Support_Remote=\u60A8\u7576\u524D\u4F7F\u7528\u7684lic\u4E0D\u652F\u63F4\u9060\u7A0B\u8A2D\u8A08\u529F\u80FD\uFF0C\u8ACB\u5347\u7D1A\u60A8\u7684lic 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 InterfaceStyle=\u98A8\u683C
RWA-Key=\u4E3B\u9375 RWA-Key=\u4E3B\u9375
WF-Name=\u540D\u7A31 WF-Name=\u540D\u7A31
@ -714,7 +715,7 @@ FR-Designer_Indent-Pixel=\u50CF\u7D20
FR-Designer_Unit_MM=\u516C\u5398 FR-Designer_Unit_MM=\u516C\u5398
IDLE=\u7A7A\u9592 IDLE=\u7A7A\u9592
FRFont-Underline=\u4E0B\u5283\u7DAB FRFont-Underline=\u4E0B\u5283\u7DAB
FR-Designer-Plugin_Read_Plugin_List_Error=\u53BB\u8B80\u63D2\u4EF6\u5217\u8868\u6642\u767C\u751F\u932F\u8AA4 FR-Designer-Plugin_Read_Plugin_List_Error=Error to read plugin list
Type_Set=\u985E\u578B\u8A2D\u5B9A Type_Set=\u985E\u578B\u8A2D\u5B9A
M_Format_A-Cell_Attributes=\u5176\u4ED6\u5C6C\u6027 M_Format_A-Cell_Attributes=\u5176\u4ED6\u5C6C\u6027
CellWrite-Show_As_Image=\u7528\u5716\u7247\u986F\u793A\u5167\u5BB9 CellWrite-Show_As_Image=\u7528\u5716\u7247\u986F\u793A\u5167\u5BB9
@ -739,7 +740,7 @@ Hgap=\u6C34\u5E73\u9593\u9699
FR-Designer_Enter-New-FileName=\u8ACB\u8F38\u5165\u65B0\u7684\u6A94\u6848\u540D FR-Designer_Enter-New-FileName=\u8ACB\u8F38\u5165\u65B0\u7684\u6A94\u6848\u540D
Verify_Fail=\u6821\u9A57\u5931\u6557 Verify_Fail=\u6821\u9A57\u5931\u6557
CellWrite-InsertRow_Policy=\u63D2\u5165\u5217\u7B56\u7565 CellWrite-InsertRow_Policy=\u63D2\u5165\u5217\u7B56\u7565
FR-Designer-Plugin_Illegal_Plugin_Zip=\u4E0D\u662F\u5408\u6CD5\u7684\u63D2\u4EF6\u5305 FR-Designer-Plugin_Illegal_Plugin_Zip=Illegal plugin zip
RCodeVersion=\u7248\u672C RCodeVersion=\u7248\u672C
Convert=\u8F49\u63DB Convert=\u8F49\u63DB
Please_Drag=\u8ACB\u62D6\u5165\u5217\u6B04\u6B04\u4F4D\u3001\u532F\u7E3D\u6B04\u4F4D Please_Drag=\u8ACB\u62D6\u5165\u5217\u6B04\u6B04\u4F4D\u3001\u532F\u7E3D\u6B04\u4F4D
@ -794,7 +795,7 @@ read_time_out=\u52A0\u8F09\u8D85\u6642
JavaScript-Commit_to_Database=\u63D0\u4EA4\u5165\u5EAB JavaScript-Commit_to_Database=\u63D0\u4EA4\u5165\u5EAB
DS-Relation_TableData=\u95DC\u806F\u8CC7\u6599\u96C6 DS-Relation_TableData=\u95DC\u806F\u8CC7\u6599\u96C6
CellWrite-Page_Before_Row=\u5217\u524D\u5206\u9801 CellWrite-Page_Before_Row=\u5217\u524D\u5206\u9801
FR-Designer-Plugin_Load_Plugins_From_Server=\u6B63\u5728\u5F9E\u63D2\u4EF6\u5546\u5E97\u7372\u53D6\u6578\u64DA 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 D-Dispaly_Divide_Result_Set_into_Groups=\u5C07\u7D50\u679C\u96C6\u9032\u884C\u5206\u7D44
Closed=\u5DF2\u95DC\u9589 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 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
@ -809,7 +810,7 @@ No-Privilege=\u6C92\u6709\u6B0A\u9650
ReportColumns-Repeat_Column=\u91CD\u8907\u6B04\u5E8F\u6B04 ReportColumns-Repeat_Column=\u91CD\u8907\u6B04\u5E8F\u6B04
SecondGraduationUnit=\u6B21\u8981\u523B\u5EA6\u55AE\u4F4D SecondGraduationUnit=\u6B21\u8981\u523B\u5EA6\u55AE\u4F4D
Form-Widget_Property_Value=\u5C6C\u6027\u503C Form-Widget_Property_Value=\u5C6C\u6027\u503C
GIVE-NAME=\u547D\u540D GIVE-NAME=Give Name
FR-Designer_Rename=\u91CD\u547D\u540D FR-Designer_Rename=\u91CD\u547D\u540D
Utils-Merge_Cell=\u5408\u5E76\u5132\u5B58\u683C Utils-Merge_Cell=\u5408\u5E76\u5132\u5B58\u683C
Style-Spacing_After=\u6BB5\u5F8C Style-Spacing_After=\u6BB5\u5F8C
@ -832,7 +833,7 @@ Not_use_a_cell_attribute_table_editing=\u60A8\u4E0D\u53EF\u4EE5\u7528\u5132\u5B5
Root=\u6839\u7BC0\u9EDE Root=\u6839\u7BC0\u9EDE
cycle=\u5468\u671F 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. 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=\u7576\u524D\u5FEB\u6377\u9375 Support-Current_Auto_Complete_Shortcut=Current Shortcut
GROUPING_MODE=\u666E\u901A\u5206\u7D44 GROUPING_MODE=\u666E\u901A\u5206\u7D44
DBCP_MAX_IDLE=\u6700\u5927\u7A7A\u9591\u9023\u63A5\u6578 DBCP_MAX_IDLE=\u6700\u5927\u7A7A\u9591\u9023\u63A5\u6578
BackgroundTexture-BlueTissuePaper=\u85CD\u8272\u7802\u7D19 BackgroundTexture-BlueTissuePaper=\u85CD\u8272\u7802\u7D19
@ -844,7 +845,6 @@ PageSetup-Placement_Center_on_Page=\u7F6E\u4E2D\u65B9\u5F0F
sure_to_delete=\u78BA\u8A8D\u522A\u9664 sure_to_delete=\u78BA\u8A8D\u522A\u9664
Already_exists_not_add_repeat=\u5DF2\u7D93\u5B58\u5728\uFF0C\u8ACB\u4E0D\u8981\u91CD\u8907\u65B0\u589E Already_exists_not_add_repeat=\u5DF2\u7D93\u5B58\u5728\uFF0C\u8ACB\u4E0D\u8981\u91CD\u8907\u65B0\u589E
Axis_Title=\u8EF8\u6A19\u984C Axis_Title=\u8EF8\u6A19\u984C
FR-Designer-Plugin_Install_Failed=\u63D2\u4EF6\u5B89\u88DD\u5931\u6557
FR-Designer-Widget-Style_Frame=\u6846\u67B6 FR-Designer-Widget-Style_Frame=\u6846\u67B6
MainGraduationUnit=\u4E3B\u8981\u523B\u5EA6\u55AE\u4F4D MainGraduationUnit=\u4E3B\u8981\u523B\u5EA6\u55AE\u4F4D
Second_Axis=\u6B21\u5750\u6A19\u8EF8 Second_Axis=\u6B21\u5750\u6A19\u8EF8
@ -857,14 +857,14 @@ RP_Authority_Edit=\u6B0A\u9650\u7DE8\u8F2F
Warnning=\u63D0\u9192 Warnning=\u63D0\u9192
RoleName_Can_Not_Be_Null=\u89D2\u8272\u540D\u4E0D\u5141\u8A31\u70BA\u7A7A\u4E14\u4E0D\u80FD\u91CD\u8907 RoleName_Can_Not_Be_Null=\u89D2\u8272\u540D\u4E0D\u5141\u8A31\u70BA\u7A7A\u4E14\u4E0D\u80FD\u91CD\u8907
Application=\u61C9\u7528\u7A0B\u5F0F Application=\u61C9\u7528\u7A0B\u5F0F
Formula_Dictionary_Display_Examples_Html=<html>\u5BE6\u969B\u503C\u7BC4\u570D\u70BA \=range(100),\u5C0D\u5BE6\u969B\u503C\u7BC4\u570D\u5167\u7684\u6BCF\u500B$$$\u7684\u986F\u793A\u516C\u5F0F\u70BA \=0 - $$$\uFF0C<br>\u5247\u6700\u7D42\u7684\u7D50\u679C\u5BE6\u969B\u503C\u70BA1, 2, ..., 100,\u986F\u793A\u503C\u70BA-1, -2, ... , -100\u3002<br>&nbsp;</html> Formula_Dictionary_Display_Examples_Html=
ECP-error_pwd=\u5BC6\u78BC\u932F\u8AA4 ECP-error_pwd=\u5BC6\u78BC\u932F\u8AA4
FR-Hyperlink_ChartHyperlink=\u5716\u8868\u8D85\u93C8 FR-Hyperlink_ChartHyperlink=\u5716\u8868\u8D85\u93C8
M_Edit-FormatBrush=\u8907\u88FD\u683C\u5F0F(B) M_Edit-FormatBrush=\u8907\u88FD\u683C\u5F0F(B)
Indent-Pixel=\u50CF\u7D20 Indent-Pixel=\u50CF\u7D20
FR-Designer-Widget-Style_Border_Line=\u6846\u7DDA\u7C97\u7D30 FR-Designer-Widget-Style_Border_Line=\u6846\u7DDA\u7C97\u7D30
Widget-Default_Widget_Config=\u57FA\u672C\u63A7\u5236\u9805 Widget-Default_Widget_Config=\u57FA\u672C\u63A7\u5236\u9805
Version-does-not-support=\u60A8\u7576\u524D\u4F7F\u7528\u7684lic\u4E0D\u652F\u63F4\u9060\u7A0B\u8A2D\u8A08\u529F\u80FD\uFF0C\u8ACB\u5347\u7D1A\u60A8\u7684lic 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 StyleAlignment-Right_To_Left=\u5F9E\u53F3\u5411\u5DE6
Style-Spacing_Before=\u6BB5\u524D Style-Spacing_Before=\u6BB5\u524D
Has_Existed=\u5DF2\u7D93\u5B58\u5728 Has_Existed=\u5DF2\u7D93\u5B58\u5728
@ -880,7 +880,7 @@ Parameter-Boolean=\u5E03\u723E\u578B
FRFont-Strikethrough=\u522A\u9664\u7DDA 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 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 Form-All_Files=\u5168\u90E8\u6A94\u6848
DBCP_NUM_TEST_PER_EVCTION_RUN=\u7A7A\u9591\u9023\u63A5\u56DE\u6536\u6AA2\u67E5\u6578 DBCP_NUM_TEST_PER_EVCTION_RUN=\u7A7A\u9591\u93C8\u63A5\u56DE\u6536\u6AA2\u67E5\u6578
FR-Designer-FRFont_Family=\u540D\u5B57 FR-Designer-FRFont_Family=\u540D\u5B57
Device=\u8A2D\u5099 Device=\u8A2D\u5099
M_Insert-Cell=\u5132\u5B58\u683C\u5143\u7D20 M_Insert-Cell=\u5132\u5B58\u683C\u5143\u7D20
@ -888,7 +888,7 @@ Present-Formula_Present=\u516C\u5F0F\u6A21\u5F0F
FRFont-Superscript=\u4E0A\u6A19 FRFont-Superscript=\u4E0A\u6A19
CellWrite-Page_Before_Column=\u6B04\u524D\u5206\u9801 CellWrite-Page_Before_Column=\u6B04\u524D\u5206\u9801
Golden=\u91D1\u8272 Golden=\u91D1\u8272
Preference-Support_Cell_Editor_Definition=\u652F\u63F4\u5132\u5B58\u683C\u7DE8\u8F2F\u5668 Preference-Support_Cell_Editor_Definition=\u652F\u6301\u5132\u5B58\u683C\u7DE8\u8F2F\u5668
M-Page_Preview=\u5206\u9801\u9810\u89BD M-Page_Preview=\u5206\u9801\u9810\u89BD
HJS-CC_to=\u6284\u9001 HJS-CC_to=\u6284\u9001
Tree-Select_Leaf_Only=\u53EA\u8FD4\u56DE\u8449\u5B50\u7BC0\u9EDE Tree-Select_Leaf_Only=\u53EA\u8FD4\u56DE\u8449\u5B50\u7BC0\u9EDE
@ -961,10 +961,10 @@ Widget-Load_Type=\u8F09\u5165
template_unsaved=\u7BC4\u672C\u7121\u6CD5\u5132\u5B58 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 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 List-Need_Head=\u9700\u8981\u6B04\u8868\u982D
FR-Designer-Plugin_Has_Been_Installed=\u63D2\u4EF6\u5DF2\u5B89\u88DD\uFF0C\u82E5\u60F3\u66F4\u65B0\u63D2\u4EF6\uFF0C\u8ACB\u5207\u63DB\u81F3\u63D2\u4EF6\u66F4\u65B0 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-Widget_Tree_And_Table=\u63A7\u5236\u9805\u6A39\u548C\u63A7\u5236\u9805\u8868
FR-Base_Help=\u8AAA\u660E FR-Base_Help=\u8AAA\u660E
FR-Designer-Plugin_Update_Successful=\u63D2\u4EF6\u5347\u7D1A\u6210\u529F\uFF0C\u91CD\u555F\u4F3A\u670D\u5668\u4EE5\u751F\u6548 FR-Designer-Plugin_Update_Successful=Update successfully
August=\u516B\u6708 August=\u516B\u6708
LOG-Is_Being_Openned=\u6B63\u5728\u6253\u958B LOG-Is_Being_Openned=\u6B63\u5728\u6253\u958B
BackgroundTexture-Oak=\u6A61\u6728 BackgroundTexture-Oak=\u6A61\u6728
@ -972,7 +972,7 @@ Multi_nam_formula=\ \u8CC7\u6599\u96C6\u540D\: \u8CC7\u65
TurnOn=\u958B\u5553 TurnOn=\u958B\u5553
HJS-Send_Successfully=\u767C\u9001\u6210\u529F HJS-Send_Successfully=\u767C\u9001\u6210\u529F
Mon=\u661F\u671F\u4E00 Mon=\u661F\u671F\u4E00
Inner_Parameter=\u5167\u7F6E\u53C3\u6578 Inner_Parameter=Inner Parameter
Required=\u5FC5\u586B Required=\u5FC5\u586B
Summary=\u532F\u7E3D Summary=\u532F\u7E3D
template_unopened=\u7121\u6CD5\u6253\u958B\u7BC4\u672C template_unopened=\u7121\u6CD5\u6253\u958B\u7BC4\u672C
@ -981,14 +981,14 @@ DataFunction-Min=\u6700\u5C0F\u503C
StyleFormat-Percent=\u767E\u5206\u6BD4 StyleFormat-Percent=\u767E\u5206\u6BD4
FR-App-All_Custom=\u81EA\u5B9A\u7FA9 FR-App-All_Custom=\u81EA\u5B9A\u7FA9
M_Insert-Data_Column=\u63D2\u5165\u8CC7\u6599\u6B04 M_Insert-Data_Column=\u63D2\u5165\u8CC7\u6599\u6B04
PLEASE=\u8ACB PLEASE=Please
Numbers=\u6578\u76EE Numbers=\u6578\u76EE
Release_Lock=\u89E3\u9396 Release_Lock=\u89E3\u9396
Background-Background_is_NULL=\u6C92\u6709\u80CC\u666F Background-Background_is_NULL=\u6C92\u6709\u80CC\u666F
FR-Designer_Sytle-FRFont=\u5B57\u9AD4 FR-Designer_Sytle-FRFont=\u5B57\u9AD4
Gradation=\u5C64\u6B21 Gradation=\u5C64\u6B21
The_current_list_is_empty=\u7576\u524D\u6B04\u8868\u70BA\u7A7A The_current_list_is_empty=\u7576\u524D\u6B04\u8868\u70BA\u7A7A
Formula_Dictionary_Display_Examples=\ \u5BE6\u969B\u503C\u7BC4\u570D\u70BA \=range(100),\u5C0D\u5BE6\u969B\u503C\u7BC4\u570D\n \u5167\u7684\u6BCF\u500B$$$\u7684\u986F\u793A\u516C\u5F0F\u70BA \=0 - $$$\uFF0C\n \u5247\u6700\u7D42\u7684\u7D50\u679C\u5BE6\u969B\u503C\u70BA1, 2, ..., 100, \n \u986F\u793A\u503C\u70BA-1, -2, ... , -100\u3002 Formula_Dictionary_Display_Examples=
Schedule-Template_Parameter=\u7BC4\u672C\u53C3\u6578 Schedule-Template_Parameter=\u7BC4\u672C\u53C3\u6578
JSShow=\u52D5\u614B\u5C55\u793A JSShow=\u52D5\u614B\u5C55\u793A
Level_coordinates=\u5C64\u6B21\u5750\u6A19 Level_coordinates=\u5C64\u6B21\u5750\u6A19
@ -1002,7 +1002,7 @@ RWA-Remove_Field=\u79FB\u9664\u6B04\u4F4D
Form-Desin_Width=\u8A2D\u8A08\u5BEC\u5EA6 Form-Desin_Width=\u8A2D\u8A08\u5BEC\u5EA6
No-tableData=\u6C92\u6709\u8FD4\u56DE\u8CC7\u6599\u96C6 No-tableData=\u6C92\u6709\u8FD4\u56DE\u8CC7\u6599\u96C6
Page_Total=\u5171 Page_Total=\u5171
FR-Designer-Plugin_Connect_Server_Error=\u7121\u6CD5\u9023\u63A5\u63D2\u4EF6\u5546\u5E97\uFF0C\u8ACB\u7A0D\u5F8C\u518D\u8A66 FR-Designer-Plugin_Connect_Server_Error=Error to connect plugin store
Import-Excel_Source=Excel\u6E90\u6A94\u6848 Import-Excel_Source=Excel\u6E90\u6A94\u6848
Utils-Left_to_Right_a=\u5F9E\u5DE6\u5F80\u53F3 Utils-Left_to_Right_a=\u5F9E\u5DE6\u5F80\u53F3
ExpandD-Expand_Attribute=\u64F4\u5C55\u5C6C\u6027 ExpandD-Expand_Attribute=\u64F4\u5C55\u5C6C\u6027
@ -1017,7 +1017,7 @@ Utils-Move_Up=\u4E0A\u79FB
BackgroundTexture-PurpleMesh=\u7D2B\u8272\u7DB2\u8DEF BackgroundTexture-PurpleMesh=\u7D2B\u8272\u7DB2\u8DEF
Export-Word=Word\u683C\u5F0F Export-Word=Word\u683C\u5F0F
ServerM-Widget_Manager=\u5143\u4EF6\u7BA1\u7406 ServerM-Widget_Manager=\u5143\u4EF6\u7BA1\u7406
FR-Designer-Basic_Activation_Key=\u8A2D\u8A08\u5668\u7DE8\u865F\: FR-Designer-Basic_Activation_Key=Activation Key\:
FR-App-Template_Report_Not_Exist=\u6240\u9078\u5831\u8868\u4E0D\u5B58\u5728 FR-App-Template_Report_Not_Exist=\u6240\u9078\u5831\u8868\u4E0D\u5B58\u5728
Protected=\u4FDD\u8B77 Protected=\u4FDD\u8B77
Skip=\u8DF3\u904E Skip=\u8DF3\u904E
@ -1038,7 +1038,7 @@ FR-Designer-Tree_Width=\u5BEC\u5EA6
Record=\u8A18\u9304 Record=\u8A18\u9304
Poly-Report_Component=\u8907\u5408\u5F0F\u5831\u8868\u5143\u4EF6 Poly-Report_Component=\u8907\u5408\u5F0F\u5831\u8868\u5143\u4EF6
Options=\u9078\u9805 Options=\u9078\u9805
NS-war-remote=\u932F\u8AA4\u4EE3\u78BC\:1117 \u58D3\u7E2E\u90E8\u7F72\u4E0D\u652F\u63F4\u9060\u7A0B\u8A2D\u8A08 NS-war-remote=\u932F\u8AA4\u4EE3\u78BC\:11100017 \u58D3\u7E2E\u90E8\u7F72\u4E0D\u652F\u6301\u9060\u7A0B\u8A2D\u8A08
Sche-Minute=\u5206 Sche-Minute=\u5206
Three_Rows_Of_Three_Grid=\u4E09\u5217\u4E09\u6B04\u7684\u683C\u5B50 Three_Rows_Of_Three_Grid=\u4E09\u5217\u4E09\u6B04\u7684\u683C\u5B50
WorkSheet=\u81EA\u7531\u5831\u8868 WorkSheet=\u81EA\u7531\u5831\u8868
@ -1047,7 +1047,7 @@ BindColumn-Select=\u6B04\u8868
FR-Widget_Mobile_Terminal=\u884C\u52D5\u8A2D\u5099 FR-Widget_Mobile_Terminal=\u884C\u52D5\u8A2D\u5099
FR-Background_Image_Titled=\u5E73\u92EA FR-Background_Image_Titled=\u5E73\u92EA
SetPrinterOffset=\u5370\u8868\u6A5F\u504F\u79FB SetPrinterOffset=\u5370\u8868\u6A5F\u504F\u79FB
FR-Designer-Plugin_Installed=\u5DF2\u5B89\u88DD FR-Designer-Plugin_Installed=Installed
FR-Designer-Hyperlink_Name=\u540D\u5B57 FR-Designer-Hyperlink_Name=\u540D\u5B57
FR-Designer_Form-Button=\u6309\u9215 FR-Designer_Form-Button=\u6309\u9215
Black=\u9ED1\u8272 Black=\u9ED1\u8272
@ -1057,7 +1057,7 @@ PDF-Print_isPopup=\u662F\u5426\u5F48\u51FA\u8A2D\u5B9A\u6846
LayerPageReport_CountPerPage=\u6BCF\u9801\u8A18\u9304\u6578 LayerPageReport_CountPerPage=\u6BCF\u9801\u8A18\u9304\u6578
Display_Modes=\u986F\u793A\u6A21\u5F0F Display_Modes=\u986F\u793A\u6A21\u5F0F
RowSpan=\u5217\u8DE8\u5EA6 RowSpan=\u5217\u8DE8\u5EA6
Datasource-Test_Connection=\u6E2C\u8A66\u9023\u63A5 Datasource-Test_Connection=\u6E2C\u8A66\u93C8\u63A5
Function-Function_Manager=\u51FD\u6578\u7BA1\u7406\u5668 Function-Function_Manager=\u51FD\u6578\u7BA1\u7406\u5668
Host_Name=\u4E3B\u6A5F\u540D Host_Name=\u4E3B\u6A5F\u540D
CellWrite-Show_As_HTML=\u7528HTML\u986F\u793A\u5167\u5BB9 CellWrite-Show_As_HTML=\u7528HTML\u986F\u793A\u5167\u5BB9
@ -1067,7 +1067,7 @@ Form-SupportTag=\u6A19\u7C64\u5F62\u5F0F\u986F\u793A
ReportD-Report_Write_Attributes=\u5831\u8868\u586B\u5831\u5C6C\u6027 ReportD-Report_Write_Attributes=\u5831\u8868\u586B\u5831\u5C6C\u6027
DataFunction-Count=\u500B\u6578 DataFunction-Count=\u500B\u6578
Top_And_Thick_Bottom_Border_Line=\u4E0A\u6846\u7DDA\u548C\u7C97\u4E0B\u6846\u7DDA Top_And_Thick_Bottom_Border_Line=\u4E0A\u6846\u7DDA\u548C\u7C97\u4E0B\u6846\u7DDA
Client=\u5BA2\u6236\u7AEF Client=Client
BindColumn-Result_Serial_Number_Start_From_1=\u5E8F\u865F\u5F9E1\u958B\u59CB BindColumn-Result_Serial_Number_Start_From_1=\u5E8F\u865F\u5F9E1\u958B\u59CB
History=\u6B77\u53F2 History=\u6B77\u53F2
Already_exists=\u5DF2\u5B58\u5728\uFF0C\u8ACB\u91CD\u65B0\u8F38\u5165\uFF01 Already_exists=\u5DF2\u5B58\u5728\uFF0C\u8ACB\u91CD\u65B0\u8F38\u5165\uFF01
@ -1124,7 +1124,7 @@ LayerPageReport_PageEngine=\u4F7F\u7528\u6309\u9801\u904B\u7B97\u5206\u6BB5\u57F
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 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 Provide=\u63D0\u4F9B
FormulaD-Math_&_Trig=\u6578\u5B78\u548C\u4E09\u89D2\u51FD\u6578 FormulaD-Math_&_Trig=\u6578\u5B78\u548C\u4E09\u89D2\u51FD\u6578
FR-Designer-StyleAlignment_Right=\u9760\u53F3 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 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 Choose_None=\u4E0D\u9078
File-tree=\u6A94\u6848\u6A39 File-tree=\u6A94\u6848\u6A39
@ -1132,13 +1132,13 @@ FRFont-bold=\u7C97\u9AD4
FR-Designer_Set_Submit_Condition=\u8A2D\u5B9A\u63D0\u4EA4\u689D\u4EF6 FR-Designer_Set_Submit_Condition=\u8A2D\u5B9A\u63D0\u4EA4\u689D\u4EF6
Form-Change_Widget_Name=\u66F4\u6539\u63A7\u5236\u9805\u540D Form-Change_Widget_Name=\u66F4\u6539\u63A7\u5236\u9805\u540D
ReportColumns-Report_Columns=\u5831\u8868\u5206\u6B04 ReportColumns-Report_Columns=\u5831\u8868\u5206\u6B04
Can_not_use_FormatBursh=\u7121\u6CD5\u4F7F\u7528\u8907\u88FD\u683C\u5F0F FR-Designer_Can_not_use_FormatBursh=\u7121\u6CD5\u4F7F\u7528\u8907\u88FD\u683C\u5F0F
CellElement-Property_Table=\u5132\u5B58\u683C\u5C6C\u6027\u8868 CellElement-Property_Table=\u5132\u5B58\u683C\u5C6C\u6027\u8868
Dictionary-Dynamic_SQL=\u52D5\u614BSQL Dictionary-Dynamic_SQL=\u52D5\u614BSQL
FR-Designer_Form-CheckBoxGroup=\u5FA9\u9078\u6846\u7D44 FR-Designer_Form-CheckBoxGroup=\u5FA9\u9078\u6846\u7D44
DBCP_TIME_BETWEEN_EVICTIONRUNSMILLIS=\u7A7A\u9591\u9023\u63A5\u56DE\u6536\u5668\u4F11\u7720\u6642\u9593 DBCP_TIME_BETWEEN_EVICTIONRUNSMILLIS=\u7A7A\u9591\u9023\u63A5\u56DE\u6536\u5668\u4F11\u7720\u6642\u9593
ReportD-Export_Hided_Column=\u532F\u51FA\u96B1\u85CF\u6B04 ReportD-Export_Hided_Column=\u532F\u51FA\u96B1\u85CF\u6B04
Preference-Support_Undo=\u652F\u63F4\u5FA9\u539F Preference-Support_Undo=\u652F\u6301\u5FA9\u539F
FR-mobile_report_analysis=\u5831\u8868\u89E3\u6790 FR-mobile_report_analysis=\u5831\u8868\u89E3\u6790
Month=\u6708 Month=\u6708
Utils-Column_Width=\u6B04\u5BEC Utils-Column_Width=\u6B04\u5BEC
@ -1162,12 +1162,12 @@ Delete_Column=\u522A\u9664\u6B04
SecondGraduationLine=\u6B21\u8981\u523B\u5EA6\u7DDA SecondGraduationLine=\u6B21\u8981\u523B\u5EA6\u7DDA
SpecifiedG-Groups=\u7D44 SpecifiedG-Groups=\u7D44
CONTINUUM_MODE=\u76F8\u9130\u9023\u7E8C\u5206\u7D44 CONTINUUM_MODE=\u76F8\u9130\u9023\u7E8C\u5206\u7D44
Datasource-Connection_failed=\u9023\u63A5\u5931\u6557 Datasource-Connection_failed=\u93C8\u63A5\u5931\u6557
CategoryName=\u5206\u985E\u540D CategoryName=\u5206\u985E\u540D
DBCP_INITIAL_SIZE=\u521D\u59CB\u5316\u9023\u63A5\u6578 DBCP_INITIAL_SIZE=\u521D\u59CB\u5316\u9023\u63A5\u6578
Colors=\u984F\u8272 Colors=\u984F\u8272
FR-Import-Export_CSV=CSV\u683C\u5F0F(\u9017\u865F\u5206\u9694) FR-Import-Export_CSV=CSV\u683C\u5F0F(\u9017\u865F\u5206\u9694)
FR-Designer-StyleAlignment_Left=\u9760\u5DE6 FR-Designer-StyleAlignment_Left=\u9760\u5DE6\u5C0D\u9F4A
BackgroundTexture-PaperBag=\u7D19\u888B BackgroundTexture-PaperBag=\u7D19\u888B
RWA-BuildIn_SQL=\u5167\u7F6ESQL RWA-BuildIn_SQL=\u5167\u7F6ESQL
SingleLayer=\u55AE\u5C64 SingleLayer=\u55AE\u5C64
@ -1206,7 +1206,7 @@ FS_Start_Date=\u958B\u59CB\u65E5\u671F
FR-ConditionB_Operator=\u64CD\u4F5C\u7B26 FR-ConditionB_Operator=\u64CD\u4F5C\u7B26
Printer-Alias=\u5225\u540D Printer-Alias=\u5225\u540D
DS-Class_Name=\u985E\u540D DS-Class_Name=\u985E\u540D
FR-Designer-Plugin_Has_Been_Disabled=\u63D2\u4EF6\u5DF2\u88AB\u7981\u7528\uFF0C\u91CD\u555F\u8A2D\u8A08\u5668\u53CA\u4F3A\u670D\u5668\u751F\u6548\uFF0C\u4F3A\u670D\u5668\u9700\u624B\u52D5\u91CD\u555F FR-Designer-Plugin_Has_Been_Disabled=Plugin has been disabled
Sort-Original=\u4E0D\u6392\u5E8F Sort-Original=\u4E0D\u6392\u5E8F
Utils-Top_to_Bottom_a=\u5F9E\u4E0A\u5F80\u4E0B Utils-Top_to_Bottom_a=\u5F9E\u4E0A\u5F80\u4E0B
Parameter-String=\u5B57\u5143\u4E32 Parameter-String=\u5B57\u5143\u4E32
@ -1227,7 +1227,7 @@ Interface=\u4ECB\u9762
FR-Designer-Beyond_Bounds=\u8D85\u51FA\u6216\u8005\u5C0F\u65BCbody\u908A\u754C\uFF0C\u4E0D\u80FD\u8ABF\u6574\u5927\u5C0F FR-Designer-Beyond_Bounds=\u8D85\u51FA\u6216\u8005\u5C0F\u65BCbody\u908A\u754C\uFF0C\u4E0D\u80FD\u8ABF\u6574\u5927\u5C0F
seconds=\u79D2 seconds=\u79D2
Auto-Build=\u81EA\u52D5\u69CB\u5EFA Auto-Build=\u81EA\u52D5\u69CB\u5EFA
FR-Designer-Plugin_Install_Successful=\u8A72\u63D2\u4EF6\u5C07\u5728\u91CD\u65B0\u555F\u52D5\u8A2D\u8A08\u5668\u53CA\u4F3A\u670D\u5668\u6642\u88AB\u555F\u7528\uFF0C\u4F3A\u670D\u5668\u9700\u624B\u52D5\u91CD\u555F FR-Designer-Plugin_Install_Successful=Install successful
Template_Path=\u7BC4\u672C\u8DEF\u5F91 Template_Path=\u7BC4\u672C\u8DEF\u5F91
FR-Designer-FRFont_Bold=\u7C97\u9AD4 FR-Designer-FRFont_Bold=\u7C97\u9AD4
Poly_Name=\u805A\u5408\u584A\u540D Poly_Name=\u805A\u5408\u584A\u540D
@ -1236,7 +1236,7 @@ Hyperlink-Self_Window=\u7576\u524D\u7A97\u53E3
FR-Designer-Widget-Style_Title=\u6A19\u984C FR-Designer-Widget-Style_Title=\u6A19\u984C
FR-Designer-FRFont_Size=\u5927\u5C0F FR-Designer-FRFont_Size=\u5927\u5C0F
M_File-Export-SVG=SVG\u683C\u5F0F M_File-Export-SVG=SVG\u683C\u5F0F
Capacity=\u5BB9\u91CF Capacity=Capacity
Rose_Red=\u73AB\u7470\u7D05 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 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 HF-Move_Left=\u5DE6\u79FB
@ -1257,7 +1257,7 @@ Deep=\u6DF1\u5EA6
FRFont-Shadow=\u9670\u5F71 FRFont-Shadow=\u9670\u5F71
Reportlet=\u7DB2\u8DEF\u5831\u8868 Reportlet=\u7DB2\u8DEF\u5831\u8868
Calendar=\u65E5\u66C6 Calendar=\u65E5\u66C6
DateFormat-Custom_Warning=\u8A3B\uFF1A\u81EA\u5B9A\u7FA9\u65E5\u671F\u683C\u5F0F\u4E0D\u652F\u63F4\u683C\u5F0F\u6821\u9A57 DateFormat-Custom_Warning=\u8A3B\uFF1A\u81EA\u5B9A\u7FA9\u65E5\u671F\u683C\u5F0F\u4E0D\u652F\u6301\u683C\u5F0F\u6821\u9A57
Unit_MM=\u516C\u5398 Unit_MM=\u516C\u5398
Server-Start=\u555F\u52D5 Server-Start=\u555F\u52D5
CellPage-Can_Break_On_Paginate=\u5206\u9801\u6642\u53EF\u4EE5\u65B7\u958B CellPage-Can_Break_On_Paginate=\u5206\u9801\u6642\u53EF\u4EE5\u65B7\u958B
@ -1286,7 +1286,7 @@ Brown=\u8910\u8272
Select_A_Tree_DataSource_To_Build=\u9078\u64C7\u4E00\u500B\u6A39\u72C0\u8CC7\u6599\u96C6\u4F86\u69CB\u5EFA Select_A_Tree_DataSource_To_Build=\u9078\u64C7\u4E00\u500B\u6A39\u72C0\u8CC7\u6599\u96C6\u4F86\u69CB\u5EFA
Overlapping=\u91CD\u66E1\u578B Overlapping=\u91CD\u66E1\u578B
DS-Class_TableData=\u985E\u5225\u8CC7\u6599\u96C6 DS-Class_TableData=\u985E\u5225\u8CC7\u6599\u96C6
FR-Designer-Plugin_Illegal_Plugin_Zip_Cannot_Be_Install=\u4E0D\u53EF\u8B58\u5225\u7684\u63D2\u4EF6\uFF0C\u7121\u6CD5\u5B89\u88DD 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 DisplayNothingBeforeQuery=\u9EDE\u64CA\u67E5\u8A62\u524D\u4E0D\u986F\u793A\u5176\u4ED6\u5167\u5BB9
Y_Axis=Y\u8EF8 Y_Axis=Y\u8EF8
FormulaD-Most_Recently_Used=\u5E38\u7528\u51FD\u6578 FormulaD-Most_Recently_Used=\u5E38\u7528\u51FD\u6578
@ -1317,7 +1317,7 @@ 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. 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 Rotation=\u65CB\u8F49
Undefined=\u672A\u5B9A\u7FA9 Undefined=\u672A\u5B9A\u7FA9
Support-Auto_Complete_Shortcut=\u81EA\u52D5\u88DC\u5168\u5FEB\u6377\u9375 Support-Auto_Complete_Shortcut=Auto Complete Shortcut
Set_Column_Title_End=\u8A2D\u5B9A\u91CD\u8907\u7D50\u5C3E\u6B04 Set_Column_Title_End=\u8A2D\u5B9A\u91CD\u8907\u7D50\u5C3E\u6B04
Submit_Url=\u63D0\u4EA4\u5730\u5740 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 ReportServerP-Are_you_sure_to_delete_the_selected_printer=\u4F60\u78BA\u5BE6\u60F3\u522A\u9664\u9078\u4E2D\u7684\u5370\u8868\u6A5F\u55CE
@ -1333,7 +1333,7 @@ Format-Error=\u8F38\u5165\u7684\u503C\u683C\u5F0F\u4E0D\u6B63\u78BA
Server-Stop=\u505C\u6B62 Server-Stop=\u505C\u6B62
Preference-Setting_Grid=\u7DB2\u683C\u8A2D\u5B9A Preference-Setting_Grid=\u7DB2\u683C\u8A2D\u5B9A
ReportServerP-Add_Printer=\u589E\u52A0\u5370\u8868\u6A5F ReportServerP-Add_Printer=\u589E\u52A0\u5370\u8868\u6A5F
FR-Designer-Plugin_Active=\u555F\u7528 FR-Designer-Plugin_Active=Active
Utils-File_name=\u6A94\u6848\u540D Utils-File_name=\u6A94\u6848\u540D
NOT_NULL_Des=\u4E0D\u80FD\u70BA\u7A7A NOT_NULL_Des=\u4E0D\u80FD\u70BA\u7A7A
Right_Border_Line=\u53F3\u6846\u7DDA Right_Border_Line=\u53F3\u6846\u7DDA
@ -1347,17 +1347,17 @@ ReportColumns-Columns_vertically=\u6B04\u5206\u6B04
ReportGUI-Print_Background=\u5217\u5370/\u532F\u51FA\u5831\u8868\u80CC\u666F ReportGUI-Print_Background=\u5217\u5370/\u532F\u51FA\u5831\u8868\u80CC\u666F
Export-CSV=CSV\u683C\u5F0F(\u9017\u865F\u5206\u9694) Export-CSV=CSV\u683C\u5F0F(\u9017\u865F\u5206\u9694)
M_Edit-Paste=\u8CBC\u4E0A(P) M_Edit-Paste=\u8CBC\u4E0A(P)
FR-Designer-Basic_Restart_Designer=\u91CD\u555F\u8A2D\u8A08\u5668 FR-Designer-Basic_Restart_Designer=Restart designer
ReportServerP-PDF2-INFO=\u50C5\u5728LINUX/UNIX\u4E0B\u672A\u5B89\u88DD\u4E2D\u6587\u5B57\u9AD4\u6642\u4F7F\u7528 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 FormulaD-Check_Valid=\u6AA2\u67E5\u5408\u6CD5\u6027
server_disconnected=\u9023\u63A5\u5DF2\u65B7\u958B server_disconnected=\u9023\u63A5\u5DF2\u65B7\u958B
ParameterD-Parameter_name_cannot_be_null=\u53C3\u6578\u7684\u540D\u5B57\u4E0D\u53EF\u4EE5\u70BA\u7A7A ParameterD-Parameter_name_cannot_be_null=\u53C3\u6578\u7684\u540D\u5B57\u4E0D\u53EF\u4EE5\u70BA\u7A7A
FR-Designer-Plugin_Version_Is_Lower_Than_Current=\u5347\u7D1A\u5305\u7684\u63D2\u4EF6\u7248\u672C\u6C92\u6709\u6BD4\u7576\u524D\u7684\u9AD8 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 RWA-NotChange_Unmodified=\u4E0D\u6539\u8B8A\u6642\u4E0D\u66F4\u65B0
User_Information=\u7528\u6236\u8A0A\u606F User_Information=\u7528\u6236\u8A0A\u606F
Custom_styles_lost=\u81EA\u5B9A\u7FA9\u6A23\u5F0F\u5DF2\u4E1F\u5931 Custom_styles_lost=\u81EA\u5B9A\u7FA9\u6A23\u5F0F\u5DF2\u4E1F\u5931
PageSetup-Margin=\u9801\u908A\u8DDD PageSetup-Margin=\u9801\u908A\u8DDD
M-New_FormBook=\u65B0\u589E\u8868\u55AE\uFF08\u6C7A\u7B56\u8868\uFF09 M-New_FormBook=\u5EFA\u7ACB\u65B0\u5831\u8868
Widget-TreeNode=\u6A39\u7BC0\u9EDE\u6309\u9215 Widget-TreeNode=\u6A39\u7BC0\u9EDE\u6309\u9215
Form-Url=\u5730\u5740 Form-Url=\u5730\u5740
Utils-Beyond_the_left_side_of_Border=\u8D85\u51FA\u5DE6\u908A\u754C Utils-Beyond_the_left_side_of_Border=\u8D85\u51FA\u5DE6\u908A\u754C
@ -1369,10 +1369,10 @@ paper=\u7D19\u5F35
Not_Exsit=\u4E0D\u5B58\u5728\u65BC\u5831\u8868 Not_Exsit=\u4E0D\u5B58\u5728\u65BC\u5831\u8868
Utils-Insert_Row=\u63D2\u5165\u5217 Utils-Insert_Row=\u63D2\u5165\u5217
Utils-Delete_Row=\u522A\u9664\u5217 Utils-Delete_Row=\u522A\u9664\u5217
not_support_authority_edit=\u8A72\u5143\u7D20\u4E0D\u652F\u63F4\u8A31\u53EF\u6B0A\u63A7\u5236 not_support_authority_edit=\u8A72\u5143\u7D20\u4E0D\u652F\u6301\u8A31\u53EF\u6B0A\u63A7\u5236
Formula_Tips=\u516C\u5F0F\u5FC5\u9808\u4EE5"\="\u865F\u958B\u982D Formula_Tips=\u516C\u5F0F\u5FC5\u9808\u4EE5"\
FR-Action_Copy=\u8907\u88FD FR-Action_Copy=\u8907\u88FD
Compile_Success=\u7DE8\u8B6F\u6210\u529F Compile_Success=Compile Success
BackgroundTexture-RecycledPaper=\u518D\u751F\u7D19 BackgroundTexture-RecycledPaper=\u518D\u751F\u7D19
StyleAlignment-Single_Line=\u55AE\u5217\u986F\u793A StyleAlignment-Single_Line=\u55AE\u5217\u986F\u793A
Utils-Move_Down=\u4E0B\u79FB Utils-Move_Down=\u4E0B\u79FB
@ -1406,7 +1406,7 @@ Rename=\u91CD\u547D\u540D
Widget-Load_By_Async=\u975E\u540C\u6B65\u8F09\u5165 Widget-Load_By_Async=\u975E\u540C\u6B65\u8F09\u5165
Shape=\u5716\u5F62 Shape=\u5716\u5F62
BindColumn-This_Condition_has_been_existed=\u6B64\u689D\u4EF6\u5DF2\u7D93\u5B58\u5728 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 NS-exception_readError=\u932F\u8AA4\u4EE3\u78BC\:11300005 \u6A21\u677F\u6A94\u6848\u89E3\u6790\u51FA\u932F
Set_Column_Title_Start=\u8A2D\u5B9A\u91CD\u8907\u6A19\u984C\u6B04 Set_Column_Title_Start=\u8A2D\u5B9A\u91CD\u8907\u6A19\u984C\u6B04
Fri=\u4E94 Fri=\u4E94
M_Report-Report_Parameter=\u6A21\u677F\u53C3\u6578 M_Report-Report_Parameter=\u6A21\u677F\u53C3\u6578
@ -1459,7 +1459,7 @@ DBCP_TEST_ON_BORROW=\u7372\u53D6\u9023\u63A5\u524D\u6AA2\u9A57
FR-Designer_layerIndex=\u4F9D\u8CF4\u7684\u5C64\u6578 FR-Designer_layerIndex=\u4F9D\u8CF4\u7684\u5C64\u6578
WEB-Write_Setting=\u586B\u5831\u9762\u9762\u8A2D\u5B9A WEB-Write_Setting=\u586B\u5831\u9762\u9762\u8A2D\u5B9A
M-New_WorkBook=\u65B0\u589E\u5DE5\u4F5C\u7C3F M-New_WorkBook=\u65B0\u589E\u5DE5\u4F5C\u7C3F
FR-Designer-Plugin_Has_Been_Actived=\u63D2\u4EF6\u5DF2\u88AB\u555F\u7528\uFF0C\u91CD\u555F\u8A2D\u8A08\u5668\u53CA\u4F3A\u670D\u5668\u751F\u6548\uFF0C\u4F3A\u670D\u5668\u9700\u624B\u52D5\u91CD\u555F FR-Designer-Plugin_Has_Been_Actived=Plugin is now active
Datasource-Maximum_Number_of_Preview_Rows=\u6700\u5927\u7684\u9810\u89BD\u5217\u6578 Datasource-Maximum_Number_of_Preview_Rows=\u6700\u5927\u7684\u9810\u89BD\u5217\u6578
ExpandD-Cell_Expand_Attributes=\u64F4\u5C55\u5C6C\u6027 ExpandD-Cell_Expand_Attributes=\u64F4\u5C55\u5C6C\u6027
Select_the_repeated_row_and_column=\u9078\u64C7\u9700\u8981\u91CD\u8907\u7684\u5217\u6B04 Select_the_repeated_row_and_column=\u9078\u64C7\u9700\u8981\u91CD\u8907\u7684\u5217\u6B04
@ -1509,7 +1509,7 @@ ReportColumns-Repeat_Row=\u8907\u88FD\u5217\u5E8F\u6B04
Print_Setting=\u5217\u5370\u8A2D\u5B9A Print_Setting=\u5217\u5370\u8A2D\u5B9A
Registration-User_Name=\u5E33\u865F Registration-User_Name=\u5E33\u865F
Datasource-User_Defined=\u81EA\u5B9A\u7FA9 Datasource-User_Defined=\u81EA\u5B9A\u7FA9
FR-Designer-Plugin_DownLoadMessage=\u63D2\u4EF6\u9700\u8981\u4F9D\u8CF4\u7684\u652F\u63F4\uFF0C\u662F\u5426\u5B89\u88DD({R1} m)? FR-Designer-Plugin_DownLoadMessage=\u63D2\u4EF6\u9700\u8981\u4F9D\u8CF4\u7684\u652F\u6301\uFF0C\u662F\u5426\u5B89\u88DD({R1} m)?
Delay=\u5EF6\u9072 Delay=\u5EF6\u9072
FR-Designer-All_MSBold=\u5FAE\u8EDF\u96C5\u9ED1 FR-Designer-All_MSBold=\u5FAE\u8EDF\u96C5\u9ED1
Utils-Now_create_connection=\u6B63\u5728\u5EFA\u7ACB\u8CC7\u6599\u9023\u63A5 Utils-Now_create_connection=\u6B63\u5728\u5EFA\u7ACB\u8CC7\u6599\u9023\u63A5
@ -1535,7 +1535,7 @@ FR-Designer_Cancel=\u53D6\u6D88
Button-Group-Display-Columns=\u5C55\u793A\u6B04\u6578 Button-Group-Display-Columns=\u5C55\u793A\u6B04\u6578
Widget-Height=\u63A7\u5236\u9805\u9AD8\u5EA6 Widget-Height=\u63A7\u5236\u9805\u9AD8\u5EA6
Examples=\u4F8B\u5B50 Examples=\u4F8B\u5B50
Formula_Dictionary_Display_Example=\u5BE6\u969B\u503C\u7BC4\u570D\u70BA Formula_Dictionary_Display_Examples\= \u5BE6\u969B\u503C\u7BC4\u570D\u70BA Formula_Dictionary_Display_Examples_Html\=<html>\u5BE6\u969B\u503C\u7BC4\u570D\u70BA Formula_Editor\=\u516C\u5F0F\u7DE8\u8F2F\u5668 Formula_Dictionary_Display_Example=\u5BE6\u969B\u503C\u7BC4\u570D\u70BA Formula_Dictionary_Display_Examples\
StyleAlignment-Horizontal=\u6C34\u5E73\u5C0D\u9F4A StyleAlignment-Horizontal=\u6C34\u5E73\u5C0D\u9F4A
HyperLink_Must_Alone_Reset=\u591A\u500B\u8D85\u93C8 HyperLink_Must_Alone_Reset=\u591A\u500B\u8D85\u93C8
ExpandD-Expand_Direction=\u64F4\u5C55\u65B9\u5411 ExpandD-Expand_Direction=\u64F4\u5C55\u65B9\u5411
@ -1565,7 +1565,7 @@ HF-Undefined=\u6C92\u6709\u5B9A\u7FA9
Widget-User_Defined_Widget_Config=\u9810\u5B9A\u7FA9\u63A7\u5236\u9805 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 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 Form-Single_quote=\u55AE\u5F15\u865F
Compile_Success_And_Then_Save=\u7DE8\u8B6F\u6210\u529F\u624D\u80FD\u6B63\u78BA\u5132\u5B58 Compile_Success_And_Then_Save=Compile Success And Then Save
FR-Designer_Layout-Padding=\u5167\u908A\u8DDD FR-Designer_Layout-Padding=\u5167\u908A\u8DDD
Layout_Container=\u4F48\u5C40\u5BB9\u5668 Layout_Container=\u4F48\u5C40\u5BB9\u5668
Admin=\u7BA1\u7406\u54E1 Admin=\u7BA1\u7406\u54E1
@ -1582,7 +1582,7 @@ Tree-Return_Full_Path=\u7D50\u679C\u8FD4\u56DE\u5B8C\u6574\u5C64\u6B21\u8DEF\u5F
FRFont-bolditalic=\u7C97\u9AD4\u659C\u9AD4 FRFont-bolditalic=\u7C97\u9AD4\u659C\u9AD4
FR-Base_StyleFormat_Sample=\u793A\u4F8B FR-Base_StyleFormat_Sample=\u793A\u4F8B
Area_Value=\u5340\u57DF\u503C Area_Value=\u5340\u57DF\u503C
FR-Designer-Plugin_Disable=\u7981\u7528 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 Utils-Are_you_sure_to_remove_the_selected_item=\u4F60\u78BA\u5BE6\u6C7A\u5B9A\u522A\u9664\u9078\u4E2D\u7684\u9805
Face_Write=\u586B\u5831 Face_Write=\u586B\u5831
Poly-Report_Block=\u8868\u683C\u985E\u578B\u805A\u5408\u584A Poly-Report_Block=\u8868\u683C\u985E\u578B\u805A\u5408\u584A
@ -1593,7 +1593,7 @@ FR-Hyperlink_Please_Select_Reportlet=\u8ACB\u9078\u64C7\u7DB2\u8DEF\u5831\u8868
FS_Report_Type=\u985E\u578B FS_Report_Type=\u985E\u578B
HF-New_Line=\u63DB\u5217\u7B26 HF-New_Line=\u63DB\u5217\u7B26
Privilege=\u6B0A\u9650 Privilege=\u6B0A\u9650
Export-Offline-Html=\u532F\u51FA\u96E2\u7DDAhtml\u5831\u8868 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_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 FR-Designer-Widget-Style_Frame_Style=\u6846\u67B6\u6A23\u5F0F
Present-No_Present=\u53D6\u6D88\u6A21\u5F0F\u8A2D\u5B9A Present-No_Present=\u53D6\u6D88\u6A21\u5F0F\u8A2D\u5B9A
@ -1613,14 +1613,14 @@ FR-Designer_Date=\u65E5\u671F
Column_Multiple=\u8CC7\u6599\u500D\u6578 Column_Multiple=\u8CC7\u6599\u500D\u6578
FR-App-All_File=\u6A94\u6848 FR-App-All_File=\u6A94\u6848
Sort-Descending=\u964D\u51AA Sort-Descending=\u964D\u51AA
FR-Designer-Plugin_Delete=\u522A\u9664 FR-Designer-Plugin_Delete=Delete
Above=\u4EE5\u4E0A\u7248\u672C Above=\u4EE5\u4E0A\u7248\u672C
Utils-The-Chart=\u5716\u8868 Utils-The-Chart=\u5716\u8868
FRFont-plain=\u5E38\u898F FRFont-plain=\u5E38\u898F
Calculating=\u8655\u7406\u4E2D Calculating=\u8655\u7406\u4E2D
Form-Object=\u8868\u55AE\u5C0D\u8C61 Form-Object=\u8868\u55AE\u5C0D\u8C61
May=\u4E94\u6708 May=\u4E94\u6708
FR-Designer_Plugin_Normal_Update=\u66F4\u65B0 FR-Designer_Plugin_Normal_Update=Update
FR-Hyperlink_Reportlet=\u7DB2\u8DEF\u5831\u8868 FR-Hyperlink_Reportlet=\u7DB2\u8DEF\u5831\u8868
M_Edit-Copy=\u8907\u88FD(C) M_Edit-Copy=\u8907\u88FD(C)
Sub_Report_Message2=\u7236\u5831\u8868\u4E0D\u5728\u7576\u524D\u904B\u884C\u74B0\u5883\u4E0B Sub_Report_Message2=\u7236\u5831\u8868\u4E0D\u5728\u7576\u524D\u904B\u884C\u74B0\u5883\u4E0B
@ -1632,10 +1632,10 @@ FR-Designer_Server-version-tip-moreInfo=\u5EFA\u8B70\u60A8\u6240\u5C6C\u5718\u96
Get_Lock=\u52A0\u9396 Get_Lock=\u52A0\u9396
HF-Edit_Footer=\u7DE8\u8F2F\u9801\u5C3E HF-Edit_Footer=\u7DE8\u8F2F\u9801\u5C3E
Datasource-New_Charset=\u65B0\u7DE8\u78BC Datasource-New_Charset=\u65B0\u7DE8\u78BC
Preference-Custom=\u81EA\u5B9A\u7FA9 Preference-Custom=Custom
BackgroundTexture-Newsprint=\u65B0\u805E\u7D19 BackgroundTexture-Newsprint=\u65B0\u805E\u7D19
ConditionB-Add_bracket=\u65B0\u589E\u62EC\u865F ConditionB-Add_bracket=\u65B0\u589E\u62EC\u865F
Datasource-Connection_successfully=\u9023\u63A5\u6210\u529F Datasource-Connection_successfully=\u93C8\u63A5\u6210\u529F
Function-The_class_must_implement_the_interface=\u6539\u985E\u5FC5\u9808\u5BE6\u73FE\u4ECB\u9762 Function-The_class_must_implement_the_interface=\u6539\u985E\u5FC5\u9808\u5BE6\u73FE\u4ECB\u9762
FR-Designer_ChartF-Transparency=\u900F\u660E FR-Designer_ChartF-Transparency=\u900F\u660E
Crimson=\u6DF1\u7D05 Crimson=\u6DF1\u7D05
@ -1657,9 +1657,9 @@ Verify-Verify_Formula=\u6821\u9A57\u516C\u5F0F
State=\u7701\u5E02 State=\u7701\u5E02
FR-Designer-Widget-Style_Body_Background=\u4E3B\u9AD4\u80CC\u666F FR-Designer-Widget-Style_Body_Background=\u4E3B\u9AD4\u80CC\u666F
FR-App-Privilege_No=\u6C92\u6709\u6B0A\u9650 FR-App-Privilege_No=\u6C92\u6709\u6B0A\u9650
Please_Drag_ParaPane=\u8ACB\u62D6\u5165\u53C3\u6578\u9762\u677F Please_Drag_ParaPane=
Come_True=\u5BE6\u73FE Come_True=\u5BE6\u73FE
ISEMPTY=\u70BA\u7A7A ISEMPTY=is empty
Background-Texture=\u7D0B\u7406 Background-Texture=\u7D0B\u7406
FR-Designer_Verify-Message=\u932F\u8AA4\u8A0A\u606F FR-Designer_Verify-Message=\u932F\u8AA4\u8A0A\u606F
Locked=\uFF08\u5DF2\u9396\u5B9A\uFF09 Locked=\uFF08\u5DF2\u9396\u5B9A\uFF09
@ -1713,7 +1713,7 @@ Tree_Data_Field=\u6A39\u72C0\u8CC7\u6599\u6B04\u4F4D
Border-Style-Normal=\u76F4\u89D2\u6846\u7DDA Border-Style-Normal=\u76F4\u89D2\u6846\u7DDA
Top_And_Double_Bottom_Border_Line=\u4E0A\u6846\u7DDA\u548C\u96D9\u4E0B\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-Server_Embedded_Server_Start=\u5167\u7F6E\u7684\u4F3A\u670D\u5668-\u555F\u52D5
FR-Designer-Basic_Restart_Designer_Later=\u7A0D\u5F8C\u91CD\u555F FR-Designer-Basic_Restart_Designer_Later=Restart later
StyleAlignment-Top=\u9760\u4E0A\u5C0D\u9F4A StyleAlignment-Top=\u9760\u4E0A\u5C0D\u9F4A
ReportServerP-First=\u9996\u9801 ReportServerP-First=\u9996\u9801
Not_Exist=\u4E0D\u5B58\u5728 Not_Exist=\u4E0D\u5B58\u5728
@ -1735,7 +1735,7 @@ PageSetup-Horizontally=\u6C34\u5E73\u7F6E\u4E2D
No_Editor_Property_Definition=\u8A72\u7DE8\u8F2F\u5668\u6C92\u6709\u5C6C\u6027\u5B9A\u7FA9 No_Editor_Property_Definition=\u8A72\u7DE8\u8F2F\u5668\u6C92\u6709\u5C6C\u6027\u5B9A\u7FA9
Env-Remote_Server=\u9060\u7A0B\u4F3A\u670D\u5668 Env-Remote_Server=\u9060\u7A0B\u4F3A\u670D\u5668
FR-Utils_Background=\u80CC\u666F FR-Utils_Background=\u80CC\u666F
FR-Designer-Plugin_Warning=\u8B66\u544A 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 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 CellWrite-Page_After_Row=\u5217\u5F8C\u5206\u9801
HF-Right_Section=\u53F3\u5340\u57DF HF-Right_Section=\u53F3\u5340\u57DF
@ -1812,7 +1812,7 @@ FR-Action_Remove=\u522A\u9664
FRFont-Style=\u5B57\u5F62 FRFont-Style=\u5B57\u5F62
Select_DataColumn=\u9078\u64C7\u8CC7\u6599\u6B04 Select_DataColumn=\u9078\u64C7\u8CC7\u6599\u6B04
StartValue=\u958B\u59CB\u503C StartValue=\u958B\u59CB\u503C
SINGLE_FILE_UPLOAD=\u53EA\u652F\u63F4\u55AE\u6A94\u6848\u4E0A\u50B3 SINGLE_FILE_UPLOAD=\u53EA\u652F\u6301\u55AE\u6A94\u6848\u4E0A\u50B3
BackgroundTexture-Cork=\u8EDF\u6728\u585E BackgroundTexture-Cork=\u8EDF\u6728\u585E
M_Format-Data_Map=\u8CC7\u6599\u5B57\u5178 M_Format-Data_Map=\u8CC7\u6599\u5B57\u5178
FR-mobile_native_analysis=\u539F\u751F\u89E3\u6790 FR-mobile_native_analysis=\u539F\u751F\u89E3\u6790
@ -1822,13 +1822,13 @@ local=\u672C\u6A5F
FR-Designer_Gradation=\u5C64\u6B21 FR-Designer_Gradation=\u5C64\u6B21
PageSetup-Finis_Start_Column=\u91CD\u8907\u7D50\u5C3E\u6B04 PageSetup-Finis_Start_Column=\u91CD\u8907\u7D50\u5C3E\u6B04
Env-Invalid_User_and_Password=\u975E\u6CD5\u7684\u5E33\u865F\u6216\u5BC6\u78BC Env-Invalid_User_and_Password=\u975E\u6CD5\u7684\u5E33\u865F\u6216\u5BC6\u78BC
FR-Designer-Plugin_All_Plugins=\u5168\u90E8\u63D2\u4EF6 FR-Designer-Plugin_All_Plugins=All plugins
FR-Designer_Prepare_Export=\u958B\u59CB\u532F\u51FA\uFF0C\u8ACB\u7A0D\u5019 FR-Designer_Prepare_Export=\u958B\u59CB\u532F\u51FA\uFF0C\u8ACB\u7A0D\u5019
DBCP_TEST_ON_RETURN=\u6B78\u9084\u9023\u63A5\u524D\u6AA2\u9A57 DBCP_TEST_ON_RETURN=\u6B78\u9084\u93C8\u63A5\u524D\u6AA2\u9A57
no-alternatives=\u6C92\u6709\u9078\u64C7\u9805 no-alternatives=\u6C92\u6709\u9078\u64C7\u9805
FR-Designer_Submmit_WClass=\u5F8C\u53F0\u985E\u63D0\u4EA4 FR-Designer_Submmit_WClass=\u5F8C\u53F0\u985E\u63D0\u4EA4
M_Insert-Slope_Line=\u63D2\u5165\u659C\u7DDA M_Insert-Slope_Line=\u63D2\u5165\u659C\u7DDA
FR-Designer-Plugin_Plugin_Description=\u63D2\u4EF6\u63CF\u8FF0 FR-Designer-Plugin_Plugin_Description=Description
ExpandD-Not_Expand=\u4E0D\u64F4\u5C55 ExpandD-Not_Expand=\u4E0D\u64F4\u5C55
Utils-Bottom_to_Top=\u5F9E\u4E0B\u5230\u4E0A Utils-Bottom_to_Top=\u5F9E\u4E0B\u5230\u4E0A
Collect-Click\!_Get_user_information_code=\u9EDE\u64CA\!\u7372\u53D6\u7528\u6236\u8A0A\u606F\u78BC Collect-Click\!_Get_user_information_code=\u9EDE\u64CA\!\u7372\u53D6\u7528\u6236\u8A0A\u606F\u78BC
@ -1847,7 +1847,7 @@ Form-NullLayout=\u7D55\u5C0D\u5B9A\u4F4D
ConditionB-Remove_bracket=\u53BB\u6389\u62EC\u865F ConditionB-Remove_bracket=\u53BB\u6389\u62EC\u865F
email=\u90F5\u7BB1 email=\u90F5\u7BB1
Minute=\u5206\u9418 Minute=\u5206\u9418
FR-Designer-Plugin_Update=\u63D2\u4EF6\u66F4\u65B0 FR-Designer-Plugin_Update=Plugins to update
alraedy_close=\u5DF2\u7D93\u95DC\u9589 alraedy_close=\u5DF2\u7D93\u95DC\u9589
ComboCheckBox-End_Symbol=\u7D50\u675F\u7B26 ComboCheckBox-End_Symbol=\u7D50\u675F\u7B26
DataColumn=\u8CC7\u6599\u6B04 DataColumn=\u8CC7\u6599\u6B04
@ -1857,17 +1857,17 @@ Export-Excel-PageToSheet=\u5206\u9801\u5206Sheet\u532F\u51FA
Edit-Row_Count=\u5217\u6578 Edit-Row_Count=\u5217\u6578
DS-Report_TableData=\u5831\u8868\u8CC7\u6599\u96C6 DS-Report_TableData=\u5831\u8868\u8CC7\u6599\u96C6
Sche-Hour=\u6642 Sche-Hour=\u6642
Group_Count=\u8868\u793A\u7E3D\u500B\u6578 Group_Count=Group Count
EndValue=\u7D50\u675F\u503C EndValue=\u7D50\u675F\u503C
FR-Designer_Sytle-Indentation=\u7E2E\u9032 FR-Designer_Sytle-Indentation=\u7E2E\u9032
DownBarBorderStyleAndColor=\u8DCC\u67F1\u6A23\u5F0F DownBarBorderStyleAndColor=\u8DCC\u67F1\u6A23\u5F0F
World=\u4E16\u754C World=\u4E16\u754C
FR-Designer-Basic_Cancel=\u53D6\u6D88 FR-Designer-Basic_Cancel=Cancel
Finally=\u6700\u5F8C Finally=\u6700\u5F8C
Low=\u4F4E Low=\u4F4E
Please_Input_The_Key=\u8ACB\u8F38\u5165\u5C0D\u61C9\u5730\u5716\u4F7F\u7528\u7684key Please_Input_The_Key=\u8ACB\u8F38\u5165\u5C0D\u61C9\u5730\u5716\u4F7F\u7528\u7684key
Smart=\u667A\u80FD Smart=\u667A\u80FD
Preference-Predefined=\u9810\u5B9A\u7FA9 Preference-Predefined=Predefined
Current_custom_global=\u7576\u524D\u5831\u8868\u6240\u7528\u81EA\u5B9A\u7FA9\u5168\u5C40\u6A23\u5F0F 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? 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 WEB-Pagination_Setting=\u5206\u9801\u9810\u89BD\u8A2D\u5B9A
@ -1875,14 +1875,14 @@ RCodeDrawPix=\u50CF\u7D20
FR-Designer-Widget-Style_Alpha=\u4E0D\u900F\u660E\u5EA6 FR-Designer-Widget-Style_Alpha=\u4E0D\u900F\u660E\u5EA6
BorderLayout-North=\u5317 BorderLayout-North=\u5317
HJS-Current_Page=\u7576\u524D\u9801 HJS-Current_Page=\u7576\u524D\u9801
Compile=\u7DE8\u8B6F Compile=Compile
Show_Blank_Row=\u88DC\u5145\u7A7A\u767D\u5217 Show_Blank_Row=\u88DC\u5145\u7A7A\u767D\u5217
TableData_Dynamic_Parameter_Setting=\u52D5\u614B\u53C3\u6578\u6CE8\u5165 TableData_Dynamic_Parameter_Setting=\u52D5\u614B\u53C3\u6578\u6CE8\u5165
FR-Background_Image_Default=\u9810\u8A2D FR-Background_Image_Default=\u9810\u8A2D
BackgroundTexture-WhiteMarble=\u767D\u8272\u5927\u7406\u77F3 BackgroundTexture-WhiteMarble=\u767D\u8272\u5927\u7406\u77F3
DataFunction-Sum=\u6C42\u548C DataFunction-Sum=\u6C42\u548C
Collect-The_user_information_code_is_invalid=\u9019\u500B\u7528\u6236\u8A0A\u606F\u78BC\u662F\u975E\u6CD5\u7684 Collect-The_user_information_code_is_invalid=\u9019\u500B\u7528\u6236\u8A0A\u606F\u78BC\u662F\u975E\u6CD5\u7684
Preference-Locale=\u570B\u969B\u5316 Preference-Locale=Locale
M_File-Export-PDF=PDF\u683C\u5F0F M_File-Export-PDF=PDF\u683C\u5F0F
BiasD-From-lower_left_to_upper_right=\u7E3D\u5DE6\u4E0B\u5230\u53F3\u4E0A\u767C\u6563 BiasD-From-lower_left_to_upper_right=\u7E3D\u5DE6\u4E0B\u5230\u53F3\u4E0A\u767C\u6563
Border-Style=\u6846\u7DDA\u6A23\u5F0F Border-Style=\u6846\u7DDA\u6A23\u5F0F
@ -1915,7 +1915,7 @@ Preference-Pagination_Line_Color=\u5206\u9801\u7DDA\u984F\u8272
Test_URL=\u6E2C\u8A66\u9023\u63A5 Test_URL=\u6E2C\u8A66\u9023\u63A5
Fill_blank_Data=\u88DC\u5145\u7A7A\u767D\u8CC7\u6599 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 ReportServerP-The_name_of_printer_cannot_be_null=\u5370\u8868\u6A5F\u7684\u540D\u5B57\u4E0D\u80FD\u70BA\u7A7A
FR-Designer-Basic_Copy_Activation_Key=\u96D9\u64CA\u8A2D\u8A08\u5668\u7DE8\u865F\u53EF\u8907\u88FD\u5230\u526A\u8CBC\u677F FR-Designer-Basic_Copy_Activation_Key=Double click to copy key to clipboard
Continuum=\u76F8\u9130\u9023\u7E8C Continuum=\u76F8\u9130\u9023\u7E8C
BackgroundTexture-MediumWood=\u6DF1\u8272\u6728\u88FD BackgroundTexture-MediumWood=\u6DF1\u8272\u6728\u88FD
Datasource-Column_Index=\u6B04\u5E8F\u865F Datasource-Column_Index=\u6B04\u5E8F\u865F
@ -1924,11 +1924,11 @@ Form-Component_Bounds=\u5143\u4EF6\u908A\u754C
Utils-Submit=\u63D0\u4EA4 Utils-Submit=\u63D0\u4EA4
Conditions_formula=\u689D\u4EF6\u516C\u5F0F Conditions_formula=\u689D\u4EF6\u516C\u5F0F
M_Insert-Image=\u63D2\u5165\u5716\u7247 M_Insert-Image=\u63D2\u5165\u5716\u7247
FR-Designer-Plugin_Will_Be_Delete=\u63D2\u4EF6\u5C07\u88AB\u522A\u9664\uFF0C\u9700\u91CD\u555F\u8A2D\u8A08\u5668\u53CA\u4F3A\u670D\u5668\uFF0C\u4F3A\u670D\u5668\u9700\u624B\u52D5\u91CD\u555F FR-Designer-Plugin_Will_Be_Delete=Delete plugin
FormulaD-Functions=\u51FD\u6578 FormulaD-Functions=\u51FD\u6578
Mobile_Terminal=\u884C\u52D5\u8A2D\u5099 Mobile_Terminal=\u884C\u52D5\u8A2D\u5099
CheckBox=\u5FA9\u9078\u6846 CheckBox=\u5FA9\u9078\u6846
FR-Designer-Plugin_Install=\u5B89\u88DD FR-Designer-Plugin_Install=Install
Sun=\u65E5 Sun=\u65E5
FR-Designer_ToolBar_Bottom=\u5E95\u90E8\u5DE5\u5177\u6B04 FR-Designer_ToolBar_Bottom=\u5E95\u90E8\u5DE5\u5177\u6B04
Widget-Width=\u63A7\u5236\u9805\u5BEC\u5EA6 Widget-Width=\u63A7\u5236\u9805\u5BEC\u5EA6
@ -1986,19 +1986,21 @@ FR-Designer_Role=\u89D2\u8272
FR-Designer_Permissions=\u6B0A\u9650 FR-Designer_Permissions=\u6B0A\u9650
FR-Designer_Form_Button=\u6309\u9215 FR-Designer_Form_Button=\u6309\u9215
FR-Designer_WF_Name=\u540D\u7A31 FR-Designer_WF_Name=\u540D\u7A31
FR-Designer_Double=\u5C0F\u6578 FR-Designer_AlphaFine_Enable=\u958B\u555F
FR-Designer_Query=\u67E5\u8A62 FR-Designer_AlphaFine_EnableAlphaFine=\u958B\u555FAlphaFine\u529F\u80FD
FR-Designer_Font=\u5B57\u9AD4 FR-Designer_AlphaFine_EnableInternetSearch=\u806F\u7DB2\u641C\u7D22
FR-Designer_Confirm=\u78BA\u8A8D FR-Designer_AlphaFine_Shortcut_Config=\u5FEB\u6377\u9375\u914D\u7F6E
FR-Designer_Parameter=\u53C3\u6578 FR-Designer_AlphaFine_SearchRange=\u641C\u7D22\u7BC4\u570D
FR-Designer-Plugin_Plugin=\u63D2\u4EF6 FR-Designer_AlphaFine_Recommend=\u731C\u60A8\u9700\u8981
FR-Designer_Background=\u586B\u6EFF\u8272\u5F69 FR-Designer-Plugin_Addon=\u61C9\u7528\u4E2D\u5FC3
Template=\u7BC4\u672C FR-Designer_Templates=\u6A21\u677F
FR-Designer_Templates_Content=\u6A21\u677F\u5167\u5BB9
FR-Designer_Original_Marked_Filed=\u539F\u59CB\u6A19\u8A18\u6B04\u4F4D FR-Designer_AlphaFine_Latest=\u6700\u8FD1\u5E38\u7528
FR-Designer_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 FR-Designer_AlphaFine_ShowLess=\u6536\u8D77
FR-Designer_Can_not_use_FormatBursh=\u7121\u6CD5\u4F7F\u7528\u8907\u88FD\u683C\u5F0F FR-Designer_Alphafine=AlphaFine\u667A\u80FD\u641C\u7D22
FR-Designer_Tree_Data_Field=\u6A39\u72C0\u8CC7\u6599\u6B04\u4F4D FR-Designer_AlphaFine_ShowAll=\u986F\u793A\u5168\u90E8
FR-Designer_Parent_Marked_Field=\u7236\u6A19\u8A18\u6B04\u4F4D FR-Designer-Alphafine_No_Remind=\u4E0D\u518D\u63D0\u793A
FR-Designer_Build_Tree_Accord_Parent_Marked_Filed=\u4F9D\u8CF4\u6240\u9078\u8CC7\u6599\u96C6\u7684\u7236\u6A19\u8A18\u6B04\u4F4D\u69CB\u5EFA\u6A39 FR-Designer_AlphaFine_NoResult=\u66AB\u7121\u76F8\u95DC\u5167\u5BB9
FR-Product_Demo=\u529F\u80FD\u5C55\u793A FR-Designer_ConnectionFailed=\u93C8\u63A5\u5931\u6557
FR-Designer_NoResult=\u66AB\u4E0D\u652F\u6301\u986F\u793A
FR-Designer-AlphaFine_SetShortcuts=\u8ACB\u76F4\u63A5\u5728\u9375\u76E4\u4E0A\u6309\u5169\u500B\u7D44\u5408\u9375

8
designer_base/src/com/fr/design/mainframe/loghandler/DesignerLogHandler.java

@ -13,7 +13,10 @@ import com.fr.general.LogRecordTime;
import com.fr.stable.xml.LogRecordTimeProvider; import com.fr.stable.xml.LogRecordTimeProvider;
import javax.swing.*; import javax.swing.*;
import javax.swing.text.*; import javax.swing.text.BadLocationException;
import javax.swing.text.Document;
import javax.swing.text.SimpleAttributeSet;
import javax.swing.text.StyleConstants;
import java.awt.*; import java.awt.*;
import java.awt.event.*; import java.awt.event.*;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
@ -130,6 +133,7 @@ public class DesignerLogHandler {
private LogHandlerArea() { private LogHandlerArea() {
jTextArea = new JTextPane(); jTextArea = new JTextPane();
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
UIScrollPane js = new UIScrollPane(jTextArea); UIScrollPane js = new UIScrollPane(jTextArea);
this.add(js, BorderLayout.CENTER); this.add(js, BorderLayout.CENTER);
@ -293,4 +297,6 @@ public class DesignerLogHandler {
}; };
} }
} }

423
designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java

@ -11,141 +11,132 @@ import com.fr.design.chart.fun.IndependentChartUIProvider;
import com.fr.design.chart.gui.ChartWidgetOption; import com.fr.design.chart.gui.ChartWidgetOption;
import com.fr.design.chartinterface.*; import com.fr.design.chartinterface.*;
import com.fr.design.condition.ConditionAttributesPane; import com.fr.design.condition.ConditionAttributesPane;
import com.fr.design.extra.ChartTypeInterfaceCloseableHandler;
import com.fr.design.gui.core.WidgetOption; import com.fr.design.gui.core.WidgetOption;
import com.fr.design.gui.frpane.AttributeChangeListener; import com.fr.design.gui.frpane.AttributeChangeListener;
import com.fr.design.mainframe.chart.AbstractChartAttrPane; import com.fr.design.mainframe.chart.AbstractChartAttrPane;
import com.fr.design.mainframe.chart.ChartEditPane;
import com.fr.design.mainframe.chart.ChartsConfigPane;
import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.design.mainframe.chart.gui.ChartDataPane;
import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.design.mainframe.chart.gui.ChartStylePane;
import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPane; import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPane;
import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane; import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane;
import com.fr.design.module.DesignModuleFactory; import com.fr.design.module.DesignModuleFactory;
import com.fr.file.XMLFileManager;
import com.fr.form.ui.ChartEditor; import com.fr.form.ui.ChartEditor;
import com.fr.general.FRLogger;
import com.fr.general.GeneralContext; import com.fr.general.GeneralContext;
import com.fr.general.IOUtils; import com.fr.general.IOUtils;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.plugin.PluginCollector; import com.fr.plugin.context.PluginContext;
import com.fr.plugin.PluginLicenseManager; import com.fr.plugin.injectable.PluginModule;
import com.fr.plugin.PluginMessage; import com.fr.plugin.injectable.PluginSingleInjection;
import com.fr.plugin.proxy.PluginInstanceProxyFactory; import com.fr.plugin.manage.PluginFilter;
import com.fr.plugin.proxy.PluginInvocationHandler; import com.fr.plugin.observer.PluginEvent;
import com.fr.plugin.observer.PluginEventListener;
import com.fr.stable.ArrayUtils; import com.fr.stable.ArrayUtils;
import com.fr.stable.EnvChangedListener;
import com.fr.stable.StringUtils; import com.fr.stable.StringUtils;
import com.fr.stable.collections.map.CloseableContainedMap; import com.fr.stable.bridge.StableFactory;
import com.fr.stable.fun.Authorize; import com.fr.plugin.solution.closeable.CloseableContainedMap;
import com.fr.stable.plugin.ExtraChartDesignClassManagerProvider; import com.fr.stable.plugin.ExtraChartDesignClassManagerProvider;
import com.fr.stable.plugin.PluginReadListener;
import com.fr.stable.plugin.PluginSimplify;
import com.fr.stable.plugin.closeable.Closeable;
import com.fr.stable.xml.XMLPrintWriter;
import com.fr.stable.xml.XMLableReader;
import javax.swing.*; import javax.swing.*;
import java.util.*; import java.util.*;
/** /**
* Created by eason on 14/12/29. * Created by eason on 14/12/29.
*/ */
public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraChartDesignClassManagerProvider { public class ChartTypeInterfaceManager implements ExtraChartDesignClassManagerProvider {
private static ClassLoader loader = Thread.currentThread().getContextClassLoader();
private static ChartTypeInterfaceManager classManager = new ChartTypeInterfaceManager();
private static ChartTypeInterfaceManager classManager = null;
private static LinkedHashMap<String, CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap>> chartTypeInterfaces = private static LinkedHashMap<String, CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap>> chartTypeInterfaces =
new LinkedHashMap<>(); new LinkedHashMap<String, CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap>>();
public synchronized static ChartTypeInterfaceManager getInstance() { public synchronized static ChartTypeInterfaceManager getInstance() {
if (classManager == null) {
classManager = new ChartTypeInterfaceManager();
chartTypeInterfaces.clear();
classManager.readDefault();
}
return classManager; return classManager;
} }
static { static {
GeneralContext.addEnvChangedListener(new EnvChangedListener() { readDefault();
public void envChanged() { StableFactory.registerMarkedObject(XML_TAG, classManager);
ChartTypeInterfaceManager.envChanged();
}
});
} }
static { static {
GeneralContext.addPluginReadListener(new PluginReadListener() {
GeneralContext.listenPluginRunningChanged(new PluginEventListener() {
@Override @Override
public void success(Status status) { public void on(PluginEvent event) {
//重新注册designModuleFactory //重新注册designModuleFactory
DesignModuleFactory.registerExtraWidgetOptions(initWidgetOption()); DesignModuleFactory.registerExtraWidgetOptions(initWidgetOption());
} }
}, new PluginFilter() {
@Override
public boolean accept(PluginContext context) {
return context.contain(PluginModule.ExtraChartType);
}
}); });
} }
public static WidgetOption[] initWidgetOption(){ private static WidgetOption[] initWidgetOption() {
ChartInternationalNameContentBean[] typeName = ChartTypeManager.getInstance().getAllChartBaseNames(); ChartInternationalNameContentBean[] typeName = ChartTypeManager.getInstance().getAllChartBaseNames();
ChartWidgetOption[] child = new ChartWidgetOption[typeName.length]; ChartWidgetOption[] child = new ChartWidgetOption[typeName.length];
final Chart[][] allCharts = new Chart[typeName.length][]; final Chart[][] allCharts = new Chart[typeName.length][];
for (int i = 0; i < typeName.length; i++) { for (int i = 0; i < typeName.length; i++) {
String plotID = typeName[i].getPlotID(); String plotID = typeName[i].getPlotID();
Chart[] rowChart = ChartTypeManager.getInstance().getChartTypes(plotID); Chart[] rowChart = ChartTypeManager.getInstance().getChartTypes(plotID);
if(ArrayUtils.isEmpty(rowChart)) { if (ArrayUtils.isEmpty(rowChart)) {
continue; continue;
} }
String iconPath = ChartTypeInterfaceManager.getInstance().getIconPath(plotID); String iconPath = ChartTypeInterfaceManager.getInstance().getIconPath(plotID);
Icon icon = IOUtils.readIcon(iconPath); Icon icon = IOUtils.readIcon(iconPath);
child[i] = new ChartWidgetOption(Inter.getLocText(typeName[i].getName()), icon, ChartEditor.class, rowChart[0]); child[i] = new ChartWidgetOption(Inter.getLocText(typeName[i].getName()), icon, ChartEditor.class, rowChart[0]);
allCharts[i] = rowChart; allCharts[i] = rowChart;
} }
//异步加载图片 //异步加载图片
new Thread(new Runnable() { new Thread(new Runnable() {
@Override @Override
public void run() { public void run() {
initAllChartsDemoImage(allCharts); initAllChartsDemoImage(allCharts);
} }
}).start(); }).start();
return child; return child;
} }
//加载所有图表图片 //加载所有图表图片
private static void initAllChartsDemoImage(Chart[][] allCharts){ private static void initAllChartsDemoImage(Chart[][] allCharts) {
for (int i = 0; i < allCharts.length; i++) {
Chart[] rowChart = allCharts[i]; for (Chart[] rowChart : allCharts) {
if(rowChart == null) { if (rowChart == null) {
continue; continue;
} }
//加载初始化图表模型图片 //加载初始化图表模型图片
initChartsDemoImage(rowChart); initChartsDemoImage(rowChart);
} }
} }
private static void initChartsDemoImage(Chart[] rowChart) { private static void initChartsDemoImage(Chart[] rowChart) {
int rowChartsCount = rowChart.length;
for (int j = 0; j < rowChartsCount; j++) { for (Chart aRowChart : rowChart) {
//此时,为图片生成模型数据 //此时,为图片生成模型数据
rowChart[j].createSlotImage(); aRowChart.createSlotImage();
} }
} }
private synchronized static void envChanged() {
classManager = null;
}
private static void readDefault() { private static void readDefault() {
if (chartTypeInterfaces.containsKey(ChartTypeManager.CHART_PRIORITY)){
if (chartTypeInterfaces.containsKey(ChartTypeManager.CHART_PRIORITY)) {
return; return;
} }
CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap> chartUIList = CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap> chartUIList =
new CloseableContainedMap<>(LinkedHashMap.class); new CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap>(LinkedHashMap.class);
chartUIList.put(ChartConstants.COLUMN_CHART, new ColumnIndependentChartInterface()); chartUIList.put(ChartConstants.COLUMN_CHART, new ColumnIndependentChartInterface());
chartUIList.put(ChartConstants.LINE_CHART, new LineIndependentChartInterface()); chartUIList.put(ChartConstants.LINE_CHART, new LineIndependentChartInterface());
chartUIList.put(ChartConstants.BAR_CHART, new BarIndependentChartInterface()); chartUIList.put(ChartConstants.BAR_CHART, new BarIndependentChartInterface());
@ -163,16 +154,16 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
chartUIList.put(ChartConstants.MAP_CHART, new MapIndependentChartInterface()); chartUIList.put(ChartConstants.MAP_CHART, new MapIndependentChartInterface());
chartUIList.put(ChartConstants.GIS_CHAER, new GisMapIndependentChartInterface()); chartUIList.put(ChartConstants.GIS_CHAER, new GisMapIndependentChartInterface());
chartUIList.put(ChartConstants.FUNNEL_CHART, new FunnelIndependentChartInterface()); chartUIList.put(ChartConstants.FUNNEL_CHART, new FunnelIndependentChartInterface());
chartTypeInterfaces.put(ChartTypeManager.CHART_PRIORITY, chartUIList); chartTypeInterfaces.put(ChartTypeManager.CHART_PRIORITY, chartUIList);
} }
public String getIconPath(String plotID) { public String getIconPath(String plotID) {
if (chartTypeInterfaces != null) { if (chartTypeInterfaces != null) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); for (Map.Entry<String, CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap>> entry : chartTypeInterfaces.entrySet()) {
while (iterator.hasNext()) { String priority = entry.getKey();
Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey();
String imagePath = getIconPath(priority, plotID); String imagePath = getIconPath(priority, plotID);
if (StringUtils.isNotEmpty(imagePath)) { if (StringUtils.isNotEmpty(imagePath)) {
return imagePath; return imagePath;
@ -181,25 +172,26 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return StringUtils.EMPTY; return StringUtils.EMPTY;
} }
private String getIconPath(String priority, String plotID) { private String getIconPath(String priority, String plotID) {
if (chartTypeInterfaces.get(priority) != null && chartTypeInterfaces.get(priority).get(plotID) != null) { if (chartTypeInterfaces.get(priority) != null && chartTypeInterfaces.get(priority).get(plotID) != null) {
return chartTypeInterfaces.get(priority).get(plotID).getIconPath(); return chartTypeInterfaces.get(priority).get(plotID).getIconPath();
}else { } else {
return StringUtils.EMPTY; return StringUtils.EMPTY;
} }
} }
public static void addChartTypeInterface(IndependentChartUIProvider provider, String priority, String plotID) { private static void addChartTypeInterface(IndependentChartUIProvider provider, String priority, String plotID) {
if (chartTypeInterfaces != null){
if (!chartTypeInterfaces.containsKey(priority)){ if (chartTypeInterfaces != null) {
if (!chartTypeInterfaces.containsKey(priority)) {
//新建一个具体图表列表 //新建一个具体图表列表
CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap> chartUIList CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap> chartUIList
= new CloseableContainedMap<>(LinkedHashMap.class); = new CloseableContainedMap<String, IndependentChartUIProvider, LinkedHashMap>(LinkedHashMap.class);
chartUIList.put(plotID, provider); chartUIList.put(plotID, provider);
chartTypeInterfaces.put(priority, chartUIList); chartTypeInterfaces.put(priority, chartUIList);
}else { } else {
Map<String, IndependentChartUIProvider> chartUIList = chartTypeInterfaces.get(priority); Map<String, IndependentChartUIProvider> chartUIList = chartTypeInterfaces.get(priority);
if (!chartUIList.containsKey(plotID)) { if (!chartUIList.containsKey(plotID)) {
chartUIList.put(plotID, provider); chartUIList.put(plotID, provider);
@ -207,54 +199,18 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
} }
} }
/**
* 增加界面接口定义
*
* @param className 类名
* @param plotID 标志ID
*/
public void addChartInterface(String className, String priority, String plotID, PluginSimplify simplify) {
if (StringUtils.isNotBlank(className)) {
try {
Class<?> clazz = Class.forName(className);
Authorize authorize = clazz.getAnnotation(Authorize.class);
if (authorize != null) {
PluginLicenseManager.getInstance().registerPaid(authorize, simplify);
}
IndependentChartUIProvider provider = getProxyObj(plotID, simplify, clazz);
if (PluginCollector.getCollector().isError(provider, IndependentChartUIProvider.CURRENT_API_LEVEL, simplify.getPluginName())) {
PluginMessage.remindUpdate(className);
} else {
addChartTypeInterface(provider, priority, plotID);
}
} catch (ClassNotFoundException e) {
FRLogger.getLogger().error("class not found:" + e.getMessage());
} catch (IllegalAccessException | InstantiationException e) {
FRLogger.getLogger().error("object create error:" + e.getMessage());
} catch (NoSuchMethodException e) {
FRLogger.getLogger().error(e.getMessage());
}
}
}
private IndependentChartUIProvider getProxyObj(String plotID, PluginSimplify simplify, Class<?> clazz) throws IllegalAccessException, InstantiationException, NoSuchMethodException {
PluginInstanceProxyFactory factory = new PluginInstanceProxyFactory(clazz, simplify);
PluginInvocationHandler handler = new ChartTypeInterfaceCloseableHandler(plotID);
return (IndependentChartUIProvider) factory.addProxy(Closeable.class, handler).getProxyObj();
}
/** /**
* 把所有的pane加到list里 * 把所有的pane加到list里
* *
* @param paneList pane容器 * @param paneList pane容器
*/ */
public void addPlotTypePaneList(List<FurtherBasicBeanPane<? extends Chart>> paneList) { public void addPlotTypePaneList(List<FurtherBasicBeanPane<? extends Chart>> paneList) {
List<Integer> priorityList = getPriorityInOrder(); List<Integer> priorityList = getPriorityInOrder();
for (int i = 0; i < priorityList.size(); i++){ for (Integer aPriorityList : priorityList) {
String priority = String.valueOf(priorityList.get(i)); String priority = String.valueOf(aPriorityList);
Iterator chartUIIterator = chartTypeInterfaces.get(priority).entrySet().iterator(); Iterator chartUIIterator = chartTypeInterfaces.get(priority).entrySet().iterator();
while (chartUIIterator.hasNext()) { while (chartUIIterator.hasNext()) {
Map.Entry chartUIEntry = (Map.Entry) chartUIIterator.next(); Map.Entry chartUIEntry = (Map.Entry) chartUIIterator.next();
@ -263,9 +219,10 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
} }
} }
public String[] getTitle4PopupWindow(String priority){ public String[] getTitle4PopupWindow(String priority) {
if (priority.isEmpty()){
if (priority.isEmpty()) {
return getTitle4PopupWindow(); return getTitle4PopupWindow();
} }
String[] names = new String[getChartSize(priority)]; String[] names = new String[getChartSize(priority)];
@ -273,7 +230,7 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
Map<String, IndependentChartUIProvider> chartUIList = chartTypeInterfaces.get(priority); Map<String, IndependentChartUIProvider> chartUIList = chartTypeInterfaces.get(priority);
Iterator iterator = chartUIList.entrySet().iterator(); Iterator iterator = chartUIList.entrySet().iterator();
int i = 0; int i = 0;
while (iterator.hasNext()){ while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next(); Map.Entry entry = (Map.Entry) iterator.next();
IndependentChartUIProvider provider = (IndependentChartUIProvider) entry.getValue(); IndependentChartUIProvider provider = (IndependentChartUIProvider) entry.getValue();
names[i++] = provider.getPlotTypeTitle4PopupWindow(); names[i++] = provider.getPlotTypeTitle4PopupWindow();
@ -282,19 +239,17 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return new String[0]; return new String[0];
} }
/** /**
* 获取指定图表的标题 * 获取指定图表的标题
* @param priority
* @return
*/ */
public String getTitle4PopupWindow(String priority, String plotID){ public String getTitle4PopupWindow(String priority, String plotID) {
if (chartTypeInterfaces != null && chartTypeInterfaces.containsKey(priority) && chartTypeInterfaces.get(priority).containsKey(plotID)) { if (chartTypeInterfaces != null && chartTypeInterfaces.containsKey(priority) && chartTypeInterfaces.get(priority).containsKey(plotID)) {
IndependentChartUIProvider provider = chartTypeInterfaces.get(priority).get(plotID); IndependentChartUIProvider provider = chartTypeInterfaces.get(priority).get(plotID);
return provider.getPlotTypeTitle4PopupWindow(); return provider.getPlotTypeTitle4PopupWindow();
} }
//兼容老的插件 //兼容老的插件
if (chartTypeInterfaces != null) { if (chartTypeInterfaces != null) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
@ -306,34 +261,36 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
} }
} }
return new String(); return StringUtils.EMPTY;
} }
private String[] getTitle4PopupWindow(){ private String[] getTitle4PopupWindow() {
List<Integer> priorityList = getPriorityInOrder(); List<Integer> priorityList = getPriorityInOrder();
if (priorityList.size() == 0){ if (priorityList.size() == 0) {
return new String[0]; return new String[0];
} }
int size = 0; int size = 0;
//获取总得图表格式 //获取总得图表格式
for (int i = 0; i < priorityList.size(); i++) { for (Integer aPriorityList : priorityList) {
size += getChartSize(String.valueOf(priorityList.get(i))); size += getChartSize(String.valueOf(aPriorityList));
} }
String[] names = new String[size]; String[] names = new String[size];
int index = 0; int index = 0;
for (int i = 0; i < priorityList.size(); i++){ for (Integer aPriorityList : priorityList) {
String priority = String.valueOf(priorityList.get(i)); String priority = String.valueOf(aPriorityList);
Iterator chartUI = chartTypeInterfaces.get(priority).entrySet().iterator(); Iterator chartUI = chartTypeInterfaces.get(priority).entrySet().iterator();
index = fetchNames(chartUI, names, index); index = fetchNames(chartUI, names, index);
} }
return names; return names;
} }
private List<Integer> getPriorityInOrder() { private List<Integer> getPriorityInOrder() {
List<Integer> priorityList = new ArrayList<Integer>(); List<Integer> priorityList = new ArrayList<Integer>();
if (chartTypeInterfaces != null) { if (chartTypeInterfaces != null) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
@ -345,8 +302,9 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return ChartTypeManager.orderInPriority(priorityList); return ChartTypeManager.orderInPriority(priorityList);
} }
private int fetchNames(Iterator chartUI, String[] names, int index) { private int fetchNames(Iterator chartUI, String[] names, int index) {
while (chartUI.hasNext()) { while (chartUI.hasNext()) {
Map.Entry chartUIEntry = (Map.Entry) chartUI.next(); Map.Entry chartUIEntry = (Map.Entry) chartUI.next();
IndependentChartUIProvider provider = (IndependentChartUIProvider) chartUIEntry.getValue(); IndependentChartUIProvider provider = (IndependentChartUIProvider) chartUIEntry.getValue();
@ -354,10 +312,11 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return index; return index;
} }
public ChartDataPane getChartDataPane(String plotID, AttributeChangeListener listener) { public ChartDataPane getChartDataPane(String plotID, AttributeChangeListener listener) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()){ while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next(); Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey(); String priority = (String) entry.getKey();
if (plotInChart(plotID, priority)) { if (plotInChart(plotID, priority)) {
@ -366,26 +325,28 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return getChartDataPane(ChartTypeManager.CHART_PRIORITY, plotID, listener); return getChartDataPane(ChartTypeManager.CHART_PRIORITY, plotID, listener);
} }
private ChartDataPane getChartDataPane(String priority, String plotID, AttributeChangeListener listener) { private ChartDataPane getChartDataPane(String priority, String plotID, AttributeChangeListener listener) {
return chartTypeInterfaces.get(priority).get(plotID).getChartDataPane(listener); return chartTypeInterfaces.get(priority).get(plotID).getChartDataPane(listener);
} }
/** /**
* 获取对应ID的图表数量 * 获取对应ID的图表数量
* @param key *
* @return
*/ */
private int getChartSize(String key){ private int getChartSize(String key) {
if (chartTypeInterfaces != null && chartTypeInterfaces.containsKey(key)){
if (chartTypeInterfaces != null && chartTypeInterfaces.containsKey(key)) {
return chartTypeInterfaces.get(key).size(); return chartTypeInterfaces.get(key).size();
} }
return 0; return 0;
} }
public AbstractChartAttrPane[] getAttrPaneArray(String plotID, AttributeChangeListener listener) { public AbstractChartAttrPane[] getAttrPaneArray(String plotID, AttributeChangeListener listener) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()){ while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next(); Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey(); String priority = (String) entry.getKey();
if (plotInChart(plotID, priority)) { if (plotInChart(plotID, priority)) {
@ -394,14 +355,16 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return getAttrPaneArray(ChartTypeManager.CHART_PRIORITY, plotID, listener); return getAttrPaneArray(ChartTypeManager.CHART_PRIORITY, plotID, listener);
} }
private AbstractChartAttrPane[] getAttrPaneArray(String priority, String plotID, AttributeChangeListener listener) { private AbstractChartAttrPane[] getAttrPaneArray(String priority, String plotID, AttributeChangeListener listener) {
return chartTypeInterfaces.get(priority).get(plotID).getAttrPaneArray(listener); return chartTypeInterfaces.get(priority).get(plotID).getAttrPaneArray(listener);
} }
public AbstractTableDataContentPane getTableDataSourcePane(Plot plot, ChartDataPane parent) { public AbstractTableDataContentPane getTableDataSourcePane(Plot plot, ChartDataPane parent) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()){ while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next(); Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey(); String priority = (String) entry.getKey();
if (plotInChart(plot.getPlotID(), priority)) { if (plotInChart(plot.getPlotID(), priority)) {
@ -410,48 +373,17 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return getTableDataSourcePane(ChartTypeManager.CHART_PRIORITY, plot, parent); return getTableDataSourcePane(ChartTypeManager.CHART_PRIORITY, plot, parent);
} }
private AbstractTableDataContentPane getTableDataSourcePane(String priority, Plot plot, ChartDataPane parent) { private AbstractTableDataContentPane getTableDataSourcePane(String priority, Plot plot, ChartDataPane parent) {
return chartTypeInterfaces.get(priority).get(plot.getPlotID()).getTableDataSourcePane(plot, parent); return chartTypeInterfaces.get(priority).get(plot.getPlotID()).getTableDataSourcePane(plot, parent);
} }
//获取指定图表的编辑面板
public ChartEditPane getChartEditPane(String plotID) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey();
if (plotInChart(plotID, priority)) {
return getChartEditPane(priority, plotID);
}
}
return getChartEditPane(ChartTypeManager.CHART_PRIORITY, plotID);
}
private ChartEditPane getChartEditPane(String priority, String plotID) {
return chartTypeInterfaces.get(priority).get(plotID).getChartEditPane(plotID);
}
public ChartsConfigPane getChartConfigPane(String plotID) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey();
if (plotInChart(plotID, priority)) {
return getChartConfigPane(priority, plotID);
}
}
return getChartConfigPane(ChartTypeManager.CHART_PRIORITY, plotID);
}
private ChartsConfigPane getChartConfigPane(String priority, String plotID) {
return chartTypeInterfaces.get(priority).get(plotID).getChartConfigPane(plotID);
}
public AbstractReportDataContentPane getReportDataSourcePane(Plot plot, ChartDataPane parent) { public AbstractReportDataContentPane getReportDataSourcePane(Plot plot, ChartDataPane parent) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()){ while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next(); Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey(); String priority = (String) entry.getKey();
String plotID = plot.getPlotID(); String plotID = plot.getPlotID();
@ -461,21 +393,24 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return getReportDataSourcePane(ChartTypeManager.CHART_PRIORITY, plot, parent); return getReportDataSourcePane(ChartTypeManager.CHART_PRIORITY, plot, parent);
} }
private boolean plotInChart(String plotID, String priority) { private boolean plotInChart(String plotID, String priority) {
return chartTypeInterfaces != null return chartTypeInterfaces != null
&& chartTypeInterfaces.containsKey(priority) && chartTypeInterfaces.containsKey(priority)
&& chartTypeInterfaces.get(priority).containsKey(plotID); && chartTypeInterfaces.get(priority).containsKey(plotID);
} }
private AbstractReportDataContentPane getReportDataSourcePane(String priority, Plot plot, ChartDataPane parent) { private AbstractReportDataContentPane getReportDataSourcePane(String priority, Plot plot, ChartDataPane parent) {
return chartTypeInterfaces.get(priority).get(plot.getPlotID()).getReportDataSourcePane(plot, parent); return chartTypeInterfaces.get(priority).get(plot.getPlotID()).getReportDataSourcePane(plot, parent);
} }
public ConditionAttributesPane getPlotConditionPane(Plot plot) { public ConditionAttributesPane getPlotConditionPane(Plot plot) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()){ while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next(); Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey(); String priority = (String) entry.getKey();
if (plotInChart(plot.getPlotID(), priority)) { if (plotInChart(plot.getPlotID(), priority)) {
@ -484,15 +419,17 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return getPlotConditionPane(ChartTypeManager.CHART_PRIORITY, plot); return getPlotConditionPane(ChartTypeManager.CHART_PRIORITY, plot);
} }
private ConditionAttributesPane getPlotConditionPane(String priority, Plot plot) { private ConditionAttributesPane getPlotConditionPane(String priority, Plot plot) {
return chartTypeInterfaces.get(priority).get(plot.getPlotID()).getPlotConditionPane(plot); return chartTypeInterfaces.get(priority).get(plot.getPlotID()).getPlotConditionPane(plot);
} }
public BasicBeanPane<Plot> getPlotSeriesPane(ChartStylePane parent, Plot plot) { public BasicBeanPane<Plot> getPlotSeriesPane(ChartStylePane parent, Plot plot) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()){ while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next(); Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey(); String priority = (String) entry.getKey();
if (plotInChart(plot.getPlotID(), priority)) { if (plotInChart(plot.getPlotID(), priority)) {
@ -501,11 +438,12 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
} }
return getPlotSeriesPane(ChartTypeManager.CHART_PRIORITY, parent, plot); return getPlotSeriesPane(ChartTypeManager.CHART_PRIORITY, parent, plot);
} }
private BasicBeanPane<Plot> getPlotSeriesPane(String priority, ChartStylePane parent, Plot plot) { private BasicBeanPane<Plot> getPlotSeriesPane(String priority, ChartStylePane parent, Plot plot) {
return chartTypeInterfaces.get(priority).get(plot.getPlotID()).getPlotSeriesPane(parent, plot); return chartTypeInterfaces.get(priority).get(plot.getPlotID()).getPlotSeriesPane(parent, plot);
} }
/** /**
* 是否使用默认的界面为了避免界面来回切换 * 是否使用默认的界面为了避免界面来回切换
* *
@ -513,55 +451,60 @@ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraCh
* @return 是否使用默认的界面 * @return 是否使用默认的界面
*/ */
public boolean isUseDefaultPane(String plotID) { public boolean isUseDefaultPane(String plotID) {
Iterator iterator = chartTypeInterfaces.entrySet().iterator(); Iterator iterator = chartTypeInterfaces.entrySet().iterator();
while (iterator.hasNext()){ while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next(); Map.Entry entry = (Map.Entry) iterator.next();
String priority = (String) entry.getKey(); String priority = (String) entry.getKey();
if (chartTypeInterfaces.get(priority).containsKey(plotID)) { if (chartTypeInterfaces.get(priority).containsKey(plotID)) {
return isUseDefaultPane(priority, plotID); return isUseDefaultPane(priority, plotID);
} }
} }
return true; return true;
} }
private boolean isUseDefaultPane(String priority, String plotID) { private boolean isUseDefaultPane(String priority, String plotID) {
if (chartTypeInterfaces.containsKey(priority) && chartTypeInterfaces.get(priority).containsKey(plotID)) { return !(chartTypeInterfaces.containsKey(priority) && chartTypeInterfaces.get(priority).containsKey(plotID)) || chartTypeInterfaces.get(priority).get(plotID).isUseDefaultPane();
return chartTypeInterfaces.get(priority).get(plotID).isUseDefaultPane();
}
return true;
} }
public void readXML(XMLableReader reader) { @Override
readXML(reader, null, PluginSimplify.NULL); public void mount(PluginSingleInjection injection) {
if (isIndependentChartUIProvider(injection)) {
String priority = injection.getAttribute("priority");
String plotID = injection.getAttribute("plotID");
IndependentChartUIProvider instance = (IndependentChartUIProvider) injection.getObject();
addChartTypeInterface(instance, priority, plotID);
}
} }
@Override @Override
public void readXML(XMLableReader reader, List<String> extraChartDesignInterfaceList, PluginSimplify simplify) { public void demount(PluginSingleInjection injection) {
if (reader.isChildNode()) {
String tagName = reader.getTagName(); if (isIndependentChartUIProvider(injection)) {
if (extraChartDesignInterfaceList != null) { String priority = injection.getAttribute("priority");
extraChartDesignInterfaceList.add(tagName); String plotID = injection.getAttribute("plotID");
} removeChartTypeInterface(priority, plotID);
if (IndependentChartUIProvider.XML_TAG.equals(tagName)) {
addChartInterface(reader.getAttrAsString("class", ""), reader.getAttrAsString("priority", ChartTypeManager.CHART_PRIORITY),reader.getAttrAsString("plotID", ""), simplify);
}
} }
} }
/** private void removeChartTypeInterface(String priority, String plotID) {
* 文件名
* if (chartTypeInterfaces != null) {
* @return 文件名 if (chartTypeInterfaces.containsKey(priority)) {
*/ Map<String, IndependentChartUIProvider> chartUIList = chartTypeInterfaces.get(priority);
public String fileName() { chartUIList.remove(plotID);
return "chart.xml"; }
}
} }
@Override
public void writeXML(XMLPrintWriter writer) { private boolean isIndependentChartUIProvider(PluginSingleInjection injection) {
return !(injection == null || injection.getObject() == null) && IndependentChartUIProvider.XML_TAG.equals(injection.getName()) && injection.getObject() instanceof IndependentChartUIProvider;
} }
} }

118
designer_form/src/com/fr/design/designer/creator/XCreatorUtils.java

@ -5,13 +5,9 @@ package com.fr.design.designer.creator;
import com.fr.base.FRContext; import com.fr.base.FRContext;
import com.fr.design.ExtraDesignClassManager; import com.fr.design.ExtraDesignClassManager;
import com.fr.design.designer.creator.cardlayout.XCardAddButton; import com.fr.design.designer.creator.cardlayout.*;
import com.fr.design.designer.creator.cardlayout.XCardSwitchButton; import com.fr.design.fun.FormWidgetOptionProvider;
import com.fr.design.designer.creator.cardlayout.XWCardLayout; import com.fr.design.fun.ParameterWidgetOptionProvider;
import com.fr.design.designer.creator.cardlayout.XWCardMainBorderLayout;
import com.fr.design.designer.creator.cardlayout.XWCardTagLayout;
import com.fr.design.designer.creator.cardlayout.XWCardTitleLayout;
import com.fr.design.designer.creator.cardlayout.XWTabFitLayout;
import com.fr.design.module.DesignModuleFactory; import com.fr.design.module.DesignModuleFactory;
import com.fr.design.utils.gui.LayoutUtils; import com.fr.design.utils.gui.LayoutUtils;
import com.fr.form.parameter.FormSubmitButton; import com.fr.form.parameter.FormSubmitButton;
@ -24,7 +20,13 @@ import com.fr.form.ui.container.cardlayout.WCardMainBorderLayout;
import com.fr.form.ui.container.cardlayout.WCardTagLayout; import com.fr.form.ui.container.cardlayout.WCardTagLayout;
import com.fr.form.ui.container.cardlayout.WCardTitleLayout; import com.fr.form.ui.container.cardlayout.WCardTitleLayout;
import com.fr.form.ui.container.cardlayout.WTabFitLayout; import com.fr.form.ui.container.cardlayout.WTabFitLayout;
import com.fr.general.GeneralContext;
import com.fr.general.IOUtils; import com.fr.general.IOUtils;
import com.fr.plugin.context.PluginContext;
import com.fr.plugin.injectable.PluginModule;
import com.fr.plugin.manage.PluginFilter;
import com.fr.plugin.observer.PluginEvent;
import com.fr.plugin.observer.PluginEventListener;
import com.fr.stable.StringUtils; import com.fr.stable.StringUtils;
import javax.swing.*; import javax.swing.*;
@ -38,11 +40,66 @@ import java.lang.reflect.Constructor;
* @since 6.5.3 * @since 6.5.3
*/ */
public class XCreatorUtils { public class XCreatorUtils {
public static java.util.Map<Class<? extends Widget>, Class<?>> objectMap = new java.util.HashMap<Class<? extends Widget>, Class<?>>(); public static java.util.Map<Class<? extends Widget>, Class<?>> objectMap = new java.util.HashMap<Class<? extends Widget>, Class<?>>();
private static java.util.Map<Class<? extends Widget>, Class<?>> extraObjectMap = new java.util.HashMap<Class<? extends Widget>, Class<?>>();
public static java.util.Map<Class<? extends Widget>, Class<?>> xLayoutMap = new java.util.HashMap<Class<? extends Widget>, Class<?>>(); public static java.util.Map<Class<? extends Widget>, Class<?>> xLayoutMap = new java.util.HashMap<Class<? extends Widget>, Class<?>>();
static { static {
init();
GeneralContext.listenPluginRunningChanged(new PluginEventListener() {
@Override
public void on(PluginEvent event) {
reInitExtra();
}
}, new PluginFilter() {
@Override
public boolean accept(PluginContext context) {
return context.contain(PluginModule.ExtraDesign, ParameterWidgetOptionProvider.XML_TAG)
|| context.contain(PluginModule.ExtraDesign, FormWidgetOptionProvider.XML_TAG);
}
});
}
private static void init() {
putDefault();
putExtraEditor();
putDefaultLayouts();
reInitExtra();
}
private static void putDefaultLayouts() {
xLayoutMap.put(WAbsoluteLayout.class, XWAbsoluteLayout.class);
xLayoutMap.put(WParameterLayout.class, XWParameterLayout.class);
xLayoutMap.put(WAbsoluteBodyLayout.class, XWAbsoluteBodyLayout.class);
xLayoutMap.put(WAbsoluteLayout.class, XWAbsoluteLayout.class);
xLayoutMap.put(WHorizontalBoxLayout.class, XWHorizontalBoxLayout.class);
xLayoutMap.put(WBorderLayout.class, XWBorderLayout.class);
xLayoutMap.put(WCardLayout.class, XWCardLayout.class);
xLayoutMap.put(WVerticalBoxLayout.class, XWVerticalBoxLayout.class);
xLayoutMap.put(WHorizontalSplitLayout.class, XWHorizontalSplitLayout.class);
xLayoutMap.put(WVerticalSplitLayout.class, XWVerticalSplitLayout.class);
xLayoutMap.put(WGridLayout.class, XWGridLayout.class);
xLayoutMap.put(WFitLayout.class, XWFitLayout.class);
xLayoutMap.put(WScaleLayout.class, XWScaleLayout.class);
xLayoutMap.put(WTitleLayout.class, XWTitleLayout.class);
xLayoutMap.put(WCardTagLayout.class, XWCardTagLayout.class);
xLayoutMap.put(WCardTitleLayout.class, XWCardTitleLayout.class);
xLayoutMap.put(WTabFitLayout.class, XWTabFitLayout.class);
xLayoutMap.put(WCardMainBorderLayout.class, XWCardMainBorderLayout.class);
}
private static void putDefault() {
objectMap.put(TextEditor.class, XTextEditor.class); objectMap.put(TextEditor.class, XTextEditor.class);
objectMap.put(TextArea.class, XTextArea.class); objectMap.put(TextArea.class, XTextArea.class);
objectMap.put(NumberEditor.class, XNumberEditor.class); objectMap.put(NumberEditor.class, XNumberEditor.class);
@ -73,43 +130,28 @@ public class XCreatorUtils {
objectMap.put(NameWidget.class, XNameWidget.class); objectMap.put(NameWidget.class, XNameWidget.class);
objectMap.put(CardSwitchButton.class, XCardSwitchButton.class); objectMap.put(CardSwitchButton.class, XCardSwitchButton.class);
objectMap.put(CardAddButton.class, XCardAddButton.class); objectMap.put(CardAddButton.class, XCardAddButton.class);
objectMap.put(ErrorMarker.class, ErrorCreator.class);
putExtraEditor();
xLayoutMap.put(WAbsoluteLayout.class, XWAbsoluteLayout.class);
xLayoutMap.put(WParameterLayout.class, XWParameterLayout.class);
xLayoutMap.put(WAbsoluteBodyLayout.class, XWAbsoluteBodyLayout.class);
xLayoutMap.put(WAbsoluteLayout.class, XWAbsoluteLayout.class);
xLayoutMap.put(WHorizontalBoxLayout.class, XWHorizontalBoxLayout.class);
xLayoutMap.put(WBorderLayout.class, XWBorderLayout.class);
xLayoutMap.put(WCardLayout.class, XWCardLayout.class);
xLayoutMap.put(WVerticalBoxLayout.class, XWVerticalBoxLayout.class);
xLayoutMap.put(WHorizontalSplitLayout.class, XWHorizontalSplitLayout.class);
xLayoutMap.put(WVerticalSplitLayout.class, XWVerticalSplitLayout.class);
xLayoutMap.put(WGridLayout.class, XWGridLayout.class);
xLayoutMap.put(WFitLayout.class, XWFitLayout.class);
xLayoutMap.put(WScaleLayout.class, XWScaleLayout.class);
xLayoutMap.put(WTitleLayout.class, XWTitleLayout.class);
xLayoutMap.put(WCardTagLayout.class, XWCardTagLayout.class);
xLayoutMap.put(WCardTitleLayout.class, XWCardTitleLayout.class);
xLayoutMap.put(WTabFitLayout.class, XWTabFitLayout.class);
xLayoutMap.put(WCardMainBorderLayout.class, XWCardMainBorderLayout.class);
objectMap.putAll(ExtraDesignClassManager.getInstance().getParameterWidgetOptionsMap());
objectMap.putAll(ExtraDesignClassManager.getInstance().getFormWidgetOptionsMap());
} }
private static void reInitExtra() {
extraObjectMap.clear();
extraObjectMap.putAll(ExtraDesignClassManager.getInstance().getParameterWidgetOptionsMap());
extraObjectMap.putAll(ExtraDesignClassManager.getInstance().getFormWidgetOptionsMap());
}
private static void putExtraEditor() { private static void putExtraEditor() {
if (DesignModuleFactory.getChartEditorClass() != null) { if (DesignModuleFactory.getChartEditorClass() != null) {
objectMap.put(DesignModuleFactory.getChartEditorClass(), XChartEditor.class); objectMap.put(DesignModuleFactory.getChartEditorClass(), XChartEditor.class);
} }
} }
@SuppressWarnings("unchecked")
private static Class<? extends XCreator> searchXCreatorClass(Class<? extends Widget> clazz) { private static Class<? extends XCreator> searchXCreatorClass(Class<? extends Widget> clazz) {
Class<? extends XCreator> xClazz = (Class<? extends XCreator>) objectMap.get(clazz); Class<? extends XCreator> xClazz = (Class<? extends XCreator>) objectMap.get(clazz);
if (xClazz == null) {
xClazz = (Class<? extends XCreator>) extraObjectMap.get(clazz);
}
if (xClazz == null) { if (xClazz == null) {
xClazz = (Class<? extends XCreator>) xLayoutMap.get(clazz); xClazz = (Class<? extends XCreator>) xLayoutMap.get(clazz);
} }

18
designer_form/src/com/fr/design/designer/properties/WidgetPropertyTable.java

@ -26,13 +26,13 @@ import com.fr.general.ComparatorUtils;
public class WidgetPropertyTable extends AbstractPropertyTable { public class WidgetPropertyTable extends AbstractPropertyTable {
private FormDesigner designer; private FormDesigner designer;
private static final int LEFT_COLUMN_WIDTH = 97; // "属性名"列的宽度 private static final int LEFT_COLUMN_WIDTH = 97; // "属性名"列的宽度
public WidgetPropertyTable(FormDesigner designer) { public WidgetPropertyTable(FormDesigner designer) {
super(); super();
setDesigner(designer); setDesigner(designer);
} }
public static ArrayList<PropertyGroup> getCreatorPropertyGroup(FormDesigner designer, XCreator source) { public static ArrayList<PropertyGroup> getCreatorPropertyGroup(FormDesigner designer, XCreator source) {
ArrayList<PropertyGroup> groups = new ArrayList<PropertyGroup>(); ArrayList<PropertyGroup> groups = new ArrayList<PropertyGroup>();
ComponentAdapter adapter = AdapterBus.getComponentAdapter(designer, source); ComponentAdapter adapter = AdapterBus.getComponentAdapter(designer, source);
@ -85,7 +85,7 @@ public class WidgetPropertyTable extends AbstractPropertyTable {
} }
TableModel model = new BeanTableModel(); TableModel model = new BeanTableModel();
setModel(model); setModel(model);
this.setAutoResizeMode(JTable.AUTO_RESIZE_LAST_COLUMN); this.setAutoResizeMode(JTable.AUTO_RESIZE_LAST_COLUMN);
TableColumn tc = this.getColumn(this.getColumnName(0)); TableColumn tc = this.getColumn(this.getColumnName(0));
tc.setMinWidth(LEFT_COLUMN_WIDTH); tc.setMinWidth(LEFT_COLUMN_WIDTH);
tc.setMaxWidth(LEFT_COLUMN_WIDTH); tc.setMaxWidth(LEFT_COLUMN_WIDTH);
@ -93,13 +93,13 @@ public class WidgetPropertyTable extends AbstractPropertyTable {
this.repaint(); this.repaint();
} }
private void setRightColumnWidth(boolean automode) { private void setRightColumnWidth(boolean automode) {
int rightColumnWidth = this.getWidth() - LEFT_COLUMN_WIDTH; int rightColumnWidth = this.getWidth() - LEFT_COLUMN_WIDTH;
TableColumn tcRight = this.getColumn(this.getColumnName(1)); TableColumn tcRight = this.getColumn(this.getColumnName(1));
tcRight.setMinWidth(automode ? 0 : rightColumnWidth); tcRight.setMinWidth(automode ? 0 : rightColumnWidth);
tcRight.setMaxWidth(automode ? this.getWidth() : rightColumnWidth); tcRight.setMaxWidth(automode ? this.getWidth() : rightColumnWidth);
} }
private void setDesigner(FormDesigner designer) { private void setDesigner(FormDesigner designer) {
this.designer = designer; this.designer = designer;
} }
@ -107,8 +107,8 @@ public class WidgetPropertyTable extends AbstractPropertyTable {
/** /**
* 单元格tooltip * 单元格tooltip
* 属性名悬浮提示 * 属性名悬浮提示
* *
* @param 鼠标点击事件 * @param 鼠标点击事件
* @return 单元格tooltip * @return 单元格tooltip
*/ */
@ -121,7 +121,7 @@ public class WidgetPropertyTable extends AbstractPropertyTable {
return null; return null;
} }
@Override @Override
public void columnMarginChanged(javax.swing.event.ChangeEvent e) { public void columnMarginChanged(javax.swing.event.ChangeEvent e) {
setRightColumnWidth(false); setRightColumnWidth(false);
super.columnMarginChanged(e); super.columnMarginChanged(e);
@ -134,4 +134,4 @@ public class WidgetPropertyTable extends AbstractPropertyTable {
public void firePropertyEdit() { public void firePropertyEdit() {
designer.getEditListenerTable().fireCreatorModified(DesignerEvent.CREATOR_EDITED); designer.getEditListenerTable().fireCreatorModified(DesignerEvent.CREATOR_EDITED);
} }
} }

4
designer_form/src/com/fr/design/mainframe/widget/editors/DataTableConfigPane.java

@ -21,6 +21,8 @@ import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent; import java.awt.event.MouseEvent;
import java.util.ArrayList; import java.util.ArrayList;
import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER;
public class DataTableConfigPane extends JComponent implements PropertyChangeListener { public class DataTableConfigPane extends JComponent implements PropertyChangeListener {
private DataEditingTable table; private DataEditingTable table;
@ -185,7 +187,7 @@ public class DataTableConfigPane extends JComponent implements PropertyChangeLis
this.setName(Inter.getLocText("M_Edit-Cut")); this.setName(Inter.getLocText("M_Edit-Cut"));
this.setMnemonic('T'); this.setMnemonic('T');
this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/cut.png")); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/cut.png"));
this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, KeyEvent.CTRL_MASK)); this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, DEFAULT_MODIFIER));
} }
@Override @Override

Loading…
Cancel
Save