Expression error аргументы 2 были переданы функции которая ожидает 1 excel

Добрый день! При обновлении данных из папки в power query выходит ошибка:В запросе "Преобразовать файл из Склады" произошла ошибка. Expression.Error: Аргументы 2 были переданы функции, которая ожидает 1.Подробные сведения:   Pattern=   Arguments=ListПомогите, пожалуйста, кто может, что мне здесь надо исправить, чтобы данные из папки подтягивались без ошибок?Код let     Источник =...
let
    Источник = Folder.Files("C:UsersДокументыbackupСклады"),
    #"Отфильтрованные скрытые файлы1" = Table.SelectRows(Источник, each [Attributes]?[Hidden]? <> true),
    #"Вызвать настраиваемую функцию1" = Table.AddColumn(#"Отфильтрованные скрытые файлы1", "Преобразовать файл из Склады", each #"Преобразовать файл из Склады"([Content])),
    #"Переименованные столбцы1" = Table.RenameColumns(#"Вызвать настраиваемую функцию1", {"Name", "Source.Name"}),
    #"Другие удаленные столбцы1" = Table.SelectColumns(#"Переименованные столбцы1", {"Source.Name", "Преобразовать файл из Склады"}),
    #"Столбец расширенной таблицы1" = Table.ExpandTableColumn(#"Другие удаленные столбцы1", "Преобразовать файл из Склады", Table.ColumnNames(#"Преобразовать файл из Склады"(#"Пример файла"))),
    #"Измененный тип" = Table.TransformColumnTypes(#"Столбец расширенной таблицы1",{{"Source.Name", type text}, {"Дата", type date}, {"ИД сделки", Int64.Type}, {"Num Group", Int64.Type}, {"Gr Name", type text}, {"Код клиента DWH", Int64.Type}, {"Spv State", type any}, {"Код клиента", type text}, {"Группа компаний", type text}, {"Наименование клиента", type text}, {"Дата регистрации договора", type date}, {"Вид бизн. клиента", type text}, {"Вид бизн. сделки", type text}, {"Вид бизн. Mix", type text}, {"Блок с карточки клиента", type text}, {"Код фил. клиента", Int64.Type}, {"Код фил. сделки", Int64.Type}, {"Код фил. Mix", Int64.Type}, {"Назначение гарантии", type any}, {"Номер договора кред. линии", type text}, {"Номер  договора", type text}, {"Дата начала  договора", type date}, {"Дата завершения  договора", type date}, {"Дата фактического погашения", type date}, {"Статус", type text}, {"Тип сделки", type text}, {"Буквенный код валюты договора", type text}, {"Тип валюты", type text}, {"Сумма договора в валюте договора", type number}, {"Сумма договора в рублях", type number}, {"Комиссия", type number}, {"Дата вынесения на просрочку", type date}, {"Кол-во дней просрочки", Int64.Type}, {"Дата вынесения % на просрочку", type date}, {"Кол-во дней просрочки %", Int64.Type}, {"Максимальная просрочка", Int64.Type}, {"Кол-во проср дней", type number}, {"Cliprosrday", Int64.Type}, {"Cliprosrgraday", type number}, {"Вид_обесп_(max)", Int64.Type}, {"Вид_обесп_(FS)", type text}, {"Код продукта", type text}, {"Наименование продукта", type text}, {"Код цели", Int64.Type}, {"Признак БЛТ", type any}, {"Признак втричной продажи РБ", type any}, {"Сегмент", type text}, {"Менеджер привлечения по сделке", type text}, {"ФИО Привлеченца (Агент)", type any}, {"Cliprosr", Int64.Type}, {"Priz", type text}, {"Признак МКО", Int64.Type}, {"НПС ОД", Int64.Type}, {"ОД в RUB", type number}, {"ОД в USD", type number}, {"ОД в ориг. валюте", type number}, {"НПС ПОД", Int64.Type}, {"ПОД в RUB", type number}, {"ПОД в USD", type number}, {"ПОД в ориг. валюте", type number}, {"НПС дисконт", Int64.Type}, {"Дисконт в RUB", type number}, {"Дисконт", type number}, {"Дисконт в ориг. валюте", type number}, {"НПС бонус", type any}, {"Бонус в RUB", Int64.Type}, {"Бонус в USD", Int64.Type}, {"Бонус в ориг. валюте", Int64.Type}, {"Итог в KZT", type number}, {"Итог в USD", type number}, {"Итог в ориг. валюте", type number}, {"Provisperiod", type any}, {"И/К", type any}, {"Провизии И", type any}, {"Провизии К", type any}, {"Резерв в RUB", type number}, {"Резерв в USD", type number}, {"Резерв в ориг. валюте", type number}, {"Фрагмент", type text}, {"Признак ЮЛ", type text}, {"ТФ", Int64.Type}})
