void articleChooserViewModel_OnSelect(OITM_Articles obj)
        {
            IsModalVisible = false;

            var detail = new IGE1_GoodsIssueDetail()
            {
                ItemCode = obj.ItemCode,
                Quantity = ArticleChooserViewModel.Quantity,
                UnitMsr  = obj.InvntryUom,
                AcctCode = obj.AccCount,
                // OITM_Articles = obj
                OnHand     = ArticlesHelper.GetOnHandFor(obj.ItemCode),
                Dscription = obj.ItemName,
            };


            ArticleChooserViewModel.CleanFields();


            GoodsIssuesDetails.Add(detail);

            if (SelectedGoodsIssues != null)
            {
                SelectedGoodsIssues.IGE1_GoodsIssueDetail.Add(detail);
            }

            RaisePropertyChanged("GoodsIssuesDetails");

            IsEnabled = GoodsIssuesDetails.Count == 0;
        }
        private bool SaveDetailsChanges(bool forceRefreshItemsource = true)
        {
            if (!ConfirmDialog("Desea Guardar Los Cambios", "Guardar"))
            {
                UndoChanges();
                return(false);
            }

            var isnotValid = GoodsIssuesDetails.ToList().Any(d =>
            {
                if (d.Quantity > d.OnHand)
                {
                    ErrorMessage =
                        string.Format(
                            "El Articulo : {0} Codigo {1} ,Quedara en Negativo",
                            d.Dscription, d.ItemCode);
                    ShowErrorMessageBox(ErrorMessage);
                    return(true);
                }
                else
                {
                    ErrorMessage = string.Empty;
                    return(false);
                }
            });

            if (isnotValid)
            {
                return(false);
            }
            if (SelectedGoodsIssues != null && SelectedGroup != null && SelectedMovement != null)
            {
                var needUpdate = GoodIssuesHelper.SaveDetails(SelectedGoodsIssues, SelectedGroup, SelectedMovement);

                if (needUpdate)
                {
                    GoodsIssuesDetails.ToList().ForEach(d => SelectedGoodsIssues.IGE1_GoodsIssueDetail.Add(d));
                }
            }

            ViewModelManager.CloseModal();
            if (forceRefreshItemsource)
            {
                ForceRefresh = true;
                RaisePropertyChanged("GoodsIssueses");
            }
            return(true);
        }