protected override void UpdateFacturasCobro()
        {
            if (Datos_Cobros.Current == null)
            {
                Datos_FCobro.DataSource = null;
                return;
            }

            Charge cobro = (Charge)Datos_Cobros.Current;

            List <OutputInvoiceInfo> lista = new List <OutputInvoiceInfo>();

            foreach (CobroFactura cf in cobro.CobroFacturas)
            {
                OutputInvoiceInfo info = _facturas_cliente.GetItem(cf.OidFactura);
                if (info != null)
                {
                    lista.Add(info);
                }
            }

            Datos_FCobro.DataSource = OutputInvoiceList.GetChildList(lista);

            SetUnlinkedGridValues(Facturas_DGW.Name);
        }
Exemple #2
0
        public void OutputInvoiceListHasItems()
        {
            OutputInvoiceList list = null;

            list = OutputInvoiceList.GetList(2014, false);
            Assert.IsTrue(list.Count > 0);
        }
Exemple #3
0
        protected virtual void LoadIncomes(long oidExpediente)
        {
            if (_facturas_ingresos_list != null)
            {
                return;
            }

            try
            {
                PgMng.Reset(3, 1, Face.Resources.Messages.LOADING_DATA, this);

                _facturas_ingresos_list    = OutputInvoiceList.GetByExpedienteList(oidExpediente, false);
                Datos_FIngresos.DataSource = _facturas_ingresos_list;
                PgMng.Grow();

                TotalPendienteFacturasE_NTB.Text  = _facturas_ingresos_list.TotalPendiente().ToString("N2");
                TotalFacturasE_NTB.Text           = _facturas_ingresos_list.Total().ToString("N2");
                TotalExpedienteFacturasE_NTB.Text = _facturas_ingresos_list.TotalExpediente().ToString("N2");

                BePurchases_NTB.Text = TotalExpedienteFacturasE_NTB.DecimalValue.ToString("C2");

                _conceptos_ingresos_list   = OutputInvoiceLineList.GetByExpedienteList(oidExpediente, false);
                Datos_CIngresos.DataSource = _conceptos_ingresos_list;
                PgMng.Grow();

                CalculateBeneficios();
            }
            finally
            {
                PgMng.FillUp();
            }
        }
        protected override void PrintAction()
        {
            PgMng.Reset(5, 1, Face.Resources.Messages.RETRIEVING_DATA, this);

            Library.Invoice.QueryConditions conditions = new Library.Invoice.QueryConditions();

            conditions.Cliente   = TodosCliente_CkB.Checked ? null : _cliente;
            conditions.Serie     = TodosSerie_CkB.Checked ? null : _serie;
            conditions.MedioPago = MedioPago_CB.SelectedValue != null ? (EMedioPago)(long)MedioPago_CB.SelectedValue : EMedioPago.Todos;
            conditions.FechaIni  = FInicial_DTP.Checked ? FInicial_DTP.Value : DateTime.MinValue;
            conditions.FechaFin  = FFinal_DTP.Checked ? FFinal_DTP.Value : DateTime.MaxValue;

            string filtro = GetFilterValues();

            PgMng.Grow();

            OutputInvoiceList facturas = OutputInvoiceList.GetList(conditions, false);

            PgMng.Grow();
            CobroFacturaList cobros = CobroFacturaList.GetList(conditions);

            PgMng.Grow(Face.Resources.Messages.BUILDING_REPORT);

            CobroReportMng   reportMng = new CobroReportMng(AppContext.ActiveSchema, this.Text, filtro);
            InformeCobrosRpt rpt       = reportMng.GetInformeCobrosReport(cobros, facturas);

            PgMng.FillUp();

            ShowReport(rpt);

            _action_result = DialogResult.Ignore;
        }
Exemple #5
0
        protected override void RefreshMainData()
        {
            Datos_Facturas.DataSource = OutputInvoiceList.GetByCobroAndNoCobradasByClienteList(_entity.Oid, _cliente.Oid, true).GetSortedList();
            PgMng.Grow();

            base.RefreshMainData();
        }
Exemple #6
0
        public void SetReadOnly()
        {
            Source_GB.Enabled   = false;
            Facturas_GB.Enabled = false;
            Submit_BT.Enabled   = false;

            Datos_Facturas.DataSource = OutputInvoiceList.GetByCobroList(_entity.Oid, true);
        }
Exemple #7
0
        public void OutputInvoiceListNotIsNull()
        {
            OutputInvoiceList list = null;

            list = OutputInvoiceList.GetList(2015, false);
            Assert.IsNotNull(list);
            Assert.AreEqual(list.Count, 0);
        }
