Инструменти за потребители

Инструменти за сайта


nomenklaturi:pozicii:maski

Разлики

Тук са показани разликите между избраната и текущата версия на страницата.

Препратка към сравнението на версиите

Both sides previous revisionПредходна версия
Следваща версия
Предходна версия
nomenklaturi:pozicii:maski [2018/02/02 13:18] k.kyurkchievanomenklaturi:pozicii:maski [2022/08/24 07:25] (текуща) t.lalova
Ред 1: Ред 1:
 ====== Маски на баркодове ====== ====== Маски на баркодове ======
  
-В най-простия си вид **баркодовете** най-често се използват за задаване на уникален в световен мащаб номер на артикул. +**Баркодовете** най-често се използват за задаване на уникален в световен мащаб номер на артикул. 
    
-В номенклатура [[nomenklaturi:pozicii:pozicii|Позиции]], в таб **"Баркодове"** се намира съответствието между този уникален номер и номера на позицията в номенклатурата. \\  +В номенклатура [[nomenklaturi:pozicii:pozicii|Позиции]], таб **"Баркодове"** се задава съответствието между този уникален номер и номера на позицията в номенклатурата. \\  
 Баркодове може да се асоциират както с артикул, така и с контрагент. Баркодове може да се асоциират както с артикул, така и с контрагент.
  
-В един баркод може да бъде кодирана информация освен за номера на артикула, така и за неговото тегло/количество, цена, сериен номер и т.н.  +Освен номера на артикула, в един баркод може да бъде кодирана информация и за неговото тегло/количество, цена, сериен номер и т.н. \\ 
-Използването на теглови баркодове се прави най-често при употребата на електронна везна, с която се претегля артикуласлед което везната автоматично печата етикет с баркод, в който се закодира номера на артикула и неговото тегло. +Използването на теглови баркодове се прави най-често при употребата на електронна везна, с която след като се претегли артикулът, везната автоматично печата етикет с баркод, в който се закодира номерът на артикула и неговото тегло. 
  
-За да може да се използва тази информация, баркодът трябва да бъде разпознат, че е от такъв "особен" тип, а не е обикновен баркод, представляващ просто уникален номер на артикула. +За да може да се използва тази информация, за баркода трябва да бъде разпознато, че съдържа такава информация, а не е обикновен баркод, представляващ просто уникален номер на артикула. 
 В програмата се прави проверка на маската на баркода и при грешка в нея, софтуерът извежда съобщение за това.  В програмата се прави проверка на маската на баркода и при грешка в нея, софтуерът извежда съобщение за това. 
  
 **Маската** представлява низ от знаци, които определят правилата, по които се извлича информацията от баркода. Системата, по която се задават тези знаци е известна като **"Регулярен израз"**. \\  **Маската** представлява низ от знаци, които определят правилата, по които се извлича информацията от баркода. Системата, по която се задават тези знаци е известна като **"Регулярен израз"**. \\ 
-Идеята е първо баркодът да бъде разпознат като такъв, от който може да се извлече информация, след което да се укаже на програмата от кои разпознати групички какво да се извлече. +Идеята е първо баркодът да бъде разпознат като такъв, от който може да се извлече информация, след което да се укаже на програмата от кои разпознати групички (части от него) какво да се извлече. 
  
 {{:nomenklaturi:pozicii:маски_баркодове.png?750|}} {{:nomenklaturi:pozicii:маски_баркодове.png?750|}}
  
  
-Изразът започва с определена последователност от цифри, т.е. маската изисква прочетеният баркод задължително да започва с тях.  \\+Изразът може да започва с определена последователност от цифри, т.е. маската да изисква прочетеният баркод задължително да започва с тях.  \\
  
 Обикновените скоби ('(' и ')') указват, че това е поредната група, която ще бъде разпознавана.  Обикновените скоби ('(' и ')') указват, че това е поредната група, която ще бъде разпознавана. 
Ред 30: Ред 30:
 **__ИЗВЛИЧАНЕ НА ИНФОРМАЦИЯТА__** **__ИЗВЛИЧАНЕ НА ИНФОРМАЦИЯТА__**
  
-След като баркода бъде разпознат, е необходимо да се укаже от коя група (заградена в обикновени скоби) каква информация ще се извлича. +След като баркодът бъде разпознат, е необходимо да се укаже от коя група (заградена в обикновени скоби) каква информация ще се извлича. 
  
 В колони **"Индекс на групата"** се въвежда номера на групата, от която ще се черпи информацията.  В колони **"Индекс на групата"** се въвежда номера на групата, от която ще се черпи информацията. 
  
