|
18.01.2013, 15:08 | #1 |
Участник
|
Цитата:
1)Прикручиваем dll к \References. 2)Компилируем проект. 3)Запускаем отчет. Сборка сделана на C#.
__________________
-Ты в гномиков веришь? -Нет. -А они в тебя верят, смотри, не подведи их. |
|
|
За это сообщение автора поблагодарили: perestoronin (1), jonny (4), IvanS (1), someOne (5). |
15.06.2013, 10:07 | #2 |
Участник
|
Цитата:
Но есть одна проблема. Чтобы не устанавливать этот компонент на каждое клиенское рабочее место сделал исполнение кода класса на сервере. Но так как класс Image работает только на клиенте, получить картинку с qr кодом в виде Аксаптовского е container оказалось не просто. Сохранять картинку в виде временного файла, а затем читать его - не совсем производительное решение. В итоге решение навеяло одна из последних тем форума. Привожу код - может кому пригодится. На выходе имеем container, который можно использовать для вывода картинок с qr кодом в любые отчеты Аксапта. X++: static container encode(str _encoding) { System.IO.MemoryStream memoryStream; System.Drawing.Bitmap bitmap; container ret; str tmpBuffer; int encodeMode = 2; int scale =2; int version = 4; int errorCorrect = 3; ThoughtWorks.QRCode.Codec.QRCodeEncoder qrCodeEncoder; ; if (!_encoding) throw error('Нет данных для кодирования!'); new InteropPermission(InteropKind::ClrInterop).assert(); qrCodeEncoder = new ThoughtWorks.QRCode.Codec.QRCodeEncoder(); try { qrCodeEncoder.set_QRCodeEncodeMode(EncodeMode); qrCodeEncoder.set_QRCodeScale(Scale); qrCodeEncoder.set_QRCodeVersion(Version); qrCodeEncoder.set_QRCodeErrorCorrect(ErrorCorrect); bitmap = QRCodeEncoder.Encode(_encoding); memoryStream = new System.IO.MemoryStream(); bitmap.Save(memoryStream, System.Drawing.Imaging.ImageFormat::get_Bmp()); tmpBuffer = CLRInterop::staticInvoke("System.Convert", "ToBase64String", memoryStream.GetBuffer()); ret = binData::loadFromBase64(tmpBuffer); bitmap.Dispose(); memoryStream.Close(); memoryStream.Dispose(); } catch (Exception::CLRError) { throw error(AifUtil::getClrErrorMessage()); } return ret; } |
|
|
За это сообщение автора поблагодарили: Pustik (3), jonny (4). |
Теги |
штрихкод |
|
|