在使用中间件从ERP下载对象时,正常情况下应该看到如下提示消息:
然而有时遇到的是黄色的警告消息:Object is in status Wait.
如何自己排错呢?在函数SMOF0_INIT_DNL_START里设置断点。
使用SMOF0_READ_SMOFPARSFA查询系统参数MAX_PARALLEL_PROCESSES,在我使用的系统上配置为5,意味着最大只允许有5个工作进程用于中间件下载。
下列代码107到115行负责计算还剩余多少可用的工作进程用于中间件下载。计算结果存储于第115行的变量gv_open_processes.
在我上述的例子里,可用工作进程的数目gv_open_processes为5 - 5 = 0, 因此抛出文章题目的警告消息。
解决方案:要么停掉长时间处于running状态的其他下载任务以释放出占用的工作进程。
要么在表SMOFPARSFA里为参数MAX_PARALLEL_PROCESSES配置更大的数值。