Exemple #8
0
        public InvoiceSelectForm(Form parent, OutputInvoiceList lista, ETipoFacturas tipo)
            : base(true, parent, lista, tipo)
        {
            InitializeComponent();
            _view_mode = molView.Select;

            _action_result = DialogResult.Cancel;
        }
Exemple #9
0
        protected virtual void PrintPendienteListAction()
        {
            OutputInvoiceReportMng reportMng = new OutputInvoiceReportMng(AppContext.ActiveSchema, Resources.Labels.FACTURA_PENDIENTES, "Cliente = " + Entity.Nombre);

            ReportClass report = reportMng.GetListReport(OutputInvoiceList.GetList(Datos_FPendientes.DataSource as IList <OutputInvoiceInfo>),
                                                         SerieList.GetList(false));

            ShowReport(report);
        }
Exemple #10
0
        public void OutputInvoiceListHasItemsOnlyFromAClient()
        {
            OutputInvoiceList list       = null;
            QueryConditions   conditions = new QueryConditions {
                Cliente = ClienteInfo.New(1)
            };

            list = OutputInvoiceList.GetList(conditions, false);
            Assert.IsNull(list.FirstOrDefault(x => x.OidCliente != conditions.Cliente.Oid));
        }
Exemple #11
0
        public void OutputInvoiceListHasItemsOnlyFromASerie()
        {
            OutputInvoiceList list       = null;
            QueryConditions   conditions = new QueryConditions {
                Serie = SerieInfo.New(1)
            };

            list = OutputInvoiceList.GetList(conditions, false);
            Assert.IsNull(list.FirstOrDefault(x => x.OidSerie != conditions.Serie.Oid));
        }
        protected void SelectInvoiceAction()
        {
            OutputInvoiceList list = OutputInvoiceList.GetByClienteList(_source_client.Oid, false);
            InvoiceSelectForm form = new InvoiceSelectForm(this, list, ETipoFacturas.Todas);

            if (form.ShowDialog(this) == DialogResult.OK)
            {
                SetSourceInvoices(form.Selected as List <OutputInvoiceInfo>);
            }
        }
        public override void UpdateList()
        {
            switch (_current_action)
            {
            case molAction.Add:
            case molAction.Copy:
                if (_entity == null)
                {
                    return;
                }
                List.AddItem(_entity.GetInfo(false));
                if (FilterType == IFilterType.Filter)
                {
                    OutputInvoiceList listA = OutputInvoiceList.GetList((SortedBindingList <OutputInvoiceInfo>)_filter_results);
                    listA.AddItem(_entity.GetInfo(false));
                    _filter_results = listA.GetSortedList();
                }
                break;

            case molAction.Edit:
            case molAction.ChangeStateContabilizado:
            case molAction.ChangeStateEmitido:
            case molAction.Unlock:
            case molAction.PrintDetail:
            case molAction.ExportPDF:
            case molAction.EmailPDF:
                if (_entity == null)
                {
                    return;
                }
                ActiveItem.CopyFrom(_entity);
                break;

            case molAction.Delete:
                if (ActiveItem == null)
                {
                    return;
                }
                List.RemoveItem(ActiveOID);
                if (FilterType == IFilterType.Filter)
                {
                    OutputInvoiceList listD = OutputInvoiceList.GetList((SortedBindingList <OutputInvoiceInfo>)_filter_results);
                    listD.RemoveItem(ActiveOID);
                    _filter_results = listD.GetSortedList();
                }
                break;
            }

            RefreshSources();
            if (_entity != null)
            {
                Select(_entity.Oid);
            }
            _entity = null;
        }
Exemple #14
0
        public static OutputInvoiceListViewModel Get(OutputInvoiceList sourceList)
        {
            OutputInvoiceListViewModel list = new OutputInvoiceListViewModel();

            foreach (OutputInvoiceInfo item in sourceList)
            {
                list.Add(OutputInvoiceViewModel.New(item));
            }

            return(list);
        }
