Замените все значения с помощью JS в d365 crm. ⇐ C#
-
Anonymous
Замените все значения с помощью JS в d365 crm.
У меня есть «командная» сущность. В объекте команды у меня есть поле под названием «Текст команды». Он содержит такие значения, как Привет, пользователь, ответьте, . Я хочу заменить динамические значения, присутствующие в , на фактические значения.
У меня есть код ниже для замены значений, но на самом деле он не заменяет.
Мне нужен вывод типа Привет, пользователь, ответьте, Мэтью 25. Вместо этого я получаю сообщение Привет, пользователь, ответьте, Мэтью Привет, пользователь, ответьте, 25.
Я испробовал все возможные способы. Но не могу это исправить.
retievAndReplaceDynamicFieldValues: function (formContext, fieldName, commandText, English, NonEnglish, Language) { var replaceValues = ""; вар завершеныИтерации = 0; Xrm.WebApi.retrieveMultipleRecords("templatefield", "?$select=entity,fieldschemaname&$filter=name eq '" + fieldName + "'").then( успех функции (поля шаблона) { // Столбцы templatefields.entities.forEach(функция (TemplateResult) { varentityName = TemplateResult["entity@OData.Community.Display.V1.FormattedValue"].toLowerCase(); var fieldSchemaName = TemplateResult["fieldschemaname"]; // Текст вар RecordGUID = restartGuid(formContext,entityName); Xrm.WebApi.retrieveRecord(entityName, RecordGUID, "?$select=" + fieldSchemaName).then( функция успех(результат) { // Получаем значение поля вар fieldValue = результат [fieldSchemaName]; // Заменяем значение поля в тексте команды CommandText = CommandText.replace(новый RegExp(fieldName, 'gi'), fieldValue); replaceValues = CommandText; // Увеличиваем счетчик завершенных итераций завершенныеИтерации++; // Проверяем, является ли это последняя итерация, затем обновляем тело SMS if (completedIterations === templatefields.entities.length) { updateBody(английский, неанглийский, язык, командный текст); } }, ошибка функции (ошибка) { console.error("Ошибка получения записи кампании: " + error.message); } ); }); }, ошибка функции (ошибка) { console.error("Ошибка получения поля шаблона SMS: " + error.message); } ); updateBody(английский, английский, язык, замененные значения); }, В методе тела обновления я устанавливаю замененные значения. Число полей шаблона всегда равно 1, поскольку у нас есть хотя бы одно динамическое значение.
У меня есть «командная» сущность. В объекте команды у меня есть поле под названием «Текст команды». Он содержит такие значения, как Привет, пользователь, ответьте, . Я хочу заменить динамические значения, присутствующие в , на фактические значения.
У меня есть код ниже для замены значений, но на самом деле он не заменяет.
Мне нужен вывод типа Привет, пользователь, ответьте, Мэтью 25. Вместо этого я получаю сообщение Привет, пользователь, ответьте, Мэтью Привет, пользователь, ответьте, 25.
Я испробовал все возможные способы. Но не могу это исправить.
retievAndReplaceDynamicFieldValues: function (formContext, fieldName, commandText, English, NonEnglish, Language) { var replaceValues = ""; вар завершеныИтерации = 0; Xrm.WebApi.retrieveMultipleRecords("templatefield", "?$select=entity,fieldschemaname&$filter=name eq '" + fieldName + "'").then( успех функции (поля шаблона) { // Столбцы templatefields.entities.forEach(функция (TemplateResult) { varentityName = TemplateResult["entity@OData.Community.Display.V1.FormattedValue"].toLowerCase(); var fieldSchemaName = TemplateResult["fieldschemaname"]; // Текст вар RecordGUID = restartGuid(formContext,entityName); Xrm.WebApi.retrieveRecord(entityName, RecordGUID, "?$select=" + fieldSchemaName).then( функция успех(результат) { // Получаем значение поля вар fieldValue = результат [fieldSchemaName]; // Заменяем значение поля в тексте команды CommandText = CommandText.replace(новый RegExp(fieldName, 'gi'), fieldValue); replaceValues = CommandText; // Увеличиваем счетчик завершенных итераций завершенныеИтерации++; // Проверяем, является ли это последняя итерация, затем обновляем тело SMS if (completedIterations === templatefields.entities.length) { updateBody(английский, неанглийский, язык, командный текст); } }, ошибка функции (ошибка) { console.error("Ошибка получения записи кампании: " + error.message); } ); }); }, ошибка функции (ошибка) { console.error("Ошибка получения поля шаблона SMS: " + error.message); } ); updateBody(английский, английский, язык, замененные значения); }, В методе тела обновления я устанавливаю замененные значения. Число полей шаблона всегда равно 1, поскольку у нас есть хотя бы одно динамическое значение.
Мобильная версия