Имя: Пароль:
1C
1С v8
УТ 10.3 к штрих коду добавляется цифра
0 Uragan_a
 
24.07.12
09:49
Перенес остатки через эксель с ТиС в УТ 10.3, штрих код тоже пенеренесся но почему то читаю с этикетки, добавляется еще одна цифра и не находит. штрих кода 12 цифр, при чтении добавляется 13 символ 6ка
1 Ork
 
24.07.12
09:50
(0) А где вы взяли 12 разрядный штрихкод?
2 Ork
 
24.07.12
09:51
+(1) Что б не "ходить вокруг да около" - почитайте о стандарте ЕАН-13 и буитВамМногаСчастия.
3 Uragan_a
 
24.07.12
09:55
там кодер в 7ке им чего начудил, а ща хер разберись
4 John83
 
24.07.12
10:00
открывай ИТС - там хорошо это дело расписано
PS давно с штрих-кодами работал - там вроде контрольный символ добавляется
5 Ork
 
24.07.12
10:03
(3) Нужно понимать так, что вопросов у вас уже не осталось? Одни утверждения?

По поводу семрки. Каким способом там формировался штрих-код? Если с использованием штифта гнивц - где-то в дебрях тамошнего кода должна быть функция вычисления контрольного символа. Когда делаешь экспорт - точно также ее нужно вычислить и добавить в экспорт.
6 Uragan_a
 
24.07.12
10:05
jlyb djghjcs
7 Uragan_a
 
24.07.12
10:05
одни вопросы
8 SherifSP
 
24.07.12
10:06
(0)Без контрольного символа, сканер читать не будит
9 Uragan_a
 
24.07.12
10:07
1 Вариант
Штрих код в 7ке - 000108005213
и на этикетке так же, но в семерке все ок
а восьмерка пишет
штрих код 001080052132 тип Code39 не найден
10 Uragan_a
 
24.07.12
10:07
в восьмерку я его перенс тоже как 000108005213
11 SherifSP
 
24.07.12
10:08
Тип кода другой
12 Uragan_a
 
24.07.12
10:09
менял на Code39 не помогает
13 SherifSP
 
24.07.12
10:09
Тебе Ean 13 нужен а не Сode39
14 SherifSP
 
24.07.12
10:10
(12) Картинка тоже должна соответствовать типу Ean13
15 SherifSP
 
24.07.12
10:11
Ты через печать этикеток делаешь?
16 Uragan_a
 
24.07.12
10:11
этикетки с семерки остались
17 Ork
 
24.07.12
10:11
(9) На этикетке штрихкод выглядит так : *000108005213*? (всмысле ведущей и заключительной звездочек)
18 Uragan_a
 
24.07.12
10:11
там чувак сам писал печать этикеток
19 Uragan_a
 
24.07.12
10:12
звездочек нет
20 Uragan_a
 
24.07.12
10:12
про без пробелов без ничего,  000108005213
21 SherifSP
 
24.07.12
10:13
Посмотри как в типовой обработка "ПечатьЭтикеток" работает, точно так же сделай свою
22 Uragan_a
 
24.07.12
10:13
при попытке печатать дает ошибку формата
23 Uragan_a
 
24.07.12
10:16
а меняешь форма на коде 39, печатает
24 Ork
 
24.07.12
10:21
Для кода сообщения "000108005213" контрольным числом в ЕАН-13 будет "2". (Только что проверил). Читаемый штрихкод будет выглядеть как "0001080052132". Так что в семерке - все правильно.
Проверяй, что хранится в восьмерке и как выглядит при выводе на печать.
25 Ork
 
24.07.12
10:26
+(24) Попробуй из восьмерки распечатать этикетки со штрихкодами
000108005213 и 0001080052132. И прочитать тот и другой.
26 Uragan_a
 
24.07.12
11:32
распечатал в code39 читает
27 Uragan_a
 
24.07.12
11:32
в еан не печатает так как 12 символов
28 Uragan_a
 
24.07.12
11:35
Вообщем тут ситуация такая. ПРограммист внедренец 7ки, лет так 6 назад.

Сделал печать двух видов ЭТИКЕТОК штрих кодов 12 символьные как я полагаю code39 и ean13 14 символьные.
12 символьные маленькие и 14 символьные большие.

при печати маленьких, они так и печатаются как есть в базе, а вот при печати больших добавляется контрольны 13 символ
29 Uragan_a
 
24.07.12
11:35
есть тут логика?
30 Uragan_a
 
24.07.12
11:39
но фишка в том что я распечатал 12 значный в коде 39 он его читает норм как 000108005213, а те что в 7ке печатались как 00108005213, убирает первый ноль
31 Uragan_a
 
