Comarch ERP XL generowanie EAN pojedynczo i zbiorowo

Comarch ERP XL do generowania kodów EAN wykorzystuje procedurę o nazwie CDN.GenerujEAN. Można ją wywołać za pomocą poniższej składni SQL z poziomu SSMS (SQL Server Management Studio)

DECLARE @EAN VARCHAR(40);
EXEC CDN.GenerujEAN 1,'',@EAN OUTPUT;
SELECT @EAN;

Po wywołaniu, procedura zwróci nam pierwszy wolny (nie wykorzystany w bazie danych ERP XL) kod EAN z zakresu podanego w konfiguracji jako „Zakres 1”. Zakres można zmienić podając odpowiedni parametr do procedury. (System/Konfiguracja/Sprzedaż/Kody EAN):

W moim przypadku jest to 2019518353919. Teraz na podstawie tego kodu EAN mogę wygenerować szybko, dowolną ilość kolejnych kodów EAN. Żeby to zrobić, przepisujemy go do w poniższego zapytania SQL w miejsce zmienej @EAN, ale bez ostatniej cyfry kontrolnej (tylko pierwsze 12 cyfr). Dodatkowo w pętli WHILE określamy wartość @cnt na ilość kodów EAN, które chcemy wygenerować. Ustawię tą wartość na 10.

DECLARE @cnt INT = 0;
DECLARE @EAN BIGINT=201951835391--początkowy kod EAN bez cyfry kontrolnej (12 cyfr)
DECLARE @EANS TABLE (EAN BIGINT)
WHILE @cnt < 10--ile wygenerować kodów EAN
BEGIN
   INSERT INTO @EANS VALUES (CDN.CyfraKontrolnaEAN(@EAN))
   SET @cnt = @cnt + 1;
   SET @EAN = @EAN + 1;
END;
SELECT * FROM @EANS

Wywołuję teraz zapytanie SQL, oto jego wynik:

Można zauważyć, że wygenerowało ono 10 kolejnych kodów EAN, a funkcja CDN.CyfraKontrolnaEAN dodała do każdego prawidłową 13-tą cyfrę kontrolną. Teraz możemy łatwo skopiować te kody i wykorzystać np. do importu towarów do ERP XL np. za pomocą migratora:

Koniec 🙂

Jeżeli pomogłem to Postaw mi kawę na buycoffee.to ,a będę miał więcej energii na pisanie kolejnych ciekawych wpisów.

Jeden komentarz

  1. Nice post. I learn something totally new and challenging on blogs I stumbleupon everyday. Its always exciting to read through articles from other writers and practice something from their web sites.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *