public void SaveNewChanges(bool isAsync = false)
        {
            if (!isAsync)
            {
                if (!ConfirmDialog("Desea Guardar Los Cambios", "Guardar"))
                {
                    UndoChanges();
                    return;
                }
            }

            var needUpdate = GoodsReceiptHelper.SaveNewDetailsCommand(SelectedGoodsReceipt, SelectedGroup, SelectedMovement);

            if (needUpdate)
            {
                GoodsReceiptsDetails.ToList().ForEach(d => SelectedGoodsReceipt.IGN1_GoodsReceiptDetail.Add(d));
            }

            if (!isAsync)
            {
                ViewModelManager.CloseModal();
                ForceRefresh = true;
                RaisePropertyChanged("GoodsReceipts");
            }
        }
        private void Process()
        {
            IsBusy = true;

            if (SelectedGoodsReceipt == null || !ConfirmDialog("Confirma que desea procesar", "Confimar"))
            {
                UndoChanges();
                return;
            }
            ViewModelManager.CloseModal();
            ShowProcessLoader(this);
            AsyncHelper.DoAsync(() =>
            {
                GoodsReceiptHelper.SaveNewDetailsCommand(SelectedGoodsReceipt, SelectedGroup, SelectedMovement);
                SaveChanges();
                Synchronization.Synchronize(SelectedGoodsReceipt);
                ForceRefresh = true;
                RaisePropertyChanged("GoodsReceipts");
                IsBusy = false;
            }, ViewModelManager.CloseProcessLoader);
        }