public virtual bool PrepareImportRow(string viewName, IDictionary keys, IDictionary values)
 {
     if (viewName.Equals(nameof(RelatedItems), StringComparison.InvariantCultureIgnoreCase) && !DontUpdateExistRecords)
     {
         if (_duplicateFinder == null)
         {
             var items = RelatedItems.SelectMain();
             _duplicateFinder = new DuplicatesSearchEngine <INRelatedInventory>(RelatedItems.Cache, GetAlternativeKeyFields(), items);
         }
         var duplicate = _duplicateFinder.Find(values);
         if (duplicate != null)
         {
             if (keys.Contains(nameof(INRelatedInventory.LineID)))
             {
                 keys[nameof(INRelatedInventory.LineID)] = duplicate.LineID;
             }
             else
             {
                 keys.Add(nameof(INRelatedInventory.LineID), duplicate.LineID);
             }
         }
     }
     return(true);
 }
 public virtual void ImportDone(PXImportAttribute.ImportMode.Value mode)
 {
     _duplicateFinder = null;
 }