Insert PK Errors
This task inserts into the error (E$) table the errors detected while checking a primary key. This command always runs, has the Primary Key checkbox active and has Log Counter set to Error to count these records as errors.Note:
When using a CKM to perform flow control from an interface, you can define the maximum number of errors allowed. This number is compared to the total number of records returned by every command in the CKM of which the Log Counter is set to Error.Command on Target (Oracle)
insert into <%=odiRef.getTable("L","ERR_NAME", "W")%>
(
ODI_PK,
ODI_SESS_NO,
ODI_ROW_ID,
ODI_ERR_TYPE,
ODI_ERR_MESS,
ODI_ORIGIN,
ODI_CHECK_DATE,
ODI_CONS_NAME,
ODI_CONS_TYPE,
<%=odiRef.getColList("", "[COL_NAME]", ",\n\t", "", "MAP")%>
)
select SYS_GUID(),
<%=odiRef.getSession("SESS_NO")%>,
rowid,
'<%=odiRef.getInfo("CT_ERR_TYPE")%>',
'<%=odiRef.getPK("MESS")%>',
'<%=odiRef.getInfo("CT_ORIGIN")%>',
<%=odiRef.getInfo("DEST_DATE_FCT")%>,
'<%=odiRef.getPK("KEY_NAME")%>',
'PK',
<%=odiRef.getColList("", odiRef.getTargetTable("TABLE_ALIAS")+".[COL_NAME]", ",\n\t", "", "MAP")%>
from <%=odiRef.getTable("L", "CT_NAME", "A")%> <%=odiRef.getTargetTable("TABLE_ALIAS")%>
where exists (
select <%=odiRef.getColList("", "SUB.[COL_NAME]", ",\n\t\t\t", "", "PK")%>
from <%=odiRef.getTable("L","CT_NAME","A")%> SUB
where <%=odiRef.getColList("", "SUB.[COL_NAME]="+odiRef.getTargetTable("TABLE_ALIAS")+".[COL_NAME]", "\n\t\t\tand ", "", "PK")%>
group by <%=odiRef.getColList("", "SUB.[COL_NAME]", ",\n\t\t\t", "", "PK")%> having count(1) > 1
)
<%=odiRef.getFilter()%>
No comments:
Post a Comment