GrapeCity inc.

Salesforceをもっと便利に、もっと快適に。

活用ブログ

活用ブログではGrapeCity for Salesforceに関する技術的なトピックスや話題を取り上げてご紹介いたします。

2016.05.25

帳票アプリ「スマレポ!」とWeb APIで連携してバーコード帳票を実現

どのシステムでも要望されることの多いのが「帳票にバーコードを印刷したい」というもの。もちろんSalesforceプラットフォームを使っている方も例外ではありません。GrapeCity Barcode for Salesforceで追加されたWeb APIを使うと、簡単にAppExchangeパッケージやSalesforceの標準機能にバーコードの画像を引き渡すことができます。

その1例として、日本コンピュータ・ダイナミクス株式会社Smart Report Meister(以下、スマレポ!)とGrapeCity Barcode for Salesforceの連携方法をご紹介します。

連携をお試しいただくには、まずSalesforceおよびGrapeCity Barcode for Salesforceとスマレポ!のトライアル環境を準備する必要があります。以下をご参照の上、トライアル環境をご準備ください。

今回の連携では、「取引先レコードのIDをバーコード化し、帳票上にバーコードをレイアウトしPDFに出力する」ということを実現したいと思います。IDのバーコード化はGrapeCity Barcode for Salesforce、帳票上のレイアウトとPDFへの出力は「スマレポ!」が担当します。この2つのパッケージを連携させることで目的を実現させます。

1)取引先にカスタム項目を設定する

取引先にIDのバーコード画像を表すカスタム項目を設定します。IMAGE関数にIDをバーコード化した画像を取得するGrapeCity Barcode for SalesforceのWeb APIを設定します。Web APIに設定するパラメータについての詳細はオンラインヘルプを参照してください。

オンラインヘルプを見る

指定する値
バーコードの種類 QRコード
300
高さ 300
取引先レコードのID
トークン Web APIの認証トークン
IMAGE関数
IMAGE("https://gcbarcode.azurewebsites.net/api/Png/qrcode?Width=300&Height=300&value="+Id+"&token="+ $Setup.gcbc__GcBarcodeSetting__c.gcbc__AccessToken__c,"QRCode",300, 300)
取引先にカスタム項目を設定

パラメータにWeb APIの認証トークンを指定しています。これはGrapeCity Barcode for Salesforcdeがインストールされている組織、かつ、ライセンスが割り当てられているユーザのみが使用できるカスタム設定の項目になります。このトークンには有効期限があり、Web API実行前に必ず値をリフレッシュする必要があります(後述)。

2)スマレポ!で帳票を作成する

スマレポ!で帳票を作成します。今回は簡単のために、バーコード画像のみを表示する帳票を作成します。

[帳票新規作成]ボタンを押下します。

スマレポ!で帳票を新規作成

帳票名や用紙の向きを設定(なんでもOK)して[次へ]ボタンを押下します。

帳票名や用紙の向きを設定

基本オブジェクトを取引先に設定して[次へ]ボタンを押下します。

基本オブジェクトを取引先に設定

デフォルトのまま[保存]ボタンを押下します。

リレーションオブジェクトはデフォルトのまま

スマレポ!の帳票ができました。

スマレポ!の帳票が完成

出来上がった帳票にレイアウトを追加します。「新規レイアウト追加」リンクをクリックします。

完成した帳票にレイアウトを追加

デザイナが表示されるので、さきほど作成したバーコード画像のカスタム項目を配置し[保存]ボタンを押下します。

バーコード画像のカスタム項目を配置

これでスマレポ!側の設定は完了です。

3)帳票出力を実行するカスタムボタンの作成

帳票出力を実行するカスタムボタンを作成します。スマレポ!には帳票出力を実行するスクリプトを自動生成する機能があります。このスクリプトに対して、Web APIの認証に使うトークンをリフレッシュするコードを加える必要があります。

スマレポ!の[ボタンスクリプト]ボタンを押下してスクリプトを表示します。

スマレポ!

表示されたスクリプトをコピーします。

スマレポ!のボタンスクリプトのスクリプト

新規カスタムボタンを作成します。動作に[JavaScriptを実行]を選択し先ほどのスクリプトをコピーします。

新規カスタムボタンを作成

次に、スマレポ!の帳票出力するコードの前にアクセストークンをリフレッシュするAPEXクラスの実行を追加します。

追加するコード
sforce.apex.execute("gcbc.GcBarcodeGlobalAccessTokenGenerator", "UpdateAccessToken", {}, {onSuccess: function(){;},onFailure: function(error) {alert(error);}});
スマレポ!の帳票出力するコードの前にアクセストークンをリフレッシュするAPEXクラスの実行を追加

ページレイアウトに作成したカスタムボタンを追加します。

ページレイアウトに作成したカスタムボタンを追加

これですべての設定が完了しました。

4)実行結果の確認

それでは実行結果を見てみましょう。取引先の詳細画面に移動し、先ほど作成したカスタムボタンを押下します。

実行結果の確認

バーコード画像がPDF出力されました。

バーコード画像がPDF出力

今回はスマレポ!との連携をご紹介しましたが、GrapeCity Barcode for Salesforceはセールスフォースプラットフォーム上にバーコードを組み込むことができるパッケージです。LightningコンポーネントやVisualforceコンポーネント、Web APIといった複数のインターフェースを提供しており、さまざまな形でセールスフォースプラットフォーム上にバーコードを組み込むことができます。GrapeCity Barcode for Salesforceに関するより詳しい情報、新しいインターフェースの追加や機能改善など、弊社営業部までお気軽にお問合せください。

活用ブログの一覧に戻る

無料で30日間フル機能をお試しいただけます

GrapeCity for Salesforceは、AppExchangeサイトからトライアルできます。
無料で30日間フル機能をお試しいただけます。