Compras / Gastos¶
La sección Compras/Gastos constituye el libro registro oficial de facturas recibidas y gastos de la organización, administrando todas las operaciones de adquisición de bienes y servicios, incluyendo facturas, gastos sin factura y rectificativas. Almacena información exhaustiva del documento (número de factura, fecha de expedición, estado), datos del proveedor y fiscales, desglose económico completo (bases imponibles, cuotas IVA, recargos de equivalencia, retenciones, total), productos con cantidades y precios, configuración fiscal (tipo de operación, clave de operación, actividad), parámetros de pago (condiciones, plazos, método, moneda), y vinculación a proyectos. Su objetivo es mantener un registro fiscal completo conforme a normativa, facilitar la gestión de pagos a proveedores, controlar las entradas de inventario y generar automáticamente los asientos contables correspondientes. Se integra con Contabilidad (asientos automáticos), Inventario (entrada de productos), Proyectos (imputación de costes) y Tesorería (gestión de pagos). Cumple con los requisitos del libro registro de facturas recibidas según normativa fiscal española.
Información General¶
| Propiedad | Valor |
|---|---|
| ID | 8fac2930-c1ea-48b5-ab89-50a0725e86e2 |
| Tabla PostgreSQL | tpr_30040105553 |
| Etiqueta Plural | Compras / Gastos |
| Texto principal automatico | Sí |
| Sección Lista | Lista - Compras / Gastos (2c0222d4-998b-4b96-bb25-624280a18e13) |
| Sección Base | Base - Compras / Gastos (340bde1f-cdc9-4471-b55e-44b9c96dd508) |
Campos¶
Total de campos: 134 (10 del sistema, 124 personalizados)
Campos del Sistema¶
| Campo | Tipo | Rol | Columna PostgreSQL | Relación | Atributos |
|---|---|---|---|---|---|
| ID | Relación |
- | id |
Compras / Gastos | - |
| Referencia | Texto |
- | nombre |
- | - |
| Fecha Alta Dato | Fecha Y Hora |
- | fecha |
- | - |
| Editado | Fecha Y Hora |
- | fecham |
- | - |
| Eliminado | Sí/No |
- | eliminado |
- | - |
| Usuario Creador del dato | Relación |
- | usuarioid |
Base - Entidades | - |
| Sección (Relación Sistema) | Relación |
- | plantillapid |
- | 🔴 Obligatorio |
| Posición (Orden) | Decimal |
- | posicion |
- | - |
| Modificado | Sí/No |
- | modificado |
- | - |
| Fecha Indice Actividad | Fecha Y Hora |
- | fechaia |
- | - |
Campos Personalizados¶
| Campo | Tipo | Pestaña | Columna | Atributos | Notas |
|---|---|---|---|---|---|
| Proyecto General | Relación |
Proyecto | pr_10040265801 |
- | - |
| Campaña | Relación |
Campaña | pr_60010158832 |
- | - |
| Almacén | Relación |
Avanzado | pr_30695342 |
- | - |
| Destinador | Relación |
General | pr_300401055575 |
🔒 Bloqueado, 👁 Oculto | - |
| Hora local | Hora |
Registro | pr_300401055570 |
🔒 Bloqueado, 👁 Oculto | - |
| Base Imponible 1 | Decimal |
Bases | pr_4004010567628 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Ubicación Principal | Relación |
Registro | pr_300401055567 |
👁 Oculto | Autorrellenado (Siempre): Campo (Sesión): Ubicación Principal |
| Total a pagar | Decimal |
Desarrollo | pr_4004010567631 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Base Imponible 1 - Cuota IVA | Decimal |
Bases | pr_4004010567635 |
📊 Cualquier valor numérico | - |
| Total pagado | Decimal |
Desarrollo | pr_4004010567634 |
🔒 Bloqueado, 👁 Oculto, ⚙️ Auto-Calculado, 📊 Cualquier valor numérico | - |
| Base Imponible 3 | Decimal |
Bases | pr_4004010567642 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Suma (Sin impuestos) | Decimal |
Detalles | pr_4004010567640 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Cantidad de productos que deben entrar | Decimal |
Productos | pr_4004010567649 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | Autorrellenado (Siempre): Sumar (Columna): Cantidad de productos que deben entrar |
| Puesto de trabajo | Relación |
Registro | pr_4004010567691 |
👁 Oculto | Autorrellenado (Siempre): Campo (Sesión): Puesto de trabajo |
| Impuesto 2 | Relación |
Bases | pr_4004010567690 |
🔒 Bloqueado | - |
| Total descuentos | Decimal |
Detalles | pr_4004010567655 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Total entrados (Destinador) | Decimal |
Desarrollo | pr_4004010567672 |
🔒 Bloqueado, 👁 Oculto, ⚙️ Auto-Calculado, 📊 Cualquier valor numérico | - |
| Total retención | Decimal |
Bases | pr_4004010567668 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Suma exenta | Decimal |
Bases | pr_4004010567602 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Base Imponible 3 - Cuota R.E | Decimal |
Bases | pr_4004010567610 |
📊 Cualquier valor numérico | - |
| Base Imponible 2 - Cuota R.E | Decimal |
Bases | pr_4004010567605 |
📊 Cualquier valor numérico | - |
| Presupuesto de compra | Relación |
General | pr_20040105794 |
👁 Oculto | - |
| Total Rectificados (Destinadores) | Decimal |
Desarrollo | pr_4004010567615 |
🔒 Bloqueado, 👁 Oculto, ⚙️ Auto-Calculado, 📊 Cualquier valor numérico | - |
| Suma Exenta - Descuentos de productos | Decimal |
Bases | pr_4004010567618 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Impuesto 1 | Relación |
Bases | pr_4004010567680 |
🔒 Bloqueado | - |
| Suma exenta - Descuentos generales | Decimal |
Bases | pr_4004010567617 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Cantidad de productos que se pueden rectificar | Decimal |
Desarrollo | pr_4004010567616 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | Autorrellenado (Siempre): Sumar (Columna): Cantidad de productos que pueden devolverse |
| Autor del alta | Relación |
Registro | pr_300401055568 |
🔴 Obligatorio, 👁 Oculto | Autorrellenado (Siempre): Campo (Sesión): La Entidad ( ID* ) |
| Suma 3 - Descuentos generales | Decimal |
Bases | pr_4004010567626 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Cantidad de Productos | Decimal |
General | pr_4004010567625 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | Autorrellenado (Siempre): Sumar (Columna): Unidades · Número total de productos. |
| Provincia (Empresa) | Texto |
Datos fiscales | pr_100401388211 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Empresa) / Provincia |
| Teléfono (Empresa) | Texto |
Datos fiscales | pr_10040138824 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Empresa) / Teléfono |
| Denominación / Razón Social (Empresa) | Texto |
Datos fiscales | pr_100401388210 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Empresa) / Apellidos y Nombre o Razón social |
| Código postal (Empresa) | Texto |
Datos fiscales | pr_10040138828 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Empresa) / Código postal |
| Impuesto predeterminado | Relación |
Detalles | pr_30040148968 |
👁 Oculto | Autorrellenado (Cadena_Rellenada): Campo : Proveedor / Impuesto en Compras · Autorrellenado (Cadena_Rellenada): Campo : Tipo de operación / Impuesto predeterminado |
| Editar manualmente bases imponibles | Sí/No |
Bases | pr_50040163131 |
- | - |
| Marcar como concluida aunque hayan procesos pendientes | Sí/No |
Avanzado | pr_50040173901 |
- | - |
| Total salidos (Destinadores) | Decimal |
Desarrollo | pr_10040242021 |
🔒 Bloqueado, 👁 Oculto, ⚙️ Auto-Calculado, 📊 Cualquier valor numérico | - |
| Cantidad de productos que deben salir | Decimal |
Desarrollo | pr_10040242022 |
👁 Oculto, 📊 Cualquier valor numérico | Autorrellenado (Siempre): Sumar (Columna): Cantidad de productos que deben de salir |
| Total operación | Decimal |
Bases | pr_60040256621 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Clave de operación | Relación |
Avanzado | pr_20040256991 |
🔴 Obligatorio | Autorrellenado (Cadena_Rellenada): Campo : Tipo de operación / Clave predeterminada de operaciones · Autorrellenado (Cadena_Rellenada): Campo : Actividad / Clave predeterminada de operaciones · Autorrellenado (Siempre): Referencia dato: 0 - Operación habitual |
| Suma descuentos Productos | Decimal |
Detalles | pr_20040502504 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Suma descuentos Productos (Con impuestos) | Decimal |
Detalles | pr_20040504646 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Peso total | Decimal |
Bases | pr_40040504642 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Versión sistema de facturación | Entero |
Registro | pr_100405048211 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Total descuentos (Con impuestos) | Decimal |
Detalles | pr_20040502503 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Gasto suplido en Factura | Relación |
Parámetros | pr_20040587221 |
- | - |
| Estado | Relación |
General | pr_4004010567688 |
- | Autorrellenado (Siempre): Referencia dato: Abierta |
| Archivo | Relación |
Avanzado | pr_10681181 |
- | - |
| Fecha Dato | Fecha Y Hora |
General | pr_300401055569 |
🔴 Obligatorio | Autorrellenado (Siempre): Fecha y Hora actual |
| Proveedor | Relación |
General | pr_4004010567681 |
- | - |
| Suma descuentos Generales (Con impuestos) | Decimal |
Detalles | pr_4004010567648 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Suma (Con impuestos) | Decimal |
Detalles | pr_60040115043 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Total descuentos (Sin impuestos) | Decimal |
Detalles | pr_4004010567659 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Suma descuentos Productos (Sin impuestos) | Decimal |
Detalles | pr_4004010567630 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Suma descuentos Generales (Sin impuestos) | Decimal |
Detalles | pr_30040148969 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Suma descuentos Generales | Decimal |
Detalles | pr_4004010567673 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Suma | Decimal |
Detalles | pr_4004010567656 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Fecha Alta del registro | Fecha Y Hora |
Registro | pr_300401055572 |
🔴 Obligatorio, 👁 Oculto | Autorrellenado (Siempre): Fecha y Hora actual |
| Número de factura | Texto |
General | pr_60040145291002 |
- | - |
| Actividad | Relación |
Avanzado | pr_30040256141 |
- | Autorrellenado (Cadena_Rellenada): Campo : Tipo de operación / Actividad predeterminada |
| Empleado | Relación |
Avanzado | pr_300401055566 |
🔴 Obligatorio | Autorrellenado (Siempre): Campo (Sesión): La Entidad ( ID* ) |
| Observaciones y anotaciones | Texto |
Avanzado | pr_4004010567693 |
- | - |
| Número de referencia interna (Completo) | Texto |
Avanzado | pr_4004010567694 |
- | - |
| Total impuestos | Decimal |
General | pr_4004010567637 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Total | Decimal |
General | pr_4004010567608 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Subtotal | Decimal |
General | pr_4004010567614 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Suma 1 - Descuentos generales | Decimal |
Bases | pr_4004010567644 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Suma 1 - Descuentos de productos | Decimal |
Bases | pr_4004010567639 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Base Imponible 1 - Cuota R.E | Decimal |
Bases | pr_4004010567653 |
📊 Cualquier valor numérico | - |
| Suma 2 | Decimal |
Bases | pr_4004010567650 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Suma 2 - Descuentos de productos | Decimal |
Bases | pr_4004010567663 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Base Imponible 2 | Decimal |
Bases | pr_4004010567598 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Suma 2 - Descuentos generales | Decimal |
Bases | pr_4004010567604 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Suma 1 | Decimal |
Bases | pr_4004010567612 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Base Imponible 2 - Cuota IVA | Decimal |
Bases | pr_4004010567622 |
📊 Cualquier valor numérico | - |
| Total Suplidos | Decimal |
Bases | pr_60040256611 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Impuesto 3 | Relación |
Bases | pr_4004010567684 |
🔒 Bloqueado | - |
| Base Imponible Exenta | Decimal |
Bases | pr_4004010567636 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Base Imponible 3 - Cuota IVA | Decimal |
Bases | pr_4004010567658 |
📊 Cualquier valor numérico | - |
| Suma 3 | Decimal |
Bases | pr_4004010567669 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Provincia (Proveedor) | Texto |
Datos fiscales | pr_60040138816 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Proveedor) / Provincia |
| Código postal (Proveedor) | Texto |
Datos fiscales | pr_600401388110 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Proveedor) / Código postal |
| Suma 3 - Descuentos de productos | Decimal |
Bases | pr_4004010567620 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Datos fiscales (Proveedor) | Relación |
Datos fiscales | pr_60040138815 |
- | Autorrellenado (Siempre): Campo : Proveedor / Datos fiscales (Predeterminados) |
| Teléfono (Proveedor) | Texto |
Datos fiscales | pr_10040138822 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Proveedor) / Teléfono |
| País (Proveedor) | Texto |
Datos fiscales | pr_60040138817 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Proveedor) / País |
| NIF (Empresa) | Texto |
Datos fiscales | pr_10040138829 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Empresa) / NIF |
| Dirección (Empresa) | Texto |
Datos fiscales | pr_10040138826 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Empresa) / Dirección Completa |
| Denominación / Razón Social (Proveedor) | Texto |
Datos fiscales | pr_600401388111 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Proveedor) / Apellidos y Nombre o Razón social |
| Municipio (Empresa) | Texto |
Datos fiscales | pr_10040138825 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Empresa) / Municipio |
| Datos fiscales (Empresa) | Relación |
Datos fiscales | pr_10040138827 |
- | Autorrellenado (Cadena_Rellenada): Campo (Empresa Actual): Datos fiscales · Autorrellenado (Siempre): Campo : Ubicación Principal / Datos fiscales |
| NIF (Proveedor) | Texto |
Datos fiscales | pr_600401388112 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Proveedor) / NIF |
| Municipio (Proveedor) | Texto |
Datos fiscales | pr_60040138818 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Proveedor) / Municipio |
| País (Empresa) | Texto |
Datos fiscales | pr_10040138823 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Empresa) / País |
| Dirección (Proveedor) | Texto |
Datos fiscales | pr_60040138819 |
- | Autorrellenado (Siempre): Campo : Datos fiscales (Proveedor) / Dirección Completa |
| Nómina | Relación |
Avanzado | pr_30702761 |
- | - |
| Fecha expedición | Fecha |
Avanzado | pr_40702761002 |
- | - |
| Asiento contable | Relación |
Avanzado | pr_40040135291 |
- | - |
| Asignar manualmente la fecha contable | Sí/No |
Avanzado | pr_10040268922 |
- | - |
| Impedir autorrellenado destinadores | Sí/No |
General | pr_20736581 |
👁 Oculto | - |
| Forma de rectificación | Entero |
Parámetros | pr_50732771 |
📊 Cualquier valor numérico | - |
| Numeración / Serie | Relación |
Parámetros | pr_4004010567689 |
- | Autorrellenado (Siempre): Campo : Tipo de operación / Numeración (Ordinarias) |
| Compra a rectificar | Relación |
Parámetros | pr_200402418410 |
- | - |
| Cumplimiento ID | Texto |
Parámetros | pr_50732774 |
👁 Oculto | - |
| Ha sido sustituida | Sí/No |
Parámetros | pr_50732773 |
🔒 Bloqueado | - |
| Tipo factura | Entero |
Parámetros | pr_200402418512 |
🔴 Obligatorio, 📊 Cualquier valor numérico | Autorrellenado (Siempre): Número entero: 1 |
| Tipo de operación | Relación |
General | pr_4004010567677 |
🔴 Obligatorio | Autorrellenado (Cadena_Rellenada): Campo : Proveedor / Tipo predeterminado de compra · Autorrellenado (Siempre): Campo (Empresa Actual): Tipo predeterminado de compra |
| Condición de pago (Días) | Entero |
Parámetros | pr_40040176522 |
📊 Cualquier valor numérico | Autorrellenado (Siempre): Campo : Proveedor / Plazo días pago Compras |
| Fecha contable | Fecha |
Avanzado | pr_40040135702 |
- | - |
| Fecha operación | Fecha |
Avanzado | pr_40746721 |
- | - |
| Descuento Entidad % | Decimal |
Parámetros | pr_4004010567674 |
📊 Positivos o 0 | Autorrellenado (Siempre): Campo : Proveedor / Descuento % (Venta) |
| Aplicar recago de equivalencia | Sí/No |
Parámetros | pr_4004010567706 |
- | Autorrellenado (Siempre): Campo : Proveedor / Comprar con recargo de equivalencia |
| Moneda extranjera | Relación |
Parámetros | pr_10040454262 |
- | Autorrellenado (Siempre): Campo : Proveedor / Moneda en compras |
| Retención | Relación |
Parámetros | pr_4004010567686 |
- | Autorrellenado (Cadena_Rellenada): Campo : Proveedor / Retención en Compras · Autorrellenado (Siempre): Campo : Actividad / Retención en Compras |
| Precios con impuestos incluidos | Sí/No |
Parámetros | pr_4004010567704 |
- | - |
| Impuesto (General Aplicado) | Relación |
Parámetros | pr_40695811008 |
- | - |
| Descuento General % | Decimal |
Parámetros | pr_4004010567629 |
📊 Positivos o 0 | Autorrellenado (Siempre): Campo : Proveedor / Descuento % (Compras) |
| Condiciones de pago | Texto |
Parámetros | pr_40040176524 |
- | Autorrellenado (Siempre): Campo : Proveedor / Condiciones pago Compras |
| Fecha de vencimiento | Fecha |
Parámetros | pr_40040176523 |
- | - |
| Categoría (General) | Relación |
Parámetros | pr_40695811007 |
- | - |
| Cambio moneda extranjera | Decimal |
Parámetros | pr_10040454261 |
📊 Cualquier valor numérico | - |
| Sustituida por | Relación |
Avanzado | pr_60764231003 |
🔒 Bloqueado | - |
| Vigente | Sí/No |
General | pr_20764242 |
🔒 Bloqueado, 👁 Oculto | Autorrellenado (Siempre): Constante: Sí |
Scripts¶
Total de scripts: 20
Código de Scripts¶
Lógica de negocio ejecutada en los formularios automáticamente
Campo_Cambiado¶
if C.ReferenciaPresupuestoDeCompra <> ''
C.ReferenciaProyectoGeneral = C.ReferenciaPresupuestoDeCompra.ReferenciaProyectoGeneral
end if
Campos utilizados:
- Compras / Gastos > Presupuesto de compra
Campo_PreAgregarRelacion¶
F.CopiarAgregarRelacion(S.Fields.DatosFiscalesBase.ReferenciaEntidad.ID,C.ReferenciaProveedor)
Campos utilizados:
- Compras / Gastos > Datos fiscales (Proveedor)
Campo_ComboAplicarFiltro¶
F.CampoDesplegableAplicarFiltro(S.Fields.TiposDeMovimientoBase.Seccion.ID,'=',S.Sections.TiposDeComprasGastos.ID)
Campos utilizados:
- Compras / Gastos > Tipo de operación
Campo_PreAgregarRelacion¶
F.CopiarAgregarRelacion(S.Fields.EntidadesBase.Proveedor.ID,'1')
Campos utilizados:
- Compras / Gastos > Proveedor
Campo_ComboAplicarFiltro¶
F.CampoDesplegableAplicarFiltro(S.Fields.DatosFiscalesBase.ReferenciaEntidad.ID,'=',C.ReferenciaProveedor)
Campos utilizados:
- Compras / Gastos > Datos fiscales (Proveedor)
Campo_Cambiado¶
if C.TipoFactura = S.Enums.tipofactura.ordinario
C.ReferenciaNumeracionSerie = C.ReferenciaTipoDeOperacion.ReferenciaNumeracionOrdinarias
elseif C.TipoFactura = S.Enums.tipofactura.rectificativo
C.ReferenciaNumeracionSerie = C.ReferenciaTipoDeOperacion.ReferenciaNumeracionRectificativas
end if
Campos utilizados:
- Compras / Gastos > Tipo factura
- Compras / Gastos > Tipo de operación
Campo_ComboAplicarFiltro¶
if C.ReferenciaProveedor <> ''
F.CampoDesplegableAplicarFiltro(S.Fields.ArrendamientosBase.ReferenciaEntidadArrendadora.ID,'=',C.ReferenciaProveedor)
F.ListadoAvisoDesplegable('Mostrando arrendamientos del proveedor seleccionado.',1)
else
F.ListadoAvisoDesplegable('Mostrando arrendamientos del proveedor seleccionado.',0)
end if
Campos utilizados:
- Compras / Gastos > Arrendamiento (Obsoleto)
Campo_Cambiado¶
if C.ReferenciaProveedor = ''
C.ReferenciaProveedor = C.ReferenciaArrendamientoObsoleto.ReferenciaEntidadArrendadora
end if
Campos utilizados:
- Compras / Gastos > Arrendamiento (Obsoleto)
Campo_PreAgregarRelacion¶
F.CopiarAgregarRelacion(S.Fields.TiposRetencionesCapitalMobiliarioBase.ReferenciaEntidad.id,C.ReferenciaProveedor)
Campos utilizados:
- Compras / Gastos > Reto. Capital Mobiliario (Obsoleto)
Campo_ComboAplicarFiltro¶
F.CampoDesplegableAplicarFiltro(S.Fields.TiposRetencionesCapitalMobiliarioBase.ReferenciaEntidad.ID,'=',C.ReferenciaProveedor)
Campos utilizados:
- Compras / Gastos > Reto. Capital Mobiliario (Obsoleto)
Campo_PreAgregarRelacion¶
F.CopiarAgregarRelacion(S.Fields.ArrendamientosBase.ReferenciaEntidadArrendadora.ID,C.ReferenciaProveedor)
Campos utilizados:
- Compras / Gastos > Arrendamiento (Obsoleto)
Campo_Cambiado¶
num ImpuestosIncluidosNulable = C.ReferenciaProveedor.InclusionDeImpuestosEnCompras
if V.ImpuestosIncluidosNulable <> 0
num ImpuestosIncluidos = 0
if V.ImpuestosIncluidosNulable = S.Enums.impuestosconfiguracion.incluidos
V.ImpuestosIncluidos = 1
end if
if F.CountItemList = 0
C.PreciosConImpuestosIncluidos = V.ImpuestosIncluidos
else
if V.ImpuestosIncluidos <> C.PreciosConImpuestosIncluidos
F.MsgBox('El proveedor seleccionado tiene una configuración de inclusión de impuestos distintos a la compra.',1)
end if
end if
end if
Campos utilizados:
- Compras / Gastos > Proveedor
Campo_Click¶
if C.empresa.ReferenciaMoneda.CodigoISO4217 = ''
F.MsgBox('Debe indicar una moneda en la configuración de la empresa.',1)
elseif C.ReferenciaMonedaExtranjera.CodigoISO4217 = ''
F.MsgBox('Debe seleccionar una moneda.',1)
else
C.CambioMonedaExtranjeraObsoleto = F.CurrencyChange(C.empresa.ReferenciaMoneda.CodigoISO4217,C.ReferenciaMonedaExtranjera.CodigoISO4217,C.FechaContable)
end if
Campos utilizados: - Botón
Campo_PreAgregarRelacion¶
F.Guardar()
F.CopiarAgregarRelacion(S.Fields.AsientosContablesBase.ReferenciaFacturaRecibida.ID,C.ID)
Campos utilizados:
- Compras / Gastos > Asiento contable
Formulario_Iniciado_AgregarNuevo_PostRellenadoImportacion¶
if C.ImpedirAutorrellenadoDestinadores
salir
end if
if C.ReferenciaDestinador = S.Destinadores.ComprasGastos.CompraRectificativa.ID
if C.ReferenciaCompraARectificar <> ''
C.ReferenciaProveedor = C.ReferenciaCompraARectificar.ReferenciaProveedor
C.ReferenciaRetencion = C.ReferenciaCompraARectificar.ReferenciaRetencion
C.ReferenciaTipoDeOperacion = C.ReferenciaCompraARectificar.ReferenciaTipoDeOperacion
C.ReferenciaImpuestoPredeterminado = C.ReferenciaCompraARectificar.ReferenciaImpuestoPredeterminado
C.ReferenciaUbicacionPrincipal = F.GetRowById(S.Sections.Ubicaciones.ID,C.ReferenciaCompraARectificar.ReferenciaUbicacionPrincipal)
C.ReferenciaDatosFiscalesEmpresa = C.ReferenciaCompraARectificar.ReferenciaDatosFiscalesEmpresa
C.ReferenciaDatosFiscalesProveedor = C.ReferenciaCompraARectificar.ReferenciaDatosFiscalesProveedor
C.ReferenciaMonedaExtranjera = C.ReferenciaCompraARectificar.ReferenciaMonedaExtranjera
C.ReferenciaClaveDeOperacion = C.ReferenciaCompraARectificar.ReferenciaClaveDeOperacion
C.DescuentoGeneralPorciento = C.ReferenciaCompraARectificar.DescuentoGeneralPorciento
C.DescuentoEntidadPorciento = C.ReferenciaCompraARectificar.DescuentoEntidadPorciento
C.AplicarRecagoDeEquivalencia = C.ReferenciaCompraARectificar.AplicarRecagoDeEquivalencia
C.PreciosConImpuestosIncluidos = C.ReferenciaCompraARectificar.PreciosConImpuestosIncluidos
C.TipoFactura = S.Enums.tipofactura.rectificativo
end if
end if
if C.ReferenciaDestinador = S.Destinadores.PresupuestosDeComprasYGastos.CompraGastoDePresupuesto.ID
if C.ReferenciaPresupuestoDeCompra <> ''
C.ReferenciaProveedor = C.ReferenciaPresupuestoDeCompra.ReferenciaProveedor
C.ReferenciaRetencion = C.ReferenciaPresupuestoDeCompra.ReferenciaRetencion
C.ReferenciaUbicacionPrincipal = F.GetRowById(S.Sections.Ubicaciones.ID,C.ReferenciaPresupuestoDeCompra.ReferenciaUbicacionPrincipal)
C.ReferenciaDatosFiscalesEmpresa = C.ReferenciaPresupuestoDeCompra.ReferenciaDatosFiscalesEmpresa
C.ReferenciaDatosFiscalesProveedor = C.ReferenciaPresupuestoDeCompra.ReferenciaDatosFiscalesProveedor
C.ReferenciaMonedaExtranjera = C.ReferenciaPresupuestoDeCompra.ReferenciaMonedaExtranjera
C.DescuentoGeneralPorciento = C.ReferenciaPresupuestoDeCompra.DescuentoGeneralPorciento
C.DescuentoEntidadPorciento = C.ReferenciaPresupuestoDeCompra.DescuentoEntidadPorciento
C.AplicarRecagoDeEquivalencia = C.ReferenciaPresupuestoDeCompra.AplicarRecagoDeEquivalencia
C.PreciosConImpuestosIncluidos = C.ReferenciaPresupuestoDeCompra.PreciosConImpuestosIncluidos
C.ReferenciaDatosFiscalesEmpresa = C.ReferenciaPresupuestoDeCompra.ReferenciaDatosFiscalesEmpresa
C.ReferenciaDatosFiscalesProveedor = C.ReferenciaPresupuestoDeCompra.ReferenciaDatosFiscalesProveedor
end if
end if
Formulario_PreACeptar¶
num DistintosImpuestos = F.Columna_ContarDistintosRellenados(S.Fields.ComprasGastosLista.ReferenciaImpuestos.id)
if V.DistintosImpuestos > 3
F.MsgBox('No puede registrar facturas con más de 3 distintos impuestos aplicados.',1)
F.CancelarEvento
salir
end if
if F.CampoHaSidoModificado(S.Fields.ComprasGastos.NumeroDeFactura.id) y C.NIFProveedor <> '' y C.NumeroDeFactura <> ''
F.DataListLoad(S.Sections.ComprasGastos.ID,1,1)
F.DataListLoadAddFilter(S.Sections.ComprasGastos.ID,S.Fields.ComprasGastos.NumeroDeFactura.ID,'=',C.NumeroDeFactura)
F.DataListLoadAddFilter(S.Sections.ComprasGastos.ID,S.Fields.ComprasGastos.NIFProveedor.ID,'=',C.NIFProveedor)
num CantidadDeRegistro = 0
F.ProcessDataList_Ini(S.Sections.ComprasGastos.ID)
V.CantidadDeRegistro = 1
F.ProcessDataList_End
if V.CantidadDeRegistro = 1
if F.PreguntarSiNo('Número repetido de factura','Ya se ha registrado en el sistema una factura con el mísmo número y Proveedor. ¿Desea agregarla igualmente?',1) = 0
F.CancelarEvento
end if
end if
end if
txt Mensaje = ''
if C.ImporteTotal < 0 y C.TipoFactura = S.Enums.tipofactura.ordinario
V.Mensaje = 'El importe de la factura a resultado negativo pero la factura no está marcada como rectificativa. El sistema espera que las facturas en negativo estén marcadas como "Rectificativas". ¿Desea continuar?'
elseif C.ImporteTotal > 0 y C.TipoFactura = S.Enums.tipofactura.rectificativo
V.Mensaje = 'El importe de la factura a resultado positivo pero la factura está marcada como rectificativa. El sistema espera que las facturas en positivo no estén marcadas como "Rectificativas". ¿Desea continuar?'
end if
if V.Mensaje <> ''
if F.PreguntarSiNoCancelar('Aviso',v.Mensaje,1) <> 1
F.CancelarEvento
end if
end if
Campo_ComboAplicarFiltro¶
F.CampoDesplegableAplicarFiltro(S.Fields.EntidadesBase.Proveedor.id,'=',1)
F.CampoDesplegableActivarQuitarFiltros('Proveedores')
Campos utilizados:
- Compras / Gastos > Proveedor
Formulario_TickRecalculo¶
if C.ReferenciaGastoSuplidoEnFactura <> ''
C.ImporteTotalAPagar = 0
else
num totalAPAgar = C.ImporteTotal
if C.ReferenciaImpuesto1.InversionDelSujetoPasivo
V.totalAPAgar = V.totalAPAgar - C.ImporteBaseImponible1CuotaIVA
V.totalAPAgar = V.totalAPAgar - C.ImporteBaseImponible1CuotaRE
end if
if C.ReferenciaImpuesto2.InversionDelSujetoPasivo
V.totalAPAgar = V.totalAPAgar - C.ImporteBaseImponible2CuotaIVA
V.totalAPAgar = V.totalAPAgar - C.ImporteBaseImponible2CuotaRE
end if
if C.ReferenciaImpuesto3.InversionDelSujetoPasivo
V.totalAPAgar = V.totalAPAgar - C.ImporteBaseImponible3CuotaIVA
V.totalAPAgar = V.totalAPAgar - C.ImporteBaseImponible3CuotaRE
end if
C.ImporteTotalAPagar = V.totalAPAgar
end if
if F.CampoHaSidoAfectadoEntreTicks(S.Fields.ComprasGastos.CondicionDePagoDias.id) o F.CampoHaSidoAfectadoEntreTicks(S.Fields.ComprasGastos.FechaContable.id)
if C.CondicionDePagoDias > 0
C.FechaDeVencimiento = F.Date_AddDays(C.FechaContable,C.CondicionDePagoDias)
end if
end if
txt MotivoBloqueoVencimiento = 'La fecha de vencimiento se configura automáticamente segundo las condiciones de pago y la fecha de la compra.'
if C.CondicionDePagoDias > 0
F.CampoBloqueadoMotivo(S.Fields.ComprasGastos.FechaDeVencimiento.ID,v.MotivoBloqueoVencimiento,1)
else
F.CampoBloqueadoMotivo(S.Fields.ComprasGastos.FechaDeVencimiento.ID,v.MotivoBloqueoVencimiento,0)
end if
num BloqueoVentaRec
txt BloqueoVentaRecDesc = 'Esta casilla está reservada para ventas rectificativas.'
if C.TipoFactura = S.Enums.tipofactura.rectificativo o C.ReferenciaCompraARectificar <> ''
V.BloqueoVentaRec = 0
else
V.BloqueoVentaRec = 1
end if
F.CampoBloqueadoMotivo(S.Fields.ComprasGastos.ReferenciaCompraARectificar.ID,v.BloqueoVentaRecDesc,v.BloqueoVentaRec)
F.CampoBloqueadoMotivo(S.Fields.ComprasGastos.FormaDeRectificacion.ID,v.BloqueoVentaRecDesc,v.BloqueoVentaRec)
num obligatorioCamposRectificativos
if C.TipoFactura = S.Enums.tipofactura.rectificativo
V.obligatorioCamposRectificativos = 1
else
V.obligatorioCamposRectificativos = 0
end if
F.CampoObligatorioMotivo(S.Fields.ComprasGastos.ReferenciaCompraARectificar.ID,'Necesario en facturas rectificativas.',v.obligatorioCamposRectificativos)
F.CampoObligatorioMotivo(S.Fields.ComprasGastos.FormaDeRectificacion.ID,'Necesario en facturas rectificativas.',v.obligatorioCamposRectificativos)
if C.ReferenciaCompraARectificar <> ''
C.ReferenciaDestinador = S.Destinadores.ComprasGastos.CompraRectificativa.ID
else
C.ReferenciaDestinador = ''
end if
num Obligado = 1
if C.ReferenciaTipoDeOperacion.EsUnMovimientoSinFactura = 1
V.Obligado = 0
end if
F.CampoObligatorioMotivo(S.Fields.ComprasGastos.NumeroDeFactura.ID,'Las facturas deben tener el número de factura, si no es el caso, puede marcarla como gasto sin factura.',v.Obligado)