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.