docs: public Converter getTargetField(Record record)
      {
          if (record == null)
          {
              BaseTable currentTable = m_recMerge.getTable().getCurrentTable();
              if (currentTable == null)
                  currentTable = m_recMerge.getTable();    // First time only
              record = currentTable.getRecord();
          }
          Converter field = null;
          if (fieldName != null)
              field = record.getField(fieldName);  // Get the current field
          else
              field = record.getField(m_iFieldSeq);  // Get the current field
          if ((m_iSecondaryFieldSeq != -1) || (secondaryFieldName != null))
              if (field instanceof ReferenceField)
              	if (((ReferenceField)field).getRecord() != null)
                  	if (((ReferenceField)field).getRecord().getTable() != null)		// Make sure this isn't being called in free()
          {   // Special case - field in the secondary file
              Record recordSecond = ((ReferenceField)field).getReferenceRecord();
              if (recordSecond != null)
              {
                  if (secondaryFieldName != null)
                      field = recordSecond.getField(secondaryFieldName);
                  else
                      field = recordSecond.getField(m_iSecondaryFieldSeq);
              }
          }
          return field;
      }