教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 互联网资料 >

datastage学习文档 - 图文(4)

来源:网络收集 时间:2026-08-26
导读: 工作总结 2007 Verb \ >LOGTO yourprojectname >DS.TOOLS Which would you like? ( 1 - 6 ) ?5 Which would you like? ( 1 - 11 ) ?4 >LISTU----Users in DataStage >LIST.READU----List lock table command 上面操

工作总结 2007 Verb \ >LOGTO yourprojectname >DS.TOOLS Which would you like? ( 1 - 6 ) ?5 Which would you like? ( 1 - 11 ) ?4 >LISTU----Users in DataStage

>LIST.READU----List lock table command 上面操作等同于$DSHOME/bin/list_readu >QUIT

同样,在查看job pid及locks也可以通过datastage director--->Jobs--->Clearup Resources 4,DataStage Filesystem Mount Points $ cd `cat /.dshome` $ df -k .

5,DataStage Engine Daemon $ cd /etc/rc2.d $ more S999ds.rc

2.21 关于UNIX系统下无法启动服务的解决办法 在诊断启动失败的原因之前,先说说如何停止服务。

启停服务的命令大家都知道,要注意的是停止服务之前应先确保无client连接、无端口连接:

1. 使用ps -ef|grep ds 查看client连接情况,如果还有client连接,你又无法查找是谁,

急需重启,可以通过director将所有的连接log off

2. 使用netstat -a|grep dsrpc 查看网路连接状况,确保只有listen状态 这样,将服务停止,会很顺利的重启服务。

当执行完重启命令后,使用ps -ef|grep dsrpcd 查看服务是否启动,如果此服务没有启动,查看:

1. ps查看有无client连接,杀掉进程。

2. netstat查看网络情况,有无FIN_WAIT_2 or CLOSE_WAIT等的tcp状态,如果有,

则使用ndd 命令调整datastage的端口连接, 方法如下(如hp-unix):

查找进程号:ndd -get /dev/tcp tcp_status |grep -e state -e FIN_WAIT_2 断开连接,释放端口:ndd -set /dev/tcp tcp_discon 0x+进程号

Individual 2007-10 16 /

65

工作总结 2007 如果上述情况都核实后,仍启动失败 请使用 \来启动服务,在 dsrpcd.log 文件中看到启动日志信息,根据实际情况解决。

2.22 Locked by other user

启动DataStag Director ,Job---->Clearup Resources,在这个操作窗口中,首先选择窗口下部 \中的\你可以看到窗口显示了所有lock的信息:PID#----Lock Type----Item Id。在Item Id的列表里找到你需要重新打开的job/routine和其对应的PID#值。然后选择上半部分\中的\All\鼠标选中刚才查到的PID#,然后LogOut。 如果不使用Diretor,你可以在DS administrator中使用\或者\command,同样会列出所有的lock信息。That's Ok!

2.23 dataStage Job Log的处理

如何在操作系统层面上,使用command的到job log?

在操作系统中我们可以使用engine(UNIX DSEngine)/bin 下的命令: dsjob -log [-info | -warn]

dsjob -logsum [-type] [-max ] [-userid]

dsjob -lognewest [-userid] []

event type = INFO|WARNING|FATAL|REJECT|STARTED|RESET|BATCH

dsjob -logdetail [useid] 可以编辑shell或者bat文件,将所有的job log输出。 在datastage内部有其相应的function: DSGetLogEntry DSGetLogSummary DSGetNewestLogId

2.24 一些BASIC语言中处理字符串的函数

Individual 2007-10 17 /

65

工作总结 2007 a 使用冒号\:\作为字符串连接的符号。 例如:\等价于字符串 \ 使用中括号[ ]来取出某个字符串的子串,其语法如下:

expression [ [ start, ] length ]

例如:strA=\那么strA[1,3]的意思就是从序号为1的字符开始,一共取出三个字符,其结果就是\。BASIC语言中数组或者字符串的第一个元素的序号是1。

b

c

Count (string, substring)用来计算字符串中的某个子串出现的次数。

例如:计算字符串\中的子串\出现的次数,arrCnt = Count(\\,那么arrCnt就等于2。

Len (string) 用来计算字符串中包含的字符的个数。 例如:Len(\的值就是3。

TRIMF (string) 用来删掉字符串首部的空格。 TRIMB (string) 用来删掉字符串尾部的空格。 例如,字符串strA=\,其首尾各有多个空格。经过strA= TRIMF (strA)和strA= TRIMB (strA)这样的处理就可以除掉字符串首尾的所有空格了,其结果是\。 Index (string, substring, instance) 用来得到字符串中的某个子串的位置。其中instance表示这个子串是在整个字符串中是第几次出现。

例如:字符串为\,要计算子串\第二次出现在字符串中的位置。Index (\的结果就是5。

d

e

f

2.25 BASIC程序中使用到的一些语法知识

(1). BASIC语言有四种符号用来标记注释,分别是REM,*,! ,$*。例如,

*Initial. Validate the input parameters.

这一行以\星号开头,就表示这一行内容是程序的注释。

(2). 条件判断语句,其语法结构如下:

If condition Then statements End

[Else statements End]

其中condition可以是一个数字,也可以是一个比较关系式。当条件为真时,程序执行Then后面的表达式;当条件为假时,则会执行Else后面的表达式。在Basic语言中,逻辑关系运算符是这样的:

? AND (或者符号 &),表示逻辑与的关系。

Individual 2007-10 18 /

65

工作总结 2007 ? ? 例如:

OR (或者 !),表示逻辑或的关系。 NOT,表示逻辑非的关系。 If bitCount > arrCnt Then

Ans=\ Call DSLogWarn(Ans,\ GoTo ExitFunc End

由BitValue转化而来的二进制数的位数大于子串的个数时,就在日志信息中告诉用户BitValue的值和OriStr的值是不可能一一对应的,输入的数据有错误。

If BitValue >= 0 AND Count(BitValue, \ mask=Oconv(BitValue, \End Else

Ans=\ Call DSLogWarn(Ans,\ GoTo ExitFunc End

当输入变量BitValue的值大于零且不是小数的时候,就把它转化为二进制的数;否则为用户提出警告信息并且离开这个函数。

(3). 使用BASIC自带的一些功能函数。

Oconv(expression, conversion)

其中expression表示一个字符串,conversion则表示这个字符串的输出格式。 Oconv(\的功能是把十进制数\,转化为二进制数\;而 Oconv(\的功能是把十进制数\的小数点左移一位,转化为\。 DSLogInfo (Message, CallingProgName)和DSLogWarn (Message, CallingProgName) 的功能十分相似,都是在执行Server Job的时候,输入一些必要的日志信息,帮助用户了解程序的执行情况。其中Message为输出的日志信息的内容,CallingProgName就是调用这个函数的程序名。区别在于DSLogInfo输出的仅仅是普通的日志信息,而DSLogWarn则是输出一些警告的信息给用户。

例如:

Ans=\Call DSLogWarn(Ans,\

Call DSLogInfo(\

(4). 两种循环条件语句

a). For…Next语句,其基本语法如下:

For variable = start To end [Step increment] [loop.statements] Next [variable]

其中start To end定义了变量变化的区间;而increment定义了每次变量增加的值,当start的 …… 此处隐藏:2951字,全部文档内容请下载后查看。喜欢就下载吧 ……

datastage学习文档 - 图文(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/444075.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)