In our project, we create a package like so:
<Package
Name="<PACKAGE_NAME>"
Id="<CONSTANT_GUID>"
<Variables>
<Variable
Name="<VARIABLE_NAME>"
Id="<CONSTANT_GUID>"
DataType="Int32"
</Variable>
</Variables>
<Parameters>
<Parameter
Name="<PARAMETER_NAME>"
Id="00000000-0000-0000-0000-000000000001"
DataType="Int32">0</Parameter>
</Parameters>
[...]
Now, the Id for the package, as well as the variable, is being printed out as declared. However the parameter Id is still being randomly generated:
<DTS:Executable
[...]
DTS:DTSID="00000000-0000-0000-0000-000000000001"
[...]
<DTS:Property
DTS:Name="PackageFormatVersion">8</DTS:Property>
<DTS:PackageParameters>
<DTS:PackageParameter
[...]
DTS:DTSID="{86BC849B-6B60-481E-89F7-53B31775016A}" <- != "00000000-0000-0000-0000-000000000001"
DTS:ObjectName="<PARAMETER_NAME>"
[...]
<DTS:Property
DTS:DataType="3"
DTS:Name="ParameterValue">0</DTS:Property>
</DTS:PackageParameter>
</DTS:PackageParameters>
<DTS:Variables>
<DTS:Variable
[...]
DTS:DTSID="00000000-0000-0000-0000-000000000001"
[...]
DTS:ObjectName="<VARIABLE_NAME>"
<DTS:VariableValue
DTS:DataType="3">0</DTS:VariableValue>
</DTS:Variable>
</DTS:Variables>
[...]
Now, I dont see at which point this could be overwritten, unless there is some internal logic that permits the user from setting a package parameter id, but according to the documentation, it should be possible. Still, the logic on our side is so straight forward that it has to be another issue, I feel like. Really grasping for straws at this point.
Any help is appreciated