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 email nie zostanie opublikowany. Wymagane pola są oznaczone *