Змініть формати дати за допомогою редактора Power Query
У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.
Я покажу вам, як перетворити код M для таблиці дат на запит до таблиці. Ви можете переглянути повне відео цього підручника внизу цього блогу.
Я б вважав рівень складності для цього підручника проміжним, тому що якщо у вас є досвід роботи з кодами M, вам буде легко слідувати. Якщо у вас немає відповідного досвіду, я пропоную вам спочатку ознайомитися з кодами M, щоб вам було легше зрозуміти представлені тут концепції.
Зміст
Викликаний запит функції та запит таблиці дат
Цеі викликаний запит функції.
Якщо ви подивитеся на панель «Застосовані кроки» праворуч, там є лише один крок. Він показує джерело цього запиту.
Отже, якщо ви хочете розробити код M для цієї таблиці дат, вам доведеться переключатися між функцією та запитом таблиці, щоб побачити будь-які зміни, які ви застосовуєте.
Це означає, що боротися з помилками, спричиненими будь-якими вашими змінами, складніше. Це призведе до помилки в самому запиті таблиці, тоді вам доведеться шукати рядки коду, щоб виправити помилку.
На наступній сторінці показано запит дати, який повертає таблицю замість функції.
Подивившись на застосовані кроки праворуч, ви побачите, що цього разу вказано кілька кроків.
Це означає, що коли ви розробите свій код таблиці дат M, ви одразу побачите результати своїх змін у цьому запиті до таблиці.
Що ще важливіше, коли ваша зміна призводить до помилки, ви можете легко визначити крок, який спричинив помилку. Це полегшує вирішення проблеми.
Застосування коду M
Код таблиці дат M можна знайти на форумі LuckyTemplates. Це в темі Extended Data Table Power Queryв рамках M Code Showcase.
Код M знаходиться вгорі. Я виділю весь код і скопіюю його.
Потім я створю новий порожній запит.
Я відкрию розширений редактор і вставлю цей код.
Оскільки я бачу, що помилок не виявлено, я клацну «Готово».
Дозвольте мені перейменувати це й назвати Дати.
Цей запит повертає функцію, але мені потрібна таблиця.
Щоб внести необхідні зміни, я повернуся до розширеного редактора.
Перетворення функції в таблицю
Щоб зробити це повернення таблицею замість функції, мені потрібно буде внести деякі зміни в код M у розширеному редакторі.
Дивлячись на код M, я можу легко побачити принаймні два середовища на основі кількості операторів let.
Кожен оператор let має власний пункт in, який можна знайти внизу.
Ви можете подумати, що було б простіше просто видалити останнє в пункті, щоб перетворити це на таблицю.
Але я не збираюся цього робити. Натомість я прокоментую це, додавши дві похилі риски перед останнім пунктом in.
Я також збираюся зробити це для першого оператора let. Це робить його неактивним.
Під внутрішнім оператором let я збираюся створити розділ для оголошення своїх параметрів, тому що мені все одно потрібно передати ці параметри в цей код.
Я збираюся позначити, де ці змінні мають бути оголошені.
Тепер я скопіюю першу змінну із зовнішнього оператора let і вставлю її в пробіл.
У моєму наборі даних історичні дані не сягають далі, ніж 2017 рік. Тому, щоб передати значення змінній StartDate, я можу використовувати власну дату. Я поставлю 1 січня, потім закінчу рядок комою.
Потім я скопіюю та вставлю наступну змінну, яка є EndDate.
Я знаю, що EndDate потребує прогнозу. Ось чому я хочу, щоб ця кінцева дата завжди була наприкінці наступного року.
У мене вже є змінна в моєму коді M для CurrentDate, тому я збираюся посилатися на це.
Знову ж таки, я буду використовувати внутрішню дату. Я витягну Date.Year і використаю CurrentDate як значення року +1. Я також хочу, щоб дата була 31 грудня.
Знову ж таки, я закінчую цей рядок комою.
Наступна змінна є необов’язковим параметром під назвою FYStartMonth.
Тож я просто скопіюю це ім’я та вставлю його.
Зверніть увагу, що під змінною, яку я щойно вставив, під FYStartMonth з’явилося червоне підкреслення.
Це тому, що їхні імена збігаються. Це не було проблемою, коли вони були в різних середовищах. Але імена змінних в одному середовищі мають бути унікальними. Це означає, що мені потрібно змінити назву нової змінної, яку я щойно вставив.
Замість того, щоб називати це FYStartMonth, я буду називати це FYStartMonthNum.
Я не збираюся призначати значення для цієї змінної, тому я просто поставлю значення null.
Оскільки я змінив ім’я змінної, мені також потрібно змінити ім’я, де б не було посилання на цей параметр.
Повертаючись до змінної, я закрию цей рядок, додавши кому в кінці.
Наступний параметр – необов’язковий список свят. Я збираюся скопіювати та вставити це також, а також оголосити його як null.
Те саме стосується WDStartNum. Я скопіюю та вставлю його, а потім оголошу як нульовий.
Щоб позначити, де починається код таблиці дат, я збираюся додати тут ще один коментар.
Коли я натисну «Готово», ви побачите, що запит тепер повертає правильний тип.
Тепер я маю таблицю замість функції.
На панелі «Застосовані кроки» я також бачу всі кроки, які складають запит.
Якщо я хочу внести будь-які зміни в таблицю дат, досить легко скористатися стрічкою, щоб змінити або додати кроки. Для кожної зміни, яку я вношу, я також одразу побачу результати в запиті.
Перетворення запиту таблиці назад у функцію
Припустімо, я хочу знову перетворити запит таблиці дат на функцію. Потрібно лише налаштувати кілька речей у коді M, щоб скасувати зміни, які я зробив раніше.
Я повернуся до розширеного редактора та видалю косі риски перед зовнішнім оператором let.
Далі я збираюся видалити косі риски перед операторами in.
Тоді я прокоментую блок змінних, який додав раніше. Тому я додам сюди косу риску та зірочку.
Потім зірочка та коса риска після блоку змінних.
Пам’ятаєте, коли я змінив цей рядок коду раніше через FYStartMonthNum?
Я скопіюю цей рядок коду. Потім я додам новий рядок і вставлю його.
Я скорочу першу (саме там я вносив зміни в назву змінної раніше).
Потім на другому я знайду відредаговані назви змінних.
І я поверну їх у FYStartMonth.
Щойно я натисну «Готово», запит до таблиці знову перетвориться на функцію.
Висновок
Я ще раз показав вам, наскільки зручні коди M, особливо в таких випадках, коли ми перетворюємо функцію на запит до таблиці, і навпаки. Поки у вас є доступ до коду M, який ми маємо на форумі LuckyTemplates, ви можете використовувати його в подібних сценаріях у майбутньому.
Ви також можете переглядати інші коди M, які можна використовувати в інших ситуаціях, у вітрині кодів M на. Це спільне співтовариство, тому ви можете прочитати коментарі щодо інших ідей від наших експертів і учасників.
Все найкраще,
Меліса
***** Вивчаєте LuckyTemplates? *****
У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.
Дізнайтеся, як об’єднати файли з кількох папок у мережі, робочому столі, OneDrive або SharePoint за допомогою Power Query.
Цей підручник пояснює, як обчислити місячне ковзне середнє на базі даних з початку року за допомогою функцій AVERAGEX, TOTALYTD та FILTER у LuckyTemplates.
Дізнайтеся, чому важлива спеціальна таблиця дат у LuckyTemplates, і вивчіть найшвидший і найефективніший спосіб це зробити.
У цьому короткому посібнику розповідається про функцію мобільних звітів LuckyTemplates. Я збираюся показати вам, як ви можете ефективно створювати звіти для мобільних пристроїв.
У цій презентації LuckyTemplates ми розглянемо звіти, що демонструють професійну аналітику послуг від фірми, яка має кілька контрактів і залучених клієнтів.
Ознайомтеся з основними оновленнями для Power Apps і Power Automate, а також їх перевагами та наслідками для Microsoft Power Platform.
Відкрийте для себе деякі поширені функції SQL, які ми можемо використовувати, наприклад String, Date і деякі розширені функції для обробки та маніпулювання даними.
У цьому підручнику ви дізнаєтеся, як створити свій ідеальний шаблон LuckyTemplates, налаштований відповідно до ваших потреб і вподобань.
У цьому блозі ми продемонструємо, як шарувати параметри поля з малими кратними, щоб створити неймовірно корисну інформацію та візуальні ефекти.