找回密码
 注册成为天翎用户
查看: 1469|回复: 5

format時間格式轉換報錯

[复制链接]
yogaapp 发表于 2017-11-30 14:25:08 | 显示全部楼层 |阅读模式
本帖最后由 meiji 于 2017-12-16 09:19 编辑

org.mozilla.javascript.EvaluatorException: Can't find method cn.myapps.util.DateUtil.format(java.lang.String,string). (baselib#1030)
at org.mozilla.javascript.DefaultErrorReporter.runtimeError(Unknown Source)
at org.mozilla.javascript.Context.reportRuntimeError(Unknown Source)
at org.mozilla.javascript.Context.reportRuntimeError(Unknown Source)
at org.mozilla.javascript.Context.reportRuntimeError1(Unknown Source)
at org.mozilla.javascript.NativeJavaMethod.call(Unknown Source)
at org.mozilla.javascript.optimizer.OptRuntime.call2(Unknown Source)
at org.mozilla.javascript.gen.c3209._c58(baselib:1030)
at org.mozilla.javascript.gen.c3209.call(baselib)
at org.mozilla.javascript.optimizer.OptRuntime.callName(Unknown Source)
at org.mozilla.javascript.gen.c3236._c1(Form.訂單分行詳情.Field(16001d65f7b-11e7-6df5-0177e840-b4dc-577af35a65f4).Lead_Time_Correct.ValueScript:3)
at org.mozilla.javascript.gen.c3236.call(Form.訂單分行詳情.Field(16001d65f7b-11e7-6df5-0177e840-b4dc-577af35a65f4).Lead_Time_Correct.ValueScript)
at org.mozilla.javascript.optimizer.OptRuntime.callName0(Unknown Source)
at org.mozilla.javascript.gen.c3236._c0(Form.訂單分行詳情.Field(16001d65f7b-11e7-6df5-0177e840-b4dc-577af35a65f4).Lead_Time_Correct.ValueScript:56)
at org.mozilla.javascript.gen.c3236.call(Form.訂單分行詳情.Field(16001d65f7b-11e7-6df5-0177e840-b4dc-577af35a65f4).Lead_Time_Correct.ValueScript)
at org.mozilla.javascript.ContextFactory.doTopCall(Unknown Source)
at org.mozilla.javascript.ScriptRuntime.doTopCall(Unknown Source)
at org.mozilla.javascript.gen.c3236.call(Form.訂單分行詳情.Field(16001d65f7b-11e7-6df5-0177e840-b4dc-577af35a65f4).Lead_Time_Correct.ValueScript)
at org.mozilla.javascript.gen.c3236.exec(Form.訂單分行詳情.Field(16001d65f7b-11e7-6df5-0177e840-b4dc-577af35a65f4).Lead_Time_Correct.ValueScript)
at cn.myapps.core.macro.runner.JavaScriptRunner.run(JavaScriptRunner.java:135)
at cn.myapps.core.dynaform.form.ejb.FormField.runValueScript(FormField.java:550)
at cn.myapps.core.dynaform.form.ejb.InputField.recalculate(InputField.java:364)
at cn.myapps.core.dynaform.form.ejb.Form.recalculateDocument(Form.java:2172)
at cn.myapps.core.dynaform.form.ejb.Form.createDocument(Form.java:1195)
at cn.myapps.core.dynaform.form.ejb.Form.createDocument(Form.java:1139)
at cn.myapps.core.dynaform.dts.excelimport.config.AbstractImportProvider.creatDocument4Rollback(AbstractImportProvider.java:406)
at cn.myapps.core.dynaform.dts.excelimport.config.AbstractImportProvider.creatDocument(AbstractImportProvider.java:208)
at cn.myapps.core.dynaform.dts.excelimport.config.ImpExcelToDoc.creatDocument(ImpExcelToDoc.java:35)
at cn.myapps.core.dynaform.dts.excelimport.config.action.ImportExcelAction.improtExcelToDocument(ImportExcelAction.java:150)
at sun.reflect.GeneratedMethodAccessor1613.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:892)
at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1294)
at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:68)
at com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethodWithDebugInfo(XWorkMethodAccessor.java:117)
at com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethod(XWorkMethodAccessor.java:108)
at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:1370)
at ognl.ASTMethod.getValueBody(ASTMethod.java:91)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
at ognl.SimpleNode.getValue(SimpleNode.java:258)
at ognl.Ognl.getValue(Ognl.java:467)
at ognl.Ognl.getValue(Ognl.java:431)
at com.opensymphony.xwork2.ognl.OgnlUtil$3.execute(OgnlUtil.java:352)
at com.opensymphony.xwork2.ognl.OgnlUtil.compileAndExecuteMethod(OgnlUtil.java:404)
at com.opensymphony.xwork2.ognl.OgnlUtil.callMethod(OgnlUtil.java:350)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:430)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:290)
at org.apache.struts2.interceptor.BackgroundProcess$1.run(BackgroundProcess.java:58)
at java.lang.Thread.run(Thread.java:745)
  1. function checkLeadTime() { // 返回YES or NO
  2.         // var date_placed = getItemValueAsDate("date_placed"); [color=Red]//已經在別處宣告過 這裡不再次宣告[/color]
  3.         date_placed=format(date_placed,"yyyy-MM-dd HH:mm:ss"); [color=Red]只要用了format就報錯 原因不明????[/color]
  4.         var po_due_date = getItemValueAsDate("po_due_date");
  5.         po_due_date=format(po_due_date,"yyyy-MM-dd HH:mm:ss");
  6.         // var age_class = getPoLineInfo3(po_number, po_line, pn);
  7.         var rts="";
  8.         var eop ="";
  9.         var eol ="";
  10.         #include "取得料號資訊";
  11.         getPnDate(PN);// 回傳rts,eop,eol
  12.         // println(rts+eop+eol+PN+date_placed);
  13.         #include "判斷AgeClass";
  14.         var age_class=getAgeClass(date_placed,rts,eop,eol);

  15.         println(" date_place=" + date_placed);
  16.         println(" po_due_date=" + po_due_date);
  17.         println(" age_class=" + age_class);

  18.         // var
  19.         // leadtime=po_due_date-date_placed;//計算Leadtime(po_due_date-date_placed)-----日期不能直接互減!!!
  20.         // var starttime = format(date_placed, "yyyy-MM-dd HH:mm:ss");
  21.         // var endtime = format(po_due_date, "yyyy-MM-dd HH:mm:ss");
  22.         var leadtime = diffDays(date_placed, po_due_date);
  23.         var leadtimeset = getLeadTimeSet(age_class);
  24.         println("leadtime=" + leadtime);
  25.         println("leadtimeset=" + leadtimeset);

  26.         if (leadtime >= leadtimeset) {
  27.                 var lead_time_correct = "YES";
  28.                 return lead_time_correct;
  29.         } else {
  30.                 var lead_time_correct = "NO";
  31.                 return lead_time_correct;
  32.         }
  33.        
  34.         function getLeadTimeSet(age_classx) {// 傳入PN的ageclass,返回leadtime天數
  35.         println("getLeadTimeSet(age_classx)");
  36.         println(age_classx);
  37.         println(typeof (age_classx));
  38.       
  39.         if (age_classx != null ) {
  40.                 var sql = "select * from TLK_Lead_Time與交期提醒 where ITEM_PN_STATUS ='" + age_classx + "'";// 判斷TLK_Lead_Time與交期提醒中,不同的ageclass設定之對應的leadtime
  41.                 var query = queryBySQL(sql);
  42.                 if (query != null) {
  43.                         var iter = query.iterator();
  44.                         if (iter != null && iter.hasNext()) {
  45.                                 doc = iter.next();
  46.                                 var leadtime = doc.getItemValueAsString("LEAD_TIME");
  47.                                 return leadtime;
  48.                         }
  49.                 }
  50.         }
  51. }
  52. }
  53. checkLeadTime();
