KSeF w Comarch ERP Optima: Jak radzić sobie z błędnymi kodami EAN/GTIN?
Pierwszy dzień masowej wysyłki faktur do Krajowego Systemu e-Faktur (KSeF) to sprawdzian dla jakości danych w systemach ERP. Jednym z najczęściej pojawiających się problemów, powodujących odrzucenie dokumentu przez bramkę ministerialną, są nieprawidłowe kody EAN/GTIN. KSeF rygorystycznie weryfikuje długość i strukturę pól – kody dłuższe niż standardowe 13 znaków blokują proces wysyłki faktur sprzedaży.
Poniżej przygotowaliśmy zestaw narzędzi dla administratorów systemu Comarch ERP Optima, które pozwolą szybko zidentyfikować i naprawić te błędy (używasz ich na własną odpowiedzialność).
1. Wyszukiwanie błędnych pozycji (SQL)
To zapytanie pozwala wygenerować listę wszystkich pozycji na fakturach z 2026 roku, które posiadają kod EAN przekraczający 13 znaków:
SELECT [TrE_TwrEAN], [TrE_TwrKod]
FROM [CDN].[TraElem]
WHERE LEN([TrE_TwrEAN]) > 13
AND [TrE_DataDok] BETWEEN '2026-03-31′ AND '2026-12-31′
AND [TrE_TypDokumentu] = 302
2. Filtr na listę faktur (SQL)
Aby wyświetlić na liście w Optimie tylko te faktury, które zawierają błędy w kodach EAN (i wymagają poprawy przed wysyłką), należy użyć poniższego filtra:
TrN_TrNID IN (SELECT TrE_TrNID FROM cdn.TraElem WHERE LEN(TrE_TwrEAN) > 13 AND TrE_TypDokumentu = 302)
3. Funkcja dodatkowa: Automatyczna naprawa pozycji
Jeśli przyczyną błędu są np. doklejone spacje lub błędne znaki na końcu kodu, można skorzystać z Funkcji Dodatkowej, która masowo przytnie kody EAN do wymaganych 13 znaków dla faktur
[SQL]
UPDATE cdn.TraElem
SET TrE_TwrEAN = LEFT(TrE_TwrEAN, 13)
WHERE LEN(TrE_TwrEAN) > 13
AND TrE_DataDok BETWEEN '2026-03-31′ AND '2026-12-31′
AND TrE_TypDokumentu = 302
[VB]
MsgBox „SKRÓCONO KODY EAN DO 13 ZNAKÓW DLA WYBRANYCH FAKTUR”


