public Winform_PurchaseIndentForm(int _ID)
        {
            InitializeComponent();

            indent = Builders.PurchaseIndentBuilder.GetPurchaseIndent(_ID);
            this.purchaseIndentList = indent.IndentItemsList.ToList();
        }
 public static bool SavePurchaseIndent(PurchaseIndent indent)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         using (var tx = session.BeginTransaction())
         {
             try
             {
                 indent.IndentItemsList.ForEach(x => x.PurchaseIndent = indent);
                 session.SaveOrUpdate(indent);
                 tx.Commit();
                 return true;
             }
             catch (Exception ex)
             {
                 log.Info("Saving Purchase Indent Failed.");
                 log.Error(ex);
                 tx.Rollback();
                 return false;
             }
         }
     }
 }
        protected override void SaveToolStrip_Click(object sender, EventArgs e)
        {
            if (purchaseIndentList != null && purchaseIndentList.Count != 0)
            {
                if (indent == null)
                {
                    indent = new PurchaseIndent();
                    indent.DateOfIndent = dtpIndentDate.Value.Date;
                }

                UpdateStatus("Saving", 50);
                indent.IndentItemsList = purchaseIndentList;
                bool success = Savers.PurchaseIndentSavers.SavePurchaseIndent(indent);

                if (success)
                {
                    UpdateStatus("Purchase Indent Saved", 100);
                    this.Close();
                }
                else
                    UpdateStatus("Error saving Purchase Indent", 100);
            }
        }