Определить тип штрих-кода в 1С
Самые распространенные типы штрих-кода — EAN13, EAN8, CODE39.
Как получить тип штрих-кода в 1С 8.3, зная только сам штрих-код, я расскажу ниже.
Данные функции содержатся в общем модуле РаботаСТорговымОборудованием управления торговлей версии 10.3.
Содержание
Определение типа штрих-кода EAN8
Функция ТипШтрихкодаEAN8ТО(Штрихкод) Экспорт
Результат = Ложь;
Сумма = 0;
Коэффициент = 3;Если СтрДлина(Штрихкод) = 8 Тогда
Индекс = Неопределено;
Для Индекс = 1 По 7 Цикл
КодСимв = КодСимвола(Штрихкод, Индекс);
Если КодСимв < 48 Или КодСимв > 57 Тогда
Возврат Результат;
КонецЕсли;
Сумма = Сумма + Коэффициент * (КодСимв — 48);
Коэффициент = 4 — Коэффициент;
КонецЦикла;
Сумма = (10 — Сумма % 10) % 10;
Результат = (КодСимвола(Штрихкод, 8) = Сумма + 48);
КонецЕсли;Возврат Результат;
КонецФункции // ТипШтрихкодаEAN8ТО()
Функция для получения контрольного числа в 1С EUN13:
Функция КонтрольныйСимволEAN13ТО(Штрихкод) Экспорт
Результат = «»;
Сумма = 0;
Коэффициент = 1;Индекс = Неопределено;
Для Индекс = 1 По 12 Цикл
КодСимв = КодСимвола(Штрихкод, Индекс);
Сумма = Сумма + Коэффициент * (КодСимв — 48);
Коэффициент = 4 — Коэффициент;
КонецЦикла;
Сумма = (10 — Сумма % 10) % 10;
Результат = Символ(Сумма + 48);Возврат Результат;
КонецФункции // КонтрольныйСимволEAN13ТО()
Определение типа штрих-кода EAN13
Функция ТипШтрихкодаEAN13ТО(Штрихкод) Экспорт
Результат = (СтрДлина(Штрихкод) = 13
И КонтрольныйСимволEAN13ТО(Штрихкод) = Прав(Штрихкод, 1));Возврат Результат;
КонецФункции // ТипШтрихкодаEAN13ТО()
Определение типа штрих-кода CODE39
Функция ТипШтрихкодаCODE39ТО(Штрихкод) Экспорт
Результат = Ложь;
Длина = СтрДлина(Штрихкод);
Индекс = Неопределено;Если Длина > 0 Тогда
Результат = Истина;
Для Индекс = 1 По Длина Цикл
КодСимв = КодСимвола(Штрихкод, Индекс);
Если (КодСимв <> 32)
И (КодСимв < 36 Или КодСимв > 37)
И (КодСимв <> 43)
И (КодСимв < 45 Или КодСимв > 57)
И (КодСимв < 65 Или КодСимв > 90) ТогдаРезультат = Ложь;
Прервать;КонецЕсли;
КонецЦикла;
КонецЕсли;Возврат Результат;
КонецФункции // ТипШтрихкодаCODE39ТО()
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
СПРОСИТЕ в комментариях!