Salesforce
カスタムアプリケーションの開発
Salesforce Platformでのカスタムアプリケーション開発は、最初に適切なデータモデルを設計することからスタートします。Salesforceの標準画面を利用することで素早くプロトタイプが作成できるので、システム要件の詳細化に時間をかけることが可能になります。システム要件が確定したところで、業務ロジックをApexで実装していきます。
「データモデル設計を最初に、画面設計は最後に」という開発手順を採ることによって、ある程度長期に渡り運用される業務システムとして適格なシステムを構築することができます。
販売管理やオーダーマネジメントを中心とした基幹システム、部品表管理など、複雑な業務ロジックをApexにて実装してきた経験と技術的な知見を、当社では数多く有しております。
AppExchangeアプリケーションの改造
ゼロからアプリケーションを作成するのでは多大な工数がかかるような場合に、AppExchange上に公開されているパッケージをベースとして、そこに不足している機能を追加開発することで、効率よくアプリケーションを構築することも可能です。当社にはそのような実績もございます。
Salesforceのカスタム画面開発
Salesforceの標準Lighting Experienceはバージョンアップごとに改善が進んでいますが、業務効率を満たせない場合は、画面開発を行います。
Salesforceの画面開発については、以下のような方法があります。
- Lightning Web Components
- Lightning Component Framework 別名:Aura
- Visualforce
2022年時点ではLightning Web Componentsを採用すべきですが、それぞれに一長一短があり、このプログラミングモデルを選んでおけば問題ない、という決め手に欠ける状況が続いています。
Lightning Web Components
Web標準に沿ったものですが、マークアップは独自タグを使うことになります。Salesforce専用のJavaScriptライブラリが用意されており、ApexへアクセスしたりSalesforceにDMLを発行することができます。 画面の部品を製作するのには向いていますが、画面遷移(ルーティング)を含むシングルページアプリケーション(SPA)的なものには現状は不向きです。
また、Locker Serviceの制約から膨大な3rd Party JavaScriptライブラリ資産の利用は非常に限定的になります。
Lightning Component Framework
現状では、Lightning Web Componentsを採用すべきですが、一部Lightning Componentでしか提供されていない機能が存在します。
Visualforce
3rd Party JavaScriptライブラリを静的リソースに配置し、JavaScript Remotingを使ってシングルページアプリケーションを構築する方式が存在しますが、 ビルドシステムは自作せねばならず、2022年の水準では環境構築が大変といわざるを得ません。
Sencha Ext JS
当社ではSencha Ext JSにより、お客様の要件に合わせた画面を開発した実績が多数ございましたが、現在は提供を停止しております。
開発の進め方
当社では、SFDXを標準としており、Salesforceのソースコードはすべてgithubのprivateリポジトリを使って管理しております。 最も効率が良くロスの無い開発を常に心がけています。
Salesforceの事例
海外拠点との情報共有のためのグローバル部品表システム
海外子会社や海外工場と部品表情報を共有するための仕組みを、Salesforce上で動作する当社製品BOM Driveを使って開発しました。
販売管理システム
締め請求処理をアドオンした販売管理システムを開発しました。
新会社の基幹業務を行うオーダーマネジメントシステム
受注から倉庫への出庫・梱包指示、購買・受入による仕入れ、出荷までを管理して請求を計上、売掛・買掛情報を財務会計システムに連携できるオーダーマネジメントシステムを開発しました。