Пример #1
0
        private void btnimprimir_Click(object sender, EventArgs e)
        {
            try
            {
                //Basico._enviar_webservice_xml();

                //System.IO.Ports.SerialPort port = new System.IO.Ports.SerialPort(("USB001", 9600, System.IO.Ports.Parity.None, 8, System.IO.Ports.StopBits.One);
                //port.Open();
                //ASCIIEncoding ascii = new ASCIIEncoding();
                //port.Write(ascii.GetString(new byte[] { 28, 112, 1, 0 })); //Printing the Above uploaded Logo
                //port.WriteLine("Your Text");
                //port.Close();

                //Carvajal.FEPE.PreSC.Configuration.CertificateConfiguration config = new Carvajal.FEPE.PreSC.Configuration.CertificateConfiguration();
                //config.CertificatePath = "C:\\certificado\\20101951872.pfx";
                //config.CertificatePwd = "BATAPERU1108";
                ////config.Thumbprint = "‎7b 24 0f 24 b9 c5 3a f8 e4 15 f5 15 a8 44 3f 77 99 46 05 5b";
                //config.Ruc = "20101951872";
                //config.IsCertificateFromFile = true;
                //string _txt = Facturacion_Electronica._leer_formato_electronico();

                //GeneratorCdp generatorCdp = new GeneratorCdp();

                ////Carvajal.FEPE.PreSC.Configuration.Configuration con = new Carvajal.FEPE.PreSC.Configuration.Configuration();
                ////con.AddCertificateConfiguration(config);

                ////Carvajal.FEPE.PreSC.Configuration. GetCertificateManager("C:\\certificado\\20101951872.pfx", "BATAPERU1108");
                //string hash = generatorCdp.GetHashForInvoiceCdp(_txt);
                string _num_doc     = "B03000000360";
                string _error       = "";
                string _codigo_hash = "";
                Facturacion_Electronica.ejecutar_factura_electronica("B", _num_doc, ref _codigo_hash, ref _error);

                Facturacion_Electronica.insertar_codigo_hash(_num_doc, _codigo_hash, "V");
                Basico._enviar_webservice_xml();
                if (_error.Length == 0)
                {
                    //Config_Imp_NC.GenerarTicketNC(_num_doc, 1, _codigo_hash);
                }
            }
            catch (Exception exc)
            {
            }


            //if (_codigo_hash=="error")
            //{
            //    MessageBox.Show("ERROR EN LA COMUNICACION DE DOCUMENTO A SUNAT . POR FAVOR CONSULTE CON SISTEMAS..", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
            //}
            //    else
            //{
            //    imprimir_copia(_codigo_hash);
            //}
            //Cursor.Current = Cursors.Default;
        }