复制代码


mars 发表于 2017-11-30 15:28:02 | 显示全部楼层
嗨,你好,这是什么业务哦
回复

使用道具 举报

mars 发表于 2017-11-30 15:31:35 | 显示全部楼层
org.mozilla.javascript.EvaluatorException: Can't find method cn.myapps.util.DateUtil.format(java.lang.String,string). (baselib#1030)
看看你的参数是不是没有匹配上或者方法名是不是不对
回复

使用道具 举报

 楼主| yogaapp 发表于 2017-11-30 16:05:20 | 显示全部楼层
mars 发表于 2017-11-30 15:31
org.mozilla.javascript.EvaluatorException: Can't find method cn.myapps.util.DateUtil.format(java.lan ...

我的參數都是date  方法名沒錯啊  
但寫在excel上傳的值腳本裡就常常報錯 寫在其他的腳本就沒事
回复

使用道具 举报

mars 发表于 2017-11-30 16:40:02 | 显示全部楼层
通过java读取excel的数据,是很容易出现错误的,经常都会出现各种奇怪的现象,建议不要用excel来搞数据
回复

使用道具 举报

mars 发表于 2017-12-4 11:04:13 | 显示全部楼层
你好请问你的需求决解好了吗,没有的话请联系我QQ1395233280
回复

使用道具 举报

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-13 21:23

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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