-  - Позиция - група от израза, от която се изтегля номерът на артикула (каквито цифри бъдат извлечени от групата се приемат директно за номер на артикула) +  - Позиция - група от израза, от която се изтегля номерът на артикула (цифрите, които бъдат извлечени от групата се приемат директно за номер на артикула) 
-  - Сериен/партиден номер - група, от която се изтегля серийния номер на артикула +  - Сериен/партиден номер - група, от която се изтегля сериен/партиден номер на артикула 
-  - Баркод на позиция - група от израза, от която се изтегля поредица от символи, които се търсят като съответсвие на Баркод/Позиция, чрез номерът на артикула в се идентифицира  номерът на артикула +  - Баркод на позиция - група от израза, от която се изтегля поредица от символи, които се търсят като съответствие на Баркод/Позиция, чрез номера на артикула в баркода се идентифицира номерът на артикула 
   - Кол. - група, от която се изтегля количеството    - Кол. - група, от която се изтегля количеството 
   - Цена без ДДС преди ТО - група, от която се изтегля цената   - Цена без ДДС преди ТО - група, от която се изтегля цената
-  - Контрагент - група, от която се изтегля контрагента +  - Контрагент - група, от която се изтегля контрагентът 
   - Баркод на контрагент - служи да разпознае баркод на контрагент от номенклатурата баркодове на контрагента   - Баркод на контрагент - служи да разпознае баркод на контрагент от номенклатурата баркодове на контрагента
   - Роля на контрагента, с три опции:    - Роля на контрагента, с три опции: 
-        -Източник - за да се постави контрагента като източник, трябва в баркода в групичката за "роля на контрагента" да пише "1" (без кавичките)\\ +        -Източник - за да се постави контрагентът като източник, в баркода в групичката за "роля на контрагента" трябва да пише "1" (без кавичките)\\ 
-        -Посредник - за да се постави контрагента като посредник, трябва в баркода в групичката за "роля на контрагента" да пише "2" \\ +        -Посредник - за да се постави контрагентът като посредник, в баркода в групичката за "роля на контрагента" трябва да пише "2" \\ 
-        -Получател - за да се постави контрагента като получател, трябва в баркода в групичката за "роля на контрагента" да пише "3"\\+        -Получател - за да се постави контрагентът като получател, в баркода в групичката за "роля на контрагента" трябва да пише "3"\\
   - Клас номер - група, от която се изтегля номер на класа, според регистрираните класове документи   - Клас номер - група, от която се изтегля номер на класа, според регистрираните класове документи
   - Документ номер - група, от която се изтегля номер на документа    - Документ номер - група, от която се изтегля номер на документа 
Ред 57: Ред 57:
 <box round red|**Важно:**> В [[documenti:obsti:nastrojki_na_targ.documenti|Настройките на документи ]] (търговски и финансови) в таб Други, има поле за "при избор на контрагент чрез баркод", което работи само, ако преди това чрез маска в баркода не е разпозната ролята на контрагента (Източник/Посредник/Получател). \\ <box round red|**Важно:**> В [[documenti:obsti:nastrojki_na_targ.documenti|Настройките на документи ]] (търговски и финансови) в таб Други, има поле за "при избор на контрагент чрез баркод", което работи само, ако преди това чрез маска в баркода не е разпозната ролята на контрагента (Източник/Посредник/Получател). \\
  
-С други думи, приоритетът е първо да се гледа какво е разпознато с маската и **ако не е разпозната роля на Контрагента**, после вече се гледа настройката от документа. </box>+С други думи, приоритетът е първо да се види какво е разпознато с маската и **ако не е разпозната роля на Контрагента**, после вече се види и настройката от документа. </box>
  
 В колоните за Константи - **"Позиция"** и **"Контрагент"** въвеждате конкретна позиция, съответно контрагент според естеството на баркода. \\  В колоните за Константи - **"Позиция"** и **"Контрагент"** въвеждате конкретна позиция, съответно контрагент според естеството на баркода. \\ 
Ред 67: Ред 67:
  
 Колона **"Приоритет"** се попълва, тъй като е възможно, няколко маски едновременно да отговарят на един и същ баркод. \\  Колона **"Приоритет"** се попълва, тъй като е възможно, няколко маски едновременно да отговарят на един и същ баркод. \\ 
