Beispiel #1
0
        public void SubTicketAFIP()
        {
            //Dimensiono una variable propia (todas las vp... lo son)
            vpAFIPTicket TicketAccAFIP = default(vpAFIPTicket);


            //Esta Function Obtiene un ticket de acceso a la AFIP
            TicketAccAFIP = AFIP.TicketAccesoAFIP();

            //Aqui lo que se hace es pasar los datos del token y el sign para dos txt que estan en el formulario
            //La idea es sacar estas lineas pronto porque son obsoletas
            //30/5/13
            lblToken.Text = TicketAccAFIP.vpAFIPTicketToken;
            lblSign.Text  = TicketAccAFIP.vpAFIPTicketSign;



            //Cargo los datos del Ticket en una clase publica que esta en el MDI
            //de esta manera lo que hago es que este disponible para todo el proyecto
            //Cada vez que se use en una factura corroborará el ticket y de esta manera no hay que
            //cerrar la ventana para hacer otra factura.
            //El ticket es algo importante por eso pienso que debe estar en el MDI para que sea de acceso
            //publico.
            //30/5/13
            MDIPrincipal.ClaseAFIP.ptAFIPTicketToken          = TicketAccAFIP.vpAFIPTicketToken;
            MDIPrincipal.ClaseAFIP.ptAFIPTicketSign           = TicketAccAFIP.vpAFIPTicketSign;
            MDIPrincipal.ClaseAFIP.ptAFIPTicketGenerationTime = TicketAccAFIP.vpAFIPTicketGenerationTime;
            MDIPrincipal.ClaseAFIP.ptAFIPTicketExpirationTime = TicketAccAFIP.vpAFIPTicketExpirationTime;
            MDIPrincipal.ClaseAFIP.ptAFIPTicketService        = TicketAccAFIP.vpAFIPTicketService;
            MDIPrincipal.ClaseAFIP.ptAFIPTicketUniqueID       = TicketAccAFIP.vpAFIPTicketUniqueID;

            My.MyProject.Forms.MDIPrincipal.ToolStripStatusEstadoServidor.Text = "SI";
        }
Beispiel #2
0
        private void cmdConsultar_Click(System.Object sender, System.EventArgs e)
        {
            //ESP Dimensiono un nuevo objeto que cumple con las caracteristicas de ar.gov.afip.servicios1.FECompConsultaResponse
            ar.gov.afip.servicios1.FECompConsultaResponse objFERecuperarCbtesResp = new ar.gov.afip.servicios1.FECompConsultaResponse();

            //ESP Esto carga mediante la funcion que tengo en un modulo (AFIP.vb) los datos de la respuesta obtenida de la AFIP
            objFERecuperarCbtesResp = AFIP.ComprobantesAutorizados(MDIPrincipal.ClaseAFIP.ptAFIPTicketToken, MDIPrincipal.ClaseAFIP.ptAFIPTicketSign, Convert.ToInt64(txtNumFact.Text));

            //ESP Inserta la respuesta en el Label
            lblRespuesta.Text = objFERecuperarCbtesResp.ResultGet.Resultado.ToString();

            //ESP Inserta la respuesta de Numero de Autorizacion de la factura (CAE)
            lblCAE.Text = objFERecuperarCbtesResp.ResultGet.CodAutorizacion.ToString();

            //ESP Inserta la respuesta del Valor Final
            lblValorFinal.Text = objFERecuperarCbtesResp.ResultGet.ImpTotal.ToString();

            //ESP Inserta la respuesta del IVA
            lblIVA.Text = objFERecuperarCbtesResp.ResultGet.ImpIVA.ToString();

            //ESP Inserta la respuesta del Valor Neto
            lblNeto.Text = objFERecuperarCbtesResp.ResultGet.ImpNeto.ToString();
        }