in
    #"Измененный тип"

Содержание

  1. Аргументы 2 были переданы функции которая ожидает 1
  2. Ошибка запроса Power BI — Expression.Error: 2 аргумента были переданы функции, которая ожидает 3
  3. Аргументы 2 были переданы функции которая ожидает 1
  4. Работа с ошибками в Power Query
  5. Ошибка на уровне шага
  6. Распространенные ошибки на уровне шага
  7. Другие распространенные ошибки на уровне шага
  8. Ошибка уровня ячейки
  9. Обработка ошибок на уровне ячейки
  10. Распространенные ошибки на уровне ячеек
  11. Excel expression error аргументы 2 были переданы функции которая ожидает 1
  12. Работа с ошибками в Power Query
  13. Ошибка на уровне шага
  14. Распространенные ошибки на уровне шага
  15. Другие распространенные ошибки на уровне шага
  16. Ошибка уровня ячейки
  17. Обработка ошибок на уровне ячейки
  18. Распространенные ошибки на уровне ячеек
  19. У вас большие запросы!
  20. Ошибка запроса Power BI — Expression.Error: 2 аргумента были переданы функции, которая ожидает 3

Аргументы 2 были переданы функции которая ожидает 1

Ошибка запроса Power BI — Expression.Error: 2 аргумента были переданы функции, которая ожидает 3

Я новичок в Power BI Query. Я написал этот запрос, чтобы иметь возможность рассчитать сетевые дни:

Он вернул ошибку, говорящую:

Может ли кто-нибудь помочь мне определить, что означает эта ошибка и где я, возможно, испортил запрос?

Ваша функция работает так, как вы задумали. Ошибка будет вызвана, если вы вызовете функцию, указав только 2 из 3 обязательных аргументов ( Created , Closed и Holiday )

Если вы хотите сделать свой список праздников необязательным аргументом, вы можете настроить свой запрос функции следующим образом, который теперь будет работать, когда указаны только первые два аргумента;

Аргументы 2 были переданы функции которая ожидает 1

