AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.07.2012, 16:08   #11  
virhundo is offline
virhundo
Участник
 
33 / 16 (1) ++
Регистрация: 29.03.2007
ещё вариант:
я делал такой "финт ушами" для BC 128 в 3.0, едиственный минус - растет длина штрихкода :

X++:
static str IsolateSymbols(str _inputStr)
{
    str       Code128SymbCard ="_!#$%&()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz[\]^`{|}~\"\'";
    str       charBC, charBC_prev, charBC_next;
    int       len, i;
    str       encodedStr;
    ;
       //Формирование строки штрихкода
            len = strlen(_inputStr);
            for(i=1; i<=len;i++)
            {
               charBC_prev  = i==1 ? "" : substr(_inputStr,i-1,1);
               charBC       = substr(_inputStr,i,1);
               charBC_next  = substr(_inputStr,i+1,1);
                 //изоляция  руских букв, пробелов, etc
                 if(strfind(charBC,Code128SymbCard,1,1)<=0) // не нашли символ в таблице символов CODE128
                 {
                     charBC  =  int2str(char2num(charBC,1));
                     if(strlen(charBC)<3)
                          charBC = "0"+ charBC; //ascii для пробела, etc
                     //проверка пред. и след. символа
                     //есть некорректный пред. символ
                     if(charBC_prev!="" && strfind(charBC_prev,Code128SymbCard,1,1)<=0)
                         encodedStr      += charBC;
                     else encodedStr     += "{"+ charBC;
                     //есть некорректный след. символ
                     if(charBC_next!="" && strfind(charBC_next,Code128SymbCard,1,1)<=0)
                          encodedStr      += "";
                     else encodedStr     += "}";
                 }
                 else
                 encodedStr += charBC;
              }
   return  encodedStr;
}
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Падает клиент Аксапты, при вставке текста из буфера обмена vc DAX: Администрирование 11 04.09.2009 11:46
направление текста в лэйбле колонки репорта DAX DAX: Программирование 3 28.01.2009 16:48
Форматирование текста if_maks DAX: Программирование 64 20.11.2006 13:12
Подскажите,как узнать высоту текста? yooshi DAX: Программирование 1 06.10.2005 10:29
Автозавершение текста slava DAX: Функционал 4 30.12.2001 00:29
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 00:18.