问题标签 [datastage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
datastage - DataStage 9.1 基于输入文件的参数表名称
我必须开发一个 9.1 DataStage ETL 过程,其中相同的逻辑应用于不同的输入文件、输出表......
基于读取的输入文件fileA、fileB、fileC,我必须在相应的表上执行我的工作,即tableA、tableB、tableC
我怎样才能达到这个要求?
谢谢
datastage - Datastage 9.1 - 从一个文件夹中读取多个文件并根据名称拆分它
我正在使用 DataStage 9.1,我向您展示了我的任务,以找到一些最佳实践。
我需要从一个文件夹中读取多个 csv 文件(所有文件),并根据文件名的最后两个字符在十个不同的作业中执行 ETL。然后我的问题是:
目的是:文件 fileXX 将用作 ETL 的输入,ETL 将填充 tabXX,fileYY 填充 tabYY 等等。
1)如何从一个文件夹中读取多个文件?2)如何根据文件名切换工作,或者更好地如何根据输入文件名的价值开发参数化工作?
有人可以给我一些建议,让我以最好的方式开始我的工作吗?
database - 使用带小数的模式文件进行数据阶段文件序列导入
我有一系列通过 Datastage 导入数据库的 CSV。我正在尝试使用 RCP 和模式文件来做到这一点。
我使用 CSV 随附的随附主表列表从 CSV 生成模式文件。
我遇到了一个问题。当我发现一个数字是特定表中的最后一列时,它就是模式文件中的最后一个条目。我的问题是空处理。CSV 以逗号分隔,字符串用双引号括起来,null 没有数据。
主列表将其中一些数字列标识为 number(),这表示输出的 oracle 描述。为此,我正在尝试这个:
:nullable decimal[38,9] { default=0, text }; 在此示例中,比例和精度默认为 38,9....除非在其他地方指定,例如十进制 [10,2]。
空条目导致此错误:验证导入/导出函数时:APT_GFIX_Decimal::validateParameters:十进制“文本”格式为可变长度,未指定外部长度;您可能应该指定适当的“宽度”属性;外部格式:{text, padchar=32, nofix_zero, precision=38, scale=9, round=trunc_zero, ascii}。[十进制/impexp.C:939]
所以我尝试了: :nullable decimal[38,9] { default=0, text, width=47 }; 在此示例中,比例和精度默认为 38,9。宽度是两个值的总和(38 + 9 = 47...除非在别处指定,例如十进制[10,2]。
我得到:ODBC_Connector_3,0:输入缓冲区溢出字段“”,偏移量:### [impexp/group_comp.C:6006]
最后,我完全按照它所说的做了: :nullable decimal[38,9] { default=0, text, padchar=32, nofix_zero, precision=, scale=, round=trunc_zero, ascii, width=47 } ; 在此示例中,比例和精度默认为 38,9。宽度是两个值的总和(38 + 9 = 47...除非在别处指定,例如十进制[10,2]。
第三次,我收到此错误:输入缓冲区溢出字段“”,偏移量:### [impexp/group_comp.C:6006]
有没有人遇到过这个?仅当十进制是表中的最后一列时才会发生这种情况。
我的记录设置是:{intact, final_delim=none, record_delim='\n', charset='UTF8', delim=','}
非常感谢。
datetime - 以“mm/dd/yyyy hh:mm:ss”格式添加到系统日期的 DataStage 转换器
有没有人帮助我在 Datastage 中进行日期时间约定?
我需要以“mm/dd/yyyy hh:mm:ss”格式将系统日期添加到数据阶段转换器
我正在使用 Datastage 7.5 版本。
database - Datastage Server Job V8.5 OracleDB 日期未正确加载
DataStage® 版本:8x
作业类型:服务器
操作系统:Windows
附加信息:Datastage Server Job V8.5
这是一个特殊的错误。
在数据阶段服务器作业中,
我来自顺序文件的源数据的日期字段具有以下值 yyyymmdd
日期 20121017
我正在加载到 oracle DB,但是数据库中的该列显示为“21-JUN-57”(这是 06/21/7057)
我没有对日期进行任何转换。是直接映射。
我想要格式为 17-OCT-2012 的目标
顺序文件中的源数据具有日期作为 SQL 类型,目标具有相同的 SQL 类型。Oracle DB 在列名、数据类型方面完美匹配。
您能否解释一下为什么日期没有正确加载以及如何解决这个问题?
sql - 由于以下错误,Datastage 作业终止
我正在运行一个数据阶段作业,通过 DB2 输入并输出到 DB2。输入端有一个包含连接和函数的查询。
我收到以下警告消息;
我在我的数据中看不到这样的记录。数据质量很好。那么这些是什么???
这个警告后面有很多错误;下一个错误也很有趣。
我相信错误是由于第一个警告造成的。请帮帮我。问候, Nuh
logging - DataStage 9.1 多实例作业日志未按调用 ID 组织日志
嘿伙计们希望你能提供帮助。
我正在使用 DataStage 9.1,但在 Director 中的作业日志存在问题。首先让我说一下我工作的公司大约 6 个月前刚刚购买并安装了 InfoSphere,所以我完全期待一些成长的痛苦,这很可能是管理方面的事情。我熟悉 8.5 及以上版本(使用该工具 3 年),但不熟悉 9.1。...关于这个问题...
我有一个大序列,其下有许多子序列,并且我多次使用许多相同的并行作业(选中“多实例”设置)。我通过将 id 设置为向下传递的参数(目标表名称),更改了我正在加载的每个系统的多实例作业的调用 ID。
这是一个例子..
我遇到的问题是,当我查看作业日志时,它将 System_A_Temp_To_Final 与 System_B_Temp_To_Final 混合在一起。
作业日志的示例:
当我有 18 个作业正在运行并执行此操作时,它会变成一团糟,很难单步执行或找出哪些错误或警告属于哪个作业。有谁知道组织这个的方法?我在 8.5 中没有这个问题,但是那个环境已经建立并且稳定了。
感谢所有的帮助!
sequential - 顺序文件在 IBM datastage 8.1 中读取不正确的文件数据
我面临的情况如下:
生成一个顺序文件,例如以 A.txt .. 的名称包含 100 行。在另一个作业中需要相同的顺序文件作为输入,但这次当它读取它时将行视为 140,但物理上只有 100 行。我已经为这个 ind Datastage 分析了很多,比如验证列的属性,分隔符,项目比较..但我仍然无法..。如果有人可以帮助我解决这个问题,非常感谢..
谢谢
oracle - IBM Data Stage - 如何查找作业中使用的数据库表
对于一个项目,我们需要调查 IBM Data Stage 的现有安装,在大量工作中执行大量 ETL。
作业流程图包含许多表,这些表被用作源(在 MSSQL 和 Oracle 中)和目标(主要在 Oracle 中)。
我的问题是现在
如何找到某个数据阶段项目中所有作业使用的所有数据库表?
我查看了工具 - 高级查找,在那里我可以看到所有“表定义”。但是,作业中实际使用的大多数表并没有显示在那里,因为它们被定义为 Data Stage 所称的“并行作业”,实际上是针对数据库表的 SQL 查询。
我对定位由作业加载的 TARGET 表特别感兴趣。
所以说得直白点,我希望能够回答“哪个工作加载表 XY?”这个问题。
如果这是不可能的,那么一种自动提取作业使用的所有 SQL 语句的方法将是一种替代方法。
我们可以访问 IBM Websphere Data Stage 和 Quality Stage Designer 8.1
datastage - datastage buildop 错误 - buildop 抛出错误
当我在 datastage 中运行作业时,我收到以下错误消息。buildop 阶段抛出此错误
该字段是输入字段。
getEditsReturn 是 buildop 的唯一输入列。
代码是
这里的输入是 c++ 字符串类型(不是 char[])。我也尝试将输入列分配给 char[] 。它也没有工作。我已将 autoread 和 autowrite 设置为 false。我正在使用 fprintf 将这些输出列写入文件。我在文件中正确获得了该输出。但是这个阶段失败了