Cobros de Ventas¶
La sección Cobros de Ventas gestiona la recepción de pagos correspondientes a las facturas emitidas, registrando cada transacción de cobro y vinculándola al depósito monetario donde se recibe el dinero (caja o cuenta bancaria). Almacena información completa del cobro incluyendo referencia, fecha, estado de tramitación, importes (cobrado, devolución automática, total cobrado), vinculación comercial (venta asociada, cliente), método de pago (efectivo, tarjeta, transferencia, cheque/pagaré), depósito destino, fechas de gestión (vencimiento, tramitación), empleado responsable, y vinculación contable (asiento contable, movimiento bancario). Su objetivo es controlar el flujo de ingresos de la empresa, gestionar vencimientos de cobro, facilitar la conciliación bancaria y los cierres de caja, y mantener la trazabilidad completa entre ventas, cobros y contabilidad. Se integra con Ventas, Contabilidad (asientos automáticos), Tesorería, Conciliación bancaria y TPV. Soporta cobros parciales, devoluciones automáticas de cambio en efectivo y múltiples métodos de pago por cliente.
Información General¶
| Propiedad | Valor |
|---|---|
| ID | 10f52508-2ad5-4afe-9d0b-ef12d5914f10 |
| Tabla PostgreSQL | tpr_40040105811 |
| Etiqueta Plural | Cobros de Ventas |
| Texto principal automatico | Sí |
| Sección Base | Base - Cobros de Ventas (ce8f1851-5b67-4eb4-b406-b0d92f8bc26c) |
Campos¶
Total de campos: 45 (10 del sistema, 35 personalizados)
Campos del Sistema¶
| Campo | Tipo | Rol | Columna PostgreSQL | Relación | Atributos |
|---|---|---|---|---|---|
| ID | Relación |
- | id |
Cobros de Ventas | - |
| 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 |
|---|---|---|---|---|---|
| Empleado | Relación |
General | pr_100401058114 |
🔴 Obligatorio | Autorrellenado (Siempre): Campo (Sesión): La Entidad ( ID* ) |
| Transacción secundaria | Relación |
General | pr_20040114143 |
🔒 Bloqueado, 👁 Oculto | - |
| Emisión de Cheque o pagaré (Devolución) | Relación |
Avanzado | pr_30040106062 |
👁 Oculto | - |
| Total Cobrado | Decimal |
General | pr_300401060613 |
🔒 Bloqueado, 📊 Cualquier valor numérico | - |
| Importe afectado a depósito | Decimal |
General | pr_300401060614 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Hora local | Hora |
Registro | pr_100401058118 |
🔒 Bloqueado, 👁 Oculto | - |
| Fecha de vencimiento | Fecha |
General | pr_300401060620 |
- | - |
| Destinador | Relación |
General | pr_100401058123 |
🔒 Bloqueado, 👁 Oculto | - |
| Depósito monetario | Relación |
General | pr_30040106064 |
🔴 Obligatorio | Autorrellenado (Cadena_Rellenada): Campo (Sesión): Depósito preferente · Autorrellenado (Cadena_Rellenada): Campo (Sesión): Puesto de trabajo / Depósito monetario · Autorrellenado (Siempre): Campo (Empresa Actual): Depósito predeterminado para Cobros de Ventas |
| Transacción monetaria interna | Relación |
General | pr_10040106073 |
🔒 Bloqueado, 👁 Oculto | - |
| Emisión de Cheque o Pagaré | Relación |
Avanzado | pr_30040106067 |
👁 Oculto | - |
| Fecha de tramitación y validación | Fecha Y Hora |
Contabilidad | pr_30040106069 |
- | - |
| Venta | Relación |
General | pr_10040105871 |
🔒 Bloqueado | - |
| Autor del alta | Relación |
Registro | pr_100401058116 |
🔴 Obligatorio | Autorrellenado (Siempre): Campo (Sesión): La Entidad ( ID* ) |
| Total pagado (Tramitado) | Decimal |
General | pr_300401060616 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Importe afectado a depósito (Tramitado) | Decimal |
General | pr_300401060615 |
🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico | - |
| Observaciones | Texto |
Observaciones | pr_300401060622 |
- | Puede usar este campo, para dejar registro de información que la persona encargada considere importante. |
| Fecha Alta del registro | Fecha Y Hora |
Registro | pr_100401058120 |
🔴 Obligatorio | Autorrellenado (Siempre): Fecha y Hora actual |
| Fecha contable | Fecha |
Contabilidad | pr_50040135704 |
- | - |
| Asiento contable | Relación |
Contabilidad | pr_60040135302 |
- | - |
| Empleado que tramita y valida | Relación |
Avanzado | pr_500401412013 |
🔒 Bloqueado, 👁 Oculto | - |
| Fecha local de tramitación y validación | Fecha |
General | pr_10040141221 |
🔒 Bloqueado, 👁 Oculto | - |
| Movimiento bancario | Relación |
Contabilidad | pr_20040264603 |
- | - |
| Asignar manualmente la fecha contable | Sí/No |
Contabilidad | pr_50040365591 |
- | - |
| Cobro de suplido | Sí/No |
Contabilidad | pr_10040587231 |
- | - |
| Objetivo cobro | Decimal |
General | pr_10662713 |
👁 Oculto, 📊 Cualquier valor numérico | - |
| Cliente | Relación |
General | pr_30040106063 |
- | Autorrellenado (Siempre): Campo : Venta / Cliente |
| Ubicación Principal | Relación |
Registro | pr_100401058115 |
👁 Oculto | Autorrellenado (Siempre): Campo (Sesión): Ubicación Principal |
| Puesto de trabajo | Relación |
Registro | pr_30040106066 |
- | Autorrellenado (Siempre): Campo (Sesión): Puesto de trabajo |
| Devolución automática | Sí/No |
Registro | pr_10662711 |
- | - |
| Importe | Decimal |
General | pr_300401060611 |
📊 Cualquier valor numérico | - |
| Importe (Devolución) | Decimal |
General | pr_300401060612 |
📊 Cualquier valor numérico | - |
| Método de pago | Relación |
General | pr_30040106065 |
- | Autorrellenado (Siempre): Campo (Empresa Actual): Cobros (Método de pago por defecto) |
| Estado | Entero |
General | pr_300401060618 |
🔴 Obligatorio, 📊 Cualquier valor numérico | - |
| Fecha Dato | Fecha Y Hora |
Registro | pr_100401058117 |
🔴 Obligatorio | Autorrellenado (Siempre): Fecha y Hora actual |
Scripts¶
Total de scripts: 9
Código de Scripts¶
Lógica de negocio ejecutada en los formularios automáticamente
Formulario_Iniciado_AgregarNuevo¶
if C.ReferenciaVenta.FechaDeVencimiento <> ''
if C.ReferenciaVenta.FechaDeVencimiento > D.DatosEspeciales.FechaActual
C.Estado = S.Enums.estadotransaccion.pendiente
C.FechaDeVencimiento = C.ReferenciaVenta.FechaDeVencimiento
end if
end if
if C.ReferenciaMovimientoBancario <> ''
F.EjecutarScript(s.ScriptsSections.CobrosDeVentas.MovimientoBancario.ID)
end if
if C.ReferenciaVenta.ImporteTotal > 0
if C.ReferenciaVenta.ReferenciaCliente.ReferenciaDepositoParaPagoDeVentas <> ''
C.ReferenciaDepositoMonetario = C.ReferenciaVenta.ReferenciaCliente.ReferenciaDepositoParaPagoDeVentas
end if
if C.ReferenciaVenta.ReferenciaCliente.ReferenciaMetodoDePagoVenta <> ''
C.ReferenciaMetodoDePago = C.ReferenciaVenta.ReferenciaCliente.ReferenciaMetodoDePagoVenta
end if
elseif C.ReferenciaVenta.ImporteTotal < 0
if C.ReferenciaVenta.ReferenciaCliente.ReferenciaDepositoParaPagoDeVentasRectificativas <> ''
C.ReferenciaDepositoMonetario = C.ReferenciaVenta.ReferenciaCliente.ReferenciaDepositoParaPagoDeVentasRectificativas
end if
if C.ReferenciaVenta.ReferenciaCliente.ReferenciaMetodoDePagoDeVentasRectificativa <> ''
C.ReferenciaMetodoDePago = C.ReferenciaVenta.ReferenciaCliente.ReferenciaMetodoDePagoDeVentasRectificativa
end if
C.ImporteImporte = C.ReferenciaVenta.ImporteTotal
end if
Campo_Cambiado¶
C.Estado = S.Enums.estadotransaccion.tramitado
C.FechaDeTramitacionYValidacion = C.ReferenciaMovimientoBancario.FechaDato
Campos utilizados:
- Cobros de Ventas > Movimiento bancario
Formulario_Iniciado_AgregarNuevo_PostRellenadoImportacion¶
if C.ReferenciaDestinador = S.Destinadores.VentasIngresos.CobroDeVenta.ID y C.ImporteImporte = 0
if C.ReferenciaVenta <> ''
C.ReferenciaCliente = C.ReferenciaVenta.ReferenciaCliente
num aCobrar = C.ReferenciaVenta.ImporteTotalACobrar - C.ReferenciaVenta.ImporteTotalCobrado
C.ImporteImporte = V.aCobrar
if V.aCobrar > 0
C.ImporteObjetivoCobro = V.aCobrar
end if
end if
end if
if C.ReferenciaMetodoDePago = 'b8bed667-c2ff-4b65-8227-fab2e8f93052'
C.DevolucionAutomatica = 1
end if
Campo_PreAgregarRelacion¶
F.Guardar
F.CopiarAgregarRelacion(S.Fields.AsientosContablesBase.ReferenciaCobros.ID,C.ID)
Campos utilizados:
- Cobros de Ventas > Asiento contable
Campo_Cambiado¶
if C.ReferenciaMetodoDePago.ReferenciaDepositoOpcional <> ''
C.ReferenciaDepositoMonetario = C.ReferenciaMetodoDePago.ReferenciaDepositoOpcional
end if
Campos utilizados:
- Cobros de Ventas > Método de pago
Indefinido¶
if F.CampoHaSidoModificado(S.Fields.CobrosDeVentas.ReferenciaEmisionDeChequeOPagare.ID)
if C.ReferenciaEmisionDeChequeOPagare <> '' y C.ReferenciaEmisionDeChequeOPagare.Anulado = 0
F.MsgBox('No puede cancelar el cobro, porque ha seleccionado un cheque y este no está cancelado, cancele el cheque o desasocielo, para poder continuar.',0)
F.CancelarEvento
End If
End If
if F.CampoHaSidoModificado(S.Fields.CobrosDeVentas.ReferenciaEmisionDeChequeOPagareDevolucion.ID)
if C.ReferenciaEmisionDeChequeOPagareDevolucion <> '' y C.ReferenciaEmisionDeChequeOPagareDevolucion.Anulado = 0
F.MsgBox('No puede cancelar el cobro, porque ha seleccionado un cheque y este no está cancelado, cancele el cheque o desasocielo, para poder continuar.',0)
F.CancelarEvento
End If
End If
Formulario_TickRecalculo¶
if C.Estado = S.Enums.estadotransaccion.tramitado
C.ImporteTotalPagadoTramitado = C.ImporteTotalCobrado
else
C.ImporteTotalPagadoTramitado = 0
End If
@ b8bed667-c2ff-4b65-8227-fab2e8f93052 = Efectivo
if C.ImporteObjetivoCobro > 0
if C.DevolucionAutomatica y C.ReferenciaMetodoDePago = 'b8bed667-c2ff-4b65-8227-fab2e8f93052'
If C.ImporteImporte > C.ImporteObjetivoCobro
C.ImporteImporteDevolucion = C.ImporteImporte - C.ImporteObjetivoCobro
ElseIf C.ImporteObjetivoCobro < 0
C.ImporteImporteDevolucion = C.ImporteObjetivoCobro - C.ImporteImporte
Else
C.ImporteImporteDevolucion = 0
End If
end if
F.CampoBloqueadoMotivo(S.Fields.CobrosDeVentas.ImporteImporteDevolucion.ID,'Automático.',C.DevolucionAutomatica)
end if