protected override bool InternalExecute(ProcessExecutingContext context)
 {
     RecordId = Guid.Empty;
     if (EntitySchemaId.Equals(Guid.Empty))
     {
         return(true);
     }
     if (FilterEntitySchemaId != Guid.Empty)
     {
         Dictionary <string, string> entityColumnMap = null;
         var filterResultEntityCollection            = GetFilterResultEntityCollection(out entityColumnMap);
         foreach (var filterResultEntity in filterResultEntityCollection)
         {
             var newEntity = GetNewEntity();
             if (newEntity == null)
             {
                 return(true);
             }
             FillRowWithDataByFilter(newEntity, filterResultEntity, entityColumnMap);
             newEntity.Save(false);
         }
     }
     else
     {
         var newEntity = GetNewEntity();
         if (newEntity == null)
         {
             return(true);
         }
         FillRowWithData(newEntity);
         newEntity.Save(false);
         RecordId = newEntity.PrimaryColumnValue;
     }
     return(true);
 }