40 lines
1.4 KiB
Markdown
40 lines
1.4 KiB
Markdown
# ClientFlow v4.9.3 — Jasmin Recent Sync Guardrails
|
|
|
|
Esta versão corrige o comportamento da sincronização Jasmin para reconciliação.
|
|
|
|
## Problema corrigido
|
|
|
|
Na v4.9.2, o comando:
|
|
|
|
```bash
|
|
PYTHONPATH=. python scripts/sync_external_reconciliation.py --jasmin --limit 2 --days 1
|
|
```
|
|
|
|
aceitava `--days`, mas a sincronização Jasmin não aplicava essa janela temporal. Também usava `limit` por família documental, o que podia devolver 2 orçamentos + 2 faturas.
|
|
|
|
Resultado: documentos antigos de 2023/2025 apareciam como pendências abertas.
|
|
|
|
## Comportamento novo
|
|
|
|
- `--days` é aplicado ao sync Jasmin.
|
|
- A API Jasmin é chamada com `$orderby=documentDate desc` e `$filter=documentDate ge <data>` quando possível.
|
|
- Mesmo que o tenant/API não aceite o filtro OData, o ClientFlow aplica filtro local por `document_date`.
|
|
- `--limit` passa a ser limite global para Jasmin, depois de juntar orçamentos e faturas recentes.
|
|
- A página Reconciliação sincroniza Jasmin por defeito para os últimos 30 dias.
|
|
|
|
## Limpeza de itens antigos já criados
|
|
|
|
A v4.9.2 pode já ter criado candidatos antigos. Usar primeiro dry-run:
|
|
|
|
```bash
|
|
PYTHONPATH=. python scripts/cleanup_stale_reconciliation_items.py --jasmin --days 30
|
|
```
|
|
|
|
Se a lista estiver correta:
|
|
|
|
```bash
|
|
PYTHONPATH=. python scripts/cleanup_stale_reconciliation_items.py --jasmin --days 30 --apply
|
|
```
|
|
|
|
Isto marca os candidatos antigos como `ignored`. Não apaga documentos, oportunidades, mensagens ou registos externos.
|