Показать сообщение отдельно
Старый 02.06.2010, 14:05   #1  
Hyper is offline
Hyper
Участник
Соотечественники
 
163 / 29 (1) +++
Регистрация: 09.10.2003
? Формирование штрих-кода: Code-128 A, B, C
Подскажите, где можно почитать о формировании штрих-кодов в Аксапте?
Мне необходимо сформировать один штрих-код в формате Code-128 A и один в формате Code-128 C. До сих пор я был уверен, что все, что требуется сделать - это выбрать тип штрих-кода на форме BarcodeSetup, а метод encode() впоследствии сам преобразует исходную строку в требуемый формат, что-то вроде:
X++:
void test(BarcodeSetupId _barcodeSetupId, BarCodeString _barCodeContents )
{
    BarCodeSetup    barcodeSetup    = BarcodeSetup::find(_barcodeSetupId);
    Barcode         barcode         = barcodeSetup.barcode();
    ;

    if (barcodeSetup.validateBarcode(_barCodeContents))
    {
        barCode.string(true, _barCodeContents);
        barCode.encode();
    }
    else
    {
        throw(error(strfmt("@SYS41409", barCode.barcodeType(), _barCodeContents)));
    }

    info (barCode.barcodeStr());
}

Но судя по методу BarcodeCode128.optimizeCodesets(), CodesetA или CodesetC выбирается автоматически в зависимости от содержимого исходной строки.

Я в работе со штрих-кодами пока что не очень хорошо разбираюсь. Подскажите, надо ли каким-либо образом кодировать исходную строку перед использованием класса BarCode? Где об этом можно почитать?