Ошибка 504 эксель

@JoeJP 

Does this do what you want?

=IF(W231-W218>=90, 1199.26, IF(W231-W219>=60, 1132.84, IF(W231-W220>=30, 166.42, 0)))

or

=IFS(W231-W218>=90, 1199.26, W231-W219>=60, 1132.84, W231-W220>=30, 166.42, TRUE, 0)

Note that the order of the conditions had to be reversed.

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

• проверить формулу, если вычисляется число дней между двумя датами;

• если формула не содержит ошибок, необходимо изменить формат ячейки и перейти, например, с формата Дата и время на Общий или Числовой формат.

Ошибка: 501 — недопустимый символ. Формула содержит недопустимый символ, например =1Eр вместо =1E2.

Ошибка: 502 — недопустимый аргумент. Функция имеет недопустимый аргумент, например отрицательное число для функции извлечения корня.

Ошибка: 503 (#NUM! ) — недопустимая операция с плавающей запятой. Вычисление приводит к переполнению диапазона значений.

Ошибка: 504 — ошибка в списке параметров. Используется недопустимый параметр функции, например текст вместо числа или гиперссылка вместо ссылки на ячейку.

Ошибка: 508 — нет пары.

Отсутствует скобка (закрывающая или открывающая).

Ошибка: 509 — отсутствует оператор. В формуле отсутствует оператор (+, – и т. д.).

Ошибка: 510 — отсутствует переменная.

Отсутствует переменная (два оператора стоят рядом).

Ошибка: 511 — отсутствует переменная. В функции не хватает переменной.

Ошибка: 512 — слишком длинная формула.

Общее число внутренних маркеров (операторов, переменных, скобок) в формуле превышает 512 или общее число матриц, которые создает формула, превышает 150.

Ошибка: 513 — слишком длинная строка. Идентификатор в формуле превышает 64 Kб.

Ошибка: 514 — внутреннее переполнение.

Переполнен стек вычислений (например, операция сортировки предпринята на слишком большом количестве числовых данных — более 100 000).

Ошибка: 516 — внутренняя синтаксическая ошибка. В стеке вычислений недоступна необходимая матрица.

Ошибка: 517 — внутренняя синтаксическая ошибка. Документ с новой функцией открыт в старой версии программы.

Ошибка: 518 — внутренняя синтаксическая ошибка. Переменная недоступна.

Ошибка: 519 (#VALUE) — нет результата. Ячейка, на которую ссылается формула, содержит текст вместо числа. -В ячейке отображается #ЗНАЧЕН! , а не Ошибка: 519.

Ошибка: 520 — внутренняя синтаксическая ошибка. Компилятор создал неизвестный код компиляции.

Ошибка: 521 — внутренняя синтаксическая ошибка. Нет результата.

Ошибка: 522 — циклическая ссылка. Формула ссылается прямо или косвенно на саму себя, а параметр Итерации не настроен.

Ошибка: 523 — процедура вычисления не сходится. Функция потеряла подбираемое значение или циклические ссылки не доходят до минимальных изменений для заданного максимального числа шагов.

Ошибка: 524 (#REF) — недопустимые ссылки. В формуле отсутствует столбец, строка или лист с заданной ячейкой.

-В ячейке отображается #ССЫЛ!2, а не Ошибка: 524.

Ошибка: 525 (#NAME) — недопустимые имена. Нет допустимой ссылки, доменного имени, подписи столбца/строки, макроса, присутствует неправильный десятичный разделитель или не найдена надстройка.

-В ячейке отображается #ИМЯ, а не Ошибка: 525.

Ошибка: 526 — внутренняя синтаксическая ошибка. Ссылка устарела.

Ошибка: 527 — внутреннее переполнение. Слишком сложное вложение ссылок.

Ошибка: 532 (#DIV/0!) — деление на ноль. В формуле используется деление на ноль.

May 2023 Community Newsletter and Upcoming Events

Welcome to our May 2023 Community Newsletter, where we’ll be highlighting the latest news, releases, upcoming events, and the great work of our members inside the Biz Apps communities. If you’re new to this LinkedIn group, be sure to subscribe here in the News & Announcements to stay up to date with the latest news from our ever-growing membership network who «changed the way they thought about code».
 

 
 
 
LATEST NEWS
«Mondays at Microsoft» LIVE on LinkedIn — 8am PST — Monday 15th May  — Grab your Monday morning coffee and come join Principal Program Managers Heather Cook and Karuana Gatimu for the premiere episode of «Mondays at Microsoft»! This show will kick off the launch of the new Microsoft Community LinkedIn channel and cover a whole host of hot topics from across the #PowerPlatform, #ModernWork, #Dynamics365, #AI, and everything in-between. Just click the image below to register and come join the team LIVE on Monday 15th May 2023 at 8am PST. Hope to see you there!
 
 
Executive Keynote | Microsoft Customer Success Day
CVP for Business Applications & Platform, Charles Lamanna, shares the latest #BusinessApplications product enhancements and updates to help customers achieve their business outcomes.
 
 

 
 
S01E13 Power Platform Connections — 12pm PST — Thursday 11th May
Episode Thirteen of Power Platform Connections sees Hugo Bernier take a deep dive into the mind of co-host David Warner II, alongside the reviewing the great work of Dennis Goedegebuure, Keith Atherton, Michael Megel, Cat Schneider, and more.
Click below to subscribe and get notified, with David and Hugo LIVE in the YouTube chat from 12pm PST. And use the hashtag #PowerPlatformConnects on social media for a chance to have your work featured on the show.
 
 

 
 
UPCOMING EVENTS
 
European Power Platform Conference — early bird ticket sale ends!
The European Power Platform Conference early bird ticket sale ends on Friday 12th May 2023!
#EPPC23 brings together the Microsoft Power Platform Communities for three days of unrivaled days in-person learning, connections and inspiration, featuring three inspirational keynotes, six expert full-day tutorials, and over eighty-five specialist sessions, with guest speakers including April Dunnam, Dona Sarkar, Ilya Fainberg, Janet Robb, Daniel Laskewitz, Rui Santos, Jens Christian Schrøder, Marco Rocca, and many more. Deep dive into the latest product advancements as you hear from some of the brightest minds in the #PowerApps space.
Click here to book your ticket today and save! 
 
 

DynamicMinds Conference — Slovenia — 22-24th May 2023
It’s not long now until the DynamicsMinds Conference, which takes place in Slovenia on 22nd — 24th May, 2023 — where brilliant minds meet, mingle & share!
This great Power Platform and Dynamics 365 Conference features a whole host of amazing speakers, including the likes of Georg Glantschnig, Dona Sarkar, Tommy Skaue, Monique Hayward, Aleksandar Totovic, Rachel Profitt, Aurélien CLERE, Ana Inés Urrutia de Souza, Luca Pellegrini, Bostjan Golob, Shannon Mullins, Elena Baeva, Ivan Ficko, Guro Faller, Vivian Voss, Andrew Bibby, Tricia Sinclair, Roger Gilchrist, Sara Lagerquist, Steve Mordue, and many more.
Click here: DynamicsMinds Conference for more info on what is sure an amazing community conference covering all aspects of Power Platform and beyond. 
 

Days of Knowledge Conference in Denmark — 1-2nd June 2023
Check out ‘Days of Knowledge’, a Directions 4 Partners conference on 1st-2nd June in Odense, Denmark, which focuses on educating employees, sharing knowledge and upgrading Business Central professionals.
This fantastic two-day conference offers a combination of training sessions and workshops — all with Business Central and related products as the main topic. There’s a great list of industry experts sharing their knowledge, including Iona V., Bert Verbeek, Liza Juhlin, Douglas Romão, Carolina Edvinsson, Kim Dalsgaard Christensen, Inga Sartauskaite, Peik Bech-Andersen, Shannon Mullins, James Crowter, Mona Borksted Nielsen, Renato Fajdiga, Vivian Voss, Sven Noomen, Paulien Buskens, Andri Már Helgason, Kayleen Hannigan, Freddy Kristiansen, Signe Agerbo, Luc van Vugt, and many more.
If you want to meet industry experts, gain an advantage in the SMB-market, and acquire new knowledge about Microsoft Dynamics Business Central, click here Days of Knowledge Conference in Denmark to buy your ticket today!
 
COMMUNITY HIGHLIGHTS
Check out our top Super and Community Users reaching new levels! These hardworking members are posting, answering questions, kudos, and providing top solutions in their communities.
 
Power Apps: 
Super Users: @WarrenBelz, @LaurensM  @BCBuizer 
Community Users:  @Amik@ @mmollet, @Cr1t 
 
Power Automate: 
Super Users: @Expiscornovus , @grantjenkins, @abm 
Community Users: @Nived_Nambiar, @ManishSolanki 
 
Power Virtual Agents: 
Super Users: @Pstork1, @Expiscornovus 
Community Users: @JoseA, @fernandosilva, @angerfire1213 
 
Power Pages:
Super Users: @ragavanrajan 
Community Users: @Fubar, @Madhankumar_L,@gospa 

LATEST COMMUNITY BLOG ARTICLES 
Power Apps Community Blog 
Power Automate Community Blog 
Power Virtual Agents Community Blog 
Power Pages Community Blog 

Check out ‘Using the Community’ for more helpful tips and information: 
Power Apps , Power Automate, Power Virtual Agents, Power Pages 

Я использую PowerAutomate для добавления данных в отчет каждый день. Данные поступают по электронной почте в виде вложения CSV, они анализируются функцией Azure в 2D-массив и преобразовываются в JSON, затем передаются в сценарий Excel, который анализирует JSON, усекает массивы строк до нужной ширины, добавляет формулы в массивы строк для вычисляемых столбцов и использует
table.addRows() функция для добавления данных в таблицу.

Это происходит на трех разных таблицах из трех разных отчетов, которые поступают (с интервалом в 30 минут).

  • Один маленький, добавляя ~10 строк в день, без добавления столбцов формул, это всегда хорошо и успешно в PowerAutomate.
  • Второй — ~150 строк в день с одним добавленным столбцом формул. При этом всегда удается добавить данные, но иногда соединитель PowerAutomate не работает с 504 BadGateway — истекло время ожидания запроса к API-графику.
  • Третий — ~150 строк в день с несколькими добавленными столбцами формул. Обычно это не удается: либо успешно добавляется дата, но возвращается указанная выше ошибка, либо не удается добавить данные и возвращается. Мы не смогли запустить скрипт. Пожалуйста, попробуйте еще раз. Ошибка Office JS: строка 44: таблицы addRows: запрос завершился неудачно с кодом состояния 504, код ошибки UnknownError

Вот сама функция (в частности, третий пример):

      function main(workbook: ExcelScript.Workbook, inputData: string) {

  // Get formula columns as array of strings
  const additionalData = workbook.getWorksheet(`contact_time`).getRange("W2:AG2").getFormulas()[0]

  // Parse inputData to get actual array
  const dataToAdd: Array<Array<string>> = JSON.parse(inputData)

  // Remove first row's data as is just headers
  dataToAdd.shift()

  if (dataToAdd.length == 0) {
    return
  }

  // Truncate each input array row and add formula array columns on to the end
  for (const row of dataToAdd) {
    row.length = 22
    for (const column of additionalData) {
      row.push(column)
    }
  }

  // Add data to table
  workbook.getTable("t").addRows(null, dataToAdd)
}

Чтобы попытаться оптимизировать это, у меня есть

  • в скрипте обращался к книге минимально возможное количество раз для меньшего количества запросов
  • удалил звонок
    .getFormulas() и вместо этого жестко запрограммировал массив
  • изменил тайм-аут PowerAutomate на P1D, а повторных попыток нет
  • отключил пересчет для книги

Это работает в 100% случаев, если я вставляю JSON в функцию и запускаю ее в браузере. Я не могу понять, происходит ли это из-за фактического тайм-аута функции, PowerAutomate не может достаточно долго ждать результата, некоторого тайм-аута в Graph API или чего-то еще.

Размер книги меньше 5 МБ, таблица, которая чаще всего дает сбой, содержит около 13000 строк.

Редактировать:

В книге, которую я добавляю, есть рабочие листы для этих трех таблиц, а также еще несколько с таблицами анализа. Я также тестировал удаление разных листов, ссылок и т. Д. Замедление, похоже, связано с столбцами формул, которые уже существуют в таблице, поскольку только полное удаление этих столбцов приводило к успешной функции во всех случаях. Теперь вместо тайм-аута через 90 секунд он завершается за 8 секунд без каких-либо проблем. Почему это повлияет на скорость при отключенном пересчете?

2021-04-15 13:26

2
ответа

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

      // At the beginning of the script right after main() function,
...
// Set calculation mode to manual
workbook.getApplication().setCalculationMode(ExcelScript.CalculationMode.manual);
// do your processing...
// Set calculation mode back to automatic
workbook.getApplication().setCalculationMode(ExcelScript.CalculationMode.automatic);   

2021-04-16 00:15

Из дальнейшего тестирования кажется, что даже с ручным расчетом любая таблица с формулами в ней вызывает замедление при использовании
table.addRows(), и ни Graph API, ни коннектор PowerAutomate не могут достаточно долго ждать ответа.

Единственное решение, которое я нашел, — это минимизировать или исключить формулы, которые

  • находятся в таблице, добавляемой к
  • ссылка на таблицу, добавляемую в

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

В моем случае мне нужны вычисляемые столбцы в моей таблице напрямую, поэтому я периодически заменяю формулы, добавляемые скриптом, значениями. Это можно сделать вручную или с помощью сценария, используя
range.setFormulas(range.getValues()) в указанном вами диапазоне (я рекомендую ограничить этот диапазон тем, что вам нужно, поскольку даже в браузере он завершил только около 1000 строк до истечения времени ожидания, поэтому вы не должны использовать его для всей таблицы).

2021-04-20 12:06

Я использую PowerAutomate для добавления данных в отчет каждый день. Данные приходят по электронной почте в виде вложения CSV, они анализируются с помощью функции Azure в двумерный массив и преобразуются в JSON, а затем передаются в сценарий Excel, который анализирует JSON, усекает массивы строк до нужной ширины, добавляет формулы в массивы строк для вычисляемых столбцов и использует функцию table.addRows() для добавления данных в таблицу.

Это происходит в трех разных таблицах из трех разных отчетов, которые приходят (с интервалом в 30 минут).

  • Один из них небольшой, добавляет около 10 строк в день, без добавления столбцов с формулами, это всегда хорошо и успешно в PowerAutomate.
  • Второй — примерно 150 строк в день с одним добавленным столбцом формулы. Это всегда успешно добавляет данные, но иногда коннектор PowerAutomate дает сбой с ошибкой 504 BadGateway — время ожидания запроса к Graph API истекло.
  • Третий — около 150 строк в день с несколькими добавленными столбцами формул. Обычно это не удается, либо успешно добавляя дату, но возвращая указанную выше ошибку, либо не добавляя данные и возвращая сообщение Нам не удалось запустить сценарий. Пожалуйста, попробуйте еще раз. Ошибка Office JS: строка 44: таблица addRows: запрос не выполнен с кодом состояния 504, код ошибки UnknownError

Вот сама функция (конкретно третий пример):

function main(workbook: ExcelScript.Workbook, inputData: string) {

  // Get formula columns as array of strings
  const additionalData = workbook.getWorksheet(`contact_time`).getRange("W2:AG2").getFormulas()[0]

  // Parse inputData to get actual array
  const dataToAdd: Array<Array<string>> = JSON.parse(inputData)

  // Remove first row's data as is just headers
  dataToAdd.shift()

  if (dataToAdd.length == 0) {
    return
  }

  // Truncate each input array row and add formula array columns on to the end
  for (const row of dataToAdd) {
    row.length = 22
    for (const column of additionalData) {
      row.push(column)
    }
  }

  // Add data to table
  workbook.getTable("t").addRows(null, dataToAdd)
}

Чтобы попытаться оптимизировать это, у меня есть

  • в сценарии обращался к книге минимально возможное количество раз за меньшее количество запросов
  • удален вызов .getFormulas() и вместо этого жестко запрограммирован массив
  • изменил тайм-аут PowerAutomate на P1D и не предпринимал повторных попыток
  • отключил пересчет для рабочей книги/установил ручной режим расчета (как на уровне рабочей книги, так и при запуске самого скрипта)

Это работает в 100% случаев, если я вставляю JSON в функцию и запускаю ее в браузере. Я не могу понять, связано ли это с фактическим истечением времени функции, с тем, что PowerAutomate не может достаточно долго ждать результата, с каким-то тайм-аутом в Graph API или с чем-то еще.

Рабочая книга имеет размер менее 5 МБ, таблица, в которой происходит сбой, чаще всего содержит около 13 000 строк.

Изменить:

В рабочей книге, которую я добавляю, есть рабочие листы для этих трех таблиц, а также еще несколько таблиц с аналитическими таблицами. Я также протестировал удаление разных листов, ссылок и т. д. Замедление, по-видимому, связано с столбцами формул, которые уже существуют в таблице, поскольку только полное удаление этих столбцов обеспечивало успешную работу функции в каждом случае. Теперь вместо тайм-аута в 90 секунд он завершается за 8 секунд без каких-либо проблем. Почему это должно влиять на скорость при выключенном пересчете?

2 ответа

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

// At the beginning of the script right after main() function,
...
// Set calculation mode to manual
workbook.getApplication().setCalculationMode(ExcelScript.CalculationMode.manual);
// do your processing...
// Set calculation mode back to automatic
workbook.getApplication().setCalculationMode(ExcelScript.CalculationMode.automatic);   


0

WeffJen
16 Апр 2021 в 00:15

Дальнейшее тестирование показало, что даже при расчете вручную любая таблица с формулами вызывает замедление при использовании table.addRows(), и ни Graph API, ни коннектор PowerAutomate не могут достаточно долго ждать ответа.

Единственное решение, которое я нашел, это свести к минимуму или исключить формулы, которые

  • находятся в таблице, добавляемой к
  • ссылаться на добавляемую таблицу

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

В моем случае мне нужны вычисляемые столбцы в моей таблице напрямую, поэтому я периодически заменяю формулы, которые добавляет скрипт, значениями. Это можно сделать вручную или с помощью скрипта, используя range.setFormulas(range.getValues()) в указанном вами диапазоне (я рекомендую ограничить этот диапазон тем, что вам нужно, поскольку даже в браузере он завершил только около 1000 строк до истечения времени ожидания, так что не стоит использовать его на всю таблицу).


0

sambr
20 Апр 2021 в 12:06

Понравилась статья? Поделить с друзьями:
  • Ошибка 504 что значит и как исправить
  • Ошибка 504 что делать пользователю
  • Ошибка 504 тор
  • Ошибка 504 gateway time out nginx
  • Ошибка 504 excel