public T Copy <T>() where T : class, IModel, new()
        {
            T             obj     = new T();
            AccountMaster objdata = obj as AccountMaster;

            objdata.AccountCode   = this.AccountCode;
            objdata.ICode         = this.ICode;
            objdata.AccountName   = this.AccountName;
            objdata.Add1          = this.Add1;
            objdata.Add2          = this.Add2;
            objdata.Add3          = this.Add3;
            objdata.Add4          = this.Add4;
            objdata.CityCode      = this.CityCode;
            objdata.ContactPerson = this.ContactPerson;
            objdata.Phone1        = this.Phone1;
            objdata.Phone2        = this.Phone2;
            objdata.Email         = this.Email;
            objdata.DLNo1         = this.DLNo1;
            objdata.DLNo2         = this.DLNo2;
            objdata.VatTin        = this.VatTin;
            objdata.VatDate       = this.VatDate;
            objdata.CSTVat        = this.CSTVat;
            objdata.CSTVatDate    = this.CSTVatDate;
            objdata.CashDiscount  = this.CashDiscount;
            objdata.BillSeries    = this.BillSeries;
            objdata.BillType      = this.BillType;
            objdata.AccountType   = this.AccountType;
            objdata.GroupCode     = this.GroupCode;
            objdata.VisitDay      = this.VisitDay;
            objdata.InfoID        = this.InfoID;
            objdata.OpBalAmount   = this.OpBalAmount;
            objdata.OpSetAmount   = this.OpSetAmount;
            objdata.BalAmount     = this.BalAmount;
            objdata.CUser         = this.CUser;
            objdata.CDateTime     = this.CDateTime;
            objdata.EUser         = this.EUser;
            objdata.EDateTime     = this.EDateTime;
            objdata.LCode         = this.LCode;
            objdata.DLock         = this.DLock;
            objdata.ChequeName    = this.ChequeName;
            objdata.LBT           = this.LBT;
            objdata.LBTNo         = this.LBTNo;
            objdata.LBTCat        = this.LBTCat;
            objdata.DueDay        = this.DueDay;
            objdata.MailFormat    = this.MailFormat;
            objdata.CreatedBy     = this.CreatedBy;
            objdata.CreatedDate   = this.CreatedDate;
            objdata.LUT           = this.LUT;
            objdata.UpdateddBy    = this.UpdateddBy;
            objdata.UpdatedDate   = this.UpdatedDate;
            objdata.UpdatedCount  = this.UpdatedCount;
            return(obj);
        }
        public void Clone <T>(T obj) where T : class, IModel
        {
            AccountMaster objdata = obj as AccountMaster;

            this.AccountCode   = objdata.AccountCode;
            this.ICode         = objdata.ICode;
            this.AccountName   = objdata.AccountName;
            this.Add1          = objdata.Add1;
            this.Add2          = objdata.Add2;
            this.Add3          = objdata.Add3;
            this.Add4          = objdata.Add4;
            this.CityCode      = objdata.CityCode;
            this.ContactPerson = objdata.ContactPerson;
            this.Phone1        = objdata.Phone1;
            this.Phone2        = objdata.Phone2;
            this.Email         = objdata.Email;
            this.DLNo1         = objdata.DLNo1;
            this.DLNo2         = objdata.DLNo2;
            this.VatTin        = objdata.VatTin;
            this.VatDate       = objdata.VatDate;
            this.CSTVat        = objdata.CSTVat;
            this.CSTVatDate    = objdata.CSTVatDate;
            this.CashDiscount  = objdata.CashDiscount;
            this.BillSeries    = objdata.BillSeries;
            this.BillType      = objdata.BillType;
            this.AccountType   = objdata.AccountType;
            this.GroupCode     = objdata.GroupCode;
            this.VisitDay      = objdata.VisitDay;
            this.InfoID        = objdata.InfoID;
            this.OpBalAmount   = objdata.OpBalAmount;
            this.OpSetAmount   = objdata.OpSetAmount;
            this.BalAmount     = objdata.BalAmount;
            this.CUser         = objdata.CUser;
            this.CDateTime     = objdata.CDateTime;
            this.EUser         = objdata.EUser;
            this.EDateTime     = objdata.EDateTime;
            this.LCode         = objdata.LCode;
            this.DLock         = objdata.DLock;
            this.ChequeName    = objdata.ChequeName;
            this.LBT           = objdata.LBT;
            this.LBTNo         = objdata.LBTNo;
            this.LBTCat        = objdata.LBTCat;
            this.DueDay        = objdata.DueDay;
            this.MailFormat    = objdata.MailFormat;
            this.CreatedBy     = objdata.CreatedBy;
            this.CreatedDate   = objdata.CreatedDate;
            this.LUT           = objdata.LUT;
            this.UpdateddBy    = objdata.UpdateddBy;
            this.UpdatedDate   = objdata.UpdatedDate;
            this.UpdatedCount  = objdata.UpdatedCount;
        }