起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1715|回复: 9

[结贴] 关于在ACTION里条件判断语句不执行问题。

[复制链接]

36

主题

176

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
QQ
发表于 2016-11-14 13:57:57 | 显示全部楼层 |阅读模式
您好,在如下的ACTION里可以成功执行:
public static Table bx2016(String skyname,String skyid,Integer skyindex,java.sql.Date skydata1,java.sql.Date skydata2){
       
            String mysql = "select sName,sum(fBXZE) AS fBXZE  from  Erp_bmreportview u left join er_bxsq a on a.fSQR like CONCAT('%',u.sName,'%') and ( a.fDJZT='已审批 ' and a.sqrq  between '"+skydata1+"' AND '"+skydata2+"' ) where u.sParent='"+skyid+"'  GROUP BY sName;";
                               
        HashMap<String,String> sqlMap=new HashMap<String,String>();
    sqlMap.put(SQL.DEFAULT_DB_NAME,mysql);
    return SQL.select(sqlMap, null,"/ERP/Baoxiao/bxgoodslist/data" );
                }                         
       

项目需要在执行上面STRING之前,先判断一下参数(Integer skyindex)条件再执行:       
        可是经过IF语句,条件是对的,就是不执行如上的:String mysql = “”;如下:
1:将skyindex从INTEGER转换为INT型
        Integer wrapperi = new Integer(skyindex);  
        int skytemp = wrapperi.intValue();  
        if  (skytemp ==1)
            {String mysql = “”;}
2:甚至如下都不执行:
        int age = 16;
        if(age <= 18){String mysql =  “  ”;}
请问是那里出错啦呢?谢谢

1

主题

1831

帖子

821

积分

高级会员

Rank: 4

积分
821
QQ
发表于 2016-11-14 14:24:38 | 显示全部楼层
你好,请问楼主改完action之后有没有对Biz进行编译?
回复 支持 反对

使用道具 举报

36

主题

176

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
QQ
 楼主| 发表于 2016-11-14 15:23:28 | 显示全部楼层
您好,谢谢关心。我一般是用“调试模式”,也编译过,其实也测试过很多次。执行过程中代码的变更也执行。就是没效果。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-11-14 18:03:57 | 显示全部楼层
java文件所在的dsrc或者src右键设置为源码路径有报错吗?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

36

主题

176

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
QQ
 楼主| 发表于 2016-11-14 22:04:26 | 显示全部楼层
您好,设置java文件所在的dsrc或者src右键设置为源码路径后有报错。
文件名:chartProcedure.java(报错),
导入声明(!号警告);
ChartProcedure(报错)下,BX2016(ACTION  报错),点击进去打开chartProcedure.java文件:
报错的地方是:
  sqlMap.put(SQL.DEFAULT_DB_NAME,mysql);
报错信息:mysql cannot be resolved to a variable:
chartProcedure.java文件全部代码:
import com.justep.util.Utils;


public class ChartProcedure {

public static Table bx2016(String skyname,String skyid,Integer skyindex,java.sql.Date skydata1,java.sql.Date skydata2){

        System.out.print(skyindex);
        System.out.print(skydata1);
       
        Integer wrapperi = new Integer(skyindex);  
        int skytemp = wrapperi.intValue();  
        System.out.print(skytemp);
        int age = 16;
        if(age <= 18){
       
            String mysql = "select sName,sum(fBXZE) AS fBXZE  from  Erp_bmreportview u left join er_bxsq a on a.fSQR like CONCAT('%',u.sName,'%') and ( a.fDJZT='已审批 ' and a.sqrq  between '"+skydata1+"' AND '"+skydata2+"' ) where u.sParent='"+skyid+"'  GROUP BY sName;";
        }       
               
                       
        HashMap<String,String> sqlMap=new HashMap<String,String>();
    sqlMap.put(SQL.DEFAULT_DB_NAME,mysql);
    return SQL.select(sqlMap, null,"/ERP/Baoxiao/bxgoodslist/data" );
                }                         
       
       
}
回复 支持 反对

使用道具 举报

36

主题

176

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
QQ
 楼主| 发表于 2016-11-14 22:12:12 | 显示全部楼层
接上面,如下是警告信息;
从未使用导入 java.util.List
从未使用导入 java.util.Map
从未使用导入 com.justep.system.context.ContextHelper
未使用导入 com.justep.system.data.BizData
从未使用导入 com.justep.system.data.DataPermission
从未使用导入 com.justep.system.data.Table
从未使用导入 com.justep.util.Utils

Integer wrapperi = new Integer(skyindex);  
         int skytemp = wrapperi.intValue();  
         System.out.print(skytemp);
         int age = 16;
         if(age <= 18){
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-11-15 10:10:30 | 显示全部楼层
有报错就按照报错进行进行修改,报错的就是java标准的报错,警告信息的可以不用处理
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

36

主题

176

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
QQ
 楼主| 发表于 2016-11-16 16:25:47 | 显示全部楼层
您好,如果我去掉判断语句,就不会报错:

         
             String mysql = "select sName,sum(fBXZE) AS fBXZE  from  Erp_bmreportview u left join er_bxsq a on a.fSQR like CONCAT('%',u.sName,'%') and ( a.fDJZT='已审批 ' and a.sqrq  between '"+skydata1+"' AND '"+skydata2+"' ) where u.sParent='"+skyid+"'  GROUP BY sName;";
               
                 
                        
         HashMap<String,String> sqlMap=new HashMap<String,String>();
     sqlMap.put(SQL.DEFAULT_DB_NAME,mysql);
     return SQL.select(sqlMap, null,"/ERP/Baoxiao/bxgoodslist/data" );
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-11-16 17:11:57 | 显示全部楼层
你把定义的变量放到if中,又在if外面用肯定找不到啊,这个就是java的基本语法
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

36

主题

176

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
QQ
 楼主| 发表于 2016-11-17 02:02:16 | 显示全部楼层
您好,该问题已经解决。请结贴,谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-19 00:12 , Processed in 0.060946 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表