-Баркода се съпоставя последователно на маските, сортирани възходящо, по стойността на техния приоритет. +Баркодът се съпоставя последователно на маските, сортирани възходящо, по стойността на техния приоритет. 
  
-Възможно е баркодовете да съдържат **серийни/партидни номера**, които се приемат за "текст" идвайки от баркода. В случай, че пред серийния/партидния номер има водещи нули и желаете те да се **игнорират при сканиране**, отпред пред групата за сериен/партиден номер се слага "**0***". Същевременно за групата, с която се описва серийния/партиден номер не се слага твърдо брой символи, а се записват **граници** (отделят се със запетая). \\ +Възможно е баркодовете да съдържат **серийни/партидни номера**, които се приемат за "текст" идвайки от баркода. В случай, че пред серийния/партидния номер има водещи нули и желаете те да се **игнорират при сканиране**, отпред пред групата за сериен/партиден номер се слага "**0***". Същевременно за групата, с която се описва серийният/партидният номерне се слага твърдо брой символи, а се записват **граници** (отделят се със запетая). \\ 
  
 <box round green|Пример:> Маска **^30*([0-9]{1,8})$** - префикс 3; 0*-премахване на водещи нули; броя на символите за серийния/партидния номер може да е от 1 до 8. \\ <box round green|Пример:> Маска **^30*([0-9]{1,8})$** - префикс 3; 0*-премахване на водещи нули; броя на символите за серийния/партидния номер може да е от 1 до 8. \\
Ред 82: Ред 82:
 За да се избегнат подобни разминавания и грешки от [[vavedenie:kakvo_novo|релийз 2015.08]] в „Маски на баркодове“ е направена промяна **да може да се указва съответната маска какво количество да попълни и в коя мерна единица**.  За да се избегнат подобни разминавания и грешки от [[vavedenie:kakvo_novo|релийз 2015.08]] в „Маски на баркодове“ е направена промяна **да може да се указва съответната маска какво количество да попълни и в коя мерна единица**. 
 За целта е добавен нов банд **„Количество“** с две колони, съответно за **Количество** и **Мерна единица**. */ За целта е добавен нов банд **„Количество“** с две колони, съответно за **Количество** и **Мерна единица**. */
 +
 За да се избегнат разминавания и грешки, **можете да указвате съответната маска какво количество да попълни и в коя мерна единица**.  За да се избегнат разминавания и грешки, **можете да указвате съответната маска какво количество да попълни и в коя мерна единица**. 
-За целта използвате двете колони за **Количество** и **Мерна единица** в банд **„Количество“**.+За целта използвате двете колони за **Количество** и **Мерна единица** в банд **„Количество“**.\\
 Логиката на работа е следната: Логиката на работа е следната:
-    * Ако има Индекс на групата|Количество (съществуващата колона за кол-во до момента) - тя е с най-висок приоритет;+    * Ако има Индекс на групата|Количество /* (съществуващата колона за кол-во до момента)*/ - тя е с най-висок приоритет;
     * Ако Количество|Количество е празна – за Количество се приема стойност 1-ца;     * Ако Количество|Количество е празна – за Количество се приема стойност 1-ца;
     * Ако Количество|Количество има стойност (например 5) -  за Количество се взима тази стойност (т.е. за количество ще се постави 5).     * Ако Количество|Количество има стойност (например 5) -  за Количество се взима тази стойност (т.е. за количество ще се постави 5).
Ред 91: Ред 92:
 Относно „Мерната единица“,  по която ще се попълва съответното количество възможните стойности са следните: Подразбираща се мерна единица (подразбираща се ст-ст при нов запис); МЕ1; МЕ2; МЕ3 или МЕ4. Относно „Мерната единица“,  по която ще се попълва съответното количество възможните стойности са следните: Подразбираща се мерна единица (подразбираща се ст-ст при нов запис); МЕ1; МЕ2; МЕ3 или МЕ4.
 Ако има попълнен индекс за количество в индексите, колона "Константи/Количество/Количество" е неактивна. Ако има попълнен индекс за количество в индексите, колона "Константи/Количество/Количество" е неактивна.
