private String encodeNASMessage() {
    String dataString = "";
    if (DataCollection.count() == 0) return dataString;

    Go_mdt_hcpsRecord data = (Go_mdt_hcpsRecord) DataCollection.get(0);

    if (EditFilter.IncludeGo_mdt_hcps_id) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "GO_MDT_HCPS_ID"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Go_mdt_hcps_id);
    }

    if (EditFilter.IncludePkey) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "PKEY"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Pkey);
    }

    if (EditFilter.IncludeRdat) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "RDAT"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Rdat);
    }

    if (EditFilter.IncludeRtim) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "RTIM"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Rtim);
    }

    if (EditFilter.IncludeRhcp) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "RHCP"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Rhcp);
    }

    if (EditFilter.IncludeRusr) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "RUSR"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Rusr);
    }

    if (EditFilter.IncludeUdat) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "UDAT"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Udat);
    }

    if (EditFilter.IncludeUtim) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "UTIM"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Utim);
    }

    if (EditFilter.IncludeUhcp) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "UHCP"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Uhcp);
    }

    if (EditFilter.IncludeUusr) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "UUSR"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Uusr);
    }

    if (EditFilter.IncludeCdat) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "CDAT"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Cdat);
    }

    if (EditFilter.IncludeCtim) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "CTIM"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Ctim);
    }

    if (EditFilter.IncludeModu) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "MODU"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Modu);
    }

    if (EditFilter.IncludeCcs_epid) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "CCS_EPID"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Ccs_epid);
    }

    if (EditFilter.IncludeActind) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "ACTIND"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Actind);
    }

    if (EditFilter.IncludeTstp) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "TSTP"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Tstp);
    }

    if (EditFilter.IncludeSession_id) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "SESSION_ID"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Session_id);
    }

    if (EditFilter.IncludeSessiond_id) {
      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "SESSIOND_ID"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(data.Sessiond_id);
    }

    for (int x = 0; x < data.SeqnoCollection.count(); x++) {
      Go_mdt_hcpsSeqnoRecord rgRecord = (Go_mdt_hcpsSeqnoRecord) data.SeqnoCollection.get(x);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "SEQNO"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Seqno);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "ATTATTENDED"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Attattended);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "ATTDECLINED"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Attdeclined);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "ATTCONFIRMED"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Attconfirmed);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "METHODINFORMED"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Methodinformed);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "DATEINFORMED"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Dateinformed);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "HCP_TXT"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Hcp_txt);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "HCP_ID"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Hcp_id);

      if (dataString.length() > 0) dataString += ims.dto.NASMessageCodes.PAIRSEPARATOR;
      dataString +=
          "CT_EXT_FLAG"
              + ims.dto.NASMessageCodes.ATTRIBUTEVALUESEPARATOR
              + Connection.encodeFieldValue(rgRecord.Ct_ext_flag);
    }

    return dataString;
  }