Image-Charts: QR Code, 生成
Image-Chart QRCode を使用してQRコードを作成します。任意の文字列データをQRコードにエンコードすることが可能です。QRコード画像はpng形式で出力されます。
Configs for this Auto Step
- StrConfA1
- A1: エンコードする文字列をセットしてください *#{EL}
- StrConfB1
- B1: PNGファイル(QRコード)の保存ファイル名をセットしてください#{EL}
- SelectConfB2
- B2: PNGファイル(QRコード)が格納されるファイル型データ項目を選択してください (追加) *
- StrConfC1
- C1: “150×150” 以外のサイズで出力したい場合、画像サイズをセットしてください#{EL}
Script (click to open)
// GraalJS Script (engine type: 3)
//////// START "main()" /////////////////////////////////////////////////////////////////
main();
function main(){
//// == Config Retrieving / 工程コンフィグの参照 ==
const strInput = configs.get ( "StrConfA1" ); /// REQUIRED
if( strInput === "" ){
throw new Error( "\n AutomatedTask ConfigError:" +
" Config {A1} is empty \n" );
}
let strSaveas = configs.get ( "StrConfB1" ); // NotRequired
if( strSaveas === "" ){
engine.log( " AutomatedTask ConfigWarning:" +
" Config {B1:Saveas} is empty" );
}
const filesPocket = configs.getObject( "SelectConfB2" ); /// REQUIRED
let strSize = configs.get ( "StrConfC1" ); // NotRequired
if( strSize === "" ){
strSize = "150x150";
}
//// == Data Retrieving / ワークフローデータの参照 ==
let filesAttached = engine.findData( filesPocket ); // java.util.ArrayList
if( filesAttached === null ) {
engine.log( " AutomatedTask FilesArray {B2}: (empty)" );
filesAttached = new java.util.ArrayList();
}else{
engine.log( " AutomatedTask FilesArray {B2}: " +
filesAttached.size() + " files" );
}
//// == Calculating / 演算 ==
if( strSaveas === "" ){
strSaveas = processInstance.getProcessInstanceId() + ".png";
}
/// Image-charts developer hub > QR Codes
/// https://documentation.image-charts.com/qr-codes/
// request1, prepare
let request1Uri = "https://image-charts.com/chart";
let request1 = httpClient.begin(); // HttpRequestWrapper
request1 = request1.queryParam( "chs", strSize );
request1 = request1.queryParam( "cht", "qr" );
request1 = request1.queryParam( "chl", strInput );
request1 = request1.queryParam( "choe", "UTF-8" );
// request1, try
const response1 = request1.post( request1Uri ); // HttpResponseWrapper
engine.log( " AutomatedTask ApiRequest1 Start: " + request1Uri );
const response1Code = response1.getStatusCode() + "";
const response1Body = response1.getResponseAsString() + "";
engine.log( " AutomatedTask ApiResponse Status: " + response1Code );
if( response1Code !== "200"){
throw new Error( "\n AutomatedTask UnexpectedResponseError: " +
response1Code + "\n" + response1Body + "\n" );
}
// response1, parse
const fileTmp = new com.questetra.bpms.core.event.scripttask.NewQfile(
strSaveas, response1.getContentType(), response1.getResponse()
);
filesAttached.add( fileTmp );
//// == Data Updating / ワークフローデータへの代入 ==
engine.setData( filesPocket, filesAttached );
} //////// END "main()" /////////////////////////////////////////////////////////////////
/*
Notes:
- "{pid}.png", if not specify a file name.
- QR codes support 4 levels of error correction to enable recovery of missing, misread, or obscured data.
- The QR code generated by this Addon can recover up to 7% data loss.
Notes-ja:
- ファイル名を指定しない場合、 {pid}.png となります。
- QRコードは、4つのレベルのエラー訂正をサポートしています(欠落、誤読、または不明瞭なデータの回復)
- このアドオンで生成されるQRコードは、最大7%のデータ損失を回復できます。
APPENDIX-en
- To remove Image-Charts watermark (Common to Image-Charts)
- https://documentation.image-charts.com/enterprise/#remove-image-charts-watermark-by-signing-urls
APPENDIX-ja
- Image-Charts Watermark(透かし)の削除方法(Image-Charts共通)
- https://documentation.image-charts.com/enterprise/#remove-image-charts-watermark-by-signing-urls
*/
Download
- Image-Charts-QR-Code-Create-202307.xml
- 2023-07-20 (C) Questetra, Inc. (MIT License)
(アドオン自動工程のインストールは Professional editionでのみ可能です)
Notes
- ファイル名を指定しない場合、 {pid}.png となります。
- QRコードは、4つのレベルのエラー訂正をサポートしています(欠落、誤読、または不明瞭なデータの回復)
- このアドオンで生成されるQRコードは、最大7%のデータ損失を回復できます。
Capture


Appendix
- Image-Charts Watermark(透かし)の削除方法(Image-Charts共通)