java - 标注 Adempiere 中的确认(是/否)对话框

标签 java adempiere webui

我正在尝试获取 Adempiere 中的确认对话框。 我用过

 JOptionPane.showConfirmDialog(null, msg,"", JOptionPane.YES_NO_OPTION); 
or 
ADialog.ask(WindowNo, null,msg)

instead of 
mTab.fireDataStatusEEvent ("NoQtyAvailable", "0", true); 

我收到了弹出窗口(是/否)并且在 Swing 中工作正常,但它不适用于 WEBUI。

我的代码:

if (product.isStocked())
            {               
                if (available == null)
                    available = Env.ZERO;
                if (available.signum() == 0){
                    //mTab.fireDataStatusEEvent ("NoQtyAvailable", "0", false);                                         
                    int response = JOptionPane.showConfirmDialog(null, msg,
                            "", JOptionPane.YES_NO_OPTION);
                    if (response == JOptionPane.YES_OPTION) 
                        mTab.setValue("BC_Qty", mTab.getValue("QtyEntered"));
                    else
                        mTab.setValue("BC_Qty", Env.ZERO);
                }
            }

构建错误:

Buildfile: E:\Adempiere360\svn\base\build.xml
init:
     [echo] =========== Build Base
makedir:
compile:
    [javac] E:\Adempiere360\svn\base\build.xml:56: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 1 source file to E:\Adempiere360\svn\base\build
    [javac] 
E:\Adempiere360\svn\base\src\org\compiere\model\CalloutOrder.java:27: package org.adempiere.webui.window does not exist
    [javac] import org.adempiere.webui.window.FDialog;
    [javac]                                  ^
    [javac] 
E:\Adempiere360\svn\base\src\org\compiere\model\CalloutOrder.java:827: warning: [deprecation] getQtyAvailable(int,int,int,java.lang.String) in org.compiere.model.MStorage has been deprecated
    [javac]                 BigDecimal available = MStorage.getQtyAvailable
    [javac]                                                ^
    [javac]
 E:\Adempiere360\svn\base\src\org\compiere\model\CalloutOrder.java:833: cannot find symbol
    [javac] symbol  : variable FDialog
    [javac] location: class org.compiere.model.CalloutOrder
    [javac]                     if(FDialog.ask(WindowNo, null, msg))
    [javac]                        ^
    [javac] 
E:\Adempiere360\svn\base\src\org\compiere\model\CalloutOrder.java:1309: warning: [deprecation] getQtyAvailable(int,int,int,java.lang.String) in org.compiere.model.MStorage has been deprecated
    [javac]                 BigDecimal available = MStorage.getQtyAvailable
    [javac]                                                ^
    [javac] 2 errors
    [javac] 2 warnings

BUILD FAILED
E:\Adempiere360\svn\base\build.xml:56: Compile failed; see the compiler error output for details.

如有建议,我们将不胜感激。

最佳答案

ADempiere 将按以下顺序构建代码

tools/build.xml
base/build.xml
extend/build.xml
client/build.xml
JasperReports/build.xml
serverRoot/build.xml
serverApps/build.xml
webStore/build.xml
webCM/build.xml
sqlj/build.xml
posterita/posterita/build.xml
zkwebui/build.xml
install/build.xml

“FDialog”类在“zkwebui”文件夹中定义。您已在 CalloutOrder.java(import org.adempiere.webui.window.FDialog;) 中使用了 FDialog 类。因此,在构建“Base”文件夹时,它(FDialog)不可见。

您只需从 CalloutOrder.java 类中删除 import org.adempiere.webui.window.FDialog; 语句即可。 它将改进您的构建并在 WebUI 中正常工作。

您可以从 here 找到构建订单详细信息

关于java - 标注 Adempiere 中的确认(是/否)对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23577808/

相关文章:

java - 无法使用 Singleton 类在 IntelliJ IDEA 中的属性文件中使用访问属性

mysql - 是否有 Adempiere ERP 380 的 MySQL 种子数据库转储

java - 如何使用tomcat使用eclipse webtool创建adempiere自定义模板的web ui工作区

eclipse - 从 eclipse 运行 JBoss 服务器 [Adempiere 项目]

php - IPMItool 设置用户角色

javax.naming.NoInitialContextException : Need to specify class name in environment or system property

java - java中的main方法为什么接受无效的字符串参数

web-services - 基于 API 服务级别而非 Web UI 的自动化测试

ios - UIWebView 刺激器/应用程序?

java - 当我创建一个新项目时 Eclipse 给我一个错误