public void CompletarWS(org.dyndns.cedweb.consulta.ConsultarResult lc) { if (lc.comprobante[0].resumen.impuestos != null) { impuestos = new System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>(); foreach (org.dyndns.cedweb.consulta.ConsultarResultComprobanteResumenImpuestos imp in lc.comprobante[0].resumen.impuestos) { if (imp.importe_impuesto_moneda_origenSpecified) { imp.importe_impuesto = imp.importe_impuesto_moneda_origen; } FeaEntidades.InterFacturas.resumenImpuestos ri = new FeaEntidades.InterFacturas.resumenImpuestos(); ri.codigo_impuesto = imp.codigo_impuesto; ri.codigo_jurisdiccion = imp.codigo_jurisdiccion; ri.codigo_jurisdiccionSpecified = imp.codigo_jurisdiccionSpecified; ri.descripcion = imp.descripcion; ri.importe_impuesto = imp.importe_impuesto; ri.importe_impuesto_moneda_origen = imp.importe_impuesto_moneda_origen; ri.importe_impuesto_moneda_origenSpecified = imp.importe_impuesto_moneda_origenSpecified; ri.jurisdiccion_municipal = imp.jurisdiccion_municipal; ri.porcentaje_impuesto = imp.porcentaje_impuesto; ri.porcentaje_impuestoSpecified = imp.porcentaje_impuestoSpecified; impuestos.Add(ri); } if (impuestos.Count.Equals(0)) { impuestos.Add(new FeaEntidades.InterFacturas.resumenImpuestos()); } impuestosGridView.DataSource = impuestos; impuestosGridView.DataBind(); ViewState["impuestos"] = impuestos; } }
public void CompletarWS(org.dyndns.cedweb.consulta.ConsultarResult lc) { if (lc.comprobante[0].resumen.impuestos != null) { impuestos = new System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos>(); foreach (org.dyndns.cedweb.consulta.ConsultarResultComprobanteResumenImpuestos imp in lc.comprobante[0].resumen.impuestos) { if (imp.importe_impuesto_moneda_origenSpecified) { imp.importe_impuesto = imp.importe_impuesto_moneda_origen; } FeaEntidades.InterFacturas.resumenImpuestos ri = new FeaEntidades.InterFacturas.resumenImpuestos(); ri.codigo_impuesto = imp.codigo_impuesto; ri.codigo_jurisdiccion = imp.codigo_jurisdiccion; ri.codigo_jurisdiccionSpecified = imp.codigo_jurisdiccionSpecified; ri.descripcion = imp.descripcion; ri.importe_impuesto = imp.importe_impuesto; ri.importe_impuesto_moneda_origen = imp.importe_impuesto_moneda_origen; ri.importe_impuesto_moneda_origenSpecified = imp.importe_impuesto_moneda_origenSpecified; ri.jurisdiccion_municipal = imp.jurisdiccion_municipal; ri.porcentaje_impuesto = imp.porcentaje_impuesto; ri.porcentaje_impuestoSpecified = imp.porcentaje_impuestoSpecified; impuestos.Add(ri); } if (impuestos.Count.Equals(0)) { impuestos.Add(new FeaEntidades.InterFacturas.resumenImpuestos()); } impuestosGridView.DataSource = impuestos; impuestosGridView.DataBind(); ViewState["impuestos"] = impuestos; } }
internal void RestarDescuentosAImpuestosGlobales(System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos> impuestos) { descuentos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenDescuentos>)ViewState["descuentos"]); System.Collections.Generic.List <FeaEntidades.IVA.IVA> listaIVA = FeaEntidades.IVA.IVA.ListaMinima(); double[] impivas = new double[listaIVA.Count]; for (int i = 0; i < descuentos.Count; i++) { if (descuentos[i].importe_iva_descuento != 0) { if (descuentos[i].alicuota_iva_descuentoSpecified) { FeaEntidades.IVA.IVA auxIVA = listaIVA.Find(delegate(FeaEntidades.IVA.IVA e) { return(e.Codigo == descuentos[i].alicuota_iva_descuento); }); FeaEntidades.InterFacturas.resumenImpuestos ri = impuestos.Find(delegate(FeaEntidades.InterFacturas.resumenImpuestos r) { return(auxIVA.Codigo == r.porcentaje_impuesto); }); if (ri != null) { ri.importe_impuesto -= descuentos[i].importe_iva_descuento; } else { ScriptManager.RegisterStartupScript(this.Parent.Page, GetType(), "Message", Funciones.TextoScript("La alícuota de IVA de un descuento (" + auxIVA.Codigo + ") no coincide con ninguna alícuota de los impuestos"), false); } } } } }
private void EliminarFilaAutomatica() { System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos> impuestos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos impuestoInicial = impuestos[0]; if (impuestoInicial.codigo_impuesto == 0) { ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]).Remove(impuestoInicial); } }
public void ResetearGrillas() { impuestos = new System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>(); FeaEntidades.InterFacturas.resumenImpuestos impuesto = new FeaEntidades.InterFacturas.resumenImpuestos(); impuestos.Add(impuesto); impuestosGridView.DataSource = impuestos; ViewState["impuestos"] = impuestos; DataBind(); BindearDropDownLists(); }
public void ResetearGrillas() { impuestos = new System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos>(); FeaEntidades.InterFacturas.resumenImpuestos impuesto = new FeaEntidades.InterFacturas.resumenImpuestos(); impuestos.Add(impuesto); impuestosGridView.DataSource = impuestos; ViewState["impuestos"] = impuestos; DataBind(); BindearDropDownLists(); }
internal void AgregarImpuestosIVA(string IdNaturalezaComprobante, System.Collections.Generic.List <FeaEntidades.Turismo.linea> listadelineas) { System.Collections.Generic.List <FeaEntidades.IVA.IVA> listaIVA = FeaEntidades.IVA.IVA.ListaMinima(); double[] impivas = new double[listaIVA.Count]; bool[] impivasinformados = new bool[listaIVA.Count]; for (int i = 0; i < listadelineas.Count; i++) { if (listadelineas[i].alicuota_ivaSpecified) { int k = listaIVA.FindIndex(delegate(FeaEntidades.IVA.IVA e) { return(e.Codigo == listadelineas[i].alicuota_iva); }); if (k >= 0) { if (listadelineas[i].indicacion_exento_gravado == "G" && !listadelineas[i].alicuota_iva.Equals(99)) { double imptot = listadelineas[i].importe_total_articulo; impivas[k] += imptot * listadelineas[i].alicuota_iva / 100; impivasinformados[k] = true; } } } } for (int j = 0; j < impivas.Length; j++) { if (impivasinformados[j]) { impuestos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); FeaEntidades.CodigosImpuesto.IVA iva = new FeaEntidades.CodigosImpuesto.IVA(); imp.codigo_impuesto = iva.Codigo; imp.importe_impuesto = Math.Round(impivas[j], 2); imp.porcentaje_impuestoSpecified = true; imp.porcentaje_impuesto = FeaEntidades.IVA.IVA.ListaMinima()[j].Codigo; imp.descripcion = iva.Descr; EliminarFilaAutomatica(); impuestos.Add(imp); } } impuestosGridView.DataSource = impuestos; impuestosGridView.DataBind(); ViewState["impuestos"] = impuestos; BindearDropDownLists(); }
public System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos> EliminarImpuestosIVA() { impuestos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); impuestos.RemoveAll(delegate(FeaEntidades.InterFacturas.resumenImpuestos e) { return(e.codigo_impuesto == new FeaEntidades.CodigosImpuesto.IVA().Codigo); }); if (impuestos.Count.Equals(0)) { FeaEntidades.InterFacturas.resumenImpuestos nueva = new FeaEntidades.InterFacturas.resumenImpuestos(); impuestos.Add(nueva); } impuestosGridView.DataSource = impuestos; impuestosGridView.DataBind(); ViewState["impuestos"] = impuestos; BindearDropDownLists(); return(impuestos); }
internal void AgregarImpuestosIVA(System.Collections.Generic.List <FeaEntidades.InterFacturas.linea> listadelineas) { System.Collections.Generic.List <FeaEntidades.IVA.IVA> listaIVA = FeaEntidades.IVA.IVA.ListaMinimaSinCero(); double[] impivas = new double[listaIVA.Count]; bool[] impivasinformados = new bool[listaIVA.Count]; for (int i = 0; i < listadelineas.Count; i++) { if (listadelineas[i].alicuota_ivaSpecified) { int k = listaIVA.FindIndex(delegate(FeaEntidades.IVA.IVA e) { return(e.Codigo == listadelineas[i].alicuota_iva); }); if (k >= 0) { impivas[k] += listadelineas[i].importe_iva; impivasinformados[k] = true; } } } for (int j = 0; j < impivas.Length; j++) { if (impivasinformados[j]) { impuestos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); FeaEntidades.CodigosImpuesto.IVA iva = new FeaEntidades.CodigosImpuesto.IVA(); imp.codigo_impuesto = iva.Codigo; imp.importe_impuesto = Math.Round(impivas[j], 2); imp.porcentaje_impuestoSpecified = true; imp.porcentaje_impuesto = FeaEntidades.IVA.IVA.ListaMinimaSinCero()[j].Codigo; imp.descripcion = iva.Descr; EliminarFilaAutomatica(); impuestos.Add(imp); } } esquemaContableGridView.DataSource = impuestos; esquemaContableGridView.DataBind(); ViewState["esquemaContable"] = impuestos; BindearDropDownLists(); }
protected void impuestosGridView_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos> impuestos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos r = impuestos[e.RowIndex]; impuestos.Remove(r); if (impuestos.Count.Equals(0)) { FeaEntidades.InterFacturas.resumenImpuestos nueva = new FeaEntidades.InterFacturas.resumenImpuestos(); impuestos.Add(nueva); } impuestosGridView.EditIndex = -1; impuestosGridView.DataSource = ViewState["impuestos"]; impuestosGridView.DataBind(); BindearDropDownLists(); Session["FaltaCalcularTotales"] = true; } catch { } }
internal void AgregarImpuestosIVA(string IdNaturalezaComprobante, System.Collections.Generic.List<FeaEntidades.InterFacturas.linea> listadelineas) { //System.Collections.Generic.List<FeaEntidades.IVA.IVA> listaIVA = FeaEntidades.IVA.IVA.ListaMinimaSinCero(); System.Collections.Generic.List<FeaEntidades.IVA.IVA> listaIVA = FeaEntidades.IVA.IVA.ListaMinima(); double[] impivas = new double[listaIVA.Count]; bool[] impivasinformados = new bool[listaIVA.Count]; for (int i = 0; i < listadelineas.Count; i++) { if (listadelineas[i].alicuota_ivaSpecified) { int k = listaIVA.FindIndex(delegate(FeaEntidades.IVA.IVA e) { return e.Codigo == listadelineas[i].alicuota_iva; }); if (k >= 0) { if (listadelineas[i].indicacion_exento_gravado == "G" && !listadelineas[i].alicuota_iva.Equals(99)) { double imptot = listadelineas[i].importe_total_articulo; if (IdNaturalezaComprobante != "Compra") { System.Collections.Generic.List<Entidades.PuntoVta> listaPV = ((Entidades.Sesion)Session["Sesion"]).UN.PuntosVta.FindAll(delegate(Entidades.PuntoVta pv) { return pv.IdTipoPuntoVta == "RG2904" && pv.Nro == Convert.ToInt32(puntoDeVenta); }); if (listaPV.Count != 0) { try { imptot -= listadelineas[i].importe_iva; } catch { } } } impivas[k] += imptot * listadelineas[i].alicuota_iva / 100; //listadelineas[i].importe_iva; impivasinformados[k] = true; } } } } for (int j = 0; j<impivas.Length; j++) { if (impivasinformados[j]) { impuestos = ((System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); FeaEntidades.CodigosImpuesto.IVA iva = new FeaEntidades.CodigosImpuesto.IVA(); imp.codigo_impuesto = iva.Codigo; imp.importe_impuesto = Math.Round(impivas[j], 2); imp.porcentaje_impuestoSpecified = true; //imp.porcentaje_impuesto = FeaEntidades.IVA.IVA.ListaMinimaSinCero()[j].Codigo; imp.porcentaje_impuesto = FeaEntidades.IVA.IVA.ListaMinima()[j].Codigo; imp.descripcion = iva.Descr; EliminarFilaAutomatica(); impuestos.Add(imp); } } impuestosGridView.DataSource = impuestos; impuestosGridView.DataBind(); ViewState["impuestos"] = impuestos; BindearDropDownLists(); }
internal void AgregarImpuestosIVA(System.Collections.Generic.List<FeaEntidades.InterFacturas.linea> listadelineas) { System.Collections.Generic.List<FeaEntidades.IVA.IVA> listaIVA = FeaEntidades.IVA.IVA.ListaMinimaSinCero(); double[] impivas = new double[listaIVA.Count]; bool[] impivasinformados = new bool[listaIVA.Count]; for (int i = 0; i < listadelineas.Count; i++) { if (listadelineas[i].alicuota_ivaSpecified) { int k=listaIVA.FindIndex(delegate(FeaEntidades.IVA.IVA e) { return e.Codigo == listadelineas[i].alicuota_iva; }); if (k >= 0) { impivas[k] += listadelineas[i].importe_iva; impivasinformados[k] = true; } } } for (int j = 0; j<impivas.Length; j++) { if (impivasinformados[j]) { impuestos = ((System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); FeaEntidades.CodigosImpuesto.IVA iva = new FeaEntidades.CodigosImpuesto.IVA(); imp.codigo_impuesto = iva.Codigo; imp.importe_impuesto = Math.Round(impivas[j], 2); imp.porcentaje_impuestoSpecified = true; imp.porcentaje_impuesto = FeaEntidades.IVA.IVA.ListaMinimaSinCero()[j].Codigo; imp.descripcion = iva.Descr; EliminarFilaAutomatica(); impuestos.Add(imp); } } impuestosGridView.DataSource = impuestos; impuestosGridView.DataBind(); ViewState["impuestos"] = impuestos; BindearDropDownLists(); }
protected void impuestosGridView_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos> impuestos = ((System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos r = impuestos[e.RowIndex]; impuestos.Remove(r); if (impuestos.Count.Equals(0)) { FeaEntidades.InterFacturas.resumenImpuestos nueva = new FeaEntidades.InterFacturas.resumenImpuestos(); impuestos.Add(nueva); } impuestosGridView.EditIndex = -1; impuestosGridView.DataSource = ViewState["impuestos"]; impuestosGridView.DataBind(); BindearDropDownLists(); } catch { } }
protected void impuestosGridView_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName.Equals("AddImpuestoGlobal")) { try { FeaEntidades.InterFacturas.resumenImpuestos r = new FeaEntidades.InterFacturas.resumenImpuestos(); int auxcodigo_impuesto = Convert.ToInt32(((DropDownList)impuestosGridView.FooterRow.FindControl("ddlcodigo_impuesto")).SelectedValue); r.codigo_impuesto = auxcodigo_impuesto; string auxpi = ((TextBox)impuestosGridView.FooterRow.FindControl("txtalicuota")).Text; if (!auxpi.Equals(string.Empty)) { double auxporcentaje_impuesto = Convert.ToDouble(auxpi); r.porcentaje_impuesto = auxporcentaje_impuesto; r.porcentaje_impuestoSpecified = true; } else { r.porcentaje_impuestoSpecified = false; } int auxcodigo_jurisdiccion = Convert.ToInt32(((DropDownList)impuestosGridView.FooterRow.FindControl("ddljurisdiccion")).SelectedValue); if (!auxcodigo_jurisdiccion.Equals(0)) { r.codigo_jurisdiccion = auxcodigo_jurisdiccion; r.codigo_jurisdiccionSpecified = true; } else { r.codigo_jurisdiccion = 0; r.codigo_jurisdiccionSpecified = false; } r.descripcion = ((DropDownList)impuestosGridView.FooterRow.FindControl("ddlcodigo_impuesto")).SelectedItem.Text; string auxTotal = ((TextBox)impuestosGridView.FooterRow.FindControl("txtimporte_impuesto")).Text; if (!auxTotal.Contains(",")) { double auxImp = Convert.ToDouble(auxTotal); if (!auxImp.Equals(0)) { r.importe_impuesto = auxImp; } else { throw new Exception("Impuesto global no agregado porque el importe debe ser mayor a 0"); } } else { throw new Exception("Impuesto global no agregado porque el separador de decimales debe ser el punto"); } ((System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]).Add(r); //Me fijo si elimino la fila automática EliminarFilaAutomatica(); //Saco de edición la fila que estén modificando if (!impuestosGridView.EditIndex.Equals(-1)) { impuestosGridView.EditIndex = -1; } impuestosGridView.DataSource = ViewState["impuestos"]; impuestosGridView.DataBind(); BindearDropDownLists(); } catch (Exception ex) { ScriptManager.RegisterStartupScript(this.Parent.Page, GetType(), "Message", "<SCRIPT LANGUAGE='javascript'>alert('" + ex.Message.ToString().Replace("'", "") + "');</SCRIPT>", false); } } }
public System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos> EliminarImpuestosIVA() { impuestos = ((System.Collections.Generic.List<FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); impuestos.RemoveAll(delegate(FeaEntidades.InterFacturas.resumenImpuestos e) { return e.codigo_impuesto == new FeaEntidades.CodigosImpuesto.IVA().Codigo; }); if (impuestos.Count.Equals(0)) { FeaEntidades.InterFacturas.resumenImpuestos nueva = new FeaEntidades.InterFacturas.resumenImpuestos(); impuestos.Add(nueva); } impuestosGridView.DataSource = impuestos; impuestosGridView.DataBind(); ViewState["impuestos"] = impuestos; BindearDropDownLists(); return impuestos; }
private void ExcelButton_Click(object sender, EventArgs e) { OpenFileDialog xlsOpenFileDialog = new OpenFileDialog(); xlsOpenFileDialog.Filter = "Archivos Excel (*.xls)|*.xls|Todos los archivos (*.*)|*.*"; xlsOpenFileDialog.Multiselect = false; xlsOpenFileDialog.FilterIndex = 1; xlsOpenFileDialog.RestoreDirectory = true; if (xlsOpenFileDialog.ShowDialog() == DialogResult.OK) { try { string archivo = xlsOpenFileDialog.FileName; FeaEntidades.InterFacturas.lote_comprobantes lote = new FeaEntidades.InterFacturas.lote_comprobantes(); FeaEntidades.InterFacturas.cabecera compcab = new FeaEntidades.InterFacturas.cabecera(); FeaEntidades.InterFacturas.comprobante comp = new FeaEntidades.InterFacturas.comprobante(); comp.cabecera = compcab; lote.comprobante[0] = comp; List<FeaEntidades.Excel.Ubicador> lista = FeaEntidades.Excel.Ubicador.Lista(); foreach (FeaEntidades.Excel.Ubicador u in lista) { FileHelpers.DataLink.ExcelStorage provider = new FileHelpers.DataLink.ExcelStorage(u.GetType()); provider.StartRow = u.X; provider.StartColumn = u.Y; provider.FileName = @archivo; provider.SheetName = "XML"; Object[] oArray = (Object[])System.Array.CreateInstance(u.GetType(), 10); oArray = (Object[])provider.ExtractRecords(); foreach (Object o in oArray) { FileHelpers.DataLink.ExcelStorage providerInterno = new FileHelpers.DataLink.ExcelStorage(System.Type.GetType("FeaEntidades.InterFacturas." + ((FeaEntidades.Excel.Ubicador)o).Tipo + ", FeaEntidades")); providerInterno.StartRow = ((FeaEntidades.Excel.Ubicador)o).Y; providerInterno.StartColumn = ((FeaEntidades.Excel.Ubicador)o).X; providerInterno.FileName = @archivo; providerInterno.SheetName = "XML"; Object[] oArrayInterno = (Object[])System.Array.CreateInstance(System.Type.GetType("FeaEntidades.InterFacturas." + ((FeaEntidades.Excel.Ubicador)o).Tipo + ", FeaEntidades"), 10); oArrayInterno = (Object[])providerInterno.ExtractRecords(); if (oArrayInterno.Length > 0) { switch (oArrayInterno.GetType().ToString()) { case "FeaEntidades.InterFacturas.cabecera_lote[]": lote.cabecera_lote = (FeaEntidades.InterFacturas.cabecera_lote)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.informacion_comprador[]": compcab.informacion_comprador = (FeaEntidades.InterFacturas.informacion_comprador)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.informacion_comprobante[]": compcab.informacion_comprobante = (FeaEntidades.InterFacturas.informacion_comprobante)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.informacion_comprobanteReferencias[]": compcab.informacion_comprobante.referencias = (FeaEntidades.InterFacturas.informacion_comprobanteReferencias[])oArrayInterno; break; case "FeaEntidades.InterFacturas.informacion_vendedor[]": compcab.informacion_vendedor = (FeaEntidades.InterFacturas.informacion_vendedor)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.detalle[]": comp.detalle = (FeaEntidades.InterFacturas.detalle)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.linea[]": comp.detalle.linea = (FeaEntidades.InterFacturas.linea[])oArrayInterno; break; case "FeaEntidades.InterFacturas.lineaImportes_moneda_origen[]": break; case "FeaEntidades.InterFacturas.lineaImpuestos[]": break; case "FeaEntidades.InterFacturas.lineaDescuentos[]": break; case "FeaEntidades.InterFacturas.resumen[]": comp.resumen = (FeaEntidades.InterFacturas.resumen)oArrayInterno[0]; break; case "FeaEntidades.InterFacturas.resumenDescuentos[]": comp.resumen.descuentos = (FeaEntidades.InterFacturas.resumenDescuentos[])oArrayInterno; break; case "FeaEntidades.InterFacturas.resumenImportes_moneda_origen[]": break; case "FeaEntidades.InterFacturas.resumenImpuestos[]": FeaEntidades.InterFacturas.resumenImpuestos[] impLista = ((FeaEntidades.InterFacturas.resumenImpuestos[])oArrayInterno); FeaEntidades.InterFacturas.resumenImpuestos[] impNewLista = new FeaEntidades.InterFacturas.resumenImpuestos[10]; for (int im = 0; im < impLista.Length; im++) { if (impLista[im].importe_impuesto != 0) { impNewLista[im] = impLista[im]; } } comp.resumen.impuestos = impNewLista; break; } } } } System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(lote.GetType()); System.Text.StringBuilder sb = new System.Text.StringBuilder(); if (d != null) { sb.Append(@d); sb.Append(System.IO.Path.DirectorySeparatorChar); } else { throw new Exception("Debe elegir un directorio primero"); } sb.Append(lote.cabecera_lote.cuit_vendedor); sb.Append("-"); sb.Append(lote.cabecera_lote.punto_de_venta.ToString("0000")); sb.Append("-"); sb.Append(lote.comprobante[0].cabecera.informacion_comprobante.tipo_de_comprobante.ToString("00")); sb.Append("-"); sb.Append(lote.comprobante[0].cabecera.informacion_comprobante.numero_comprobante.ToString("00000000")); sb.Append(".xml"); System.IO.Stream fs = new System.IO.FileStream(sb.ToString(), System.IO.FileMode.Create); System.Xml.XmlWriter writer = new System.Xml.XmlTextWriter(fs, System.Text.Encoding.GetEncoding("ISO-8859-1")); x.Serialize(writer, lote); fs.Close(); System.Diagnostics.Process.Start(sb.ToString()); } catch(NullReferenceException) { try { throw new Exception("El archivo seleccionado no está generado desde el template excel"); } catch (Exception exc) { Microsoft.ApplicationBlocks.ExceptionManagement.ExceptionManager.Publish(exc); } } catch (Exception ex) { Microsoft.ApplicationBlocks.ExceptionManagement.ExceptionManager.Publish(ex); } } }
protected void impuestosGridView_RowUpdating(object sender, GridViewUpdateEventArgs e) { try { System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos> impuestos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos r = impuestos[e.RowIndex]; int auxcodigo_impuesto = Convert.ToInt32(((DropDownList)impuestosGridView.Rows[e.RowIndex].FindControl("ddlcodigo_impuestoEdit")).SelectedValue); r.codigo_impuesto = auxcodigo_impuesto; string auxdescr_impuesto = ((DropDownList)impuestosGridView.Rows[e.RowIndex].FindControl("ddlcodigo_impuestoEdit")).SelectedItem.Text; r.descripcion = auxdescr_impuesto; string auxAlicuota = ((TextBox)impuestosGridView.Rows[e.RowIndex].FindControl("txtalicuota")).Text; if (!auxAlicuota.Contains(",")) { r.porcentaje_impuesto = Convert.ToDouble(auxAlicuota); r.porcentaje_impuestoSpecified = true; } else { throw new Exception("Impuesto global no actualizado porque el separador de decimales debe ser el punto"); } string auxTotal = ((TextBox)impuestosGridView.Rows[e.RowIndex].FindControl("txtimporte_impuesto")).Text; if (!auxTotal.Contains(",")) { double auxImp = Convert.ToDouble(auxTotal); if (!auxImp.Equals(0)) { r.importe_impuesto = auxImp; } else { if (r.porcentaje_impuesto != 0) { throw new Exception("Impuesto global no actualizado porque el importe debe ser mayor a 0"); } } } else { throw new Exception("Impuesto global no actualizado porque el separador de decimales debe ser el punto"); } int auxjurisdiccion = Convert.ToInt32(((DropDownList)impuestosGridView.Rows[e.RowIndex].FindControl("ddljurisdiccionEdit")).SelectedValue); if (!auxjurisdiccion.Equals(0)) { r.codigo_jurisdiccion = auxjurisdiccion; r.codigo_jurisdiccionSpecified = true; } else { r.codigo_jurisdiccion = 0; r.codigo_jurisdiccionSpecified = false; } impuestosGridView.EditIndex = -1; impuestosGridView.DataSource = ViewState["impuestos"]; impuestosGridView.DataBind(); BindearDropDownLists(); Session["FaltaCalcularTotales"] = true; } catch (Exception ex) { ScriptManager.RegisterStartupScript(this.Parent.Page, GetType(), "Message", Funciones.TextoScript(ex.Message), false); } }
protected void impuestosGridView_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName.Equals("AddImpuestoGlobal")) { try { FeaEntidades.InterFacturas.resumenImpuestos r = new FeaEntidades.InterFacturas.resumenImpuestos(); int auxcodigo_impuesto = Convert.ToInt32(((DropDownList)impuestosGridView.FooterRow.FindControl("ddlcodigo_impuesto")).SelectedValue); r.codigo_impuesto = auxcodigo_impuesto; string auxpi = ((TextBox)impuestosGridView.FooterRow.FindControl("txtalicuota")).Text; if (!auxpi.Equals(string.Empty)) { double auxporcentaje_impuesto = Convert.ToDouble(auxpi); r.porcentaje_impuesto = auxporcentaje_impuesto; r.porcentaje_impuestoSpecified = true; } else { r.porcentaje_impuestoSpecified = false; } int auxcodigo_jurisdiccion = Convert.ToInt32(((DropDownList)impuestosGridView.FooterRow.FindControl("ddljurisdiccion")).SelectedValue); if (!auxcodigo_jurisdiccion.Equals(0)) { r.codigo_jurisdiccion = auxcodigo_jurisdiccion; r.codigo_jurisdiccionSpecified = true; } else { r.codigo_jurisdiccion = 0; r.codigo_jurisdiccionSpecified = false; } r.descripcion = ((DropDownList)impuestosGridView.FooterRow.FindControl("ddlcodigo_impuesto")).SelectedItem.Text; string auxTotal = ((TextBox)impuestosGridView.FooterRow.FindControl("txtimporte_impuesto")).Text; if (!auxTotal.Contains(",")) { double auxImp = Convert.ToDouble(auxTotal); if (!auxImp.Equals(0)) { r.importe_impuesto = auxImp; } else { if (r.porcentaje_impuesto != 0) { throw new Exception("Impuesto global no agregado porque el importe debe ser mayor a 0"); } } } else { throw new Exception("Impuesto global no agregado porque el separador de decimales debe ser el punto"); } ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]).Add(r); //Me fijo si elimino la fila automática EliminarFilaAutomatica(); //Saco de edición la fila que estén modificando if (!impuestosGridView.EditIndex.Equals(-1)) { impuestosGridView.EditIndex = -1; } impuestosGridView.DataSource = ViewState["impuestos"]; impuestosGridView.DataBind(); BindearDropDownLists(); Session["FaltaCalcularTotales"] = true; } catch (Exception ex) { ScriptManager.RegisterStartupScript(this.Parent.Page, GetType(), "Message", Funciones.TextoScript(ex.Message), false); } } }
public void ConsultarN(List<eFact_I_Bj.Entidades.ComprobanteBj> Comprobantes, FeaEntidades.InterFacturas.lote_comprobantes Lc, eFact_I_Bj.RN.TableroBj.TipoConsulta TipoConsulta, DateTime FechaDsd, DateTime FechaHst, string IdTipoComprobante, string PuntoVenta, string NumeroComprobante, bool VerificarExistenciaCAE) { StringBuilder commandText = new StringBuilder(); commandText.Append("DECLARE @FechaDsd as Datetime DECLARE @FechaHst as Datetime DECLARE @NroComp as Varchar(250) "); commandText.Append("SET @FechaDsd='" + FechaDsd.ToString("yyyyMMdd") + "' "); commandText.Append("SET @FechaHst='" + FechaHst.ToString("yyyyMMdd") + "' "); if (NumeroComprobante != string.Empty) { commandText.Append("SET @NroComp='" + NumeroComprobante + "' "); } commandText.Append("select gva12.id_gva12, gva12.cod_client, gva12.cat_iva, gva12.fecha_emis, gva12.n_comp, gva12.t_comp, gva12.cotiz, gva12.importe_iv, round(gva12.importe_iv * gva12.cotiz, 6) as importe_iv_pesos, gva12.unidades, gva12.importe, round((gva12.unidades - gva12.importe_iv) * gva12.cotiz, 6) as ImpTotalNetoGravado, gva12.pto_vta, gva12.leyenda_1, gva12.leyenda_2, gva12.leyenda_3, gva12.leyenda_4, gva12.leyenda_5, gva12.MON_CTE, "); commandText.Append("gva14.c_postal, gva14.cod_provin, gva14.cuit, gva14.domicilio, gva14.localidad, gva14.nom_com, gva14.tipo_doc "); commandText.Append("from GVA12 "); commandText.Append("inner join gva14 on gva12.cod_client=gva14.cod_client "); if (NumeroComprobante != string.Empty) { commandText.Append("and gva12.n_comp like '%'+@NroComp+'%' "); } else { commandText.Append("where fecha_emis >= @FechaDsd and fecha_emis < Dateadd (Day, 1, @FechaHst) "); } commandText.Append("select gva12.id_gva12, gva12.cod_client, gva12.cat_iva, gva12.fecha_emis, gva12.n_comp, gva12.t_comp, gva12.cotiz, gva12.importe_iv, gva12.unidades, gva12.importe, "); commandText.Append("gva14.id_gva14, gva14.c_postal, gva14.cod_provin, gva14.cuit, gva14.domicilio, gva14.localidad, gva14.nom_com, gva14.tipo_doc, "); commandText.Append("gva53.cantidad, gva53.id_medida_ventas, GVA53.PRECIO_NET, round(GVA53.PRECIO_NET * gva12.cotiz, 7) as PRECIO_NET_pesos, gva53.IMP_NETO_P, round(GVA53.IMP_NETO_P * gva12.cotiz, 6) as IMP_NETO_P_pesos, GVA53.PORC_IVA, "); commandText.Append("sta11.descripcio, "); commandText.Append("medida.cod_medida "); commandText.Append("from GVA12 "); commandText.Append("inner join gva14 on gva12.cod_client=gva14.cod_client "); commandText.Append("inner join gva53 on gva53.N_comp=gva12.n_comp and gva53.t_comp=gva12.t_comp "); commandText.Append("inner join sta11 on gva53.COD_ARTICU=sta11.cod_articu "); commandText.Append("inner join medida on gva53.ID_MEDIDA_VENTAS=medida.id_medida "); if (NumeroComprobante != string.Empty) { commandText.Append("and gva12.n_comp like '%'+@NroComp+'%' "); } else { commandText.Append("where fecha_emis >= @FechaDsd and fecha_emis < Dateadd (Day, 1, @FechaHst) "); } DataSet ds = new DataSet(); ds = (DataSet)Ejecutar(commandText.ToString(), TipoRetorno.DS, Transaccion.Acepta, sesion.CnnStrAplicExterna); commandText = commandText.Remove(0, commandText.Length); commandText.Append("select * from vendedores where cuitvendedor='33709728119' "); DataTable dsTable = new DataTable(); dsTable = ((DataTable)Ejecutar(commandText.ToString(), TipoRetorno.TB, Transaccion.Acepta, sesion.CnnStr)).Copy(); dsTable.TableName = "Vendedor"; ds.Tables.Add(dsTable); ds.AcceptChanges(); commandText = commandText.Remove(0, commandText.Length); commandText.Append("select * from GVA15 "); DataTable dsTable1 = new DataTable(); dsTable1 = ((DataTable)Ejecutar(commandText.ToString(), TipoRetorno.TB, Transaccion.Acepta, sesion.CnnStrAplicExterna)).Copy(); dsTable1.TableName = "TComprobantes"; ds.Tables.Add(dsTable1); ds.AcceptChanges(); if (ds.Tables.Count == 0) { throw new Microsoft.ApplicationBlocks.ExceptionManagement.Validaciones.NoHayDatos(); } else { try { DataTable dt = ds.Tables[0]; DataTable dt2 = ds.Tables[2]; DataTable dtTComprobantes = ds.Tables[3]; //Crear "cabecera" del lote de comprobantes Lc.cabecera_lote = new FeaEntidades.InterFacturas.cabecera_lote(); Lc.cabecera_lote.cuit_canal = Convert.ToInt64(@System.Configuration.ConfigurationManager.AppSettings["CuitCanal"].ToString()); Lc.cabecera_lote.cuit_vendedor = Convert.ToInt64(dt2.Rows[0]["CuitVendedor"]); Lc.cabecera_lote.cantidad_reg = dt.Rows.Count; Lc.cabecera_lote.id_lote = Convert.ToInt64(DateTime.Now.ToString("yyyyMMddHHmmss")); Lc.cabecera_lote.fecha_envio_lote = DateTime.Now.ToString("yyyyMMdd") + " " + DateTime.Now.ToString("HHmmss"); for (int i = 0; i < dt.Rows.Count; i++) { eFact_I_Bj.Entidades.ComprobanteBj Comprobante = new eFact_I_Bj.Entidades.ComprobanteBj(); //Crear "lote_comprobantes" //FeaEntidades.InterFacturas.lote_comprobantes lc = new FeaEntidades.InterFacturas.lote_comprobantes(); //Crear "comprobante" del lote de comprobantes FeaEntidades.InterFacturas.comprobante c = new FeaEntidades.InterFacturas.comprobante(); //Crear "cabecera" del comprobante c.cabecera = new FeaEntidades.InterFacturas.cabecera(); //Crear "informacion_comprador" de la cabecera del comprobante c.cabecera.informacion_comprador = new FeaEntidades.InterFacturas.informacion_comprador(); //Crear "informacion_vendedor" de la cabecera del comprobante c.cabecera.informacion_vendedor = new FeaEntidades.InterFacturas.informacion_vendedor(); //Crear "informacion_comprobante" de la cabecera del comprobante c.cabecera.informacion_comprobante = new FeaEntidades.InterFacturas.informacion_comprobante(); //Crear "detalle" del comprobante. c.detalle = new FeaEntidades.InterFacturas.detalle(); //Crear "resumen" del comprobante. c.resumen = new FeaEntidades.InterFacturas.resumen(); Comprobante.Clave = Convert.ToInt32(dt.Rows[i]["id_gva12"]); //Comprobante.Vendedor.Codigo = dt.Rows[i]["Codigo"].ToString(); // Armar switch con cada tipo de comprobante de Tango a Cedeira string letraComprobante = dt.Rows[i]["n_comp"].ToString().Substring(0, 1); switch (dt.Rows[i]["t_comp"].ToString()) { case "FAC": if (letraComprobante == "A") { FeaEntidades.TiposDeComprobantes.Facturas.A tc = new FeaEntidades.TiposDeComprobantes.Facturas.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } else { FeaEntidades.TiposDeComprobantes.Facturas.B tc = new FeaEntidades.TiposDeComprobantes.Facturas.B(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } break; case "N/D": if (letraComprobante == "A") { FeaEntidades.TiposDeComprobantes.NotasDebito.A tc = new FeaEntidades.TiposDeComprobantes.NotasDebito.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } else { FeaEntidades.TiposDeComprobantes.NotasDebito.B tc = new FeaEntidades.TiposDeComprobantes.NotasDebito.B(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } break; case "N/C": if (letraComprobante == "A") { FeaEntidades.TiposDeComprobantes.NotasCredito.A tc = new FeaEntidades.TiposDeComprobantes.NotasCredito.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } else { FeaEntidades.TiposDeComprobantes.NotasCredito.B tc = new FeaEntidades.TiposDeComprobantes.NotasCredito.B(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } break; case "LIQ": if (letraComprobante == "A") { FeaEntidades.TiposDeComprobantes.Liquidacion.A tc = new FeaEntidades.TiposDeComprobantes.Liquidacion.A(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } else { FeaEntidades.TiposDeComprobantes.Liquidacion.B tc = new FeaEntidades.TiposDeComprobantes.Liquidacion.B(); c.cabecera.informacion_comprobante.tipo_de_comprobante = tc.Codigo; Comprobante.IdTipoComprobante = tc.Codigo.ToString(); } break; case "NDI": break; case "NCI": break; } FeaEntidades.InterFacturas.informacion_comprador feaEntidadinfComprador = new FeaEntidades.InterFacturas.informacion_comprador(); Comprobante.NumeroComprobante = dt.Rows[i]["n_comp"].ToString(); c.cabecera.informacion_comprobante.numero_comprobante = Convert.ToInt64(Comprobante.NumeroComprobante.Substring(5, Comprobante.NumeroComprobante.Length - 5)); Comprobante.PuntoVenta = Convert.ToInt32(Comprobante.NumeroComprobante.Substring(1, 4)); Lc.cabecera_lote.punto_de_venta = Comprobante.PuntoVenta; c.cabecera.informacion_comprobante.punto_de_venta = Comprobante.PuntoVenta; // Armar switch con cada tipo doc de Tango a Cedeira Comprobante.Comprador.TipoDoc = Convert.ToInt16(dt.Rows[i]["tipo_doc"]); feaEntidadinfComprador.codigo_doc_identificatorio = Comprobante.Comprador.TipoDoc; Comprobante.Comprador.NroDoc = dt.Rows[i]["cuit"].ToString(); feaEntidadinfComprador.nro_doc_identificatorio = Convert.ToInt64(Comprobante.Comprador.NroDoc.Replace("-", string.Empty)); feaEntidadinfComprador.codigo_interno = ""; Comprobante.Comprador.Nombre = dt.Rows[i]["nom_com"].ToString(); feaEntidadinfComprador.denominacion = Comprobante.Comprador.Nombre; feaEntidadinfComprador.denominacion = Comprobante.Comprador.Nombre; Comprobante.Comprador.DomicilioCalle = dt.Rows[i]["domicilio"].ToString(); feaEntidadinfComprador.domicilio_calle = Comprobante.Comprador.DomicilioCalle; Comprobante.Comprador.CondicionIVA = dt.Rows[i]["cat_iva"].ToString(); FeaEntidades.CondicionesIVA.ResponsableInscripto condicionIVA = new FeaEntidades.CondicionesIVA.ResponsableInscripto(); feaEntidadinfComprador.condicion_IVA = condicionIVA.Codigo; feaEntidadinfComprador.condicion_IVASpecified = true; Comprobante.Comprador.Localidad = dt.Rows[i]["localidad"].ToString(); feaEntidadinfComprador.localidad = Comprobante.Comprador.Localidad; Comprobante.Comprador.Provincia = DeterminarProvincia(Convert.ToInt16(dt.Rows[i]["cod_provin"])); feaEntidadinfComprador.provincia = Convert.ToString(Comprobante.Comprador.Provincia); Comprobante.Comprador.CP = dt.Rows[i]["c_postal"].ToString(); feaEntidadinfComprador.cp = Comprobante.Comprador.CP; //Comprobante.Comprador.Telefono = dt.Rows[i]["Comprador_telefono"].ToString(); //Comprobante.Comprador.EMail = dt.Rows[i]["Comprador_email"].ToString(); Comprobante.Fecha = Convert.ToDateTime(dt.Rows[i]["fecha_emis"]); c.cabecera.informacion_comprobante.fecha_emision = Comprobante.Fecha.ToString("yyyyMMdd"); if (!dt.Rows[i]["leyenda_1"].ToString().Equals(string.Empty)) { Comprobante.FechaVto = Convert.ToDateTime(dt.Rows[i]["leyenda_1"].ToString(), cedeiraCultura.DateTimeFormat); c.cabecera.informacion_comprobante.fecha_vencimiento = Comprobante.FechaVto.ToString("yyyyMMdd"); } else { Comprobante.FechaVto = Convert.ToDateTime("1970/05/22", cedeiraCultura.DateTimeFormat); //c.cabecera.informacion_comprobante.fecha_vencimiento = Comprobante.FechaVto.ToString("yyyyMMdd"); } //Comprobante.Importe = Convert.ToDecimal(dt.Rows[i]["importe"]); //Comprobante.ImporteNetoGravado = Convert.ToDecimal(dt.Rows[i]["PRECIO_NET"]); //Comprobante.ImporteNetoNoGravado = Convert.ToDecimal(dt.Rows[i]["importe"]); //feaEntidadComprobante.Imp_neto = Comprobante.ImporteNetoNoGravado; //Comprobante.ImporteOpsExentas = Convert.ToDecimal(dt.Rows[i]["Resumen_importe_operaciones_exentas"]); //Comprobante.ImpuestoLiq = Convert.ToDecimal(dt.Rows[i]["Resumen_impuesto_liq"]); //Comprobante.ImpuestoRNI = Convert.ToDecimal(dt.Rows[i]["Resumen_impuesto_liq_rni"]); //Comprobante.ImpuestosNacionales = Convert.ToDecimal(dt.Rows[i]["Resumen_importe_total_impuestos_nacionales"]); //Comprobante.CantAlicuotasIVA = Convert.ToInt32(dt.Rows[i]["Resumen_cant_alicuotas_iva"]); //if (dt.Rows[i]["Comprobante_cae"] != System.DBNull.Value && dt.Rows[i]["Comprobante_cae"].ToString() != "") //{ // Comprobante.NumeroCAE = dt.Rows[i]["Comprobante_cae"].ToString(); // Comprobante.FechaVtoCAE = Convert.ToDateTime(dt.Rows[i]["Comprobante_fecha_vencimiento_cae"]); //} Comprobante.Vendedor.CuitVendedor = dt2.Rows[0]["CuitVendedor"].ToString(); FeaEntidades.InterFacturas.informacion_vendedor feaEntidadInfVendedor = new FeaEntidades.InterFacturas.informacion_vendedor(); feaEntidadInfVendedor.cuit = Convert.ToInt64(Comprobante.Vendedor.CuitVendedor.Replace("-", string.Empty)); Comprobante.Vendedor.Nombre = dt2.Rows[0]["Nombre"].ToString(); feaEntidadInfVendedor.razon_social = Comprobante.Vendedor.Nombre; Comprobante.Vendedor.NumeroSerieCertificado = dt2.Rows[0]["NumeroSerieCertificado"].ToString(); //System.IO.MemoryStream memStream = new System.IO.MemoryStream(dt2.Rows[i]["Logo"]); //Byte[] logo = memStream.GetBuffer(); //Comprobante.Vendedor.Logo = dt2.Rows[i]["Logo"]; Comprobante.Vendedor.Codigo = dt2.Rows[0]["Codigo"].ToString(); feaEntidadInfVendedor.codigo_interno = Comprobante.Vendedor.Codigo; Comprobante.Vendedor.InicioActividades = Convert.ToDateTime(dt2.Rows[0]["InicioActividades"]); feaEntidadInfVendedor.inicio_de_actividades = Comprobante.Vendedor.InicioActividades.ToString("yyyyMMdd"); Comprobante.Vendedor.Contacto = dt2.Rows[0]["Contacto"].ToString(); feaEntidadInfVendedor.contacto = Comprobante.Vendedor.Contacto; Comprobante.Vendedor.DomicilioCalle = dt2.Rows[0]["DomicilioCalle"].ToString(); feaEntidadInfVendedor.domicilio_calle = Comprobante.Vendedor.DomicilioCalle; Comprobante.Vendedor.DomicilioNumero = dt2.Rows[0]["DomicilioNumero"].ToString(); feaEntidadInfVendedor.domicilio_numero = Comprobante.Vendedor.DomicilioNumero; Comprobante.Vendedor.DomicilioPiso = dt2.Rows[0]["DomicilioPiso"].ToString(); feaEntidadInfVendedor.domicilio_piso = Comprobante.Vendedor.DomicilioPiso; Comprobante.Vendedor.DomicilioDepto = dt2.Rows[0]["DomicilioDepto"].ToString(); feaEntidadInfVendedor.domicilio_depto = Comprobante.Vendedor.DomicilioDepto; Comprobante.Vendedor.DomicilioSector = dt2.Rows[0]["DomicilioSector"].ToString(); feaEntidadInfVendedor.domicilio_sector = Comprobante.Vendedor.DomicilioSector; Comprobante.Vendedor.DomicilioTorre = dt2.Rows[0]["DomicilioTorre"].ToString(); feaEntidadInfVendedor.domicilio_torre = Comprobante.Vendedor.DomicilioTorre; Comprobante.Vendedor.DomicilioManzana = dt2.Rows[0]["DomicilioManzana"].ToString(); feaEntidadInfVendedor.domicilio_manzana = Comprobante.Vendedor.DomicilioManzana; Comprobante.Vendedor.CondicionIVA = Convert.ToInt32(dt2.Rows[0]["CondicionIVA"]); feaEntidadInfVendedor.condicion_IVA = Comprobante.Vendedor.CondicionIVA; feaEntidadInfVendedor.condicion_IVASpecified = true; Comprobante.Vendedor.CondicionIB = Convert.ToInt32(dt2.Rows[0]["CondicionIB"]); feaEntidadInfVendedor.condicion_ingresos_brutos = Comprobante.Vendedor.CondicionIB; feaEntidadInfVendedor.condicion_ingresos_brutosSpecified = true; Comprobante.Vendedor.NroIB = dt2.Rows[0]["NroIB"].ToString(); feaEntidadInfVendedor.nro_ingresos_brutos = Comprobante.Vendedor.NroIB; Comprobante.Vendedor.Localidad = dt2.Rows[0]["Localidad"].ToString(); feaEntidadInfVendedor.localidad = Comprobante.Vendedor.Localidad; Comprobante.Vendedor.Provincia = DeterminarProvincia(Convert.ToInt16(dt2.Rows[0]["Provincia"])).ToString(); feaEntidadInfVendedor.provincia = Comprobante.Vendedor.Provincia; Comprobante.Vendedor.CP = dt2.Rows[0]["CP"].ToString(); feaEntidadInfVendedor.cp = Comprobante.Vendedor.CP; Comprobante.Vendedor.Telefono = dt2.Rows[0]["Telefono"].ToString(); feaEntidadInfVendedor.telefono = Comprobante.Vendedor.Telefono; Comprobante.Vendedor.EMail = dt2.Rows[0]["EMail"].ToString(); feaEntidadInfVendedor.email = Comprobante.Vendedor.EMail; c.cabecera.informacion_comprador = feaEntidadinfComprador; c.cabecera.informacion_vendedor = feaEntidadInfVendedor; c.resumen.tipo_de_cambio = Convert.ToDouble(dt.Rows[i]["cotiz"]); Comprobante.TipoDeCambio = Convert.ToDouble(dt.Rows[i]["cotiz"]); c.resumen.importe_total_factura = Math.Round(Convert.ToDouble(dt.Rows[i]["importe"]), 2); c.resumen.impuesto_liq = Math.Round(Convert.ToDouble(dt.Rows[i]["importe_iv_pesos"]), 2); if (c.resumen.impuesto_liq != 0) { c.resumen.importe_total_neto_gravado = Math.Round(Convert.ToDouble(dt.Rows[i]["ImpTotalNetoGravado"]), 2); } else { c.resumen.importe_total_concepto_no_gravado = Math.Round(Convert.ToDouble(dt.Rows[i]["ImpTotalNetoGravado"]), 2); } //Guardar Leyendas List<string> leyendas = new List<string>(); leyendas.Add(dt.Rows[i]["leyenda_1"].ToString()); leyendas.Add(dt.Rows[i]["leyenda_2"].ToString()); leyendas.Add(dt.Rows[i]["leyenda_3"].ToString()); leyendas.Add(dt.Rows[i]["leyenda_4"].ToString()); leyendas.Add(dt.Rows[i]["leyenda_5"].ToString()); Comprobante.Leyendas = leyendas; //List<FeaEntidades.CodigosMoneda.CodigoMoneda> listaCodMoneda = FeaEntidades.CodigosMoneda.CodigoMoneda.Lista(); if (!Convert.ToBoolean(dt.Rows[i]["MON_CTE"])) { c.resumen.codigo_moneda = "DOL"; Comprobante.IdMoneda = "DOL"; c.resumen.importes_moneda_origen = new FeaEntidades.InterFacturas.resumenImportes_moneda_origen(); c.resumen.importes_moneda_origen.impuesto_liq = Math.Round(Convert.ToDouble(dt.Rows[i]["importe_iv"]), 2); c.resumen.importes_moneda_origen.importe_total_factura = Math.Round(Convert.ToDouble(dt.Rows[i]["unidades"]), 2); if (c.resumen.importes_moneda_origen.impuesto_liq != 0) { c.resumen.importes_moneda_origen.importe_total_neto_gravado = Math.Round(c.resumen.importes_moneda_origen.importe_total_factura - c.resumen.importes_moneda_origen.impuesto_liq, 2); } else { c.resumen.importes_moneda_origen.importe_total_concepto_no_gravado = Math.Round(c.resumen.importes_moneda_origen.importe_total_factura - c.resumen.importes_moneda_origen.impuesto_liq, 2); } Comprobante.Importe = Math.Round(Convert.ToDecimal(dt.Rows[i]["unidades"]), 2); } else { c.resumen.codigo_moneda = "PES"; Comprobante.IdMoneda = "PES"; Comprobante.Importe = Math.Round(Convert.ToDecimal(dt.Rows[i]["importe"]), 2); } FeaEntidades.InterFacturas.lineas feaEntidadLineas = new FeaEntidades.InterFacturas.lineas(); DataRow[] drDetDesc = ds.Tables[1].Select("id_gva12 = " + Comprobante.Clave); List<double> iva = new List<double>(); List<double> ivaMonedaOrigen = new List<double>(); iva.Add(0); iva.Add(0); ivaMonedaOrigen.Add(0); ivaMonedaOrigen.Add(0); double porcIVA = 0; for (int j = 0; j < drDetDesc.Length; j++) { eFact_I_Bj.Entidades.ComprobanteBjLinea linea = new eFact_I_Bj.Entidades.ComprobanteBjLinea(); FeaEntidades.InterFacturas.linea lineaFEA = new FeaEntidades.InterFacturas.linea(); DataRow dr = drDetDesc[j]; linea.Clave = Convert.ToInt32(Comprobante.Clave); linea.Descripcion = dr["descripcio"].ToString(); lineaFEA.numeroLinea = j + 1; lineaFEA.descripcion = linea.Descripcion; linea.Cantidad = Convert.ToDecimal(dr["cantidad"]); lineaFEA.cantidad = Convert.ToDouble(linea.Cantidad); lineaFEA.cantidadSpecified = true; linea.Precio_unitario = Convert.ToDecimal(dr["precio_net_pesos"]); lineaFEA.precio_unitario = Math.Round(Convert.ToDouble(dr["precio_net_pesos"]), 6); lineaFEA.precio_unitarioSpecified = true; linea.Alicuota_iva = Convert.ToDecimal(dr["porc_iva"]); lineaFEA.alicuota_iva = Convert.ToDouble(linea.Alicuota_iva); lineaFEA.alicuota_ivaSpecified = true; linea.Importe_total_articulo = Convert.ToDecimal(dr["IMP_NETO_P_pesos"]); lineaFEA.importe_total_articulo = Math.Round(Convert.ToDouble(dr["IMP_NETO_P_pesos"]), 3); lineaFEA.importe_iva = Math.Round(lineaFEA.importe_total_articulo * (lineaFEA.alicuota_iva / 100), 2); lineaFEA.importe_ivaSpecified = true; linea.Importe_iva = Convert.ToDecimal(lineaFEA.importe_iva); //linea.Indicacion_exento_gravado = dr[0]["Linea_indicacion_exento_gravado"].ToString(); //linea.Importe_total_descuentos = Convert.ToDecimal(dr[0]["Linea_importe_total_descuentos"]); //linea.Importe_total_impuestos = Convert.ToDecimal(dr[0]["Linea_Importe_total_impuestos"]); if (lineaFEA.alicuota_iva != 0) { if (lineaFEA.alicuota_iva == 21) { iva[0] = iva[0] + lineaFEA.importe_iva; } if (lineaFEA.alicuota_iva == 27) { iva[1] = iva[1] + lineaFEA.importe_iva; } porcIVA = lineaFEA.alicuota_iva; } if (c.resumen.codigo_moneda == "DOL") { lineaFEA.importes_moneda_origen = new FeaEntidades.InterFacturas.lineaImportes_moneda_origen(); lineaFEA.importes_moneda_origen.importe_total_articulo = Math.Round(Convert.ToDouble(dr["IMP_NETO_P"]), 3); lineaFEA.importes_moneda_origen.importe_total_articuloSpecified = true; lineaFEA.importes_moneda_origen.importe_iva = Math.Round(lineaFEA.importes_moneda_origen.importe_total_articulo * (lineaFEA.alicuota_iva / 100), 2); lineaFEA.importes_moneda_origen.importe_ivaSpecified = true; lineaFEA.importes_moneda_origen.precio_unitario = Math.Round(Convert.ToDouble(dr["PRECIO_NET"]), 6); lineaFEA.importes_moneda_origen.precio_unitarioSpecified = true; if (lineaFEA.alicuota_iva != 0) { if (lineaFEA.alicuota_iva == 21) { ivaMonedaOrigen[0] = ivaMonedaOrigen[0] + lineaFEA.importes_moneda_origen.importe_iva; } if (lineaFEA.alicuota_iva == 27) { ivaMonedaOrigen[1] = ivaMonedaOrigen[1] + lineaFEA.importes_moneda_origen.importe_iva; } porcIVA = lineaFEA.alicuota_iva; } } Comprobante.Lineas.Add(linea); c.detalle.linea[j] = lineaFEA; } c.resumen.impuestos = new FeaEntidades.InterFacturas.resumenImpuestos[10]; if (iva[0] != 0) { FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); imp.codigo_impuesto = 1; imp.descripcion = "IVA"; imp.porcentaje_impuesto = Convert.ToDouble(21); imp.porcentaje_impuestoSpecified = true; imp.importe_impuesto = Math.Round(iva[0], 2); if (c.resumen.codigo_moneda == "DOL") { imp.importe_impuesto_moneda_origen = Math.Round(ivaMonedaOrigen[0],2); imp.importe_impuesto_moneda_origenSpecified = true; } c.resumen.impuestos[0] = imp; } if (iva[1] != 0) { FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); imp.codigo_impuesto = 1; imp.descripcion = "IVA"; imp.porcentaje_impuesto = Convert.ToDouble(27); imp.porcentaje_impuestoSpecified = true; imp.importe_impuesto = Math.Round(iva[1],2); if (c.resumen.codigo_moneda == "DOL") { imp.importe_impuesto_moneda_origen = Math.Round(ivaMonedaOrigen[1],2); imp.importe_impuesto_moneda_origenSpecified = true; } c.resumen.impuestos[1] = imp; } Comprobantes.Add(Comprobante); Lc.comprobante[i] = c; } } catch { } } }
internal void AgregarImpuestosIVA(string IdNaturalezaComprobante, System.Collections.Generic.List <FeaEntidades.InterFacturas.linea> listadelineas) { //System.Collections.Generic.List<FeaEntidades.IVA.IVA> listaIVA = FeaEntidades.IVA.IVA.ListaMinimaSinCero(); System.Collections.Generic.List <FeaEntidades.IVA.IVA> listaIVA = FeaEntidades.IVA.IVA.ListaMinima(); double[] impivas = new double[listaIVA.Count]; bool[] impivasinformados = new bool[listaIVA.Count]; for (int i = 0; i < listadelineas.Count; i++) { if (listadelineas[i].alicuota_ivaSpecified) { int k = listaIVA.FindIndex(delegate(FeaEntidades.IVA.IVA e) { return(e.Codigo == listadelineas[i].alicuota_iva); }); if (k >= 0) { if (listadelineas[i].indicacion_exento_gravado == "G" && !listadelineas[i].alicuota_iva.Equals(99)) { double imptot = listadelineas[i].importe_total_articulo; if (IdNaturalezaComprobante != "Compra") { System.Collections.Generic.List <Entidades.PuntoVta> listaPV = ((Entidades.Sesion) Session["Sesion"]).UN.PuntosVta.FindAll(delegate(Entidades.PuntoVta pv) { return(pv.IdTipoPuntoVta == "RG2904" && pv.Nro == Convert.ToInt32(puntoDeVenta)); }); if (listaPV.Count != 0) { try { imptot -= listadelineas[i].importe_iva; } catch { } } } impivas[k] += imptot * listadelineas[i].alicuota_iva / 100; //listadelineas[i].importe_iva; impivasinformados[k] = true; } } } } for (int j = 0; j < impivas.Length; j++) { if (impivasinformados[j]) { impuestos = ((System.Collections.Generic.List <FeaEntidades.InterFacturas.resumenImpuestos>)ViewState["impuestos"]); FeaEntidades.InterFacturas.resumenImpuestos imp = new FeaEntidades.InterFacturas.resumenImpuestos(); FeaEntidades.CodigosImpuesto.IVA iva = new FeaEntidades.CodigosImpuesto.IVA(); imp.codigo_impuesto = iva.Codigo; imp.importe_impuesto = Math.Round(impivas[j], 2); imp.porcentaje_impuestoSpecified = true; //imp.porcentaje_impuesto = FeaEntidades.IVA.IVA.ListaMinimaSinCero()[j].Codigo; imp.porcentaje_impuesto = FeaEntidades.IVA.IVA.ListaMinima()[j].Codigo; imp.descripcion = iva.Descr; EliminarFilaAutomatica(); impuestos.Add(imp); } } impuestosGridView.DataSource = impuestos; impuestosGridView.DataBind(); ViewState["impuestos"] = impuestos; BindearDropDownLists(); }