Может ли кто-нибудь указать мне учебник о том, как создавать строки Excel из таблицы Dataverse с помощью Power Automate? Например, у меня есть таблица Dataverse с одним из столбцов «цвет». Для каждой записи с «синим» я хочу добавить строку в файл Excel. Мне трудно найти YouTube или блог, который объясняет это, но я уверен, что просто недостаточно хорошо ищу.
Я пытался подключиться к таблице Dataverse, но не знаю, как пройти через все строки. Также не совсем понимаю все команды в фильтре Dataverse, я привык к фильтрам PowerApps, но привыкаю к eq и ne и т. д.
Есть довольно много способов добиться желаемого результата. Я выбрал относительно простой подход, который должен делать то, что вы хотите, но в зависимости от производительности и т. д. вы можете изменить его на что-то другое.
Во-первых, я создал таблицу в DataVerse с несколькими фиктивными полями, очевидно, вам просто нужно использовать свою собственную таблицу.
Вот структура таблицы, чтобы у вас был контекст, и я выделил дополнительные поля, которые я хочу извлечь (вместе с идентификатором, именем и датой создания)...
Теперь в моем потоке я добавил действие Dataverse -> Список строк. В частности, я отфильтровал данные в столбце cr160_color
для значения синий, как вы хотите сделать, исходя из вашего сценария.
Следующий шаг включает просмотр данных, извлеченных из таблицы, и запись их в документ Excel в рабочей области SharePoint, который имеет Таблица (должен быть определен как таблица) со следующими полями.
Это шаг действия в потоке...
Когда он выполняется, я получаю свои данные...
Если вы снова запустите поток, он удвоит все данные, поэтому, если вам нужно очистить таблицу перед повторной загрузкой (вы всегда можете попробовать обновить или загрузить дельту, если вас это беспокоит), вы можете ввести шаг перед загрузкой данных, чтобы очистить таблицу.
Это можно сделать с помощью офисного скрипта. Для этого в Excel онлайн у вас должна быть вкладка на ленте под названием Автоматизировать...
Там создайте новый скрипт, назовите его Очистить данные таблицы и добавьте этот код...
function main(workbook: ExcelScript.Workbook, worksheetName: string, tableName: string)
{
let worksheet = workbook.getWorksheet(worksheetName);
let tableToClear = worksheet.getTable(tableName);
let rowsToDelete = tableToClear.getRangeBetweenHeaderAndTotal().getRowCount();
try {
tableToClear.deleteRowsAt(0, rowsToDelete - 1);
}
catch { }
}
Теперь добавьте этот шаг в свой поток, прежде чем он загрузит все данные обратно в...
Это последний поток...