CIAI Apply Error, Siebel-ERR-1071: Unable to build ddl statement "modify col" (Column: 'X_ASSET_NUM_CI' in the input file is Function based and Column in the database is not Function based)
(Doc ID 1603875.1)
Last updated on FEBRUARY 08, 2019
Applies to:Siebel CRM - Version 8.1.1  and later
Siebel Tools - Version 18.104.22.168  and later
Information in this document applies to any platform.
”Checked for Relevance on 06-MAY-2015”
On : 22.214.171.124  version, Configuration - Dev Env
When attempting to apply physical changes for making S_ASSET.ASSET_NUM (varchar column) case insensitive on local Tools db, the Apply button fails w an error.
The following error occurs:
"Siebel-ERR-1071: Unable to build ddl statement "modify col" (Column: 'X_ASSET_NUM_CI' in the input file is Function based and Column in the database is not Function based)."
Login into Siebel Tools and Query up S_CONTACT table.
Run the CIAI wizard with the defaults for LAST_NAME column, note that the default CIAI Index Strategy is 'Copy All'.
Apply new CIAI physical changes for S_CONTACT.LAST_NAME.
Log off Tools
Re-login into Tools
Query table S_CONTACT.
Run CIAI wizard w the defaults (copy all is the index strategy.) for FST_NAME column.
Apply the new CIAI physical changes for FST_NAME.
Unable to build ddl statement 'modify col' (Column: X_FST_NAME_CI) in the
input file is Function based and column in the database is not function
Yet, if you review the S_CONTACT table in SQLAnywhere dbisql.exe, the S_CONTACT table has
both X_FST_NAME_CI and the X_LAST_NAME_CI and the indexes that reflect last name and first name with CIAI enabled.
The error is confusing and indicates that the physical changes for the second CIAI 'Copy All' column can not be applied.
Note: The same message can be displayed as part of ddlimp based processes executed during Siebel CRM upgrades (such as the Incremental Repository Merge process). The error is shown in the corresponding log as:
2015-07-14 07:19:44 Merging table S_CONTACT ...
2015-07-14 07:19:44 DDLIMP-ERR-1071: Unable to build ddl statement "rebuild test" ((Table Rebuild Failed) Column: 'X_FST_NAME_CI' in the input file is Function based and Column in the database is not Function based).
For this type of messages too, the solution of the present document applies
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document