Есть файл xml. Открываю его с помощью PowerQuery.
Захожу -> offer (table) — нужен столбец param (со вложенными таблицами

Есть некая таблица с параметрами товаров и в столбце param есть также вложенные параметры отдельно взятой позиции в табличке.

Если развернуть данные параметры то получим такой вид таблицы что все параметры развернутся вниз и таким образом названия позиций и другие параметры в исходной таблице будут дублироватся до тех пор пока не закончится вложенная табличка с параметрами и так далее по всех позициях.

Мне нужно чтобы ети параметры во вложенной таблице выводились не вниз

, а в одну строку попорядке по в столбцах.

ТОБИШЬ чтобы вложенные таблицы развернуть по ширине в длинну, тогда в исходной таблице названия не будут дублироватся, а все будет идти в один ряд.

Понимаю что задача непростая. (по крайней мере для меня очень сложная)
Как ее можно решить? Я в екселе чайник.
Буду ОООЧЕНЬ БЛАГОДАРЕН ЗА ПОМОЩЬ.

Есть файл xml. Открываю его с помощью PowerQuery.
Захожу -> offer (table) — нужен столбец param (со вложенными таблицами

Есть некая таблица с параметрами товаров и в столбце param есть также вложенные параметры отдельно взятой позиции в табличке.

Если развернуть данные параметры то получим такой вид таблицы что все параметры развернутся вниз и таким образом названия позиций и другие параметры в исходной таблице будут дублироватся до тех пор пока не закончится вложенная табличка с параметрами и так далее по всех позициях.

Мне нужно чтобы ети параметры во вложенной таблице выводились не вниз

, а в одну строку попорядке по в столбцах.

ТОБИШЬ чтобы вложенные таблицы развернуть по ширине в длинну, тогда в исходной таблице названия не будут дублироватся, а все будет идти в один ряд.

Понимаю что задача непростая. (по крайней мере для меня очень сложная)
Как ее можно решить? Я в екселе чайник.
Буду ОООЧЕНЬ БЛАГОДАРЕН ЗА ПОМОЩЬ. yuraok

Сообщение Есть файл xml. Открываю его с помощью PowerQuery.
Захожу -> offer (table) — нужен столбец param (со вложенными таблицами

Есть некая таблица с параметрами товаров и в столбце param есть также вложенные параметры отдельно взятой позиции в табличке.

Если развернуть данные параметры то получим такой вид таблицы что все параметры развернутся вниз и таким образом названия позиций и другие параметры в исходной таблице будут дублироватся до тех пор пока не закончится вложенная табличка с параметрами и так далее по всех позициях.

Мне нужно чтобы ети параметры во вложенной таблице выводились не вниз

, а в одну строку попорядке по в столбцах.

ТОБИШЬ чтобы вложенные таблицы развернуть по ширине в длинну, тогда в исходной таблице названия не будут дублироватся, а все будет идти в один ряд.

Понимаю что задача непростая. (по крайней мере для меня очень сложная)
Как ее можно решить? Я в екселе чайник.
Буду ОООЧЕНЬ БЛАГОДАРЕН ЗА ПОМОЩЬ. Автор — yuraok
Дата добавления — 25.05.2020 в 21:23

Работа с ошибками в Power Query

В Power Query можно столкнуться с двумя типами ошибок:

  • Ошибки на уровне шага
  • Ошибки на уровне ячеек

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

Ошибка на уровне шага

Пошаговая ошибка предотвращает загрузку запроса и отображает компоненты ошибок на желтой панели.

  • Причина ошибки: первый раздел перед двоеточием. В приведенном выше примере причина ошибки — Expression.Error.
  • Сообщение об ошибке: раздел непосредственно после причины. В приведенном выше примере сообщение об ошибке — столбец «Столбец» таблицы не найден.
  • Сведения об ошибке: раздел непосредственно после строки Details: В приведенном выше примере сведения об ошибке — «Столбец«.

Распространенные ошибки на уровне шага

Во всех случаях рекомендуется внимательно ознакомиться с причиной ошибки, сообщением об ошибке и подробными сведениями об ошибке, чтобы понять, что вызывает ошибку. Вы можете нажать кнопку «Перейти к ошибке» , если она доступна, чтобы просмотреть первый шаг, в котором произошла ошибка.

Не удается найти источник — DataSource.Error

Эта ошибка обычно возникает, когда источник данных недоступен пользователем, у пользователя нет правильных учетных данных для доступа к источнику данных или источник был перемещен в другое место.

Пример. У вас есть запрос из текстовой плитки, которая была расположена на диске D и создана пользователем A. Пользователь A предоставляет общий доступ к запросу пользователю B, у которого нет доступа к диску D. Когда этот пользователь пытается выполнить запрос, он получает dataSource.Error , так как в своей среде нет диска D.

Возможные решения. Вы можете изменить путь к файлу текстового файла на путь, к которому у обоих пользователей есть доступ. Как пользователь Б, вы можете изменить путь к файлу, чтобы он был локальной копией того же текстового файла. Если кнопка «Изменить параметры» доступна в области ошибок, ее можно выбрать и изменить путь к файлу.

Столбец таблицы не найден

Эта ошибка обычно активируется, когда шаг создает прямую ссылку на имя столбца, которое не существует в запросе.

Пример. У вас есть запрос из текстового файла, в котором одно из имен столбцов — Column. В запросе есть шаг, который переименовывает этот столбец в date. Но в исходном текстовом файле произошло изменение, и у него больше нет заголовка столбца с именем Column , так как он был изменен вручную на Date. Power Query не удается найти заголовок столбца с именем Column, поэтому он не может переименовать столбцы. Отображается ошибка, показанная на следующем рисунке.

Возможные решения: существует несколько решений для этого случая, но все они зависят от того, что вы хотите сделать. В этом примере, так как правильный заголовок столбца Date уже поступает из текстового файла, можно просто удалить шаг, который переименовывает столбец. Это позволит выполнять запрос без этой ошибки.

Другие распространенные ошибки на уровне шага

При объединении или объединении данных между несколькими источниками данных может возникнуть ошибка Formula.Firewall , например, показанная на следующем рисунке.

Эта ошибка может быть вызвана рядом причин, таких как уровни конфиденциальности данных между источниками данных или способом объединения или объединения этих источников данных. Дополнительные сведения о диагностике этой проблемы см. в брандмауэре конфиденциальности данных.

Ошибка уровня ячейки

Ошибка на уровне ячейки не препятствует загрузке запроса, но отображает значения ошибок в ячейке. При выборе пробела в ячейке отображается область ошибок под предварительным просмотром данных.

Средства профилирования данных помогают более легко выявлять ошибки на уровне ячеек с помощью функции качества столбца. Дополнительные сведения: средства профилирования данных

Обработка ошибок на уровне ячейки

При возникновении ошибок на уровне ячеек Power Query предоставляет набор функций для их обработки путем удаления, замены или сохранения ошибок.

В следующих разделах указанные примеры будут использовать тот же пример запроса, что и начальная точка. В этом запросе есть столбец Sales с одной ячейкой с ошибкой, вызванной ошибкой преобразования. Значение внутри этой ячейки было NA, но при преобразовании этого столбца в целое число Power Query не удалось преобразовать НС в число, поэтому отображается следующая ошибка.

Удаление ошибок

Чтобы удалить строки с ошибками в Power Query, сначала выберите столбец, содержащий ошибки. На вкладке «Главная» в группе «Уменьшить строки» выберите «Удалить строки«. В раскрывающемся меню выберите «Удалить ошибки«.

Результат этой операции даст вам таблицу, которую вы ищете.

Замена ошибок

Если вместо удаления строк с ошибками необходимо заменить ошибки фиксированным значением, это также можно сделать. Чтобы заменить строки с ошибками, сначала выберите столбец, содержащий ошибки. На вкладке «Преобразование» в группе «Любой столбец » выберите «Заменить значения«. В раскрывающемся меню выберите «Заменить ошибки«.

В диалоговом окне «Замена ошибок » введите значение 10 , так как вы хотите заменить все ошибки значением 10.

Результат этой операции даст вам таблицу, которую вы ищете.

Сохранение ошибок

Power Query может служить хорошим средством аудита для выявления строк с ошибками, даже если вы не исправите ошибки. Здесь могут быть полезны ошибки keep . Чтобы сохранить строки с ошибками, сначала выберите столбец, содержащий ошибки. На вкладке «Главная» в группе «Уменьшить строки» выберите «Сохранить строки«. В раскрывающемся меню выберите «Сохранить ошибки«.

Результат этой операции даст вам таблицу, которую вы ищете.

Распространенные ошибки на уровне ячеек

Как и в случае с любой ошибкой на уровне шага, мы рекомендуем внимательно изучить причины ошибок, сообщения об ошибках и сведения об ошибках, предоставленные на уровне ячейки, чтобы понять, что вызывает ошибки. В следующих разделах рассматриваются некоторые наиболее частые ошибки на уровне ячеек в Power Query.

Ошибки преобразования типов данных

Обычно активируется при изменении типа данных столбца в таблице. Некоторые значения, найденные в столбце, не удалось преобразовать в нужный тип данных.

Пример. У вас есть запрос, содержащий столбец с именем Sales. Одна ячейка в этом столбце содержит значение NA в качестве значения ячейки, а остальные имеют целые числа в качестве значений. Вы решили преобразовать тип данных столбца из текста в целое число, но ячейка со значением NA приводит к ошибке.

Возможные решения. После идентификации строки с ошибкой можно либо изменить источник данных, чтобы отразить правильное значение, а не NA, либо применить операцию «Заменить» , чтобы указать значение для любых значений NA , вызывающих ошибку.

Ошибки операций

При попытке применить операцию, которая не поддерживается, например умножение текстового значения на числовое значение, возникает ошибка.

Пример. Вы хотите создать настраиваемый столбец для запроса, создав текстовую строку, содержащую фразу «Total Sales: » сцеплено со значением из столбца Sales . Ошибка возникает из-за того, что операция объединения поддерживает только текстовые столбцы, а не числовые.

Возможные решения. Перед созданием этого настраиваемого столбца измените тип данных столбца Sales на текст.

Источник

Excel expression error аргументы 2 были переданы функции которая ожидает 1

Работа с ошибками в Power Query

В Power Query можно столкнуться с двумя типами ошибок:

  • Ошибки на уровне шага
  • Ошибки на уровне ячеек

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

Ошибка на уровне шага

Пошаговая ошибка предотвращает загрузку запроса и отображает компоненты ошибок на желтой панели.

  • Причина ошибки: первый раздел перед двоеточием. В приведенном выше примере причина ошибки — Expression.Error.
  • Сообщение об ошибке: раздел непосредственно после причины. В приведенном выше примере сообщение об ошибке — столбец «Столбец» таблицы не найден.
  • Сведения об ошибке: раздел непосредственно после строки Details: В приведенном выше примере сведения об ошибке — «Столбец«.

Распространенные ошибки на уровне шага

Во всех случаях рекомендуется внимательно ознакомиться с причиной ошибки, сообщением об ошибке и подробными сведениями об ошибке, чтобы понять, что вызывает ошибку. Вы можете нажать кнопку «Перейти к ошибке» , если она доступна, чтобы просмотреть первый шаг, в котором произошла ошибка.

Не удается найти источник — DataSource.Error

Эта ошибка обычно возникает, когда источник данных недоступен пользователем, у пользователя нет правильных учетных данных для доступа к источнику данных или источник был перемещен в другое место.

Пример. У вас есть запрос из текстовой плитки, которая была расположена на диске D и создана пользователем A. Пользователь A предоставляет общий доступ к запросу пользователю B, у которого нет доступа к диску D. Когда этот пользователь пытается выполнить запрос, он получает dataSource.Error , так как в своей среде нет диска D.

Возможные решения. Вы можете изменить путь к файлу текстового файла на путь, к которому у обоих пользователей есть доступ. Как пользователь Б, вы можете изменить путь к файлу, чтобы он был локальной копией того же текстового файла. Если кнопка «Изменить параметры» доступна в области ошибок, ее можно выбрать и изменить путь к файлу.

Столбец таблицы не найден

Эта ошибка обычно активируется, когда шаг создает прямую ссылку на имя столбца, которое не существует в запросе.

Пример. У вас есть запрос из текстового файла, в котором одно из имен столбцов — Column. В запросе есть шаг, который переименовывает этот столбец в date. Но в исходном текстовом файле произошло изменение, и у него больше нет заголовка столбца с именем Column , так как он был изменен вручную на Date. Power Query не удается найти заголовок столбца с именем Column, поэтому он не может переименовать столбцы. Отображается ошибка, показанная на следующем рисунке.

Возможные решения: существует несколько решений для этого случая, но все они зависят от того, что вы хотите сделать. В этом примере, так как правильный заголовок столбца Date уже поступает из текстового файла, можно просто удалить шаг, который переименовывает столбец. Это позволит выполнять запрос без этой ошибки.

Другие распространенные ошибки на уровне шага

При объединении или объединении данных между несколькими источниками данных может возникнуть ошибка Formula.Firewall , например, показанная на следующем рисунке.

Эта ошибка может быть вызвана рядом причин, таких как уровни конфиденциальности данных между источниками данных или способом объединения или объединения этих источников данных. Дополнительные сведения о диагностике этой проблемы см. в брандмауэре конфиденциальности данных.

Ошибка уровня ячейки

Ошибка на уровне ячейки не препятствует загрузке запроса, но отображает значения ошибок в ячейке. При выборе пробела в ячейке отображается область ошибок под предварительным просмотром данных.

Средства профилирования данных помогают более легко выявлять ошибки на уровне ячеек с помощью функции качества столбца. Дополнительные сведения: средства профилирования данных

Обработка ошибок на уровне ячейки

При возникновении ошибок на уровне ячеек Power Query предоставляет набор функций для их обработки путем удаления, замены или сохранения ошибок.

В следующих разделах указанные примеры будут использовать тот же пример запроса, что и начальная точка. В этом запросе есть столбец Sales с одной ячейкой с ошибкой, вызванной ошибкой преобразования. Значение внутри этой ячейки было NA, но при преобразовании этого столбца в целое число Power Query не удалось преобразовать НС в число, поэтому отображается следующая ошибка.

Удаление ошибок

Чтобы удалить строки с ошибками в Power Query, сначала выберите столбец, содержащий ошибки. На вкладке «Главная» в группе «Уменьшить строки» выберите «Удалить строки«. В раскрывающемся меню выберите «Удалить ошибки«.

Результат этой операции даст вам таблицу, которую вы ищете.

Замена ошибок

Если вместо удаления строк с ошибками необходимо заменить ошибки фиксированным значением, это также можно сделать. Чтобы заменить строки с ошибками, сначала выберите столбец, содержащий ошибки. На вкладке «Преобразование» в группе «Любой столбец » выберите «Заменить значения«. В раскрывающемся меню выберите «Заменить ошибки«.

В диалоговом окне «Замена ошибок » введите значение 10 , так как вы хотите заменить все ошибки значением 10.

Результат этой операции даст вам таблицу, которую вы ищете.

Сохранение ошибок

Power Query может служить хорошим средством аудита для выявления строк с ошибками, даже если вы не исправите ошибки. Здесь могут быть полезны ошибки keep . Чтобы сохранить строки с ошибками, сначала выберите столбец, содержащий ошибки. На вкладке «Главная» в группе «Уменьшить строки» выберите «Сохранить строки«. В раскрывающемся меню выберите «Сохранить ошибки«.

Результат этой операции даст вам таблицу, которую вы ищете.

Распространенные ошибки на уровне ячеек

Как и в случае с любой ошибкой на уровне шага, мы рекомендуем внимательно изучить причины ошибок, сообщения об ошибках и сведения об ошибках, предоставленные на уровне ячейки, чтобы понять, что вызывает ошибки. В следующих разделах рассматриваются некоторые наиболее частые ошибки на уровне ячеек в Power Query.

Ошибки преобразования типов данных

Обычно активируется при изменении типа данных столбца в таблице. Некоторые значения, найденные в столбце, не удалось преобразовать в нужный тип данных.

Пример. У вас есть запрос, содержащий столбец с именем Sales. Одна ячейка в этом столбце содержит значение NA в качестве значения ячейки, а остальные имеют целые числа в качестве значений. Вы решили преобразовать тип данных столбца из текста в целое число, но ячейка со значением NA приводит к ошибке.

Возможные решения. После идентификации строки с ошибкой можно либо изменить источник данных, чтобы отразить правильное значение, а не NA, либо применить операцию «Заменить» , чтобы указать значение для любых значений NA , вызывающих ошибку.

Ошибки операций

При попытке применить операцию, которая не поддерживается, например умножение текстового значения на числовое значение, возникает ошибка.

Пример. Вы хотите создать настраиваемый столбец для запроса, создав текстовую строку, содержащую фразу «Total Sales: » сцеплено со значением из столбца Sales . Ошибка возникает из-за того, что операция объединения поддерживает только текстовые столбцы, а не числовые.

Возможные решения. Перед созданием этого настраиваемого столбца измените тип данных столбца Sales на текст.

У вас большие запросы!

Точнее, от вашего браузера их поступает слишком много, и сервер ВКонтакте забил тревогу.

Эта страница была загружена по HTTP, вместо безопасного HTTPS, а значит телепортации обратно не будет.
Обратитесь в поддержку сервиса.

Вы отключили сохранение Cookies, а они нужны, чтобы решить проблему.

Почему-то страница не получила всех данных, а без них она не работает.
Обратитесь в поддержку сервиса.

Вы вернётесь на предыдущую страницу через 5 секунд.
Вернуться назад

Ошибка запроса Power BI — Expression.Error: 2 аргумента были переданы функции, которая ожидает 3

Я новичок в Power BI Query. Я написал этот запрос, чтобы иметь возможность рассчитать сетевые дни:

Он вернул ошибку, говорящую:

Может ли кто-нибудь помочь мне определить, что означает эта ошибка и где я, возможно, испортил запрос?

Ваша функция работает так, как вы задумали. Ошибка будет вызвана, если вы вызовете функцию, указав только 2 из 3 обязательных аргументов ( Created , Closed и Holiday )

Если вы хотите сделать свой список праздников необязательным аргументом, вы можете настроить свой запрос функции следующим образом, который теперь будет работать, когда указаны только первые два аргумента;

Источник

Hi there fellow users of Power Bi,

I am trying to obtain some data using an API.

I have managed to get the authentication token and managed to obtain some data, but only the first 100 items.

So now I am trying to loop through all the «pages» using count and an offset.

However I get the following error:
2 arguments were passed to a function which expects 1.

The below is my code, hopefully you can help me out 

let
// Get authorization token
Kilde = Web.Contents("https://api.XXXXXXXXX.dk/oauth2/token",
[Headers=[#"Content-Type"="application/x-www-form-urlencoded"],
Content=Text.ToBinary(Uri.BuildQueryString([grant_type="password", client_id="XXXXXXXXXXXXXXXXX", client_secret="XXXXXXXXXXXXXX", email="xxxxxxx@yyyyyyyyy.com", password="XXXXXXXXXXXXX"]))]),
KildeTekst = Text.FromBinary(Kilde),
KildeSegmenter = Splitter.SplitTextByDelimiter("&")(KildeTekst),
KildeKvps = List.Transform( KildeSegmenter,
(value) => {
List.First((Splitter.SplitTextByDelimiter("=")(value))),
List.Last((Splitter.SplitTextByDelimiter("=")(value)))
}
),
KildeKvpTabel = Table.FromList(KildeSegmenter, Splitter.SplitTextByDelimiter("=")),
#"Filtrerede rækker" = Table.SelectColumns(Table.SelectRows(KildeKvpTabel, each [Column1] = "access_token"), {"Column2"}),
Token = Text.From(List.First(Table.SelectColumns(Table.SelectRows(KildeKvpTabel, each [Column1] = "access_token"), {"Column2"})[Column2])),


EntitiesPerPage = 100,
BaseUrl = "https://api.xxxxxxxxxxx.dk/v1/organizations/XXXX/vouchers",


GetJson = (Url) =>
let Options = [Headers =[#"Authorization"="Bearer " & Token]],
RawData = Web.Contents(Url, Options),
Json = Json.Document(RawData,1252)
in Json,


GetEntityCount = () =>
let Url = BaseUrl & "?count=10",
Options = [Headers =[#"Authorization"="Bearer " & Token]],
Json = Web.Contents(Url, Options),
#"Derp" = Json.Document(Json,1252),
Count = Record.Field(#"Derp"[meta],"count")
in Count,


GetPage = (Index) =>
let
Options = [Headers =[#"Authorization"="Bearer " & Token]],
Skip = "&offset=" & Text.From(Index * EntitiesPerPage),
Top = "?count=" & Text.From(EntitiesPerPage),
Url = BaseUrl & Top & Skip,
Json = GetJson(Url, Options),
Value = Json[#"value"]
in Value,


EntityCount = List.Max({ EntitiesPerPage, GetEntityCount() }),
PageCount = Number.RoundUp(EntityCount / EntitiesPerPage),
PageIndices = { 0 .. PageCount - 1 },
Pages = List.Transform(PageIndices, each GetPage(_)),
Entities = List.Union(Pages),
Table = Table.FromList(Entities, Splitter.SplitByNothing(), null, null, ExtraValues.Error)

in
Table

I am pretty sure it’s:

Pages = List.Transform(PageIndices, each GetPage(_)),

Which is causing the issue.

If I take a look at GetPage = (Index) => 

I noticed in Postman it’s returning me a data and meta tag:

Postman_odOsBHvjNX.png

I tried changing the folowing line

Value = Json[#"value"]

with

Value = Json[data][#"value"]

But sadly without luck.

I really hope someone can help me, since I am pulling my hair out over this issue :S

Feel free to add me on skype: Futurelinkhev or hev@futurelink.dk if needed be 

Best regards

  • Remove From My Forums
  • Question

  • Hi everyone,

    Has anyone any experience with the «[Expressio<g class=»gr_ gr_87 gr-alert
    gr_gramm gr_inline_cards gr_disable_anim_appear Style replaceWithoutSep» data-gr-id=»87″ id=»87″>n.Erro</g>r] 2 arguments were passed to a function which expects 1″ error as my colleagues keep getting it but
    I don’t get it?

    Even one of my colleagues has the very same laptop as I have and he also gets
    the same issues. The other people have the smaller laptops and they do get it but I developed the power query using my laptop so I never got that error.

    Any help is very much appreciated.

    Regards

    <g class=»gr_ gr_472 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace» data-gr-id=»472″ id=»472″>Etem</g>

Answers

  • Hi Etem. Can you share the M formula text of the query where you’re seeing this error? If you’re seeing the error only on some users’ machines, it’s likely due to differing versions of Power Query. The newer version of the function may support a two arguments,
    while the older version only accepts one argument.

    Ehren

    • Proposed as answer by

      Friday, October 19, 2018 5:05 PM

    • Marked as answer by
      Imke FeldmannMVP
      Saturday, November 3, 2018 7:22 AM

  • Remove From My Forums
  • Question

  • Hi everyone,

    Has anyone any experience with the «[Expressio<g class=»gr_ gr_87 gr-alert
    gr_gramm gr_inline_cards gr_disable_anim_appear Style replaceWithoutSep» data-gr-id=»87″ id=»87″>n.Erro</g>r] 2 arguments were passed to a function which expects 1″ error as my colleagues keep getting it but
    I don’t get it?

    Even one of my colleagues has the very same laptop as I have and he also gets
    the same issues. The other people have the smaller laptops and they do get it but I developed the power query using my laptop so I never got that error.

    Any help is very much appreciated.

    Regards

    <g class=»gr_ gr_472 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace» data-gr-id=»472″ id=»472″>Etem</g>

Answers

  • Hi Etem. Can you share the M formula text of the query where you’re seeing this error? If you’re seeing the error only on some users’ machines, it’s likely due to differing versions of Power Query. The newer version of the function may support a two arguments,
    while the older version only accepts one argument.

    Ehren

    • Proposed as answer by

      Friday, October 19, 2018 5:05 PM

    • Marked as answer by
      Imke FeldmannMVP
      Saturday, November 3, 2018 7:22 AM

Я пытался создать автоматизированный инструмент vba для извлечения данных API, но продолжал получать ошибку ниже от Power Query…

Expression.Error: 2 arguments were passed to a function which expects 1. Details: Pattern= Arguments=[List]

Продолжал искать решение, но не мог найти правильную причину…

Вот мой код, как показано ниже

let

    Parameter = Excel.CurrentWorkbook(){[Name="Parameter"]}[Content],

    URL= Parameter[Column1]{0},

    Source = Json.Document(Web.Page(Web.Contents(URL), [
        Headers =[#"Authorization"="Basic ENCODE64PASSWORDS"]])),
    
    #"Converted to Table" = Record.ToTable(Source),
    Value = #"Converted to Table"{0}[Value],
    results = Value[results],


    #"Converted to Table1" = Table.FromList(results, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table1", "Column1", {"path", "upsertable"}, {"path", "upsertable"}),
    #"Filtered Rows" = Table.SelectRows(#"Expanded Column1", each ([upsertable] = true)),
    #"Sorted Rows" = Table.Sort(#"Filtered Rows",{{"path", Order.Ascending}})
in
    #"Sorted Rows"

Я не профессиональный кодер, но только начал интересоваться миром кодирования. Этот код в основном представляет собой просто смесь копирования и вставки по всему Интернету, ха-ха. Поэтому, пожалуйста, поймите, что я только новичок с маленьким шагом, и простите мое невежество, если это на самом деле простое дело … или если я действительно не очень хорошо понимаю ваш ответ ..

1 ответ

Уверен, что это именно эта линия. Попробуйте изменить его на следующее:

Source = Json.Document(Web.Page(Web.Contents(URL, [
        Headers =[#"Authorization"="Basic ENCODE64PASSWORDS"]]))),


0

David Bacci
26 Янв 2023 в 11:12

Понравилась статья? Поделить с друзьями:
  • Expression error unable to find faction
  • Expression error unable to find cell id red mountain region
  • Expression error runtime error at 500 57 out of string range gog
  • Expression error handler is invoked
  • Express router error handler