openedge - ** 数字输入 / 中的无效字符。(76) - 进步 4GL
问题描述
我面临以下功能的问题。我将其导出到 .xml 文件,在日志文件中我收到错误“** 数字输入 /.(76) 中的无效字符”。请帮我解决这个问题。
CLASS JITS.BE.ANDON.DataItems :
CONSTRUCTOR PUBLIC DataItems():
END.
DEFINE PUBLIC VARIABLE cValue AS LONGCHAR NO-UNDO.
DEFINE TEMP-TABLE AlertList NO-UNDO
FIELD Item AS CLASS Progress.Lang.Object.
/* Method for storing alerts against an item instance */
METHOD PUBLIC VOID AddAlerts(INPUT alert AS CLASS JITS.BE.ANDON.Alerts):
CREATE AlertList.
AlertList.Item = alert.
END.
/* Method to retrieve alerts against an instance */
METHOD PUBLIC VOID GetAlerts(OUTPUT TABLE AlertList):
END.
END CLASS.
FUNCTION GETLASTSEQDATETIME RETURNS CHARACTER (INPUT mYObj AS CLASS JITS.BE.ANDON.DataItems):
ASSIGN mYObj:cValue = '99/99/9999 00:00:00'.
FIND FIRST sfcf_au where sfcf_au.assu_id = ENTRY(2,mYObj:CPARAMETER,"|") NO-LOCK NO-ERROR.
FIND FIRST sfcf_au_ship OF sfcf_au NO-LOCK NO-ERROR.
FOR LAST comh_corder_version_head NO-LOCK:
ASSIGN
mYObj:cValue = STRING(comh_corder_version_head.covh_received_date) + " " + STRING(comh_corder_version_head.covh_received_time,"HH:MM:SS").
LEAVE.
END.
RETURN ''.
END FUNCTION.
解决方案
我很难理解你的代码片段。例如,我看不到 myObj:CPARAMETER 来自哪里,或者它的值是什么。你也没有告诉我们错误来自哪里,所以我不得不猜测并做出假设。如果您想知道错误来自哪里,那么您需要在代码中添加调试消息。
但我认为是使用 myObj:CPARAMETER 导致了错误。而且我还假设在某种程度上它有一个日期。我假设 assu_id 是一个整数值,并且 ABL 正在将 ENTRY (2,...) 运行时转换为 INT 失败,因为 ENTRY 是一个字符值,然后将其转换为一个 INT。
不过,所有这些都是基于假设。
推荐阅读
- indexing - 对netbeans“启用源自动扫描”选项感到困惑
- r - 在 R 中将数值数据变量更改为日期格式以合并两个数据集
- python - NameError:名称“文件”未定义。在使用 tkinter 线程时
- powershell - 未为 PS Core RunspacePool 调用 InitialSessionState 中的 StartupScripts
- pandas - Pandas 数据框将特征划分为高相关性组
- java - 如何将数据从 DATA 类中的方法发送到 guiTest 类中的 jTextArea
- ruby-on-rails - 数组作为 Rails.cache.fetch 方法中的第一个参数
- scala - 你能在 Scala 中拥有一系列案例对象吗?
- c++ - R_X86_64_PLT32的地址是怎么计算的?
- dialogflow-es - 避免在 Dialogflow 中将货币转录为符号