public void SetDetalleFacturaProveedor() { Ditem items; RetencionProveedor retencionProveedor; DComprobante dComprobante; ConceptoContable conceptoContable; RetencionICADAO retencionICADAO = new RetencionICADAO(); RetencionICA retencionICA; double valorInventarios = 0; double valorTerceros = 0; double valor = 0; double descuento = 0; double ivaInventarios = 0; double ivaTerceros = 0; double retencion = 0; string centroCosto = ""; double valorCompra = 0; bool devolucion = false; ArrayList ar; dItemDAO = new DitemDAO(); ICollection ic = dItemDAO.GetDitem(facturaProveedor.CodigoDocumento, facturaProveedor.NumeroDocumento); IEnumerator ie = ic.GetEnumerator(); while (ie.MoveNext()) { items = (Ditem)ie.Current; if (items.TipoMovimiento == 31) { devolucion = true; } valor = items.Cantidad * items.ValorUnitario; valorCompra += valor; descuento += items.PorcentajeDescuento * valor; if (items.Origen.Equals("X")) { valorTerceros += valor - (items.PorcentajeDescuento * valor); ivaTerceros += items.PorcentajeIva * valor; } else { valorInventarios += valor - (items.PorcentajeDescuento * valor); ivaInventarios += items.PorcentajeIva * valor; } centroCosto = items.CentroCosto; } ic = retencionProveedorDAO.GetRetencionProveedor(facturaProveedor.CodigoDocumento, facturaProveedor.NumeroDocumento); ie = ic.GetEnumerator(); while (ie.MoveNext()) { dComprobante = new DComprobante(); retencionProveedor = (RetencionProveedor)ie.Current; retencion += retencionProveedor.ValorRetencion; dComprobante.Almacen = facturaProveedor.Almacen; dComprobante.CentroCosto = centroCosto; conceptoContable = conceptoContableDAO.GetConceptoContable(facturaProveedor.CodigoDocumento, retencionProveedor.CodigoRetencion); if (retencionProveedor.CodigoRetencion.Equals("RI")) { retencionICA = retencionICADAO.GetRetencionICA(facturaProveedor.Nit); if (facturaProveedor.RegimenIva.Equals("S")) { dComprobante.Cuenta = retencionICA.CodigoCuentaSimplificado; } else if (facturaProveedor.RegimenIva.Equals("C")) { dComprobante.Cuenta = retencionICA.CodigoCuentaComun; } } else { dComprobante.Cuenta = conceptoContable.CodigoPuc; } if (devolucion) { dComprobante.Credito = retencionProveedor.ValorRetencion; } else { dComprobante.Debito = retencionProveedor.ValorRetencion; } dComprobante.Nit = facturaProveedor.Nit; ar = (ArrayList)encabezadoComprobante.Detalle; ar.Add(dComprobante); } ic = conceptoContableDAO.GetConceptoContable(facturaProveedor.CodigoDocumento); ie = ic.GetEnumerator(); while (ie.MoveNext()) { dComprobante = new DComprobante(); dComprobante.Almacen = facturaProveedor.Almacen; dComprobante.CentroCosto = centroCosto; dComprobante.Nit = facturaProveedor.Nit; conceptoContable = (ConceptoContable)ie.Current; dComprobante.Cuenta = conceptoContable.CodigoPuc; switch (conceptoContable.CodigoConcepto) { case "CXP": valor = valorCompra - descuento + ivaInventarios + ivaTerceros - retencion; if (devolucion) { dComprobante.Debito = valor; } else { dComprobante.Credito = valor; } break; case "IVA": valor = ivaInventarios + ivaTerceros; if (devolucion) { dComprobante.Credito = valor; } else { dComprobante.Debito = valor; } break; case "INVITE": if (devolucion) { dComprobante.Credito = valorInventarios; } else { dComprobante.Debito = valorInventarios; } break; case "INVTRBTER": if (devolucion) { dComprobante.Credito = valorTerceros; } else { dComprobante.Debito = valorTerceros; } break; } encabezadoComprobante.Valor = valorCompra; ar = (ArrayList)encabezadoComprobante.Detalle; ar.Add(dComprobante); } }
public void SetDetalleConsumoInterno() { double inventarios = 0; double ajustesInflacion = 0; double iva = 0; double gastoInterno = 0; //Auxiliares double valorUnitario = 0; double valorHistorico = 0; DComprobante dComprobante; Cempresa cEmpresa; ConceptoContable conceptoContable; string centroCosto = ""; string almacen = ""; string nit = ""; ICollection ic; ArrayList ar; if (devolucion) { ic = dItemDAO.GetDitem(61); } else { ic = dItemDAO.GetDitem(60); } IEnumerator ie = ic.GetEnumerator(); Ditem items; while (ie.MoveNext()) { items = (Ditem)ie.Current; valorUnitario = items.Cantidad * items.CostoPromedio; inventarios += valorUnitario; valorHistorico = items.Cantidad * items.CostoPromedioHistorico; ajustesInflacion += valorUnitario - valorHistorico; iva += valorUnitario * items.PorcentajeIva; gastoInterno += valorUnitario; centroCosto = items.CentroCosto; almacen = items.Almacen; } cEmpresa = cEmpresaDAO.GetCempresa(); cEmpresa = (Cempresa)ie.Current; nit = cEmpresa.Nit; ic = conceptoContableDAO.GetConceptoContable(CodigoDocumento); ie = ic.GetEnumerator(); while (ie.MoveNext()) { dComprobante = new DComprobante(); dComprobante.Almacen = almacen; dComprobante.CentroCosto = centroCosto; dComprobante.Nit = nit; conceptoContable = (ConceptoContable)ie.Current; dComprobante.Cuenta = conceptoContable.CodigoPuc; switch (conceptoContable.CodigoConcepto) { case "INVITE": if (devolucion) { dComprobante.Debito = inventarios; } else { dComprobante.Credito = inventarios; } break; case "IVA": if (devolucion) { dComprobante.Debito = iva; } else { dComprobante.Credito = iva; } break; case "INVITEAMOINF": if (devolucion) { dComprobante.Debito = ajustesInflacion; } else { dComprobante.Credito = ajustesInflacion; } break; case "GTOINVINT": if (devolucion) { dComprobante.Credito = gastoInterno; } else { dComprobante.Debito = gastoInterno; } break; } encabezadoComprobante.Valor = 0; ar = (ArrayList)encabezadoComprobante.Detalle; ar.Add(dComprobante); } }
public void SetDetalleFacturaCliente() { Ditem items; RetencionCliente retencionCliente; DComprobante dComprobante; ConceptoContable conceptoContable; double cuentasPorCobrar = 0; double inventarioItems = 0; double inventarioTerceros = 0; double ivaItems = 0; double ivaTerceros = 0; double ajusteInflacion = 0; double costoItems = 0; double costoTerceros = 0; double retencion = 0; double descuento = 0; double ventaItemsGrabado = 0; double ventaTercerosGrabado = 0; double ventaItemsExcento = 0; double ventaTercerosExcento = 0; //auxiliares string centroCosto = ""; double totalVenta = 0; double valorUnitarios = 0; double valorPromedios = 0; double valorHistoricos = 0; bool devolucion = false; ArrayList ar; dItemDAO = new DitemDAO(); ICollection ic = dItemDAO.GetDitem(facturaCliente.CodigoDocumento, facturaCliente.NumeroDocumento); IEnumerator ie = ic.GetEnumerator(); while (ie.MoveNext()) { items = (Ditem)ie.Current; if (items.TipoMovimiento == 91) { devolucion = true; } valorUnitarios = items.Cantidad * items.ValorUnitario; valorPromedios = items.Cantidad * items.CostoPromedio; valorHistoricos = items.Cantidad * items.CostoPromedioHistorico; //Valor comprobante totalVenta += valorUnitarios; //ajuste Inflacion ajusteInflacion += valorPromedios - valorHistoricos; //Descuento descuento += items.PorcentajeDescuento * valorUnitarios; //Terceros if (items.Origen.Equals("X")) { //Inventario Terceros inventarioTerceros += valorPromedios; //Costo Terceros costoTerceros += valorPromedios; //IVA Terceros ivaTerceros += valorUnitarios * items.PorcentajeIva; if (items.PorcentajeIva == 0) { //Venta Terceros Excento if (contabilizaDescuentos) { ventaTercerosExcento += valorUnitarios; } else { ventaTercerosExcento += valorUnitarios - (items.PorcentajeDescuento * valorUnitarios); } } else { //Venta Terceros Grabado if (contabilizaDescuentos) { ventaTercerosGrabado += valorUnitarios; } else { ventaTercerosGrabado += valorUnitarios - (items.PorcentajeDescuento * valorUnitarios); } } } //Items else { //Inventario Items inventarioItems += valorPromedios; //Costo Items costoItems += valorPromedios; //IVA Items ivaItems += valorUnitarios * items.PorcentajeIva; if (items.PorcentajeIva == 0) { //Venta Items Excento if (contabilizaDescuentos) { ventaItemsExcento += valorUnitarios; } else { ventaItemsExcento += valorUnitarios - (items.PorcentajeDescuento * valorUnitarios); } } else { //Venta Items Grabado if (contabilizaDescuentos) { ventaItemsGrabado += valorUnitarios; } else { ventaItemsGrabado += valorUnitarios - (items.PorcentajeDescuento * valorUnitarios); } } } centroCosto = items.CentroCosto; } //Retenciones ic = retencionClienteDAO.GetRetencionCliente(facturaCliente.CodigoDocumento, facturaCliente.NumeroDocumento); ie = ic.GetEnumerator(); while (ie.MoveNext()) { dComprobante = new DComprobante(); retencionCliente = (RetencionCliente)ie.Current; retencion += retencionCliente.ValorRetencion; dComprobante.Almacen = facturaCliente.Almacen; dComprobante.CentroCosto = centroCosto; conceptoContable = conceptoContableDAO.GetConceptoContable(facturaCliente.CodigoDocumento, retencionCliente.CodigoRetencion); dComprobante.Cuenta = conceptoContable.CodigoPuc; if (devolucion) { dComprobante.Credito = retencionCliente.ValorRetencion; } else { dComprobante.Debito = retencionCliente.ValorRetencion; } dComprobante.Nit = facturaCliente.Nit; ar = (ArrayList)encabezadoComprobante.Detalle; ar.Add(dComprobante); } ic = conceptoContableDAO.GetConceptoContable(facturaCliente.CodigoDocumento); ie = ic.GetEnumerator(); while (ie.MoveNext()) { dComprobante = new DComprobante(); dComprobante.Almacen = facturaCliente.Almacen; dComprobante.CentroCosto = centroCosto; dComprobante.Nit = facturaCliente.Nit; conceptoContable = (ConceptoContable)ie.Current; dComprobante.Cuenta = conceptoContable.CodigoPuc; switch (conceptoContable.CodigoConcepto) { case "CXC": cuentasPorCobrar = totalVenta - descuento + ivaTerceros + ivaItems - retencion; if (devolucion) { dComprobante.Credito = cuentasPorCobrar; } else { dComprobante.Debito = cuentasPorCobrar; } break; case "IVA": if (devolucion) { dComprobante.Debito = ivaTerceros + ivaItems; } else { dComprobante.Credito = ivaTerceros + ivaItems; } break; case "INVITE": if (devolucion) { dComprobante.Debito = inventarioItems; } else { dComprobante.Credito = inventarioItems; } break; case "INVTRBTER": if (devolucion) { dComprobante.Debito = inventarioTerceros; } else { dComprobante.Credito = inventarioTerceros; } break; case "INVITEAMOINF": if (devolucion) { dComprobante.Debito = ajusteInflacion; } else { dComprobante.Credito = ajusteInflacion; } break; case "COSVTAITE": if (devolucion) { dComprobante.Credito = costoItems; } else { dComprobante.Debito = costoItems; } break; case "COSVTATRBTER": if (devolucion) { dComprobante.Credito = costoTerceros; } else { dComprobante.Debito = costoTerceros; } break; case "VTAITEEXE": if (devolucion) { dComprobante.Debito = ventaItemsExcento; } else { dComprobante.Credito = ventaItemsExcento; } break; case "VTAITEGRA": if (devolucion) { dComprobante.Debito = ventaItemsGrabado; } else { dComprobante.Credito = ventaItemsGrabado; } break; case "VTATRBTEREXE": if (devolucion) { dComprobante.Debito = ventaTercerosExcento; } else { dComprobante.Credito = ventaTercerosExcento; } break; case "VTATRBTERGRA": if (devolucion) { dComprobante.Debito = ventaTercerosGrabado; } else { dComprobante.Credito = ventaTercerosGrabado; } break; case "DESVTA": if (contabilizaDescuentos) { if (devolucion) { dComprobante.Debito = descuento; } else { dComprobante.Credito = descuento; } } break; } encabezadoComprobante.Valor = totalVenta; ar = (ArrayList)encabezadoComprobante.Detalle; ar.Add(dComprobante); } }
public void SetDetalleAjustes() { double inventarios = 0; //Auxiliares double valorUnitario = 0; DComprobante dComprobante; Cempresa cEmpresa; ConceptoContable conceptoContable; string centroCosto = ""; string almacen = ""; string nit = ""; ICollection ic; ArrayList ar; ic = dItemDAO.GetDitem(50); IEnumerator ie = ic.GetEnumerator(); Ditem items; while (ie.MoveNext()) { items = (Ditem)ie.Current; valorUnitario = items.Cantidad * items.CostoPromedio; inventarios += valorUnitario; centroCosto = items.CentroCosto; almacen = items.Almacen; } cEmpresa = cEmpresaDAO.GetCempresa(); cEmpresa = (Cempresa)ie.Current; nit = cEmpresa.Nit; ic = conceptoContableDAO.GetConceptoContable(CodigoDocumento); ie = ic.GetEnumerator(); while (ie.MoveNext()) { dComprobante = new DComprobante(); dComprobante.Almacen = almacen; dComprobante.CentroCosto = centroCosto; dComprobante.Nit = nit; conceptoContable = (ConceptoContable)ie.Current; dComprobante.Cuenta = conceptoContable.CodigoPuc; switch (conceptoContable.CodigoConcepto) { case "INVITE": if (inventarios > 0) { dComprobante.Credito = inventarios; } else { dComprobante.Debito = inventarios * (-1); } break; case "INGAJUINV": if (inventarios > 0) { dComprobante.Debito = inventarios; } break; case "GTOAJUINV": if (inventarios < 0) { dComprobante.Debito = inventarios * (-1); } break; } encabezadoComprobante.Valor = 0; ar = (ArrayList)encabezadoComprobante.Detalle; ar.Add(dComprobante); } }