public List <SCItem> Convert(SCItem scItem, Guid destParentId) { _itemMetadataTemplate = _metadataProvider.GetItemMetadataByTemplateId(scItem.TemplateID); if (_itemMetadataTemplate.sourceMappingFieldId != null && _itemMetadataTemplate.sourceMappingFieldId != Guid.Empty) { var sourceMappingFieldValue = scItem.Fields .FirstOrDefault(f => f.FieldId == _itemMetadataTemplate.sourceMappingFieldId)?.Value; var mappedMetadataTemplate = _metadataProvider.GetItemMetadataBySourceMappingFieldValue(sourceMappingFieldValue); if (mappedMetadataTemplate != null) { _itemMetadataTemplate = mappedMetadataTemplate; } else { // Add record in conversion analysis _conversionReporter.AddUnmappedFormFieldItem(scItem.ID, sourceMappingFieldValue); } } List <SCItem> destItems = ConvertItemAndFields(scItem, destParentId); return(destItems); }