public virtual void Copy(CDatM pDatM)
        {
            trace.Write(TraceLevel.Debug, "CDatM::Copy");

            try
            {
                if (pDatM == null)
                {
                    throw new ArgumentNullException(nameof(pDatM));
                }

                m_strIDMsg = pDatM.m_strIDMsg;
                // Header
                m_dwTelID = pDatM.m_dwTelID;
                // Message Attributtes
                m_iIdentifier = pDatM.m_iIdentifier;
                m_iRet        = pDatM.m_iRet;
                m_iPriority   = pDatM.m_iPriority;
                m_iInUnit     = pDatM.m_iInUnit;

                // SAX
                m_bTagAtt = pDatM.m_bTagAtt;

                m_iTelType = pDatM.m_iTelType;
                m_iMxType  = pDatM.m_iMxType;
                m_iNbError = pDatM.m_iNbError;

                m_dtHdDate = pDatM.m_dtHdDate.Copy();

                m_szHdSrc    = pDatM.m_szHdSrc;
                m_szDst      = pDatM.m_szDst;
                m_szTagValue = pDatM.m_szTagValue;
                m_szTagName  = pDatM.m_szTagName;

                m_pStatColl = pDatM.m_pStatColl;
            }
            catch (Exception error)
            {
                trace.Write(TraceLevel.Error, error.ToLogString());
            }
        }
 public virtual bool Compare(CDatM pDatM)
 {
     return(true);
 }