Beispiel #3
0
        private void _Toolbar1_Guardar_Click(System.Object sender, System.EventArgs e)
        {
            OleDbDataAdapter dbClientes = new OleDbDataAdapter();

            System.Data.DataSet dbRegistros = null;
            System.Data.DataRow fila        = null;

            string NombreTabla = "tblFactura";



            //Antes de cargar nada fijamos si puede guardarlo en la AFIP sino no sigue con el guardado de la factura
            //ESP La funcion EnviarFacturaAFIP esta en el modulo de AFIP.
            bool bolFactEnAFIP = AFIP.EnviarFacturaAFIP(Imprimir.CargarFactura(gridDatos.Rows.Count - 1), lblToken.Text, lblSign.Text);

            if (bolFactEnAFIP != true)
            {
                Interaction.MsgBox("NO se pudo cargar la factura en AFIP. Intentelo nuevamente", MsgBoxStyle.Information);
                return;
            }



            //Cargo la tabla en la base
            //Facturas A
            if (lblCod_cbe.Text == "01")
            {
                dbClientes = BaseDeDatos.rstTabla("Facturas", "Fecha", "");
                //Facturas B
            }
            else if (lblCod_cbe.Text == "06")
            {
                dbClientes = BaseDeDatos.rstTabla("FacturasB", "Fecha", "");
                //Notas de Credito
            }
            else if (lblCod_cbe.Text == "03")
            {
                dbClientes = BaseDeDatos.rstTabla("NotaCredito", "Fecha", "");
                //Notas de Debito
            }
            else if (lblCod_cbe.Text == "02")
            {
                dbClientes = BaseDeDatos.rstTabla("NotaDebito", "Fecha", "");
            }


            //Asigno un nuevo Data Set
            dbRegistros = new System.Data.DataSet();

            try {
                dbClientes.Fill(dbRegistros, NombreTabla);
            } catch (Exception ex) {
                MessageBox.Show("Error en el llenado:" + Constants.vbCrLf + ex.Message);
            }



            OleDbCommandBuilder cb = new OleDbCommandBuilder(dbClientes);



            miFactura = Imprimir.CargarFactura(gridDatos.Rows.Count - 1);



            fila = dbRegistros.Tables[NombreTabla].NewRow();
            fila.BeginEdit();


            //Cargo el valor del "DOCUMENTO"
            //Facturas A
            if (lblCod_cbe.Text == "01")
            {
                fila["Documento"] = "FC A " + Strings.Format(miFactura.intSucursal, "0000") + "-" + Strings.Format(miFactura.dblNumFact, "00000000");
                //Facturas B
            }
            else if (lblCod_cbe.Text == "06")
            {
                fila["Documento"] = "FC B " + Strings.Format(miFactura.intSucursal, "0000") + "-" + Strings.Format(miFactura.dblNumFact, "00000000");
                //Notas de Credito
            }
            else if (lblCod_cbe.Text == "03")
            {
                fila["Documento"] = "NC " + Strings.Format(miFactura.intSucursal, "0000") + "-" + Strings.Format(miFactura.dblNumFact, "00000000");
                //Notas de Debito
            }
            else if (lblCod_cbe.Text == "02")
            {
                fila["Documento"] = "ND " + Strings.Format(miFactura.intSucursal, "0000") + "-" + Strings.Format(miFactura.dblNumFact, "00000000");
            }

            fila["Sucursal"] = miFactura.intSucursal;
            fila["NumFact"]  = miFactura.dblNumFact;
            fila["Fecha"]    = miFactura.dtFecha;
            //
            fila["IDCliente"]    = miFactura.Cliente.strid;
            fila["Nombre"]       = miFactura.Cliente.strNombre;
            fila["Direccion"]    = miFactura.Cliente.strDireccion;
            fila["Localidad"]    = miFactura.Cliente.strLocalidad;
            fila["Provincia"]    = miFactura.Cliente.strProvincia;
            fila["Tipodecambio"] = miFactura.dblTipoCambio;
            fila["Descuento"]    = Conversion.Str(miFactura.Cliente.dblDescuento);

            fila["Cant1"]           = miFactura.Producto1.intCantidad;
            fila["Detalle1"]        = miFactura.Producto1.strDescripcion;
            fila["PrecioUnitario1"] = miFactura.Producto1.curPrecioNeto;
            fila["PrecioFinal1"]    = miFactura.Producto1.curPrecioTotal;

            fila["Cant2"]           = miFactura.Producto2.intCantidad;
            fila["Detalle2"]        = miFactura.Producto2.strDescripcion;
            fila["PrecioUnitario2"] = miFactura.Producto2.curPrecioNeto;
            fila["PrecioFinal2"]    = miFactura.Producto2.curPrecioTotal;

            fila["Cant3"]           = miFactura.Producto3.intCantidad;
            fila["Detalle3"]        = miFactura.Producto3.strDescripcion;
            fila["PrecioUnitario3"] = miFactura.Producto3.curPrecioNeto;
            fila["PrecioFinal3"]    = miFactura.Producto3.curPrecioTotal;

            fila["Cant4"]           = miFactura.Producto4.intCantidad;
            fila["Detalle4"]        = miFactura.Producto4.strDescripcion;
            fila["PrecioUnitario4"] = miFactura.Producto4.curPrecioNeto;
            fila["PrecioFinal4"]    = miFactura.Producto4.curPrecioTotal;

            fila["Cant5"] = miFactura.Producto5.intCantidad;
            //Cantidad 5
            fila["Detalle5"] = miFactura.Producto5.strDescripcion;
            //Detalle5
            fila["PrecioUnitario5"] = miFactura.Producto5.curPrecioNeto;
            //Precio Unitario 5
            fila["PrecioFinal5"] = miFactura.Producto5.curPrecioTotal;
            //Precio Final 5

            fila["Cant6"] = 0;
            //Cantidad 6
            fila["Detalle6"] = " ";
            //Detalle6
            fila["PrecioUnitario6"] = 0;
            //Precio Unitario 6
            fila["PrecioFinal6"] = 0;
            //Precio Final 6

            fila["SubTotal"] = miFactura.curSubTotal;
            //Sub Total $
            fila["IVA"] = miFactura.curIVA;
            //IVA $
            fila["ImporteFinal"] = miFactura.curTotal;
            //Importe Final $

            fila["Recibo1"] = 0;
            fila["Recibo2"] = 0;
            //Recibo2
            fila["Recibo3"] = 0;
            //Recibo3
            fila["Recibo4"] = 0;
            //Recibo4
            fila["Recibo5"] = 0;
            //Recibo5

            fila["ClienteDe"] = " ";
            //Cliente De

            fila["Remito1"] = miFactura.intRemito1;
            //
            fila["Remito2"] = miFactura.intRemito2;
            //Remito2
            fila["Remito3"] = miFactura.intRemito3;
            //Remito3
            fila["Remito4"] = miFactura.intRemito4;
            //Remito4
            fila["Remito5"] = 0;
            //Remito5

            fila["Observaciones"] = " ";
            //Observaciones

            fila["SubTotalUSS"] = miFactura.curSubTotalUSD;
            //Sub Total USS
            fila["IVAUSS"] = miFactura.curIVAUSD;
            //IVA USS
            fila["ImporteFinalUSS"] = miFactura.curTotalUSD;
            //Importe Final USS

            fila["EnDolar"] = 0.0;
            //En Dolar

            fila["Saldo"] = Strings.Replace(Conversion.Str(miFactura.curTotal), ".", ",");
            //Saldo
            fila["SaldoUSS"] = miFactura.curTotalUSD;
            //SaldoUSS

            fila["Pagado"] = false;

            fila["Dólar"] = true;
            fila["Peso"]  = false;


            fila["Promocion"] = 0;

            fila["CAE"]          = miFactura.strCAE;
            fila["FechaVencCAE"] = miFactura.strFechVtoCAE;


            //Finaliza la edicion
            fila.EndEdit();

            //Añade la fila a la tabla
            dbRegistros.Tables[NombreTabla].Rows.Add(fila);



            //Actualiza la base de datos
            dbClientes.Update(dbRegistros, NombreTabla);


            //acepta los cambios
            dbRegistros.AcceptChanges();



            //MsgBox(miFactura.strTipoFc)
            //MsgBox(miFactura.intSucursal)
            //MsgBox(miFactura.dtFecha)
            Interaction.MsgBox("Factura Cargada");

            //Este modulo edita la tabla de remitos y asigna el valor de la factura y su respectiva
            //sucursal al remito en cuestion
            //eso lo saca de los desplegables de remitos
            ModDocFiscales.EditarRemitos((cmbSucursal.Text), Convert.ToDouble(txtNumFact.Text), Convert.ToDouble(cmbRemito1.Text));
            Interaction.MsgBox("Remito: " + cmbRemito1.Text + ". Modificado");


            //Esto permite que se pueda imprimir
            _Toolbar1_Imprimir.Enabled = true;

            //Esto impide que se vuelva a guardar
            _Toolbar1_Guardar.Enabled = false;
        }
Beispiel #4
0
 private void UltimaFacturaHecha()
 {
     //Invoco al método FECompUltimoAutorizado y de esta manera le paso el valor de la ultima factura
     //al textbox del comprobante fiscal
     txtNumFact.Text = AFIP.UltimoComprobante(MDIPrincipal.ClaseAFIP.ptAFIPTicketToken, MDIPrincipal.ClaseAFIP.ptAFIPTicketSign);
 }
        public static IAFIP GetAFIP()
        {
            IAFIP afip = new AFIP();

            return((IAFIP)afip);
        }