Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.04.08;
Скачать: [xml.tar.bz2];

Вниз

Работа со сканером штрихкода   Найти похожие ветки 

 
kyn66 ©   (2007-03-14 18:50) [0]

Могет кто подскажет про САБЖ. Что для этого нужно? На работе требуют написать прогу, которая считывала-бы с квитанций штрихкоды и обрабатывала-бы суммы. Никогда с этим не сталкивался. Могет кому приходилось, полскажите с чего начать. Спасибо.


 
zdm ©   (2007-03-14 18:56) [1]

ни чего не надо если сканер вставляется в разрыв клавиатуры, и он работает как клава, т.е. при чтении штрих-кода в любой edit введется значение


 
zdm ©   (2007-03-14 18:57) [2]

Metrologic Laser Pulsar  , например


 
zdm ©   (2007-03-14 18:58) [3]

обычно, в коде, например, приема коммунальных платежей, 40123456....
40-код операции 123456-1234 руб 56 коп.. мож навел на мысль


 
zdm ©   (2007-03-14 19:10) [4]

тебе всё ещё интересно?
так на всяк случай, мож тоже поможет, извлеч из кода(главное понять где сумма, потому что на пачке сигарет, например, первые цифры-это страна производитель ;) )
примерно так мона.(это верно только для коммунальных платежей, но логику думаю поймешь)
          sub_sum:=copy(Edit_BarCode.Text,3,4);
          sub_sum:=sub_sum+","+ copy(Edit_BarCode.Text,7,2);
          price:=strtofloat(sub_sum) ;


 
kyn66 ©   (2007-03-14 19:23) [5]


> обычно, в коде, например, приема коммунальных платежей,
> 40123456....40-код операции 123456-1234 руб 56 коп.. мож
> навел на мысль


По расшифровке разберемся. А как узнать код попал в Edit, он правильный, корректно считался... Т.е. как управлять различными компонентами на форме для получения кода и в какой момент. И если Edit-ов на форме несколько, какой из них получит код? Вот-бы примерец чей рабочий глянуть


 
zdm ©   (2007-03-14 19:25) [6]

есть у меня прога по приему коммунальных платежей, писал.. все просто, ты вопросы задавай , а я чем смогу помогу. Для сопостовления Корректности кода надо создать таблицу сопоставлений правильности(точнее возможных значений, кол-во символов, код страны,,, ну всё от задачи зависит)


 
zdm ©   (2007-03-14 19:26) [7]

в момент нажатия кнопки "провести платеж"


 
zdm ©   (2007-03-14 19:26) [8]

или OnChange Edit-а -чем тебя не устраивает, ты же знаешь какой эдит за какой код отвечает


 
Fin ©   (2007-03-14 19:34) [9]

а у нас как то этот считыватель штрих кодов не прижился, операторы почти раза в два быстре набирают, хотя если нет операторов  - довольно удобно и ошибок меньше.
Опять же про ошибки: бывали случаи когда при считывании кода выдавался не ожидаемый результат, (очень редко, но было), добавил в код контрольную сумму и при вводе проверял её и при не совпадении писчал бипиром, мигал и т.п.


 
zdm ©   (2007-03-14 19:39) [10]


> Fin ©   (14.03.07 19:34) [9]

извини, конечно, про ошибки мож ты и прав, но как ты в коде разберешь где, например "О" -русская она или английская, а на некоторых это может быть еще и нулём(0)


 
zdm ©   (2007-03-14 19:40) [11]

замечено за полтора года юзанья моей проги, было тока 2 случая некоректности. Но поверь, ошибок юзеров, я в день наблюдаю на порядок больше


 
zdm ©   (2007-03-14 19:41) [12]

про моей,, я не имел ввиду себя лично, а автоматический процесс считывания сканером


 
zdm ©   (2007-03-14 19:43) [13]


> Fin ©   (14.03.07 19:34) [9]

без обид, если писчит и мигает, перепрошить его легко можно-это таблицы прошивки обычно поставляются со сканером, скорее всего -это возникает при "простое" он засыпает просто, а корректно просуться не может


 
zdm ©   (2007-03-14 19:44) [14]

просуться=проснуться


 
zdm ©   (2007-03-14 19:45) [15]

это как винду -раз в полгода желательно переустанавливать


 
kyn66 ©   (2007-03-14 19:48) [16]