-/* Създадени са и други две нови колони, относно маските  -  **„Коментар“** и **„Активна ДА/НЕ“** (по подразбиране **ДА при нов запис**). Наличието на активни и неактивни маски ще оптимизира сканирането на баркодове на база само активните маски. */+/* Създадени са и други две нови колони, относно маските  -  **„Коментар“** и **„Активна ДА/НЕ“** (по подразбиране **ДА при нов запис**). Наличието на активни и неактивни маски ще оптимизира сканирането на баркодове на база само активните маски. */ \\
 За оптимизиране на сканирането на баркодове, можете да указвате дали дадена маска е активна или не чрез съответната отметка. За оптимизиране на сканирането на баркодове, можете да указвате дали дадена маска е активна или не чрез съответната отметка.
 <box round red|**Важно:**>При ъпгрейд от релийзи преди 2015.08 всички съществуващи маски стават активни и за мерна единица се попълва МЕ1.</box> <box round red|**Важно:**>При ъпгрейд от релийзи преди 2015.08 всички съществуващи маски стават активни и за мерна единица се попълва МЕ1.</box>
Ред 101: Ред 102:
 /* От [[vavedenie:kakvo_novo|релийз 2016.1]] в номенклатурата е направената промяна при попълване на колона **"Индекс на групата/Количество"**. При тази ситуация колона "Количество/Количество" е неактивна. */ /* От [[vavedenie:kakvo_novo|релийз 2016.1]] в номенклатурата е направената промяна при попълване на колона **"Индекс на групата/Количество"**. При тази ситуация колона "Количество/Количество" е неактивна. */
  
-При приемане на стока много удобно, използвайки баркод четец, е да се сканират етикетите на палети, кашони и т.н., като обикновено в тях доставчиците са кодирали информация, освен за артикул, количество и сериен/партиден номер, също така и за **Срок на годност**. По този начин на готово може да се попълни цялата необходима информация в документа за заприхождаване, без да се дописва нещо на ръка. +При приемане на стока много удобно, използвайки баркод четец, да се сканират етикетите на палети, кашони и т.н., като обикновено в тях доставчиците са кодирали информация, освен за артикул, количество и сериен/партиден номер, също така и за **Срок на годност**. По този начин на готово може да се попълни цялата необходима информация в документа за заприхождаване, без да се дописва нещо на ръка. 
-/* За покриването на този начин на работа в [[vavedenie:kakvo_novo|релийз 2017.06]] е добавена възможност, в маските на баркодове, да може да се разпознава и попълва **Срока на годност**.  Целта е при сканиране на баркод, съдържащ информация за Срок на годност, същият да се попълни в [[documenti:skladovi:document|ТД]], в таблица "Серийни/партидни номера". */+/* За покриването на този начин на работа в [[vavedenie:kakvo_novo|релийз 2017.06]] е добавена възможност, в маските на баркодове, да може да се разпознава и попълва **Срока на годност**.  Целта е при сканиране на баркод, съдържащ информация за Срок на годност, същият да се попълни в [[documenti:skladovi:document|ТД]], в таблица "Серийни/партидни номера". */ \\
 За покриването на този начин на работа в маските на баркодове може да се разпознава и попълва **Срок на годност**.  Целта е при сканиране на баркод, съдържащ информация за Срок на годност, същият да се попълни в [[documenti:skladovi:document|ТД]], в таблица "Серийни/партидни номера". За покриването на този начин на работа в маските на баркодове може да се разпознава и попълва **Срок на годност**.  Целта е при сканиране на баркод, съдържащ информация за Срок на годност, същият да се попълни в [[documenti:skladovi:document|ТД]], в таблица "Серийни/партидни номера".
  
Ред 131: Ред 132:
 Поради изброените причини **стойностите от маската** (когато има такива) винаги трябва да са **с приоритет**, независимо дали в **номенклатурата на баркодовете** (в позиции) са въведени п**одразбиращи стойности за количество и мярка** или не. Целта е да може максимално да се улесни (автоматизира) въвеждането в СМЕРП на необходимата информация за вписване и изписване на стока, която има баркод на опаковката.  Поради изброените причини **стойностите от маската** (когато има такива) винаги трябва да са **с приоритет**, независимо дали в **номенклатурата на баркодовете** (в позиции) са въведени п**одразбиращи стойности за количество и мярка** или не. Целта е да може максимално да се улесни (автоматизира) въвеждането в СМЕРП на необходимата информация за вписване и изписване на стока, която има баркод на опаковката. 
  
