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;
        }
        public InformeCobrosRpt GetInformeCobrosReport(CobroFacturaList list, OutputInvoiceList facturas)
        {
            InformeCobrosRpt doc = new InformeCobrosRpt();

            List <CobroFacturaPrint> pList = new List <CobroFacturaPrint>();

            foreach (CobroFacturaInfo item in list)
            {
                pList.Add(CobroFacturaPrint.New(item, null, facturas.GetItem(item.OidFactura)));
            }

            if (pList.Count == 0)
            {
                return(null);
            }

            doc.SetDataSource(pList);

            FormatHeader(doc);

            return(doc);
        }