Exemple #15
0
        protected virtual void SetUnlinkedGridValues(string grid_name)
        {
            SortedBindingList <OutputInvoiceInfo> sorted_facturas = Datos_Facturas.DataSource as SortedBindingList <OutputInvoiceInfo>;

            if (sorted_facturas != null)
            {
                OutputInvoiceList facturas = OutputInvoiceList.GetList(sorted_facturas);
                facturas.UpdateCobroValues(_entity);
            }
            UpdateAsignado();
        }
        protected override void RefreshMainData()
        {
            PgMng.Grow(string.Empty, "FacturaMngForm::RefreshMainData INI");

            _selectedOid = ActiveOID;

            switch (DataType)
            {
            case EntityMngFormTypeData.Default:
                switch (_tipo)
                {
                case ETipoFacturas.Todas:
                    if (Library.Common.ModulePrincipal.GetUseActiveYear())
                    {
                        List = OutputInvoiceList.GetList(Library.Common.ModulePrincipal.GetActiveYear().Year, false);
                    }
                    else
                    {
                        List = OutputInvoiceList.GetList(false);
                    }
                    break;

                case ETipoFacturas.Cobradas:
                    if (Library.Common.ModulePrincipal.GetUseActiveYear())
                    {
                        List = OutputInvoiceList.GetCobradasList(Library.Common.ModulePrincipal.GetActiveYear().Year, false);
                    }
                    else
                    {
                        List = OutputInvoiceList.GetCobradasList(false);
                    }
                    break;

                case ETipoFacturas.Pendientes:
                    if (Library.Common.ModulePrincipal.GetUseActiveYear())
                    {
                        List = OutputInvoiceList.GetNoCobradasList(Library.Common.ModulePrincipal.GetActiveYear().Year, false);
                    }
                    else
                    {
                        List = OutputInvoiceList.GetNoCobradasList(false);
                    }
                    break;
                }
                break;

            case EntityMngFormTypeData.ByParameter:
                _sorted_list = List.GetSortedList();
                break;
            }

            PgMng.Grow(string.Empty, "FacturaMngForm::RefreshMainData END");
        }
        public override void PrintList()
        {
            PgMng.Reset(3, 1, Face.Resources.Messages.LOADING_DATA, this);

            OutputInvoiceReportMng reportMng = new OutputInvoiceReportMng(AppContext.ActiveSchema, this.Text, this.FilterValues);

            PgMng.Grow(Face.Resources.Messages.BUILDING_REPORT);

            ReportClass report = reportMng.GetListReport(OutputInvoiceList.GetList(Datos.DataSource as IList <OutputInvoiceInfo>),
                                                         SerieList.GetList(false));

            PgMng.FillUp();

            ShowReport(report);
        }
        protected override void RefreshAction()
        {
            Charge current = Cobro;

            _facturas_cliente       = OutputInvoiceList.GetByClienteList(_entity.Oid, false);
            Datos_Cobros.DataSource = _entity.Cobros.GetSortedList("IdCobro", ListSortDirection.Descending);
            Cobros_DGW.Refresh();
            UpdateFacturasPendientes();
            UpdateFacturasCobro();

            _resumen.Refresh(_entity);
            Datos_Resumen.ResetBindings(false);

            SetGridColors(Cobros_DGW.Name);
            SetGridColors(Facturas_DGW.Name);

            Select(current);
        }
        public InvoiceMngForm(bool isModal, Form parent, OutputInvoiceList list, ETipoFacturas tipo)
            : base(isModal, parent, list)
        {
            InitializeComponent();

            // Parche para poder abrir el formulario en modo diseño y no perder la configuracion de columnas
            DatosLocal_BS    = Datos;
            Tabla.DataSource = DatosLocal_BS;

            SetMainDataGridView(Tabla);
            Datos.DataSource = OutputInvoiceList.NewList().GetSortedList();
            SortProperty     = Fecha.DataPropertyName;
            SortDirection    = ListSortDirection.Descending;

            _tipo = tipo;

            SetView(molView.Normal);
        }
        protected virtual void LoadIncomes(bool reload = false)
        {
            LoadIncomes(EntityInfoNoChilds.Oid);

            if (_works_output_invoices == null || reload)
            {
                try
                {
                    PgMng.Reset(3, 1, Face.Resources.Messages.LOADING_DATA, this);

                    _works_output_invoices = OutputInvoiceList.GetByExpedienteList(EntityInfo.Relations.ToChildsOidList(), false);
                    PgMng.Grow();

                    BeWorksPurchases_NTB.Text = (_works_output_invoices != null) ? _works_output_invoices.TotalExpediente().ToString("C2") : (0).ToString("C2");

                    CalculateBeneficios();
                }
                finally
                {
                    PgMng.FillUp();
                }
            }
        }
        protected override void PrintAction()
        {
            PgMng.Reset(5, 1, Face.Resources.Messages.RETRIEVING_DATA, this);

            Library.Invoice.QueryConditions conditions = new Library.Invoice.QueryConditions();

            conditions.Cliente   = TodosCliente_CkB.Checked ? null : _cliente;
            conditions.Serie     = TodosSerie_CkB.Checked ? null : _serie;
            conditions.MedioPago = MedioPago_CB.SelectedValue != null ? (EMedioPago)(long)MedioPago_CB.SelectedValue : EMedioPago.Todos;
            conditions.FechaIni  = FInicial_DTP.Checked ? FInicial_DTP.Value : DateTime.MinValue;
            conditions.FechaFin  = FFinal_DTP.Checked ? FFinal_DTP.Value : DateTime.MaxValue;

            string filter = GetFilterValues();

            PgMng.Grow();

            OutputInvoiceList in_invoices = OutputInvoiceList.GetList(conditions, false);

            PgMng.Grow();
            ProductList products = ProductList.GetList(false);

            PgMng.Grow();
            ExpedienteList expedients = ExpedienteList.GetList(false);

            PgMng.FillUp();

            PgMng.Reset(in_invoices.Count + 2, 1, Face.Resources.Messages.RETRIEVING_DATA, this);

            Dictionary <long, ClientProductList> client_products = new Dictionary <long, ClientProductList>();

            foreach (OutputInvoiceInfo in_invoice in in_invoices)
            {
                in_invoice.LoadChilds(typeof(OutputInvoiceLine), false);

                decimal invoice_cost = 0;

                foreach (OutputInvoiceLineInfo line in in_invoice.ConceptoFacturas)
                {
                    ProductInfo product = products.GetItem(line.OidProducto);

                    if (product.BeneficioCero)
                    {
                        if (!client_products.ContainsKey(in_invoice.OidCliente))
                        {
                            client_products.Add(in_invoice.OidCliente, ClientProductList.GetByClientList(in_invoice.OidCliente, false));
#if TRACE
                            AppControllerBase.AppControler.Timer.Record("Productos del Cliente");
#endif
                        }
                        ProductoClienteInfo product_client = client_products[in_invoice.OidCliente].GetByProducto(line.OidProducto);

                        if (product_client != null)
                        {
                            invoice_cost += product_client.PrecioCompra;
                        }
                        else
                        {
                            invoice_cost += line.Subtotal;
                        }
                    }
                    else
                    {
                        if (line.OidPartida != 0)
                        {
                            ExpedientInfo expedient = expedients.GetItem(line.OidExpediente);

                            if (expedient != null)
                            {
                                if (expedient.Partidas == null)
                                {
                                    expedient.LoadExpenses(Estimated_CB.Checked);
#if TRACE
                                    AppControllerBase.AppControler.Timer.Record("Gastos del Expediente");
#endif
                                }

                                BatchInfo batch = expedient.Partidas.GetItem(line.OidPartida);
                                invoice_cost += line.CantidadKilos * batch.CosteNetoKg;
                            }
                            else
                            {
                                invoice_cost += line.CantidadKilos * product.PrecioCompra;
                            }
                        }
                        else
                        {
                            invoice_cost += (product != null) ? line.CantidadKilos * product.PrecioCompra : 0;
                        }
                    }
                }

                in_invoice.PrecioCoste = invoice_cost;
                in_invoice.Beneficio   = Decimal.Round(in_invoice.BaseImponible - in_invoice.PrecioCoste, 2);
                in_invoice.PBeneficio  = in_invoice.PrecioCoste != 0 ? Decimal.Round(((in_invoice.BaseImponible - in_invoice.PrecioCoste) * 100) / in_invoice.PrecioCoste, 2) : 0;

                PgMng.Grow();
            }

            client_products.Clear();

            PgMng.Grow(Face.Resources.Messages.BUILDING_REPORT);

            OutputInvoiceReportMng reportMng = new OutputInvoiceReportMng(AppContext.ActiveSchema, this.Text, filter);
            ReportClass            rpt       = reportMng.GetBenefitsReport(in_invoices);
            PgMng.FillUp();

            ShowReport(rpt);

            _action_result = DialogResult.Ignore;
        }
 protected override void UpdateFacturasPendientes()
 {
     Datos_FPendientes.DataSource = OutputInvoiceList.GetNoCobradasByClienteList(_entity.Oid, false);
     SetUnlinkedGridValues(Pendientes_DGW.Name);
 }
 public override void RefreshSecondaryData()
 {
     _facturas_cliente = OutputInvoiceList.GetByClienteList(_entity.Oid, false);
     PgMng.Grow(string.Empty, "Facturas del Cliente");
 }