StarfishETL has two connector types for Creatio.
OData: Allows for more complex querying. 4-6k records per hour
Data Services: Faster than OData. Approx 30k records per hour
Sometimes it is necessary to filter Creatio in ways that are not possible through a SQL statement. You may use the 'Filter' virtual field to override the filter that is sent to the Creatio OData web service. 'Filter' will show up as a field for all tables. It is possible to match on this column or perform a SmartLookup on it. In the value for this field you will supply the full filter in the OData Query format http://www.odata.org/documentation/odata-version-2-0/uri-conventions/#FilterSystemQueryOption.
This is an example of a query you would supply in the Filter column when matching on it.
Account/Id eq guid1de420aa-9577-46ac-8326-c3a566a58c3b
This example would filter Contacts on the Contact's related Account ID, returning the Surname field.
ScriptedField=SmartLookup("ContactCollection", "Surname", "Filter = Account/Id eq guid'1de420aa-9577-46ac-8326-c3a566a58c3b'")
This example would filter for Products related to a single Order. This example would be used as your SQL Selection Statement when using Creatio as your Origin.
SELECT * FROM OrderProductCollection WHERE Filter = 'Order/Id eq guid''e1d0c2ab-7d41-4e23-b040-3ba524778063'''
If you receive this message while trying to create stages or work with mappings, there's a good chance your Creatio metadata is corrupt. This can occur if you have a broken customization or have not completed a full compile within your Creatio instance. To know for sure, in a browser go to the following URL: https://YOURINSTANCE.bpmonline.com/0/ServiceModel/EntityDataService.svc/$metadata (replacing YOURINSTANCE with the actual name of your company). If everything is working you should get back a giant XML stream. If there is something wrong with your metadata, you will see a message like "Internal Server Error. Unable to find property 'SomeFieldName' on type 'Terrasoft.Configuration.SomeTableName'. Please make sure that the property name is correct.". If you see this you will have to resolve this error before continuing to work within Starfish.
|bpm'online Instance URL|
You can add an index to a field to speed up performance, especially if you have a large data migration matching on a custom field.
Open the object via Advanced Settings. Click the + button next to the Indexes header. Give your Index a name and then add the field to it. At least for migration purposes, you'll want to index just your matched field on it's own. Save and publish.
If you already have data in Creatio before creating the index, use the SQL Command console to re-index. The syntax below works for SQL databases:
ALTER INDEX IndexName ON TableName REBUILD
ALTER INDEX IndexUsrSLXId ON Activity REBUILD
In one scenario, indexing this field made the migration job about 4 times faster.