The existing PS Acquisition Service cannot work against any schema other than Process Physical and Process Functional.
While BECS is calling an API, “iModel.Acquisition.Service”, we are having an issue using the PS Acquisition Service (Swagger UI (bentley.com)) to update a property of an existing item in an iModel. It is throwing an error:
Invalid ECClass in ECSQL: ECClass 'TRANSFORM3D' is not supported in ECSQL as it is neither an entity class nor a relationship class. | stack: BE_SQLITE_ERROR: Invalid ECClass in ECSQL: ECClass 'TRANSFORM3D' is not supported in ECSQL as it is neither an entity class nor a relationship class. at ECSqlStatement.prepare (/app/main.js:50911:19) at BriefcaseDb.prepareStatement (/app/main.js:55874:14) at BriefcaseDb.withPreparedStatement (/app/main.js:55368:109) at PrimitiveTypeHelper.readPropertiesMetaData (/app/main.js:1419:12) at /app/main.js:1405:22 at BriefcaseDb.withPreparedStatement (/app/main.js:55371:25) at PrimitiveTypeHelper.initialize (/app/main.js:1402:12) at Conversion.loadAndInitialize (/app/main.js:902:51) at Conversion.create (/app/main.js:894:26) at PSSynchronizeAgent.run (/app/main.js:774:58)
Transform3D is a struct class and if you debug you’ll see that somewhere in the call stack ECDb is only catering for Entity and Relationship classes.
Also, @Rob Harper, It would be worthwhile supporting this as it would allow us to extend BECS iModel update usecases to other disciplines and also non Process BIS schemas.
Hello @Rob Harper, this issue came to light recently when trying to update OpenPlant_3D schema elements in the iModel using the PS Acquisition Service API called via BECS.
The issue is reproducible using the Swagger UI as well, and is due to the presence of Struct properties in the class even if they are not being edited. Since we can sync the struct properties to the iModel already, we can restrict the editing of struct properties if needed, but still allow users to update the other properties.
@Mehreen Javaid Sameer suggested that you may have another use case around this item - can we discuss?