00:00
啊好了各位啊,就是刚才呢,我就已经给大家说过了,对吧,实际上呢,我们刚才在学这个参数传递的时候,对吧,我们在这儿对吧,你传半天,你给我传的都是啥,你传的是不是都是固定的值啊对吧,你固定的值你传三这有啥用呢。固定值传参,其实说实话没有太多的意义,对吧,能理解吧,就是正常情况下,咱们这个工作流,你传参也得是传什么参数,也得是传一些动态的参数,对吧?好了,那我们DS当中的实际上是内置的一些这种动态参数了,这些动态参数都是跟时间相关的。因为你工作流对吧,你传参,你每天传的这个参数不一样的地方就是就是日期它不一样嘛。是这个道理吧,啊,理论上就是日期不一样,所以说它这个动态参数呢,都是跟日期相关的,好了,那我们看一看都有啥啊,首先我们先看一些这些基础的内置参数,基础的内置参数呢,一共有三个。这是那参数名啊,System bi.date system by current date,然后system date time OK,那这三个参数,那他们的值最终会解析成什么呢?来看一下。
01:05
哎,首先那我们先看第一个啊。这个会被解析成定时时间的前一天,哎,同学们,这个所谓定时时间的前一天是什么意思啊,很简单。比如说啊,那我现在呢,我把这个任务对不对,我做了一个定时调度,我每天的00:10去跑,对吧,你比如说我们现在到了6月15号的00:10了。能列吧,那这个任务现在是不是要开始跑了呀?没错吧,同学们,OK,好,那在跑的时候,那他会怎么做呢?它会诶自动的把你传的这样的一个参数的值解析为你现在这个时间的什么前一天,也就是解析成14号。能理解吧,说白了就是这个任务啊,哎,最终执行的那个时间的前一天能理吧,就是这个所谓的定时时间的前一天,对吧,你到了16号00:10又要跑了,对吧?这时候他会把这个参数解析成哪一天呢?解析成是不是就是前一天也就是15号了呀,能对吧?这就是咱们这个动态参数的一个意义,对不对,OK,好,那这个呃,日期呢,它是有固定的格式的,它的格式什么是YYYMMDD,中间是不是没有那个杠啊,对吧?那我这个参数能不能调整这个格式的调不了,它的格式是固定的啊,OK,那这这也是这个所谓的基础内置参数它的一个不足之处啊,你是不能调整它的格式的。
02:20
那这个其实说实话就不太好了,对吧?好了,那我们继续往下走啊,第二个参数是啥呢?诶这个很简单,是获获取当前日期对吧,什么当前日期定时时间的当前日期,其实说白了就是就是你这个定时调度对吧?诶你这个任务真正执行的那个时间对吧?是哪一天执行的,那我这个日期就是哪一天对不对?好那其实通常情况下你要传他应该传哪一天。通常其实一般咱们就是存前一天对吧,是这样的啊好了,那再往下这个呢,指的是什么?指的是我这个任务运行时间的什么是诶这个当前时间对吧?这里边有年月日有十分秒,好那这样同学们啊,咱们接下来呢,咱们一块儿把这三个参数呢,咱们都去给他做一个测试,对不对,咱们测一测,看一看它打印的时间到底是什么样的,来吧,咱们开始啊。
03:03
这边咱这么做啊,呃,首先编辑这个工作流啊,咱们就以A节点为例吧,咱们演示一下啊,在这儿我们不让他去传这些参数了啊,直接来一个呃,肯呃这个这个这个咱们这样去做,我们直接来一个啥呢?诶E扣一个Dollar Dollar啥呢?诶Dollar dt1能理解吧,再来一个E扣,后边的跟上一个Dollar dt2对不对,再来一个E,然后呢,Dollar花括号DT,诶三。能理解吧,各位同学好了,那之后呢,我们下边应该怎么做呢?咱们应该是不是给他去传上呃,这个参数啊,对吧,咱们这里边继续传递参数对吧?这个怎么传这呢?应该是DT,能理解吧,OK,那我后边这个in是什么?呃,这个in和out选谁是不是得选in啊对吧?给当墙传嘛,对吧?那完了之后呢,呃,类型是不是就我差啊对吧?那后边这个值写啥?注意值咱们写得写什么,得写这个动态的值吧。能力吧,咱们得写这个啊OK,那完了之后呢,咱们把它,诶给它放在这个位置,诶好了,那有同学可能会纳闷啊,我我这个能不能这么写呢?你比如说我把这个直接可能接拿过来,完之后呢,我直接放在这儿。
04:06
哎,我这么写行不行,同学们不行固定写法啊,只能是这么说啊,你这必须得自己提供一个,呃,这个参数名能理解吧,然后呢,下边传参,后边这个值你可以这么写,只能是这么写啊,不能拿上面去拿上面它解析不了啊好了,继续往下走,那我们再来一个来这边来一个啥DT2的DT,那后边呢,我们再跟上刚刚的这个第二一个值对吧,咱们找一下啊,诶应该是当前日期对吧,CTRLC拿过来,诶然后呢,放在这,好,那我们再传一吧,这个来一个DT3对不对,然后呢,我们继续往下走,哎,把这个拿过来。拿CTRLC拿过来,拿来之后呢,我们在后边再给他传一个参行了,那到目前为止各位啊,我们就已经完成了什么了,咱们就已经完成了啊,就是我们这个三个参数的一个传递了,对吧?然后呢,我们点击确认添加好了,现在点击保存,点击添加,然后呢,我们点击上线,嗯,然后呢,运行对吧?现在呢,我们来看一下这个效果是什么样的啊。
05:04
看一看它是不是按照我们刚才所说的打印了这个相应的日期啊好,我们找到这个任务实例,找到谁找到A节点对吧,点点日志,然后看一下它的输出。你注意观察。咱这输出的日期是不是跟刚刚咱们说的是一样的,对吧?前一个参数,第一个参数传的是什么,是当前日期的,是不是前一天,那当然了,同学们啊,这块你最好不要以这个Windows时间为例,你得以谁呢?还是得以你这个虚拟机的日期为例,对吧?因为有些人他那个虚拟日期跟这个Windows这边不一致,对吧?OK,好,以这样为例啊,你这是5月24日对吧?那所以前一天是不是应该是五月23对吧?当前日期五月24嘛,对吧?诶这个是当前的时间,好了,那这就是咱们这个基础内置参数的一个说明。OK啊好,那大家应该也感受到了啊,你说这个参数是不玩这玩意,用起来不太方便啊,对吧?为啥调不了格式,这是它最大的一个弊端对吧?好,那我怎么能调格式呢?好,调格式咱们得用下边这个啊,下边这个是什么呢?是衍生内置参数啊,其实也不用管什么叫基础,什么叫衍生,这其实就是他们自己起这个名字啊好,那我们来看一看这个衍生内置参数,那到底怎么运用呢?来可以看一下他说了衍生内置参数呢,我们是能够设置任意格式。
06:19
然后呢,任意时间的日期的,OK,你看这个是不是听起来就很厉害了,对吧?格式随便调,时间也随便调对吧,那要比上边这个是不是灵活多了,对不对?好,那接下来咱们看一看这个所谓的衍生内置参数到底怎么用啊,到底怎么玩啊,来吧,咱们来看一看。首先我们先来说一下怎样去定义日期的格式。格式呢,是通过这种语法去进行定义的,哎,是Dollar方括号,注意是Dollar方括号啊,Dollar方括号,然后里边呢,你就可以随意的去配置格式了,你比如说你可以配置YYYMMDD对不对,你当然了,这块你也能加杠对吧?哎,YYMMDD可以吧,那我也可以有十分秒,当然了,这块你也能拼在一起,那以吧,这个格式是可以随意的分解和组合的。
07:07
这个其实非常灵活的,对吧?好了,这是怎样去调整格式好了,那除了能自定义格式,它是不是还能自定义这个时间呀,对吧,这个所谓的自定义时间是什么意思啊,你不像前面这个,你只能获取当前日期对吧,或者是前一天日期那里,我下边这个衍生内置参数的,我可以随便比如说我想获取。前边两天的日期对吧,我想获取前边一个月的日期,前边一年的日期,或者是后边一个月的日期等等等,你都能够获取得到,能明白,OK,那这个具体怎么调整的来看一下啊,下面呢,我们呃这个简单的说一下,这个怎么去获取这个任意的日期,首先那我们可以通过这样的一个所谓的ID函数。能理解吧,去动态的进行日这个月份的加减。能理解吧,能能能动态的进行月份的加减,比如说我想获取前边某个月的这个日期,好,你可以借助这个函数去描述。
08:06
那或者说呢,想获取前面某某一年或某几年的日期,对吧?我都可以借助这个函数去去去做。OK,这这个东西到底怎么玩呢?很简单,咱们可以看一看啊,哎,这儿有几个例子,咱把这个例子看一看,你就能看明白了,你看这块怎么做的啊,你可以这么写,诶,Dollar,方括号里边I month,对吧?后边呢,我写一个啥,写一个日期对吧?这就是咱们那个日期的格式嘛,对不对?后边如果你写一个12乘N,那理吧,这个N你是可以自己去替换一个数字的,对吧?比如说我这写一个一能解吧,12乘一,这就什么意思。那这就是相当于12个月嘛,对吧,12个月说白了就是,是不是就是。后多少年呀,对吧,那注意啊,这个是什么,是爱的month是爱的,爱的是加对吧,加出来就是后几年。那文章写一,那就是后一年,我这写二呢,写二是不是24个月之后,24月之后,不就是后两年吗?能理解吧?OK,好,那继续往下进行,那这个呢,哎,我要是想回去前一年的怎么做?哎,这儿用减就行了啊,减12乘一或减12乘二,你就能拿到前一年或前两年。
09:13
哎,是这样的啊来继续往下走,那再往下呢,就是这个了啊这个是什么呢?哎嗯嗯,那就是说你这不不不乘12了,对吧,你就写啥呢,你就写一个,诶正一负一或正二负二对吧,这是前一个月后或者后几个月,也就是说我们通过这个爱的慢函数的是能够去呃获取前边某几年或前边某几月的对吧,好了,那这个力度相对还说来说还是粗一些,对吧,你只能是调整这个月份或年份,那我现在要想获取,比如说前边某几天。对不对,或者是后边某几天对不对,甚至前边某几个小时对吧,那这个我怎么获取呢?诶通过下边这个方式就行了啊怎么做呢?不用函数了,咱们直接加减数字就可以了,能理解吧,直接加减数字,那它的这个操作的这个单位就是什么呢?就是天了。
10:01
能理解吧,也就是什么意思,你可以操作这个月份用操作月份,那也可以用直接加减数字呢,去操作添。没错,OK,好,那这个具体什么意思呢?咱们来看一看啊,来看几个例子,咱们就看明白了,你看这个这个是什么意思呢。是直接这个Dollar方括号里边是不是加七乘N呀,对吧,这什么意思,这个N现在的单位是什么?是天那加七天那是呃加七乘N天那是不是就是后N周啊,相当于。没错吧,OK啊好,那我要是减七乘N呢,那是不是就前N周那吧,OK,那我这个直接加N,那就是后N天对吧?那那这个直接减N呢,那就是前N天,那比如说我现在想获取前一天日期怎么写,这样是不是减一就完事了?对不对,OK,那甚至呢,我可以诶除对吧,你要是除24对吧,这就是后N小时前N小时能理解吧,那这个呢,那是不是就是后N分钟或者是前N分钟啊对吧,分类吧,那这就是这个函数的一个基本的用法啊行了,那这个所谓的呃,衍生内置参数,那咱们也就演示完了啊,也就说完了啊,那接下来咱们举一个实际的例子啊,比如说同学们啊,正常情况下同学们,我们这个离线收藏,我们要是给他传这个动态参数的话啊,当然我们这个脚本,咱们那种编写方式,你可以传这个日期,也可以不传,对吧,假如说我们要传,那你说我们每天该给他传一个什么样的参数。
11:21
咱每天要传的话,应该传一个是不是年杠月杠日的这样的一个格式的前一天的日期啊,对吧?好,那你说我这块要传的话,应该怎么传,你得这么做对吧?来咱们演示一下啊,这边我们先给他下线,然后呢,点击一下这个编辑按钮,比如还是以A为例啊,你要传的话,咱得这么传。回车啊,哎,Windows位这边咱们来一个DDT4啊,然后后边呢,我们再给他传一个参数,再点一下加号啊DT,然后后边跟一个四,这边咱们要传的话得怎么写得这么写对吧?Dollar是不是得方括号里边得是YYYY,然后杠MM,然后杠DD,后边怎么样,后边是不是应该是减一呀,对吧。
12:00
没错吧,各位同学好了,那这个完事之后呢,我们点击确认添加啊,那之后呢,我们点击保存,然后点击添加,诶之后呢,我们找到这个工作流定义,然后我们给他上线,然后呢给它运行啊,对吧,最后再点运行,诶然后你看一下同学们这个任务正在运行,等它运行完之后,咱们看一下效果。刷新哎,完事了对吧,然后点击任务实例,然后注意观察看后边这个日志。点开,哎这个哎,咱们是点错了对吧,我们点的是谁,点的是C对吧,咱们得看A节点呢,A节点的点,哎往下翻,哎你注意观察,你看这是不是就打印出来了,我们这个格式的前一天的日期了呀。没错,同学,哎,就是我们正常咱这个数藏,你要是传三的话,你得像刚才咱们那样去传,没错吧,好了各位啊,那截止到现在呢,就已经把这个呃,所谓的内置参数诶给他说完了对不对,你会发现它这个传参其实还是非常方便的,对吧,非常灵活的啊行了,完了之后视频我停一下。
我来说两句