コード例 #1
0
        private void Cobrar_factura(string IdFactura)
        {
            //abrir un formulario de cobro sobre IdFactura
            string gIdent = this.GetType().FullName + " " + System.Reflection.MethodBase.GetCurrentMethod().Name + " ";

            GloblaVar.gUTIL.ATraza(gIdent + " Entrada a  " + gIdent);

            try
            {
                clase_cabecera_factura factura = new clase_cabecera_factura();

                factura.Factura          = IdFactura;
                factura.Anyo             = textBox_Anyo.Text;
                factura.Serie            = comboBox_Serie.Text;
                factura.DetCod           = textBox_DetCod.Text;
                factura.FechaEmision     = DateTime.Today.ToShortDateString();
                factura.ImportePendiente = textBox_Importe.Text;

                frmFPCobros Cobros = new frmFPCobros();
                Cobros.CnO            = CnO;
                Cobros.COBRO_AGRUPADO = false;
                Cobros.factura        = factura;

                Cobros.ShowDialog();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                GloblaVar.gUTIL.ATraza(gIdent + ex.ToString());
            }
        }
コード例 #2
0
        private void button_Pago_Click(object sender, EventArgs e)
        {
            //Pago agrupado

            ArrayList Lista_Facturas = new ArrayList();
            string    proveedor      = "";

            for (int x = 0; x < dataGridView_Facturado.Rows.Count; x++)
            {
                if (dataGridView_Facturado.Rows[x].Cells[8].Value.ToString().ToLower() == "true")
                {
                    //se incluye en el listado
                    clase_factcom factura = new clase_factcom();

                    factura.Factura        = dataGridView_Facturado.Rows[x].Cells[0].Value.ToString();
                    factura.Anyo           = dataGridView_Facturado.Rows[x].Cells[1].Value.ToString();
                    factura.Serie          = dataGridView_Facturado.Rows[x].Cells[2].Value.ToString();
                    factura.ProCod         = dataGridView_Facturado.Rows[x].Cells[3].Value.ToString();
                    factura.FechaEmision   = dataGridView_Facturado.Rows[x].Cells[5].Value.ToString();
                    factura.ImpteFactura   = dataGridView_Facturado.Rows[x].Cells[6].Value.ToString();
                    factura.ImptePendiente = dataGridView_Facturado.Rows[x].Cells[7].Value.ToString();

                    Lista_Facturas.Add(factura);

                    if (proveedor == "")
                    {
                        proveedor = factura.ProCod;
                    }                                                     //guardamos el primer detallista
                }
            }

            if (Lista_Facturas.Count > 0)
            {
                if (Lista_Facturas.Count == 1)
                {
                    //se hace un cobro normal

                    clase_factcom esta_factura = (clase_factcom)Lista_Facturas[0];

                    Invocar_Pago(esta_factura);
                }
                else
                {
                    //se hace un cobro agrupado de varias facturas

                    //primero comprobar que todas sean del mismo detallista

                    bool seguir = true;

                    for (int x = 0; x < Lista_Facturas.Count; x++)
                    {
                        clase_factcom factura = (clase_factcom)Lista_Facturas[x];

                        if (proveedor != factura.ProCod)
                        {
                            seguir = false;
                        }
                    }

                    if (seguir == true)
                    {
                        //se llama al formulario de cobro

                        frmFPCobros Cobros = new frmFPCobros();
                        Cobros.CnO            = CnO;
                        Cobros.COBRO_AGRUPADO = true;
                        Cobros.Lista_Facturas = Lista_Facturas;

                        //si el formulario de diálogo devuelve OK se hace una recarga del grid

                        if (Cobros.ShowDialog() == DialogResult.OK)
                        {
                            Cargar();
                        }
                    }
                    else
                    {
                        MessageBox.Show("Se han seleccionado facturas de detallistas diferentes");
                    }
                }
            }
        }