Search code examples
sqlfunctionmigrationc1-cms

Composite C1 - Migrating SQL functions to another C1


I have one instance of Composite C1 running. I want to migrate some functions (SQL functions) to another instance of C1. The problem is that the SQL functions cannot be added to a package (as i could do with a Razor or C# function).


Solution

  • At this moment, Package Creator doesn't support exporting SQL functions to packages like any other types of C1 functions.

    I've created a feature request with Composite C1 where you (and others) can upvote this feature request: https://compositec1.codeplex.com/workitem/1825

    In the meantime, unless you use input parameters on SQL Functions, you can try and manually copy these files that store your existing SQL Functions' settings and see if they will work like that:

    • Composite.Data.Types.ISqlConnection_Published.xml
    • Composite.Data.Types.ISqlFunctionInfo_Published.xml

    The first one has info on your SQL connections created in "Functions", the seconf one is the info on the SQL queries created within those connections.

    If you are using parameters on SQL functions, this will not work unless you manually transfer corresponding parameter info entries from one website to the other in this file:

    • Composite.Data.Types.IParameter_Published.xml

    This is feasable, too, but very challenging and prone to errors - and you may end up creating SQL functions anew rather than trying to figure out proper entries for the input parameters.