diff --git a/ems-engine/src/main/java/it/integry/ems/document/Import/service/DocumentiAcquistoImportService.java b/ems-engine/src/main/java/it/integry/ems/document/Import/service/DocumentiAcquistoImportService.java index 01511b0abb..c6cf5fddd3 100644 --- a/ems-engine/src/main/java/it/integry/ems/document/Import/service/DocumentiAcquistoImportService.java +++ b/ems-engine/src/main/java/it/integry/ems/document/Import/service/DocumentiAcquistoImportService.java @@ -421,6 +421,23 @@ public class DocumentiAcquistoImportService { } if (addRow ) { + List articoli = Stream.of(doc.getWdtbDocr()).map(x -> x.getCodArtFor()).distinct().toList(); + + sql = + String.format( + "SELECT cod_art_for FROM mtb_lisa WHERE cod_alis = %s AND cod_art_for in (%s) AND cod_mart is null", + UtilityDB.valueToString(dtbDoct.getListino()), + UtilityDB.listValueToString(articoli)); + + List artMancanti = UtilityDB.executeSimpleQueryOnlyFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql); + + if (artMancanti != null && artMancanti.size() > 0) { + throw new Exception(String.format("Attenzione nel documento ci sono articoli non agganciati ad un codice interno. Articoli non codificati: %s", + StringUtils.join(artMancanti, ","))); + + } + + List righe = Stream.of(doc.getWdtbDocr()).map( d -> {