预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共23页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

为WebSphereDataStage创建定制操作符 简介:创建一个简单的DataStage操作符,然后学习如何将该操作符载入DataStageDesigner。操作符就是DataStage作业的基本构件块。操作符可从输入流中读取记录,修改或使用来自输入流的数据,然后将结果写入输入流。 开始之前 关于本教程 本教程介绍了一个基本DataStage操作符的创建。首先了解如何编写一个基本的操作符,然后逐步介绍了将此操作符载入DataStageDesigner的过程。 目标 在本教程中,您将学习: 如何编写一个简单的DataStage操作符 如何设置开发环境以编译并运行一个DataStage操作符 用于DataStage作业的OrchestrateShell(OSH)脚本语言基础 如何将您的操作符载入DataStageDesigner,以便在您所创建的任何作业中使用它 先决条件 本教程的目标读者是技能和经验处于中级水平的Windows程序员。您应对IBMWebSphereDataStage有着扎实的理解,还具备C++语言的实践经验。 系统需求 要运行本教程中的示例,您需要一台Windows计算机,并安装以下软件: MicrosoftVisualStudio.NET2003 IBMWebSphereDataStage8.0 MKSToolkit 准备工作 开始学习本教程之前,请参阅下载部分,下载本教程的源代码。将这些示例解压到一个简单的位置,因为我们将频繁地访问它。在本教程中,使用的是e:/osh/这一目录,因此请将代码中此位置的所有引用更改为您的源代码目录。 在下载代码的.zip归档文件中,有7个文件: /setup.bat——批处理脚本,用于设置环境 /myhelloworld.osh——OSH脚本,用于运行操作符 /make.bat——批处理脚本,用于编译和连接操作符 /operator.apt——操作符配置文件 /src/myhelloworld.c——操作符的源代码 /input/mhw.txt——用于运行操作符的输入文件 /output/mhw.txt——用于运行操作符的输出文件 创建您的第一个操作符 MyHelloWorld 第一个操作符接受一个输入流和一个输出流。MyHelloWorld接受一列作为输入,一个整数,这个整数确定在输出流的一列中打印多少次"HelloWorld!"。输出流包含两列,一列是计数器,显示打印了多少次"HelloWorld!";另一列是打印出的结果。要处理输入和输出流,有一个选项“uppercase”。该选项确定文本“HelloWorld!”是否以大写形式打印。 描述输入和输出 输入和输出模式可描述如下: 输入流列: inCount-int32——“HelloWorld!”应打印的次数 输出流列: outCount-int32——“HelloWorld!”的打印次数 outHello-String——“HelloWorld!”打印的outCount次数 参数 uppercase-boolean——“HelloWorld!”是否应以大写形式打印(可选) 操作符内有一些代码片段描述了这些内容。参数描述通常会首先被定义。这告诉操作符准备接受哪些参数。其中包括输入流和输出流的数量,以及可传入该操作符的所有参数。 下面展示了一段参数描述,它告诉操作符存在一个可选参数“uppercase”,然后继续告诉操作符只有一个输入流和一个输出流。 #defineHELLO_ARGS_DESC\ "{uppercase={optional,"\ "description='capitalizeornot'"\ "},"\ "otherInfo={"\ "inputs={"\ "input={"\ "description='sourcedataforhelloworld',"\ "once"\ "}"\ "},"\ "outputs={"\ "output={"\ "description='outputdataforhelloworld',"\ "minOccurrences=1,maxOccurrences=1"\ "}"\ "},"\ "description='myhelloworldoperator:'"\ "}"\ "}"描述操作符 DataStage操作符是三个基类之一的全部扩展: APT_Operator——基本操作符 APT_CompositeOperator——包含一个或更多的操作符 APT_SubProcessOperator——用于包装第三方可执行程序 由于仅需一个操作符,因而只需要用到APT_Operator的功能。APT_CompositeOperator并不需要,这里我们不