Esempio n. 1
0
        internal static DataTotalLoss LoadFromXml(System.Xml.XmlNode props, DataBase par, ReceptVersion curVer)
        {
            DataTotalLoss curRec = new DataTotalLoss(par);

            curRec.BeginUpdate();
            switch (curVer)
            {
            case ReceptVersion.Version0:
                foreach (XmlNode curNode in props.ChildNodes)
                {
                    switch (curNode.Name)
                    {
                    case "number": curRec.Id = int.Parse(curNode.InnerText, CultureInfo.CurrentCulture); break;

                    case "name": curRec.Name = curNode.InnerText; break;

                    case "value": curRec.Quantity = Convert.ToDecimal(curNode.InnerText, CultureInfo.CurrentCulture); break;

                    case "comment": curRec.Comment = curNode.InnerText; break;
                    }
                }
                break;

            case ReceptVersion.Version1:
                curRec.Id = int.Parse(props.Attributes["id"].Value, CultureInfo.CurrentCulture);

                foreach (XmlNode curnode in props.ChildNodes)
                {
                    switch (curnode.Name)
                    {
                    case "comment": curRec.Comment = curnode.InnerText; break;

                    case "name": curRec.Name = curnode.InnerText; break;

                    case "quantity": curRec.Quantity = Convert.ToDecimal(curnode.InnerText, CultureInfo.CurrentCulture); break;
                    }
                }
                break;

            default:
                throw new NotImplementedException("Not implemented");
            }
            curRec.IsChanged = false;
            curRec.EndUpdate(false);
            DataTotalLoss ret = Config.DP.FindTotalLoss(curRec);

            if (ret == null)
            {
                FormCompare frm = new FormCompare(curRec, Config.DP.FindSimilarTotalLoss(curRec), DataBaseType.TotalLossType);
                frm.ShowDialog();
                ret           = (DataTotalLoss)frm.UserRec;
                ret.IsChanged = true;
            }
            else
            {
                ret.IsChanged = false;
            }
            return(ret);
        }
Esempio n. 2
0
        public object Clone()
        {
            DataTotalLoss ret = new DataTotalLoss(this.Parent);

            ret.BeginUpdate();
            ret.Id        = this.Id;
            ret.Name      = this.Name;
            ret.Quantity  = this.Quantity;
            ret.Comment   = this.Comment;
            ret.IsChanged = this.IsChanged;
            ret.EndUpdate(false);
            return(ret);
            //throw new Exception("The method or operation is not implemented.");
        }