我需要创建一个AS/400命令。根据要求,它有两个参数,比如A和B,它们不能同时填充。当按F4键提示时,两者都会显示,但一次只能填充一个。如果两者都填满了,应该会出现一条错误消息,说这是无效的。有人能告诉我如何创建这样的命令吗?我需要在CMD源文件中指定什么来实现它?如何使用互斥参数创建AS/400命令?
回答
使用DEP命令定义语句来控制参数。
CMD PROMPT('TEST')
PARM KWD(A) TYPE(*CHAR) PROMPT('A')
PARM KWD(B) TYPE(*CHAR) PROMPT('B')
DEP CTL(*ALWAYS) PARM(A B) NBRTRUE(*EQ 1)
CMD源只具有执行合法性检查的基本能力。通常,最终用户业务规则由有效性检查程序执行。参见CRTCMD VLDCKR()。 VCP非常类似于CPP,除非命令未通过有效性检查,否则VCP会向调用者发送* DIAG消息,其中包含原因的详细信息,并向调用者发送CPF0002 * ESCAPE消息,告诉它命令没有跑。
如何创建此VCP? –
在这种情况下,VCP是一种过于繁琐的方式来完成上面显示的'DEP'语句容易完成的事情。 – WarrenT
实际上,除DEP语句外,其他代码的数量并不多,除了两个参数的DCL更多地使用它。这只是一个IF声明和一对SNDPGMMSGs。它比* CMD对象本身的编码和DEP语句的使用更为广泛地被理解和接受。 (虽然我会用DEP。) – user2338816
- 1. 互斥锁/解锁命令
- 2. 如何为e4命令创建参数
- 3. 解析不相互排斥的命令行参数组
- 4. 在Linux上如何创建互斥锁?
- 5. 创建一个互斥列
- 6. 如何使用NtCreateMutant(Zw)在C++中创建一个互斥体
- 7. 使用Oledb命令构建查询以查询AS400数据库
- 8. 模板参数互斥
- 9. 使用互斥
- 10. 使用argv中的命令初始化全局互斥体
- 11. 如何在WPF数据网格中创建互斥列?
- 12. 如何使用可选参数创建交互式elisp函数
- 13. 何时使用互斥
- 14. 如何用互斥单选按钮创建Django表单?
- 15. 如何使用命令参数?
- 16. 如何使用命令行参数
- 17. 如何使用参数执行命令?
- 18. 如何交互使用php命令行?
- 19. 创建在C互斥锁柜类++
- 20. 从服务创建会话互斥?
- 21. 无法创建互斥锁。 ASP.NET
- 22. 使NSOperations互斥
- 23. 使用“多个”参数创建Discord-Bot命令
- 24. 使用命令行参数创建循环批处理文件?
- 25. 使用命令行的参数创建一个C++程序
- 26. 互动LUA:命令行参数
- 27. 如何为文本命令创建表值参数
- 28. 如何创建打印命令行参数的任务?
- 29. 如何为计算器创建命令行参数
- 30. 如何运行Eclipse Maven使用命令行参数构建
上面的来源是否意味着A和B中的一个必须被填充,但不是两个?这是我需要的。不能同时填充,但它们不能一起留空。 –
@God_of_Thunder:这意味着2个参数中的1个必须有一个值,另一个必须是空的。 – jamesallman
@God_of_Thunder如果你想显示一条消息,如果两者都被指定了,那么在'DEP'语句中指定'MSGID(yourmsgid)'。 – WarrenT