Если говоришь есть прога, могет мона на форму со считыванием глянуть?


 
zdm ©   (2007-03-14 20:00) [17]

да в форме кроме  TEdit-ов ни чего нет. На OnShow формы я делаю на необходимый Edit-SetFocus-юзер штрихает-нажимает ENTER(или мышкой встает на следующее поле)-пока все необходимые edit-ы не заполнены кнопка Save-Enabled=False-когда все заполнены она становится активной и при нажатии на неё идет проверка сходимости введеных значений.


 
zdm ©   (2007-03-14 20:01) [18]

на ENTER отдельный обработчик, имитирует TAB юзерам так удобней блин ;)))


 
Fin ©   (2007-03-14 20:02) [19]

zdm что то я не как не услежу ход твоей мысли.
Что значит как отличить латинскую "О" от русской или нуля? у них вообщето разный код 142 и 79 у нуля ваще 49. и потом в лично я в штрихкод помещал только полезную информацию т.е. лицевой, сумма, дата, ещё какуюто инфу и контрольную сумму. Ни кахих букв там и в помине не было.
и про пищание и мигание это как раз я сам в проге и писал что бы заострить внимание оператора потому что на экран они как раз почти и не смотрят.
Короче одим словом у нас эта технология не прижилась по ряду причин.


 
zdm ©   (2007-03-14 20:04) [20]

к сожалению у TEDIT нет события потири фокуса, можно было-бы сразу отсекать неудачи,,, но если у тебя их несколько, то и контролируй возможные переходы от одного эдита к другому и соответственно сразу можешь присекать нессанкционированные вводы, но все равно конечное слово оставь за кнопко "провести платеж", там уже можно "спокойно" во всем разобраться


 
zdm ©   (2007-03-14 20:06) [21]


> Fin ©   (14.03.07 20:02) [19]

про O и 0 , ты-ж говорил что они без сканера быстрее вводят и как они отличают?,, особенно если постоянный поток клиентов идет?


 
zdm ©   (2007-03-14 20:08) [22]


> Fin ©   (14.03.07 20:02) [19]

это ты помещал,, а коды разные бывают, от куда ты знаешь какой у автора?!?!?


 
zdm ©   (2007-03-14 20:09) [23]


> Fin ©   (14.03.07 20:02) [19]

прошу прощения у автора. серьёзно, а как ты писал передачу параметров "мигания" сканеру?


 
Fin ©   (2007-03-14 20:13) [24]

во первых зачем оператору отличать 0 от О, они чётко видят сумму прписанную цифрами.
во вторых у нас нет очередей клиентов клиентов, все платежи для нас принимают сторонние организации, но к сожалению не все из них могут нам передать принятую инфу вэлектронном виде, поэтому опраторам и приходиться забивать данные с корешков квитанции.  а там всё просто набила лицивой нажала ентер- набила сумму и нажала ентер. и т.к. далее.


 
Fin ©   (2007-03-14 20:15) [25]

ну ты загнул откуда я знаю код у автора. во первых есть стандартные кодировки, а у меня ещё проще я сам же эти коды и пишу на квитанциях (вернее писал) так как за не надобностью временно убрали.


 
Fin ©   (2007-03-14 20:19) [26]

[23] не понял вопроса. Не кому я не передавал не каких параметров. а пищала и мигала прога на машине.


 
zdm ©   (2007-03-14 20:21) [27]


> и про пищание и мигание это как раз я сам в проге и писал
> что бы заострить внимание оператора

а как-же это?,,,  или я не понял
а автор спрашивает не про написание кодов и возможно не про стандартные коды, по этому и рассматриваются нештатные ситуёвины


 
zdm ©   (2007-03-14 20:24) [28]

я так и думал, а пищит она или кричит по причине некорректного просыпания(у тя не Metrologic случаем? ;))


 
Fin ©   (2007-03-14 20:28) [29]

вообщето если автор собирается принимать платежи по квитанциям для этого у него должен быть договор с организацией которая эти квитанции выпускает и как один из моментов договора в виде приложения или соглашения оговариваются технические вопросы где чётко и оговаривается протоколы, стандарты и прочее так что в этом вопроса я думаю быть не должно.
И  потом совсем забыли про автора, у него вопрос собственно в том как считать и обработать данные.


 
Fin ©   (2007-03-14 20:30) [30]

[28] какой считыватель даже не помню, но он точно нечего ненужного (пищание) сам не издаёт.


 
zdm ©   (2007-03-14 20:33) [31]