-Специфичен момент е, ако в маска има избрана мерна единица (първа, втора, ....) и има количество в сканирания баркод (или като група или като константа), тогава се игнорира стойността на мерната единица от баркода на позицията и се гледа тази от маската. \\+Специфичен момент е, ако в маска има избрана мерна единица (първа, втора, ...) и има количество в сканирания баркод (или като група или като константа), тогава се игнорира стойността на мерната единица от баркода на позицията и се гледа тази от маската. \\
 Ако в маската е посочена подразбираща се мерна единица, тогава се взима подразбиращата се МЕ за баркода на позицията, ако няма се гледа подразбиращата се МЕ на сериен/партиден номер и най-накрая подразбиращата се МЕ на позицията (ако няма друга). Ако в маската е посочена подразбираща се мерна единица, тогава се взима подразбиращата се МЕ за баркода на позицията, ако няма се гледа подразбиращата се МЕ на сериен/партиден номер и най-накрая подразбиращата се МЕ на позицията (ако няма друга).
  
-Тъй като при промени в номенклатурата на Маски на баркодове е необходимо те да влизат в сила веднагабез да се налага рестарт на системата, е реализирано опресняване на данните. \\ +За да може да се реализира **запомняне на местоположението за Източник, Посредник или Получател** при сканиране с баркод четец [[documenti:skladovi:header|в ТД]], в номенклатурата на Маските на баркодове е налична възможност за посочване и разпознаване на произволни стойности в баркодовете на база три „**Универсални групи 1-3**“.  За всяка група се задава Индекс (поредност в маската) и Тип, относно това какво представлява стойността в тази група. За в бъдеще това може улесни възможността за разпознаване на други типове стойности в баркодовете, без това да налага добавяне на нови полета в маските. \\ 
-**"Изчистването на кешираните данни"** също е съобразено да включва **Маски на баркодове**.+ 
 +{{:nomenklaturi:pozicii:маски_универсални_групи.png?400|}} 
 + 
 +Текущочрез тези три групи е възможно **разпознаване на подразбиращи се Местоположения за Източник/Посредник/Получател**. При разпознаване в баркод на някое от тях, то подменя съответното подразбиращо се местоположение в ТД. 
 + 
 +Тъй като при промени в номенклатурата на Маски на баркодове е необходимо те да влизат в сила веднага, без да се налага рестарт на системата, същите са включени в **"Изчистването на кешираните данни"** с цел опресняване на данните.
  
  
Ред 141: Ред 147:
 **__ПРОВЕРКА НА БАРКОД__** **__ПРОВЕРКА НА БАРКОД__**
  
-Разтваряйки със стрелката в дясно панела за **"Проверка на баркод"** може да проверите, доколко въведената маска е правилно записана. \\  +С разтваряне панела за **"Проверка на баркод"** със стрелката в дясно може да проверите, доколко въведената маска е записана правилно. \\  
 След сканиране (вписване) на произволен баркод, отговарящ на маската, излиза съобщение дали е намерена маска или не, както и данните какво е разпознато.  След сканиране (вписване) на произволен баркод, отговарящ на маската, излиза съобщение дали е намерена маска или не, както и данните какво е разпознато. 
  
Ред 150: Ред 156:
 {{:nomenklaturi:pozicii:proverka_na_barkod_2.jpg?850|}} {{:nomenklaturi:pozicii:proverka_na_barkod_2.jpg?850|}}
  
 +
 +<box round red|Важно:> При сканиране с баркод четец трябва да се внимава дали сте на латиница или кирилица. Например, ако сте на кирилица, вместо баркод 101#000051 ще дойде 101+000051. \\
 +Баркод четецът е прост емулатор на клавиатура. При изписване в текстов редактор на #, ако езикът е на USA (английски) ще се изпише "#", но ако е UK ще се изпише "£", а когато е на кирилица (БДС) ще изпише "+". \\ 
 +За да не се получават подобни проблеми, трябва да се използват изцяло числови баркодове или за разделител да се ползва символ, който се изписва с натискане на един и същ бутон във всички популярни клавиатурни подредби.</box>
 +
 +Вижте още [[obsti_komponenti:skanirane_s_barkod_chetec|Специфики при сканиране с баркод четец на баркодове с цифрено/буквено изражение]].
  
    
nomenklaturi/pozicii/maski.1517577534.txt.gz · Последна промяна: 2018/02/02 13:18 от k.kyurkchieva