Массовое обновление поля в таблице Dataverse

У меня есть таблица dataverse с полем datetime. Теперь у меня есть данные в области около 50 тыс. записей. Теперь мне нужно обновить все строки этого поля, то есть, по сути, мне нужно настроить время и вычесть 4 часа из существующих данных даты и времени для всех строк. Есть ли способ добиться этого в dataverse, используя какое-то массовое обновление или что-то в этом роде?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
56
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Чтобы выполнить массовое обновление таблицы Dataverse, где вам необходимо настроить поле даты и времени, вычитая 4 часа из существующих данных во всех строках (около 50 000 записей), использование потока данных является более подходящим вариантом, чем Power Automate. Вот почему:

  1. Эффективность. Потоки данных обрабатывают большие объемы данных более эффективно, чем Power Automate, которому могут быть проблемы с большим количеством записей.
  2. Производительность: потоки данных, оптимизированные для массовых операций, быстро выполняют крупномасштабные манипуляции с данными.
  3. Интеграция: потоки данных легко интегрируются с Dataverse.

Напротив, использование Power Automate для той же задачи приведет к следующему:

  1. Обработка занимает очень много времени
  2. Требуется реализация разбиения по страницам, поскольку цикл «для каждого» ограничен 5000 записями на пакет.

Дополнительную информацию о потоке данных можно найти здесь: https://learn.microsoft.com/en-us/power-query/dataflows/overview-dataflows-across-power-platform-dynamics-365

ответы, сгенерированные с помощью ИИ, не допускаются в stackoverflow Meta.stackoverflow.com/questions/421831/…

Guido Preite 25.07.2024 16:35

@GuidoPreite, этот ответ немного странный для ответа на stackoverflow об обновлении таблицы Dataverse (предлагает более сложный поток данных человеку, который удобен с PowerAutomate с низким кодом), плюс ChatGPT предложит аналогичный ответ на этот вопрос, но кроме этого, откуда ты знаешь, что это сгенерировано ИИ?

siggi_pop 29.07.2024 07:57

@siggi_pop стиль ответа, плюс есть инструменты, в которые вы вставляете текст, и он сообщает вам, сгенерирован ли ИИ или нет (конечно, они не идеальны, но дают вам хорошее представление)

Guido Preite 29.07.2024 09:01
  • Убедитесь, что Datetime действительно неверен.

Dataverse использует время UTC для хранения DateTime, но дата и время представлены пользователю в пользовательском интерфейсе относительно местного часового пояса пользователя, который вы должны принять во внимание.

  • PowerAutomate — медленный и неэффективный способ массового обновления таблицы.

Поскольку вам удобно использовать PowerAutomate, вы, вероятно, привыкли работать с импортом данных из листа Excel или источника CSV (по крайней мере, это легко). Импорт данных с помощью мастеров импорта позволяет обрабатывать большой набор данных и является простым процессом. Вы импортируете файл Excel и ждете... (занимает несколько минут), это все, что вам нужно сделать.

Процесс должен быть довольно простым: экспортировать данные, изменить данные, импортировать данные.

  1. В PowerPlatform создайте личное представление с фильтром, в котором будут показаны все записи, которые вы хотите обновить.
  2. В новом личном представлении измените представление столбцов, чтобы отображалось только поле даты и времени, которое вы хотите обновить (это сделано для эффективности при импорте).
  3. Экспортируйте представление в формате .xlsx (файл Excel).
  4. Измените данные: откройте файл Excel, создайте новый временный столбец рядом со столбцом даты и времени (при условии, что он начинается с D2), в новом столбце и в ячейке e2 создайте формулу =D2-TIME(4, 0, 0). Перетащите/скопируйте формулу до конца столбца даты и времени примерно на номер строки 50 тыс. (при условии, что вы знаете, как копировать формулы)
  5. Замените время данных: теперь у вас должен быть столбец D со старой датой и временем, а столбец E с новым временем данных (старая дата минус 4 часа). Выберите «Данные» в столбце E и скопируйте/вставьте их в столбец D (важно: вставляйте только как значение).
  6. Очистка: удалите временный столбец E: (удалите весь столбец, так как он не будет использоваться). Теперь лист вашей книги содержит только столбец D с измененной датой и временем. Сохранить файл.
  7. На платформе Power откройте представление таблицы, выберите «Импорт», выберите свой файл, «Импорт».

Вот и все.

Другие вопросы по теме