> Fin ©   (14.03.07 20:28) [29]

так в принципе мы с тобой вроде как и объяснили. А дальше как всегда флуд пошел ;) Да лан, ситуации разные бывают, если сам писал то поймешь, ПОКА НЕ НАЧНЕШЬ ПИСАТЬ-ВОПРОСЫ ЗАДАВАТЬ БЕСПОЛЕЗНО. IMHO, автор просто думает, а на следующий конкретный вопрос мы с удовольствием ответим(если сможем)


 
zdm ©   (2007-03-14 20:39) [32]


> Fin ©

при всём уважении(и естественно без обид), но задело как-то-мы отказались от штрихов. А вот Ашан, Пятерочка, Эльдорадо и др. минимаркеты не отказались ;))) странно ;) Супермаг-слышал прогу, дык я её воспитывал полтора года, а точнее она меня , а я юзеров на ней.. о сказанул-то ;)


 
Fin ©   (2007-03-14 20:48) [33]

ты сам сказал что ситуации бывают разный  Мы это не эльдорадо и другие магазины, мы выставляем счета абонентам целого города и от этих абонентов счета могут вернутся испачкаными, с исправленными суммами и прочее. И поверь у нас считыватели штрих кодов уступили по скорости обработки операторам.


 
zdm ©   (2007-03-14 20:54) [34]


> Fin ©   (14.03.07 20:48) [33]

да,я понимаю тебя, так бы сразу и сказал -что штрихи "не первой свежести". такое, конечно, может быть. но автору надо удовлетворить начальство(автор, ни какой похабщины не имел ввиду, мы все удовлетворяем потребности клиента, порой хотца и в морду ему даже дать....), а уж как жизнь повернется-это вопрос третий. Встал вопрос по работе со штрихами, ну и давай способствовать, хотя все версии хороши, жаль что участников мало . Автор-бы по подробней объяснил какие именно он штрих собирается читать, стандарт, собственные...возможны-ли ксерокопии.факсы и т.д.


 
kyn66 ©   (2007-03-15 09:10) [35]

Я так пониманию, что обработка полученых со сканера данных бывает разной в зависимости от сканера? На данный момент у меня тот, который вставляется в разрыв с клавой. А бывают наверное и USB - шные. Для них наверное по другому?


 
tesseract ©   (2007-03-15 10:28) [36]


> А бывают наверное и USB - шные. Для них наверное по другому?


C Com-USB  проще обработатывать сообщения.


 
Fin ©   (2007-03-15 10:48) [37]


> kyn66 ©   (15.03.07 09:10) [35]

У нас считыватель включается в разрыв клаву. те которые напрямую не юзал, но думаю принципиальных отличий нет. ИМХО конечно же но те котрые не в разрыв клавы всё равно посылают сообщегия в буфер клавы поэтому разницы быть не должно. Если не прав то tesseract ©   (15.03.07 10:28) [36] поясни что значит проще обрабатывать?


 
DiamondShark ©   (2007-03-15 10:52) [38]


>  На данный момент у меня тот, который вставляется в разрыв
> с клавой

Ну так и не парь себе голову.
Пиши прогу так, словно никакого сканера у тебя нет, а цыферьки нажимаются на клавиатуре.


> А бывают наверное и USB - шные. Для них наверное по другому?

Для них по-другому.


 
kyn66 ©   (2007-03-15 15:07) [39]

Тот шо через клаву - проверено, все просто получается. Разобрался. Спачибо zdm за изначальную наводку.


 
zdm ©   (2007-03-15 17:55) [40]

дык бывают сканеры еще и в com-порты которые вставляются, а там уже отдельный разговор! и они не эмулируют клаву, а рабтают как отдельное устр-во. Через дровинку.



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.04.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.55 MB
Время: 0.055 c
11-1155399704
Psychedelic
2006-08-12 20:21
2007.04.08
MouseUp в ListView


2-1174020682
D@Nger
2007-03-16 07:51
2007.04.08
типизированный файл и класс


2-1174337219
Новичёк
2007-03-19 23:46
2007.04.08
Как правильно построить структуру для работы с БД


1-1171121236
Observer
2007-02-10 18:27
2007.04.08
Asm and Delphi


15-1174033984
HomeUser
2007-03-16 11:33
2007.04.08
Техно Фэнтези, подскажите чего-нибудь





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский