Automatisch genereren van de EAN13 Barcode

0000000480     -      21-03-2025

Mercator kan zelf automatisch een EAN13 barcode generen bij de aanmaak van een nieuw artikel. Deze barcode wordt opgeslagen in één van de drie sleutels van de artikelfiche. De nummer van deze sleutel wordt bepaald in "Tools/Opties/Bestanden/Sleutelnr auto EAN13".  (id = X1AUTO_EAN)

De optie "Laatste nr EAN13" laat u toe om de stam te bepalen die zal worden gebruikt voor de aanmaak van deze code. Deze omvat de 12 eerste caracters van de EAN13 code. Mercator voegt er het controle caracter aan toe. De codes worden berekend via het verhogen +1 van de 12 eerste caracters.  (id = X2AUTO_EAN)

Het script moet in transactie moet in een SQL-tabblad van de code-editor worden uitgevoerd. In dit script moet ' s_cle3' worden aangepast met de sleutel die men wil vervolledigen met de EAN13-code. (Zie de waarde van de optie X1AUTO_EAN) Deze kolomnaam moet op twee plaatsen in het script worden gewijzigd. Nadat u dit gedaan hebt moet Mercator tenslotte opnieuw worden opgestart zodat de software in het woordenboek MercatorUi.Globals.Params rekening houdt met de optie X2AUTO_EAN die bijgewerkt wordt met het script in de OPTIES-tabel.

declare @X2AUTO_EAN varchar(20)
select @X2AUTO_EAN=rtrim(valeur) from OPTIONS (NOLOCK) where (type='X2AUTO_EAN') and (stem='PARAMS')
if (@X2AUTO_EAN is null) or (len(@X2AUTO_EAN)<>12) or (isNumeric(@X2AUTO_EAN)=0)
    return
 
select ROW_NUMBER() over (ORDER BY s_id) as recno,s_id
    into #stock_ean_tmp
    from stock where s_cle2=''
create index s_id on #stock_ean_tmp (s_id)

if exists(select * from #stock_ean_tmp)
begin 
    update stock set s_cle2=dbo.XEANCHECK(right(replicate('0',12) + rtrim(cast(cast(@X2AUTO_EAN as bigint)+recno as char(12))),12))
        from #stock_ean_tmp where (#stock_ean_tmp.s_id=stock.s_id)
    declare @max_recno int
    select @max_recno=max(recno) from #stock_ean_tmp
    update OPTIONS set valeur=right(replicate('0',12)+rtrim(cast(cast(@X2AUTO_EAN as bigint)+@max_recno as char(12))),12) where (type='X2AUTO_EAN') and (stem='PARAMS')
end
drop table #stock_ean_tmp

Sinds versie 11.0.880 van MercatorUi.dll is het mogelijk om deze barcodes automatisch te genereren tijdens het importeren (Excel). Om dit te doen, moet u de optie "Artikelen importeren: automatische generatie van EAN13" op JA zetten (id = IMPAUTOEAN).

Er wordt geen generatie uitgevoerd als het geïmporteerde bestand de kolom met deze barcode bevat.

Bestaande barcodes worden niet vervangen.



Functionele cookies: Cookies die nodig zijn voor het gebruik van de website en voorkeurscookies. Ze bevatten geen persoonsgegevens. (Meer informatie)

Analytische cookies: Verzamelen van statistieken met betrekking tot het gedrag van internetgebruikers. (Meer informatie)

Marketingcookies: Om bezoekers op verschillende websites te volgen voor advertentiedoeleinden. (Meer informatie)