私のフォームには、現在の日付をmm/dd/yyyy
フォーマットで取得する日付フィールドと、数値を自動生成するフィールドがあります。
次の形式で別のフィールドに入力したい:
yyyy-mm-dd-autogenreate number
.
年月日はフォームの現在の日付です。
どうすればいいですか?また、私はコーディングが苦手なので、これを JavaScript で実現する場合は、できるだけ具体的に教えてください。
私のフォームには、現在の日付をmm/dd/yyyy
フォーマットで取得する日付フィールドと、数値を自動生成するフィールドがあります。
次の形式で別のフィールドに入力したい:
yyyy-mm-dd-autogenreate number
.
年月日はフォームの現在の日付です。
どうすればいいですか?また、私はコーディングが苦手なので、これを JavaScript で実現する場合は、できるだけ具体的に教えてください。
新しいエンティティをロードするときにフィールドにデータを入力する必要がないと仮定すると、これをフォームのonSaveイベントに追加します。
var dateFieldValue= Xrm.Page.getAttribute('datefieldname').getValue();
var autoNum = Xrm.Page.getAttribute('autoNumfieldname').getValue();
/* Date Formatting from Guido Preite's answer https://community.dynamics.com/crm/f/117/p/109891/218598.aspx#218598 */
// create the yyyy-mm-dd string
var year = dateFieldValue.getFullYear()+"";
var month = (dateFieldValue.getMonth()+1)+"";
var day = dateFieldValue.getDate()+"";
var dateFormat = year + "-" + month + "-" + day;
Xrm.Page.getAttribute('otherField').setValue(dateFormat + "-" + autoNum);
私はこれをテストしていないので、エラーがあるかもしれないことに注意してください。
また、エンティティがフォーム上で作成/更新されたときにのみ入力されることに注意する必要があります。エンティティを作成するすべてのバックエンド プロセスは、同じロジックを作成する必要があります。
エンティティがどのように作成されても、この値が設定されていることを保証したい場合は、プラグインを使用して同じことを実行することもできます。
非コード アプローチの場合、プロセスが非同期であることを気にしない限り、両方の値を 1 つのフィールドに書き込むワークフローを使用します。
https://community.dynamics.com/crm/f/117/p/109891/218598.aspx#218598
私の質問は Guido Preite によって回答されました。リンクに移動して、答えを確認してください。皆さん、ありがとうございました。