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); }
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."); }