24.07.12
11:39
можно переделать все этикетки в коде 39 и перепечатать но не реально, слишком много
32 Uragan_a
 
24.07.12
11:40
чего делать (.
33 Uragan_a
 
24.07.12
12:05
как я понял 12 значные они печатали в коде 39, а 13 значные еан 13
34 Uragan_a
 
24.07.12
12:09
ребят как в коде 39 будет контрольное число, как его расчитать?
например тут 000108005213
35 alkov
 
24.07.12
12:26
(32) Увольняйся
36 Avganec
 
24.07.12
12:29
(34) в коде39 можно и без контрольного числа
37 Uragan_a
 
24.07.12
13:24
(35) чуть позже, спасибо за предложение
38 Uragan_a
 
24.07.12
13:25
дело в том что при считывании ими напечатанных баркодов, добавляется 13 символ, я думаю пробежать по всем штрих кодам и добавить его
39 Uragan_a
 
24.07.12
13:25
может есть готовая функция)
40 Uragan_a
 
24.07.12
13:31
получается в 1ске у меня штрих кода 12 значные, но при печати добавляется 13 знак и при считываении тоже.
41 GenAcid
 
24.07.12
13:32
Он не добавляется, он там есть, в смысле в штрихкоде. А вот в человеческом виде выводится 12. Выдери из 1ски функцию получения контрольного символа и добавь его 13ым.
42 Uragan_a
 
24.07.12
13:33
(41) ок, спс.
буду думать
43 Uragan_a
 
24.07.12
13:37
(41) только все таки они 12 значные на этикетке и в 7ке было 000108005213, при чтении убирает первый 0 и добавляет 2, получается 001080052132
44 Uragan_a
 
24.07.12
13:38
если оставляю первый ноль, то не находит 0001080052132
45 Uragan_a
 
24.07.12
13:40
тогда надо будет переформировать и сделать их все коде 39 чтобы 8ка позволяла печатать
46 Anderson
 
24.07.12
14:19
Держи

Функция глПроверкаШК(ШтрихКод) Экспорт
   Перем КонтрольнаяСумма,Четные,Нечетные,Общее,Результат,ПроверкаДесятка;
   Если СтрДлина(ШтрихКод)<>13 Тогда
       Возврат 0;
   КонецЕсли;
   
   КонтрольнаяСумма=Число(Сред(ШтрихКод,13,1));
   Для а=1 по 12 Цикл
       Если (а%2)>0  Тогда
           Нечетные=Нечетные+Число(Сред(ШтрихКод,а,1));
       Иначе
           Четные=Четные+Число(Сред(ШтрихКод,а,1));
       КонецЕсли;                                    
   КонецЦикла;                                        
   Общее=Нечетные+(Четные*3);
   Для х=0 По 9 Цикл  
       ПроверкаДесятка=(Общее+х)/10;
       Если ПроверкаДесятка=Цел(ПроверкаДесятка) Тогда
           Результат=х;
           Прервать;
       КонецЕсли;
   КонецЦикла;
   
   Если (КонтрольнаяСумма=Результат) Тогда
       Возврат 1;
   Иначе
       Возврат 0;
   КонецЕсли;
КонецФункции
47 Anderson
 
24.07.12
14:20
Надеюсь допетраешь где подправить
48 Anderson
 
24.07.12
14:22
А вообще в компоненте печати этикеток есть параметр содержит ШК контрольную сумму или нет.
49 Uragan_a
 
24.07.12
14:47
Вот что получилось
Штрихкод = Прав(Штрихкод,11) + РаботаСТорговымОборудованием.КонтрольныйСимволEAN(ШтрихКод, 13);

теперь нужно как то отловить плохие и поправить

или я не туда думаю
50 Uragan_a
 
24.07.12
14:49
из 000108005213 получается 001080052132, этикетки печатанные в 7ке начинают читаться, но не печатаются, так как еану нада 13, переделываем на коде 39
51 Uragan_a
 
24.07.12
14:54
а как сделать запрос по всем штрихкодам длина которых 12, возможно или перебором нужно проверятЬ?)
52 Uragan_a
 
25.07.12
04:23
переделал штри
53 Uragan_a
 
25.07.12
04:25
штрих кода, мой сканер читает и находит спокойно из 0001470058010 он делает 001470058010 и находит его в базе так как я его подогнал под него,  а в теперь магазине он читает 0001470058010 с нулем и не находит типа еан13 не найден. как быть? в чем проблема? там сканер старый или наоборот сверхновый?