Имя: Пароль:
IT
 
На каком сайте можно сгенерировать последовательность EAN13 в заданном диапазоне
,
0 Гений 1С
 
гуру
21.12.20
12:12
Те.
20....1X
20....2X
20....3X
и т.п., где Х - контрольная сумма
1 Гений 1С
 
гуру
21.12.20
12:14
https://barcode.tec-it.com/ru/EAN13
тут есть, но не то.
выдает список картинок, а нужен просто список кодов с контрольной суммой
2 Галахад
 
гуру
21.12.20
12:16
Хм, а почему не в 1С?
3 Малыш Джон
 
21.12.20
12:16
(2) мне тоже интересно)
4 spectre1978
 
21.12.20
12:21
(0) сам напиши, делов на полчаса с кофеем.
5 Гений 1С
 
гуру
21.12.20
12:23
(4) не хочу клиенту выставлять лишний счет
6 Йохохо
 
21.12.20
12:35
в ут 10.3
7 Гений 1С
 
гуру
21.12.20
12:38
(6) а в 11 нет?
8 Йохохо
 
21.12.20
12:39
(7) конечно есть
9 Hmster
 
21.12.20
12:42
(5) цикл и расчет контрольного числа займет много времени?
10 spectre1978
 
21.12.20
12:42
(5) ну бесплатно сделай или по скидке. Функционал расчета контрольного символа должен быть во всех конфах где есть работа с ШК, а остальное там один цикл и пара полей ввода. Писать-то считай и не надо ничего.
11 Малыш Джон
 
21.12.20
12:45
(10) да как бы и сам контрольный символ - это на пятнадцать минут работы (вместе нагугливанием)
12 Гений 1С
 
гуру
21.12.20
12:47
(9) да у меня есть изолированная обработка по расчету контрольной цифры
(11) ну вот я и выставлю на 0.5, потому что столько и займет.
я просто думаю, зачем изобретать велик, может готовое есть?
13 agres
 
21.12.20
12:49
Отправил на почту xls-файлик. Возможно, поможет.
14 ДенисЧ
 
21.12.20
12:49
За 50 минут уже написал бы...
15 mkalimulin
 
21.12.20
12:49
Вот уже гений не в состоянии 4 строчки кода написать
16 Йохохо
 
21.12.20
12:53
кстати код в УТ 10.3 и БП 3.0 абсолютно идентичен)
17 Малыш Джон
 
21.12.20
12:59
(12) >>ну вот я и выставлю на 0.5, потому что столько и займет.

ну сюда-то половину перечислишь? за помощь?
18 Asmody
 
21.12.20
13:32
"Мой гений дарит вам..."

В своем браузере нажимаешь Shift+Ctrl+J (или F12), в консоль javascript вставляешь вот эту строку:

((p, k) => [...Array(k).keys()].map(i=>parseInt(p.toString().substr(0, 12))+i).map(l=> l*10 + (10 - (l.toString().split('').reduce((a,i,n)=>a+i*(1+2*(n%2)), 0) % 10))))(4603934000786, 10)

поменяй последних параметра: с какого ш\к начать, сколько ш\к генерить
19 Гений 1С
 
гуру
21.12.20
13:45
(18) Спасибо, я уже сделал таки на Excel:
=ЕСЛИ(B5="";"";B5*10+ОСТАТ(10-ОСТАТ(3*(ПСТР(B5;2;1)+ПСТР(B5;4;1)+ПСТР(B5;6;1)+ПСТР(B5;8;1)+ПСТР(B5;10;1)+ПСТР(B5;12;1))+ПСТР(B5;1;1)+ПСТР(B5;3;1)+ПСТР(B5;5;1)+ПСТР(B5;7;1)+ПСТР(B5;9;1)+ПСТР(B5;11;1);10);10))
20 Kassern
 
21.12.20
21:56
(18) Либо смотришь типовую конфу...
// Функция вычисляет контрольный символ кода EAN
//
// Параметры:
//  ШтрихКод     - штрихкод (без контрольной цифры)
//  Тип          - тип штрихкода: 13 - EAN13, 8 - EAN8
//
// Возвращаемое значение:
//  Контрольный символ штрихкода
//
Функция КонтрольныйСимволEAN(ШтрихКод, Тип) Экспорт

    Четн   = 0;
    Нечетн = 0;

    КоличествоИтераций = ?(Тип = 13, 6, 4);

    Для Индекс = 1 По КоличествоИтераций Цикл
        Если (Тип = 8) и (Индекс = КоличествоИтераций) Тогда
        Иначе
            Четн   = Четн   + Сред(ШтрихКод, 2 * Индекс, 1);
        КонецЕсли;
        Нечетн = Нечетн + Сред(ШтрихКод, 2 * Индекс - 1, 1);
    КонецЦикла;

    Если Тип = 13 Тогда
        Четн = Четн * 3;
    Иначе
        Нечетн = Нечетн * 3;
    КонецЕсли;

    КонтЦифра = 10 - (Четн + Нечетн) % 10;

    Возврат ?(КонтЦифра = 10, "0", Строка(КонтЦифра));

КонецФункции // КонтрольныйСимволEAN()
21 Злопчинский
 
21.12.20
22:07
фу какая хрень. еан или не еан - пофиг. так же как и длина. "контрольный символ еан" это если не ошибаюсь "расчет по модулю 10"
22 Asmody
 
21.12.20
22:09
(20) 18 строк против 1.
23 Злопчинский
 
21.12.20
22:09
(18) работает, блин!
24 ДедМорроз
 
21.12.20
23:01
Блин,вам цифры надо,а я то думал,вам его нарисовать нужно.

Когда-то,очень давно,когда был microsoft office 4,я рисовал штрих-код через msgraph.
25 Kassern
 
22.12.20
09:05
(22) ну разрабы 10ой торговли решили так реализовать контрольный символ...
26 Малыш Джон
 
22.12.20
09:27
(22) Пффф! Пожалуйста, одна строка:

Функция КонтрольныйСимволEAN(ШтрихКод, Тип) Экспорт Четн   = 0; Нечетн = 0; КоличествоИтераций = ?(Тип = 13, 6, 4); Для Индекс = 1 По КоличествоИтераций Цикл Если (Тип = 8) и (Индекс = КоличествоИтераций) Тогда Иначе Четн   = Четн   + Сред(ШтрихКод, 2 * Индекс, 1); КонецЕсли; Нечетн = Нечетн + Сред(ШтрихКод, 2 * Индекс - 1, 1); КонецЦикла; Если Тип = 13 Тогда Четн = Четн * 3; Иначе        Нечетн = Нечетн * 3; КонецЕсли; КонтЦифра = 10 - (Четн + Нечетн) % 10; Возврат ?(КонтЦифра = 10, "0", Строка(КонтЦифра));  КонецФункции
2 + 2 = 3.9999999999999999999999999999999...