本記事では、Salesforceの日付をyyyyMMdd、日付/時間をyyyyMMddHHmmssフォーマットで表示する数式の作成手順をご紹介します。
Office File Creator Ver.2では、差し込み項目に書式を設定することが可能になりました。詳細はマニュアルの日付・日付/時間項目の書式設定を参照してください。
日付項目をyyyyMMddで表示
日付項目DateFld__cをyyyyMMddで表示する数式
TEXT(YEAR(DateFld__c)) & LPAD(TEXT(MONTH(DateFld__c)),2,"0") & LPAD(TEXT(DAY(DateFld__c)),2,"0") |
※数式の戻り値のデータ型は、テキストです。
例: DateFld__cが2023/03/06の場合 → 20230306
レコードページ
開発者コンソール
日付/時間項目をyyyyMMddHHmmssで表示
日付/時間項目DateTimeFld__cをyyyyMMddHHmmssで表示する数式
LEFT(TEXT(DateTimeFld__c + (9/24)), 4) & MID(TEXT(DateTimeFld__c + (9/24)), 6, 2) & MID(TEXT(DateTimeFld__c + (9/24)), 9, 2) & MID(TEXT(DateTimeFld__c + (9/24)), 12, 2) & MID(TEXT(DateTimeFld__c + (9/24)), 15, 2) & MID(TEXT(DateTimeFld__c + (9/24)), 18, 2) |
※数式の戻り値のデータ型は、テキストです。
※+(9/24)の9には、ユーザのタイムゾーンと GMTの時差を設定します。日本は+9時間なので、+(9/24)となります。
例: DateTimeFld__cが2023/03/06 8:15の場合 → 20230306081500
レコードページ
開発者コンソール
日付/時間項目は内部でGMTで保存されているため、開発者コンソールではDateTimeFld__cは-9時間の03/05 23:15で表示されます。数式のDateTimeFldFml__cは、ユーザのタイムゾーンで正しく表示されています。
メモ
日付/時間項目の時間の加算または減算は、以下の計算式で計算します。
日付/時間項目にN時間を加算: Datetimefield__c + (N/24)
日付/時間項目からN時間を減算: Datetimefield__c - (N/24)
参考: Salesforce公式ヘルプ 日付/時間項目の時間の加算または減算
OFCでファイル名に差し込み項目設定
OFCでは、出力ファイル名に差し込み項目を設定することができます。ここでは例として、ファイル名を請求書_商談名_yyyyMMddの形式で出力します。
まず、商談に数式項目を作成します。
数式の戻り値のデータ型: テキスト
項目の表示ラベル: 請求書出力日(yyyyMMdd)
API参照名: InvoiceOutputDateFml_yyyyMMdd__c
数式
TEXT(YEAR(TODAY())) & LPAD(TEXT(MONTH(TODAY())),2,"0") & LPAD(TEXT(DAY(TODAY())),2,"0") |
OFC_Templateレコードの「出力ファイル名」に以下を設定します。
請求書_{!Opportunity.Name}_{!Opportunity.InvoiceOutputDateFml_yyyyMMdd__c}
テスト出力します。
「請求書_機器一式_20230306.xlsx」のファイル名で出力されます。