目录

Search

  1. 前言
  2. 使用转换
  3. 汇总器转换
  4. 自定义转换
  5. 自定义转换函数
  6. 数据屏蔽转换
  7. 数据屏蔽示例
  8. 表达式转换
  9. 外部过程转换
  10. 筛选器转换
  11. HTTP 转换
  12. Identity Resolution 转换
  13. Java 转换
  14. Java 转换 API 引用
  15. Java 表达式
  16. Java 转换示例
  17. 联接器转换
  18. 查找转换
  19. 查找缓存
  20. 动态查找缓存
  21. 规范器转换
  22. 等级转换
  23. 路由器转换
  24. 序列生成器转换
  25. 排序器转换
  26. 源限定符转换
  27. SQL 转换
  28. 在映射中使用 SQL 转换
  29. 存储过程转换
  30. 事务控制转换
  31. 联合转换
  32. 非结构化数据转换
  33. 更新策略转换
  34. XML 转换

转换指南

转换指南

重新绑定数据类型函数

重新绑定数据类型函数

可以为端口重新绑定 PowerCenter 默认数据类型以外的数据类型。如果希望过程访问默认数据类型以外数据类型的数据,可使用重新绑定数据类型函数。必须为端口重新绑定兼容的数据类型。
只能在初始化函数中使用这些函数。
在为输出或输入/输出端口重新绑定数据类型时,请遵循以下规则:
  • 必须使用数据处理函数设置数据和该端口的指示器。在基于行的模式下使用 INFA_CTSetData() 和 INFA_CTSetIndicator() 函数,并在基于数组的模式下使用 INFA_CTASetData() 函数。
  • 不要对输出端口调用 INFA_CTSetPassThruPort() 函数。
下表列出了兼容的数据类型:
默认数据类型
兼容的数据类型
字符
Unichar
Unichar
字符
日期
INFA_DATETIME
请使用以下语法:
struct INFA_DATETIME { int nYear; int nMonth; int nDay; int nHour; int nMinute; int nSecond; int nNanoSecond; }
Dec18
Char、Unichar
Dec28
Char、Unichar
PowerCenter 提供以下重新绑定数据类型函数:
  • INFA_CTRebindInputDataType()。
    重新绑定输入端口。请使用以下语法:
    INFA_STATUS INFA_CTRebindInputDataType(INFA_CT_INPUTPORT_HANDLE portHandle, INFA_CDATATYPE datatype);
  • INFA_CTRebindOutputDataType().
    重新绑定输出端口。请使用以下语法:
    INFA_STATUS INFA_CTRebindOutputDataType(INFA_CT_OUTPUTPORT_HANDLE portHandle, INFA_CDATATYPE datatype);
    下表介绍了此函数的参数:
    参数
    数据类型
    输入/
    输出
    说明
    portHandle
    INFA_CT_OUTPUTPORT _HANDLE
    输入
    输出端口句柄。
    数据类型
    INFA_CDATATYPE
    输入
    为端口重新绑定的数据类型。对于数据类型参数,可使用以下值:
    • eINFA_CTYPE_SHORT
    • eINFA_CTYPE_INT32
    • eINFA_CTYPE_CHAR
    • eINFA_CTYPE_RAW
    • eINFA_CTYPE_UNICHAR
    • eINFA_CTYPE_TIME
    • eINFA_CTYPE_FLOAT
    • eINFA_CTYPE_DOUBLE
    • eINFA_CTYPE_DECIMAL18_FIXED
    • eINFA_CTYPE_DECIMAL28_FIXED
    • eINFA_CTYPE_INFA_CTDATETIME
返回值的数据类型为 INFA_STATUS。对于返回值使用 INFA_SUCCESS 和 INFA_FAILURE。