Surprisingly, there have been few complaints in a long time. We did have to put some extra work into CE optimization for Waters because of this, giving each transition a separate name to allow for the fact that there may be 11 or more chromatograms per transition. In that case, we write a separate "compound" for each CE level or "step".
But, Waters also has a 512 ID limit. So, we also need to be careful not to over separate transitions into different "compounds".
The current code looks like this:
// Write special ID to ensure 1-to-1 relationship between this ID and precursor m/z
// Better to use one ID per peptide molecular structure, as Waters has a 512 ID limit
// and this allows for 512 peptide charge states and not just 512 precursors.
var compound = GetCompound(nodePep, nodeTranGroup);
compound += '.'; // Not L10N
compound += nodeTranGroup.PrecursorAdduct.AsFormulaOrInt();
if (step != 0)
{
compound += '.'; // Not L10N
compound += step.ToString(CultureInfo);
}
And generates a field like <modified sequence>.<charge>[.<step>]
Do you have a suggestion for how we might change this to support your need?
I suppose we could add a range specifier when necessary, like:
PEPT[+80]IDER.2.1-32
PEPT[+80]IDER.2.33-51
Do you think that would work? Probably, I would need to be able to provide you with a possible fix and have you tell me if it works for you, because I do not have the Waters software to reproduce this.
Thanks for posting to the Skyline support board. Sorry for the long wait on a response.
--Brendan