You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在UniQuery中实现PA间传递当前日期?

解决UniQuery中PA间传递当前日期的简洁方案

我之前也踩过用文件传递日期的坑——确实容易出现文件未更新、权限冲突这类额外故障点,后来摸索出几个更可靠、无外部依赖的方法,分享给你:

方法1:直接嵌入日期函数传递

最简洁的方式是在调用第二个PA的行里,直接用UniQuery的日期函数生成当前日期并格式化,作为参数传递:

AE VOC MY.PROCESS.TODAY
001: PA
002: MY.PROCESS `OCONV(DATE(),"D")`
  • DATE()返回当前日期的系统内部数值,OCONV()可以把它转成你需要的可读格式(比如"D"对应系统默认日期格式,"D-YMD[4,2,2]"可以生成YYYY-MM-DD格式)。
  • 运行MY.PROCESS.TODAY时,会自动把当前日期字符串作为参数传给MY.PROCESS。

方法2:通过变量灵活处理

如果需要对日期做额外校验或格式调整,可以先把日期存入变量再传递:

AE VOC MY.PROCESS.TODAY
001: PA
002: LET TODAY.DATE = OCONV(DATE(),"D-YMD[4,2,2]")
003: MY.PROCESS {TODAY.DATE}

这种方式更灵活,后续要修改日期格式或添加逻辑,直接调整变量赋值行即可。

方法3:支持手动指定日期(可选扩展)

如果偶尔需要手动指定日期而非用当前日期,可以让PA兼容命令行参数,默认用当前日期:

AE VOC MY.PROCESS.TODAY
001: PA
002: IF ARG(1) = "" THEN
003:   TODAY.DATE = OCONV(DATE(),"D")
004: ELSE
005:   TODAY.DATE = ARG(1)
006: END
007: MY.PROCESS {TODAY.DATE}

平时运行MY.PROCESS.TODAY就用当前日期,需要指定某天时,直接运行MY.PROCESS.TODAY "2024-05-20"即可。

这些方案完全基于UniQuery自身的语法,没有外部文件依赖,避免了文件传递带来的故障点,稳定性和简洁性都更优。

内容的提问来源于stack exchange,提问作者Script Wolf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:22:22