Greetings,
We are looking into using Skyline for some of our small molecule processing, and I ran into a rough edge I thought could be improved around managing transition lists. If I graphically build a small molecule transition list in Skyline and export it, Skyline fails to import the list into a new document.
If you follow the below, I was able to manipulate the exported document into a format that Skyline would import, but the workflow is cumbersome for something that feels like it should be natively handled by the GUI.
If you do intend to investigate the issue, I should be clear that my actual interest is in automating the creation of Skyline documents + transition lists through the Skyline Commandline runner. This work through the GUI was just to establish POC.
Skyline Daily 20.1.9.234
To reproduce:
- Start Skyline
- Select Small Molecule workflow
- Edit->Insert-Transition List
- Molecule List Name: aspirin
- Precursor Name: aspirin
- Precursor Formula: C9H8O4
- Precursor Adduct: [M+H]
- Precursor m/z: 181.0495348
- Precursor Charge: 1
 
- Insert molecule
- File->Export->Transition List
- File->New
- File->Import->Transition List
 Results in following error message:
System.IO.InvalidDataException: Failed to find peptide column., line 1. ---> System.IO.InvalidDataException: Failed to find peptide column., line 1. ---> pwiz.Skyline.Model.LineColNumberedIoException: Failed to find peptide column., line 1.
   at pwiz.Skyline.Model.MassListImporter.Import(IProgressMonitor progressMonitor, String sourceFile, ColumnIndices indices, IDictionary`2 dictNameSeq, List`1& irtPeptides, List`1& librarySpectra, List`1& errorList) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\Model\Import.cs:line 485
   at pwiz.Skyline.Model.MassListImporter.Import(IProgressMonitor progressMonitor, String sourceFile, List`1& irtPeptides, List`1& librarySpectra, List`1& errorList) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\Model\Import.cs:line 423
   --- End of inner exception stack trace ---
   at pwiz.Skyline.Model.MassListImporter.Import(IProgressMonitor progressMonitor, String sourceFile, List`1& irtPeptides, List`1& librarySpectra, List`1& errorList) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\Model\Import.cs:line 427
   at pwiz.Skyline.Model.SrmDocument.ImportMassList(MassListInputs inputs, IProgressMonitor progressMonitor, IdentityPath to, IdentityPath& firstAdded, List`1& irtPeptides, List`1& librarySpectra, List`1& errorList, List`1& peptideGroups) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\Model\SrmDocument.cs:line 1454
   at pwiz.Skyline.SkylineWindow.<>c__DisplayClass1079_0.<ImportMassList>b__2(IProgressMonitor longWaitBroker) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\SkylineFiles.cs:line 1925
   at pwiz.Skyline.Controls.LongWaitDlg.RunWork(Action`1 performWork) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\Controls\LongWaitDlg.cs:line 254
   --- End of inner exception stack trace ---
   at pwiz.Skyline.Util.Helpers.WrapAndThrowException(Exception x) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\Util\Util.cs:line 1940
   at pwiz.Skyline.Controls.LongWaitDlg.PerformWork(Control parent, Int32 delayMillis, Action`1 performWork) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\Controls\LongWaitDlg.cs:line 202
   at pwiz.Skyline.Controls.LongWaitDlg.PerformWork(Control parent, Int32 delayMillis, Action`1 performWork) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\Controls\LongWaitDlg.cs:line 140
   at pwiz.Skyline.SkylineWindow.ImportMassList(MassListInputs inputs, String description, Boolean assayLibrary) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\SkylineFiles.cs:line 1923
   at pwiz.Skyline.SkylineWindow.ImportMassList(String fileName) in C:\proj\skyline_20_2_x64\pwiz_tools\Skyline\SkylineFiles.cs:line 1902
Consulting the Help on the "Transition List" window, I attempted to hand-edit the exported CSV to include the columns (MoleculeGroup, PrecursorName, ProductName, PrecursorFormula, ProductFormula, PrecursorMz, ProductMz, PrecursorCharge, ProductCharge, PrecursorAdduct, ProductAdduct, PrecursorRT, PrecursorRTWindow, PrecursorCE, PrecursorDT, HighEnergyDTOffset, PrecursorIM, HighEnergyIMOffset, IMUnits, PrecursorCCS, SLens, ConeVoltage, CompensationVoltage, DeclusteringPotential, Note, LabelType, InChiKey, CAS, HMDB, InChi, SMILES, KEGG, ProductNeutralLoss), added the required data, but this too failed to import. Lastly, I added the suggested columns, filled in the extra data, and deleted the originally exported columns - this worked.
Attached:
- small_molecule_ts_export.csv - failed to import - Skyline small molecule built and exported transition list
- small_molecule_ts_export_extracolumns.csv - failed to import - Skyline small molecule export + manually added suggested columns
- small_molecule_ts_export_extracolumns_only.csv - successful import - Skyline small molecule export + manually added suggested columns only
Thanks for your attention. Happy to give any more details that you require.