Dynamics 365 Business Centralのカメラ機能について (Camera in BC)

Dynamics 365 Business Central

皆様、こんにちは!
今回は、Business Centralにリリースされたカメラ機能ついて少し触れてみたいと思います。
ご存知かと思いますが、品目カードや連絡先カードなどの画面で下記のように「Picture -> Take」をクリックすると、今使われているデバイスのカメラを使って、写真を直接撮ることができます。
PS:旧バージョンのDynamics NAVではDotNet変数を通じて、カメラ機能も何とか使えますが、今回はSaaS向けなので、この方法を紹介しません。

カメラを使用するために「許可」をクリックします。

写真を取れました。

Business Centralのアプリでこの機能も使えます。

それでは、カメラ機能の標準ソースコードをまず調べてみましょう。
昔のブログで紹介した方法を使って、簡単にページ名とIDを確認することができます。
Contact Picture (5104, CardPart)
IDを確認する方法について下記をご参考ください。
Dynamics 365 Business Central Object IDを確認する方法 (Page,Table,Reportなど)

標準ソースコードも見つけました。
Dynamics 365 Business Centralの標準機能のソースコードを見る方法について

カメラに関するコードがありました。

次は今回のカスタマイズ仕様を考えて、エクステンションを作ってみましょう。
概要設計書:仕入請求する時に領収書を写真で撮ってBusiness Centralにアップロードできるようにします。
明細:
Purchase Header table:項目追加
Purchase Invoice Picture: CardPartページ追加
Purchase Invoice Picture: Camera機能追加(Take&Delete)
Purchase Invoice Page: CardPartを表示

スタート:
新しいプロジェクトを作成します。

Purchase Header table:項目追加

Purchase Invoice PictureのCardPartページ追加

Purchase Invoice Picture: Camera機能追加(Take&Delete)

Purchase Invoice Page: CardPartを表示

よし、完成。Business Centralにパブリッシュしましょう。
仕入請求ページを開いて、”Purchase Invoice Picture”のFactboxがすでに追加済み。

アクションも追加されました。「Take」をクリックします。

写真を撮って、「使用」をクリックします。

問題なくFactboxで表示できました。

肝心な写真を撮る機能については、今回標準と同じく「Codeunit Camera」を使いました。実はもう一つ方法があります。
下記のように「Page “Camera Interaction”」を参照して、同じ機能を実現できます。お時間のある時にぜひお試しください。

今回のソースコード:
https://github.com/yzhums/Purchase-Invoice-Camera

以上

コメント

タイトルとURLをコピーしました