Пример #2
0
        private void dg1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (dg1.Rows.Count == 0)
            {
                return;
            }
            if (e.RowIndex < 0)
            {
                return;
            }

            Int32 columna = dg1.CurrentCell.ColumnIndex;

            switch (columna)
            {
            case 6:
                string  _not_id  = dg1.Rows[e.RowIndex].Cells["ven_id"].Value.ToString();
                string  _tipo    = dg1.Rows[e.RowIndex].Cells["tipodoc"].Value.ToString();
                string  _numdoc  = dg1.Rows[e.RowIndex].Cells["numdoc"].Value.ToString();
                string  _doc     = dg1.Rows[e.RowIndex].Cells["ven_id"].Value.ToString();
                Boolean _anulado = Convert.ToBoolean(dg1.Rows[e.RowIndex].Cells["anulado"].Value);
                //verificar si el documento paso las 72 horas de enviarse a la web service efact
                Boolean _valida = Convert.ToBoolean(dg1.Rows[e.RowIndex].Cells["docu_vencido"].Value);

                //string _not_numero = dg1.Rows[e.RowIndex].Cells["not_numero"].Value.ToString();

                if (_anulado)
                {
                    MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " no se puede anular, porque YA ESTA ANULADO...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                if (_valida)
                {
                    MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " no se puede anular, porque no es de la fecha actual...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                Cursor.Current = Cursors.WaitCursor;
                DialogResult resulado = MessageBox.Show("¿Realmente desea anular el documento de tipo : " + _tipo + " con numero : " + _numdoc,
                                                        Global.mensaje, MessageBoxButtons.OKCancel, MessageBoxIcon.Error);
                if (resulado == DialogResult.OK)
                {
                    string _error = "";

                    //Facturacion_Electronica.anular_facturacion_electronica(_doc, ref _error,"NC");


                    if (_error.Length == 0)
                    {
                        string _error_venta  = Venta._anular_venta(_not_id.ToString());
                        string _codigo_hashn = "";
                        Facturacion_Electronica.ejecutar_factura_electronica("F", _not_id.ToString(), ref _codigo_hashn, ref _error);


                        if (_error.Length == 0)
                        {
                            Basico._enviar_webservice_xml();
                            MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " Se Anulo con exito...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Information);
                            consultar();
                        }
                        else
                        {
                            MessageBox.Show(_error_venta, Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        MessageBox.Show(_error, Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                //}
                Cursor.Current = Cursors.Default;
                //    string liq = dg1.Rows[e.RowIndex].Cells["liqno"].Value.ToString();
                //    string cliente = dg1.Rows[e.RowIndex].Cells["nombre"].Value.ToString();
                //    ConfiguraGuia._liq = liq;
                //    ConfiguraGuia._cliente = cliente;
                //    ConfiguraGuia frm = new ConfiguraGuia() { Owner = this };
                //    frm.ShowDialog();
                //    break;
                //case 12:
                //string _guia = dg1.Rows[e.RowIndex].Cells["Guia"].Value.ToString();
                //string _liq = dg1.Rows[e.RowIndex].Cells["liqno"].Value.ToString();
                //string _cliente = dg1.Rows[e.RowIndex].Cells["Nombre"].Value.ToString();
                //if (_guia.Length == 0)
                //{

                //    MessageBox.Show("Asigne una guia a la liquidación No. " + _liq + " antes de proceder al empacado.", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);


                //}
                //else
                //{
                //string _tipo = dg1.Rows[e.RowIndex].Cells["tipodoc"].Value.ToString();
                //string _numdoc = dg1.Rows[e.RowIndex].Cells["numdoc"].Value.ToString();
                //string _doc = dg1.Rows[e.RowIndex].Cells["ven_id"].Value.ToString();
                //Boolean _anulado=Convert.ToBoolean(dg1.Rows[e.RowIndex].Cells["anulado"].Value);
                //Boolean _doc_valida = Convert.ToBoolean(dg1.Rows[e.RowIndex].Cells["doc_valida"].Value);
                ////verificar si el documento paso las 72 horas de enviarse a la web service efact
                //Boolean _valida = Convert.ToBoolean(dg1.Rows[e.RowIndex].Cells["docu_vencido"].Value);

                //if (_anulado)
                //{
                //    MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " no se puede anular, porque YA ESTA ANULADO...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                //    return;
                //}

                //if (_valida)
                //{
                //    MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " no se puede anular, porque se vencio el plazo de 72 horas del envio del documento...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                //    return;
                //}

                //if (_doc_valida)
                //{
                //    MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " no se puede anular, porque esta relacionado con una nota de credito...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                //    return;
                //}

                //Cursor.Current = Cursors.WaitCursor;
                //DialogResult resulado = MessageBox.Show("¿Realmente desea anular el documento de tipo : " + _tipo + " con numero : " + _numdoc,
                //         Global.mensaje, MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                //if (resulado == DialogResult.OK)
                //{
                //        string _error = "";// Venta._anular_venta(_doc);
                //        Facturacion_Electronica.anular_facturacion_electronica(_doc, ref _error);
                //        if (_error.Length==0)
                //        {
                //            string _error_grabar = Venta._anular_venta(_doc);
                //            if (_error_grabar.Length == 0)
                //            {
                //                MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " Se Anulo con exito...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Information);
                //                consultar();
                //            }
                //            else
                //            {
                //                MessageBox.Show(_error_grabar, Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                //            }
                //        }
                //        else
                //        {
                //            MessageBox.Show(_error, Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                //        }
                //}
                ////}
                //Cursor.Current = Cursors.Default;

                break;

            case 7:
                string _tipo_r   = dg1.Rows[e.RowIndex].Cells["tipodoc"].Value.ToString();
                string _numdoc_r = dg1.Rows[e.RowIndex].Cells["numdoc"].Value.ToString();
                string _doc_r    = dg1.Rows[e.RowIndex].Cells["ven_id"].Value.ToString();
                string _cod_hash = dg1.Rows[e.RowIndex].Cells["cod_hash"].Value.ToString();
                Cursor.Current = Cursors.WaitCursor;
                DialogResult resulado_imp = MessageBox.Show("¿Realmente desea REIMPRIMIR el documento de tipo : " + _tipo_r + " con numero : " + _numdoc_r,
                                                            Global.mensaje, MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                if (resulado_imp == DialogResult.OK)
                {
                    //string tickets = Config_Imp.GenerarTicketFact(_doc_r, 1, _cod_hash);

                    //if (tickets == null)
                    //{
                    //    MessageBox.Show(" >> Se producjo un error en la impresión del ticket", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    //}
                }
                Cursor.Current = Cursors.Default;
                break;
            }
        }
Пример #3
0
        private void facturar()
        {
            ///
            string _almacen = "11";

            try
            {
                /// Lista de artículos a devolver
                List <Returns_Dtl> lstArticlesReturned = new List <Returns_Dtl>();

                /// Lista de articulos a realizar el cambio de storage
                List <Transaction_det> itemsTransDetails = new List <Transaction_det>();

                /// Bandera de que si existieron elementos que enviar
                Decimal bandera = -1;
                /// Numero de articulos a mover de storage
                //int noLinea = 0;
                Boolean moveArticles = false;

                ///
                DataView dv = ((DataView)dtv_grilla);

                // Existen articulos que mover de storage
                Decimal articlesToMove = dv.Table.AsEnumerable().Count(x => x.Field <Boolean>("checked") == true);

                if (articlesToMove > 0)
                {
                    //
                    //if (string.IsNullOrEmpty(dwStorages.SelectedValue))
                    //{
                    //    dwStorages.Focus();
                    //    msnMessage.LoadMessage("> Seleccione el area o storage a donde se enviaran los artículos seleccionados.", UserControl.ucMessage.MessageType.Information);

                    //}
                    //else
                    moveArticles = true;
                }
                else
                {
                    moveArticles = true;
                }

                ///
                if (dv != null && dv.Table.Rows.Count > 0 && moveArticles == true)
                {
                    ///
                    foreach (DataRow drow in dv.Table.Rows)
                    {
                        //
                        string invo = drow["idv_invoice"].ToString();
                        //
                        string art = drow["idv_article"].ToString();
                        //
                        string size = drow["idv_size"].ToString();
                        //
                        Decimal qty = Convert.ToDecimal(drow["idn_qty"]);
                        //
                        String calidad = drow["calidad"].ToString();

                        Boolean ck = drow["checked"].Equals("") ? false : (Boolean)drow["checked"];
                        //
                        if (ck)
                        {
                            Returns_Dtl objReturned = new Returns_Dtl(invo, art, size, qty, _almacen, calidad);
                            /// Agregar el objeto a la lista generica
                            lstArticlesReturned.Add(objReturned);
                            ///
                        }
                        else
                        {
                            Returns_Dtl objReturned = new Returns_Dtl(invo, art, size, qty, "", calidad);
                            /// Agregar el objeto a la lista generica
                            lstArticlesReturned.Add(objReturned);
                        }
                        ///
                        bandera = 1;
                    }
                }
                ///
                if (bandera > 0)
                {
                    string _codigo_estado = dwestado.SelectedValue.ToString();
                    // Devolucion
                    string[] results = Returns_Hdr.saveReturnOrder(_cliente_id, _almacen, lstArticlesReturned, Global._bas_id_codigo, _codigo_estado);

                    if (results != null)
                    {
                        //
                        //string url = _pageReportArtsReturned + "?noReturn=" + results[0];// + "&st=" + Constants.StatusReturnForAprob;

                        // Async
                        //
                        try
                        {
                            //
                            //string winAlert = "location.href='" + url + "'";
                            //System.Web.UI.ScriptManager.RegisterStartupScript(UpdatePanel3, Page.GetType(), "click", winAlert, true);
                            ///
                            string _codigo_hash = "";
                            string _error       = "";
                            Facturacion_Electronica.ejecutar_factura_electronica("N", results[0].ToString(), ref _codigo_hash, ref _error);
                            //Facturacion_Electronica.ejecutar_factura_electronica_NC(results[0].ToString(), ref _codigo_hash);

                            //EN ESTE PASO VAMOS A GRABAR EL CODIGO HASH
                            Facturacion_Electronica.insertar_codigo_hash(results[0].ToString(), _codigo_hash, "N");


                            //****enviar los xml al server

                            Basico._enviar_webservice_xml();

                            //

                            //Facturacion_Electronica.ejecutar_factura_electronica_NC(results[0].ToString(), ref _codigo_hash);

                            if (_error.Length > 0)
                            {
                                MessageBox.Show("ERROR EN LA GENERACION POR FAVOR CONSULTE CON SISTEMAS..==>> TIPO DE ERROR (" + _error + ")", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                                this.cleanForm();
                                pninfo.Visible    = true;
                                lblinfo.BackColor = System.Drawing.ColorTranslator.FromHtml("#ee7749");
                                lblinfo.Text      = " >> Se producjo un error en la impresion del ticket";
                                return;
                            }

                            //string _genera_tk = Impresora_Epson.Config_Imp_NC.GenerarTicketNC(results[0].ToString(), 1, _codigo_hash);

                            //this.cleanForm();
                            //if (_genera_tk == null)
                            //{
                            //    pninfo.Visible = true;
                            //    lblinfo.BackColor = System.Drawing.ColorTranslator.FromHtml("#ee7749");
                            //    lblinfo.Text = " >> Se producjo un error en la impresion del ticket";
                            //    MessageBox.Show("ERROR EN LA GENERACION POR FAVOR CONSULTE CON SISTEMAS..==>> TIPO DE ERROR (" + _error + ")", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                            //    this.cleanForm();

                            //    //lbltickets.Text = " >> Se producjo un error en la impresion del ticket";
                            //}
                            //else
                            //{
                            //    pninfo.Visible = true;
                            //    lblinfo.BackColor = System.Drawing.ColorTranslator.FromHtml("#e7df65");
                            //    lblinfo.Text = " > Ticket Generado con exito";
                            //    //lbltickets.Text = " > Ticket Generado con exito";
                            //}


                            //pninfo.Visible = true;
                            //lblinfo.BackColor = System.Drawing.ColorTranslator.FromHtml("#e7df65");
                            //lblinfo.Text = " > La Devolución Se Ha Realizado Correctamente : " + results[0] + "";
                            //msnMessage.LoadMessage(" > La Devoluci&oacute;n Se Ha Realizado Correctamente : " + results[0] + "<br /> > <a href='" + url + "' target='Blank'>Ver Reporte Devolución</a>", UserControl.ucMessage.MessageType.Information);
                        }
                        catch
                        {
                            //
                            pninfo.Visible    = true;
                            lblinfo.BackColor = System.Drawing.ColorTranslator.FromHtml("#ee7749");
                            lblinfo.Text      = " > La Devolución No Se Ha Realizado Correctamente." + results[0] + "";
                            this.cleanForm();
                            //msnMessage.LoadMessage(" > La Devoluci&oacute;n No Se Ha Realizado Correctamente." + results[0] + "<br /> > El reporte de la devoluci&oacute;n no se ha generado; <a href='" + url + "' target='Blank'>Ver Reporte Devolucion</a>", UserControl.ucMessage.MessageType.Error);
                        }
                    }
                    else
                    {
                        ///
                        pninfo.Visible    = true;
                        lblinfo.BackColor = System.Drawing.ColorTranslator.FromHtml("#ee7749");
                        lblinfo.Text      = " > La Devolución No Se Ha Realizado Correctamente.";
                        this.cleanForm();
                        //msnMessage.LoadMessage(" > La Devoluci&oacute;n No Se Ha Realizado Correctamente.", UserControl.ucMessage.MessageType.Error);
                    }
                    //}
                }
            }
            catch
            {
                ///
                pninfo.Visible    = true;
                lblinfo.BackColor = System.Drawing.ColorTranslator.FromHtml("#ee7749");
                lblinfo.Text      = " > Ha ocurrido un error y la devoluciión no se ha realizado correctamente.";
                this.cleanForm();
                //msnMessage.LoadMessage(" > Ha ocurrido un error y la devoluci&oacute;n no se ha realizado correctamente.", UserControl.ucMessage.MessageType.Error);
            }
        }
Пример #4
0
        private void dg1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (dg1.Rows.Count == 0)
            {
                return;
            }
            if (e.RowIndex < 0)
            {
                return;
            }

            Int32 columna = dg1.CurrentCell.ColumnIndex;

            switch (columna)
            {
            case 6:
                decimal _not_id  = Convert.ToDecimal(dg1.Rows[e.RowIndex].Cells["Not_Id"].Value.ToString());
                string  _tipo    = dg1.Rows[e.RowIndex].Cells["tipodoc"].Value.ToString();
                string  _numdoc  = dg1.Rows[e.RowIndex].Cells["numdoc"].Value.ToString();
                string  _doc     = dg1.Rows[e.RowIndex].Cells["ven_id"].Value.ToString();
                Boolean _anulado = Convert.ToBoolean(dg1.Rows[e.RowIndex].Cells["anulado"].Value);
                //verificar si el documento paso las 72 horas de enviarse a la web service efact
                Boolean _valida = Convert.ToBoolean(dg1.Rows[e.RowIndex].Cells["docu_vencido"].Value);

                string _not_numero = dg1.Rows[e.RowIndex].Cells["not_numero"].Value.ToString();

                if (_anulado)
                {
                    MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " no se puede anular, porque YA ESTA ANULADO...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                if (_valida)
                {
                    MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " no se puede anular, porque no es de la fecha actual...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                Cursor.Current = Cursors.WaitCursor;
                DialogResult resulado = MessageBox.Show("¿Realmente desea anular el documento de tipo : " + _tipo + " con numero : " + _numdoc,
                                                        Global.mensaje, MessageBoxButtons.OKCancel, MessageBoxIcon.Error);
                if (resulado == DialogResult.OK)
                {
                    string _error = "";

                    //Facturacion_Electronica.anular_facturacion_electronica(_doc, ref _error,"NC");


                    if (_error.Length == 0)
                    {
                        string _error_venta  = Venta._anular_ncredito(_not_id, Global._bas_id_codigo);
                        string _codigo_hashn = "";
                        Facturacion_Electronica.ejecutar_factura_electronica("N", _not_id.ToString(), ref _codigo_hashn, ref _error);


                        if (_error.Length == 0)
                        {
                            Basico._enviar_webservice_xml();
                            MessageBox.Show("!El documento de tipo : " + _tipo + " con numero : " + _numdoc + " Se Anulo con exito...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Information);
                            consultar();
                        }
                        else
                        {
                            MessageBox.Show(_error_venta, Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        MessageBox.Show(_error, Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                //}
                Cursor.Current = Cursors.Default;

                break;

            case 7:
                //MessageBox.Show("CONSULTE CON SISTEMAS...", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                string  _codigo_hash = dg1.Rows[e.RowIndex].Cells["Not_Cod_Hash"].Value.ToString();;
                decimal _not_id_imp  = Convert.ToDecimal(dg1.Rows[e.RowIndex].Cells["Not_Id"].Value.ToString());
                string  _numdoc_r    = dg1.Rows[e.RowIndex].Cells["numdoc"].Value.ToString();;
                Cursor.Current = Cursors.WaitCursor;
                DialogResult resulado_imp = MessageBox.Show("¿Realmente desea REIMPRIMIR el documento de tipo : Nota de Credito  con numero : " + _numdoc_r,
                                                            Global.mensaje, MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
                if (resulado_imp == DialogResult.OK)
                {
                    //string _genera_tk = Impresora_Epson.Config_Imp_NC.GenerarTicketNC(_not_id_imp.ToString(), 1, _codigo_hash);

                    //if (_genera_tk == null)
                    //{
                    //    MessageBox.Show(" >> Se producjo un error en la impresión del ticket", Global.mensaje, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    //}
                }
                Cursor.Current = Cursors.Default;


                //string tickets = Config_Imp.GenerarTicketFact(txtcomprobante.Text, 1, _codigo_hash);
                break;
            }
        }