From d4368acdc497b2137a6663fe589d4f2c18b4e329 Mon Sep 17 00:00:00 2001 From: MatteoPistorello Date: Wed, 20 Apr 2022 17:29:14 +0200 Subject: [PATCH] Fix verifica numero ddt --- modules/ddt/edit.php | 2 +- modules/ddt/modutil.php | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/modules/ddt/edit.php b/modules/ddt/edit.php index 92283e65c..a51cecc2c 100755 --- a/modules/ddt/edit.php +++ b/modules/ddt/edit.php @@ -35,7 +35,7 @@ if (!empty($numero_previsto)) {
'.tr("E' assente un _TYPE_ numero _NUM_ in data precedente o corrispondente a _DATE_: si potrebbero verificare dei problemi con la numerazione corrente delle fatture", [ '_TYPE_' => $module['name'], - '_DATE_' => dateFormat($fattura->data), + '_DATE_' => dateFormat($ddt->data), '_NUM_' => '"'.$numero_previsto.'"', ]).'.
'; diff --git a/modules/ddt/modutil.php b/modules/ddt/modutil.php index d17c701bb..cc2dc67b5 100644 --- a/modules/ddt/modutil.php +++ b/modules/ddt/modutil.php @@ -219,12 +219,15 @@ function verifica_numero_ddt(DDT $ddt) { global $dbo; - if (empty($ddt->numero_esterno)) { - return null; - } - $data = $ddt->data; $tipo = $ddt->tipo; + $dir = $ddt->direzione; + $numero = ($dir == 'entrata' ? $ddt->numero_esterno : $ddt->numero); + $campo = ($dir == 'entrata' ? 'numero_esterno' : 'numero'); + + if (empty($numero)) { + return null; + } $documenti = DDT::where('idtipoddt', $tipo->id) ->where('data', $data) @@ -233,7 +236,7 @@ function verifica_numero_ddt(DDT $ddt) // Recupero maschera per questo segmento $maschera = setting('Formato numero secondario ddt'); - $ultimo = Generator::getPreviousFrom($maschera, 'dt_ddt', 'numero_esterno', [ + $ultimo = Generator::getPreviousFrom($maschera, 'dt_ddt', $campo, [ 'data < '.prepare(date('Y-m-d', strtotime($data))), 'YEAR(data) = '.prepare(date('Y', strtotime($data))), 'idtipoddt = '.prepare($tipo->id),