cancel
Showing results for 
Search instead for 
Did you mean: 
Reply

How to PDF pages using Power Automate Desktop where some invoices are over two pages rather than the usual one page.

Hi,

 

I am having an issue where I built a flow where it can split PDF document invoice into single pages based on heading. The issue I am facing is how do I do it where some invoices are over two pages. 

 

So the heading will be on page 1 and the next heading is on page three. I need page 1 and 2 to be built into a single PDF document. 

 

Invoice will be coming from different people so the heading will change but the variable will be passed from the cloud flow alongside the page number. Then PAD will loop and extract the pages by text reference. 

I have attached my PAD flow with page number from Cloud Flow alongside two invoices. One invoice covering one page the other is over two pages then on the third page and forth page it covering the invoice on a single page for both three and four. 

1 ACCEPTED SOLUTION

Accepted Solutions
Deenuji
Community Champion
Community Champion

@Nerfino80 

 

Try the below approach and code for your use case and sample pdf also attached for your testing.

Deenuji_0-1712920401654.png

Deenuji_1-1712920435087.png

Deenuji_2-1712920459761.png

 

Source code:

 

SET PdfFilePath TO $'''C:\\Boot\\3page_invoice.pdf'''
File.GetPathPart File: PdfFilePath RootPath=> RootPath Directory=> Directory FileName=> FileName FileNameWithoutExtension=> FileNameNoExtension Extension=> FileExtension
SET Count TO 0
LOOP WHILE ($'''True''') = ($'''True''')
    Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: Count + 1 ExtractedPDFPath: $'''%Directory%\\Temp PDF from a desktop flow''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
    ON ERROR PageOutOfBoundsError
        GOTO Finish
    END
    File.Delete Files: ExtractedPDF
    Variables.IncreaseVariable Value: Count IncrementValue: 1
END
LABEL Finish
Display.ShowMessageDialog.ShowMessage Title: $'''Flow finished running...''' Message: $'''The selected PDF file has %Count% pages.''' Icon: Display.Icon.None Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: True ButtonPressed=> ButtonPressed2
SET PageCounter TO 1
SET FromPage TO 1
SET ToPage TO 0
LOOP LoopIndex FROM PageCounter TO Count STEP 1
    Pdf.ExtractTextFromPDF.ExtractTextFromPage PDFFile: PdfFilePath PageNumber: PageCounter DetectLayout: False ExtractedText=> ExtractedPDFText
    Text.ParseText.RegexParseForFirstOccurrence Text: ExtractedPDFText TextToFind: $'''(?<=Supplier\\s*)\\S+''' StartingPosition: 0 IgnoreCase: False Match=> Match
    IF Match = 1 THEN
        IF (FromPage > 0 AND ToPage > 0) = $'''True''' THEN
            Text.FromNumber Number: FromPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> FromPageText
            Text.FromNumber Number: ToPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> ToPageText
            Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText + '-' + ToPageText ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
            ON ERROR PageOutOfBoundsError
                GOTO Finish
            END
            SET ToPage TO 0
            SET FromPage TO PageCounter
        ELSE IF (FromPage > 0 AND FromPage <> 1 AND ToPage = 0) = $'''True''' THEN
            Text.FromNumber Number: FromPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> FromPageText
            Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
            ON ERROR PageOutOfBoundsError
                GOTO Finish
            END
            SET ToPage TO 0
            SET FromPage TO PageCounter
        END
    DISABLE ELSE IF PageCounter = Count THEN
        DISABLE Text.FromNumber Number: FromPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> FromPageText
        DISABLE Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText + '-' + Count ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
        ON ERROR PageOutOfBoundsError
            GOTO Finish
        END
    ELSE
        SET ToPage TO PageCounter
    END
    SET PageCounter TO PageCounter + 1
END
Text.FromNumber Number: ToPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> ToPageText
Text.FromNumber Number: FromPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> FromPageText
IF (FromPage > 0 AND ToPage > 0) = $'''True''' THEN
    Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText + '-' + ToPageText ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
    ON ERROR PageOutOfBoundsError
        GOTO Finish
    END
ELSE
    Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
    ON ERROR PageOutOfBoundsError
        GOTO Finish
    END
END

 

 

Please try and let me know in case of any queries. Please build your own logic to keep new name for newly creating pdf files.

 

How to copy/paste the above code into your PAD?

Deenuji_3-1712920613876.gif

 


Thanks,
Deenuji Loganathan 👩‍💻
Automation Evangelist 🤖
Follow me on LinkedIn 👥

-------------------------------------------------------------------------------------------------------------
If I've helped solve your query, kindly mark my response as the solution ✔ and give it a thumbs up!👍 Your feedback supports future seekers 🚀

 

View solution in original post

17 REPLIES 17
Deenuji
Community Champion
Community Champion

@Nerfino80 

could you please explain with some screenshot or sample pdf document of your use case so that we can try and propose appropriate solution for you. Thanks.


Thanks,
Deenuji Loganathan 👩‍💻
Automation Evangelist 🤖
Follow me on LinkedIn 👥

-------------------------------------------------------------------------------------------------------------
If I've helped solve your query, kindly mark my response as the solution ✔ and give it a thumbs up!👍 Your feedback supports future seekers 🚀. If you'd like to appreciate me, please write a LinkedIn recommendation 🙏

Hi @Nerfino80 ,

 

It that headings are same or any common points in PDF.

As mentioned @Deenuji ,Please share the screenshot or PDF File.

 

(Note:- if you got your solution you can mark as solution and gives kudos)

 

Thanks & Regards

Vishnu Reddy

 

 

 

I have updated with screenshot thank you for looking into this

Screenshot have been added thank you. 

@Nerfino80 
I understand that the first invoice consists of one page containing the invoice information, while the second invoice spans two pages. Could you please clarify what exactly you're trying to achieve here? I'm not entirely clear on your objective. Could you elaborate a bit more?


Thanks,
Deenuji Loganathan 👩‍💻
Automation Evangelist 🤖
Follow me on LinkedIn 👥

-------------------------------------------------------------------------------------------------------------
If I've helped solve your query, kindly mark my response as the solution ✔ and give it a thumbs up!👍 Your feedback supports future seekers 🚀. If you'd like to appreciate me, please write a LinkedIn recommendation 🙏

 

What I am trying to do here is when the invoice comes into sharepoint cloud flow will pick that up and it a 25 page PDF documents with multiples invoice on one documents. I am trying to split this one documents into multiples documents based on the heading. I can get it to work when the heading and invoice on one page but across two pages is where I am struggling.  

Hi @Nerfino80 ,

When you say you were able to split the PDF into single files you meant that you did it with indicating the text to split to and from or simply split the file into single pages?

Yeah each invoice got a header starting with "Short" in a one documents over three pages and I managed to split this into 3 different PDF documents based on the header "Short" so I ended up with 3 invoice document from 1 document. 

Just Headers spaced out over two pages is where I am struggling

Agnius
Most Valuable Professional
Most Valuable Professional

Split them into individual files per page, and build a Loop condition while 1=1 (infinite loop). Then use Get files in folder to pick up your files inside this loop. If %Files.Count% = 0, use Exit loop to stop looping.

 

Then if it's not equal to 0, continue the flow. Add a For each loop to iterate through the files. Use Extract text from PDF to get the text from the current item and store it in a variable. Continue looping until the header value changes. When it does, use Exit loop to exit the For each, and merge the files you've iterated through using Merge PDF files. Once done, delete the original files, and move the merged file elsewhere, so it is not picked up during the next iteration of the while loop. 

 

It's an ugly workaround, but it can be made to work. We've done that for a client in the past.

-------------------------------------------------------------------------------------------------------------------------
If I have answered your question, please mark it as the preferred solution. If you like my response, please give it a Thumbs Up.
Regards, Agnius Bartninkas

Thank you for sharing this Agnius, I have attempted this are you able to share an image or build of how you done it so I can try replicate it please. 

Agnius
Most Valuable Professional
Most Valuable Professional

Nope, not really, as the specific solution was under an NDA and GDPR protection due to it being related to processing personal information of employees at the client.

 

But the idea was more or less as follows:

  1. Extract PDF file pages to new PDF file - each page into a separate file, named sequentially
  2. Set variable %PreviousValue% to "" (empty value)
  3. Loop condition -> While 1=1
    1. Get files in folder and store it into %Files%
    2. If %Files.Count% = 0
      1. Exit loop
    3. End
    4. Create new list for the pages to be merged and name it %List%
    5. For each %File% in %Files%
      1. Add item to list to add %File% to %List%
      2. Extract text from PDF and store it into %ExtractedPDFText%
      3. Parse text (likely with regex) to get the specific value that needs to be compared between pages - in our case it was the person ID and store it into %CurrentValue%
      4. If %PreviousValue <> "" AND CurrentValue <> PreviousValue%
        1. Set variable %PreviousValue% to %CurrentValue%
        2. Exit loop
      5. End
      6. Set variable %PreviousValue% to %CurrentValue%
    6. End
    7. If %List.Count% > 1
      1. Merge PDF files to merge %List%. Put it in some other directory, so it does not get picked up in the next iteration of the loop.
      2. Delete file(s) to delete %List%
    8. Else
      1. Move file(s) to move %List%, as it does not need to be merged due to only having one file. 
      2. Rename file(s) optionally, if you want to set a different name to the file.
    9. End
  4. End
-------------------------------------------------------------------------------------------------------------------------
If I have answered your question, please mark it as the preferred solution. If you like my response, please give it a Thumbs Up.
Regards, Agnius Bartninkas
Deenuji
Community Champion
Community Champion

@Nerfino80 

Could you kindly provide a preview of the data from both page 1 and 2, ensuring any sensitive information is hidden? Additionally, I'd like to verify if the Debit Note Number follows a standard naming convention. Could you please confirm this?

 

Deenuji_0-1712771292319.png

 

Standard naming convention can be anything from pages to prices etc nothing complex at all. 

@Nerfino80 

 

If you provide some screenshot(Hide only sensitive data) like above, it will help me to write some action to assist on your use case(Want to see the structure of the pdf extracted text).

 

Nerfino80_0-1712907514744.pngNerfino80_1-1712907579324.png

Nerfino80_2-1712907676661.png

This is the flow I built based on your instructions and I think I am nearly there it just the merging of the files is where it failing. I can see the files in the list. 

Are you happy to read through my flow images to ensure that I have set everything out correctly. The other part I am confuse about is the currentvalues and previousvalues. 

I appreciate you all taking your time out to help me. 

Deenuji
Community Champion
Community Champion

@Nerfino80 

 

Try the below approach and code for your use case and sample pdf also attached for your testing.

Deenuji_0-1712920401654.png

Deenuji_1-1712920435087.png

Deenuji_2-1712920459761.png

 

Source code:

 

SET PdfFilePath TO $'''C:\\Boot\\3page_invoice.pdf'''
File.GetPathPart File: PdfFilePath RootPath=> RootPath Directory=> Directory FileName=> FileName FileNameWithoutExtension=> FileNameNoExtension Extension=> FileExtension
SET Count TO 0
LOOP WHILE ($'''True''') = ($'''True''')
    Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: Count + 1 ExtractedPDFPath: $'''%Directory%\\Temp PDF from a desktop flow''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
    ON ERROR PageOutOfBoundsError
        GOTO Finish
    END
    File.Delete Files: ExtractedPDF
    Variables.IncreaseVariable Value: Count IncrementValue: 1
END
LABEL Finish
Display.ShowMessageDialog.ShowMessage Title: $'''Flow finished running...''' Message: $'''The selected PDF file has %Count% pages.''' Icon: Display.Icon.None Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: True ButtonPressed=> ButtonPressed2
SET PageCounter TO 1
SET FromPage TO 1
SET ToPage TO 0
LOOP LoopIndex FROM PageCounter TO Count STEP 1
    Pdf.ExtractTextFromPDF.ExtractTextFromPage PDFFile: PdfFilePath PageNumber: PageCounter DetectLayout: False ExtractedText=> ExtractedPDFText
    Text.ParseText.RegexParseForFirstOccurrence Text: ExtractedPDFText TextToFind: $'''(?<=Supplier\\s*)\\S+''' StartingPosition: 0 IgnoreCase: False Match=> Match
    IF Match = 1 THEN
        IF (FromPage > 0 AND ToPage > 0) = $'''True''' THEN
            Text.FromNumber Number: FromPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> FromPageText
            Text.FromNumber Number: ToPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> ToPageText
            Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText + '-' + ToPageText ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
            ON ERROR PageOutOfBoundsError
                GOTO Finish
            END
            SET ToPage TO 0
            SET FromPage TO PageCounter
        ELSE IF (FromPage > 0 AND FromPage <> 1 AND ToPage = 0) = $'''True''' THEN
            Text.FromNumber Number: FromPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> FromPageText
            Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
            ON ERROR PageOutOfBoundsError
                GOTO Finish
            END
            SET ToPage TO 0
            SET FromPage TO PageCounter
        END
    DISABLE ELSE IF PageCounter = Count THEN
        DISABLE Text.FromNumber Number: FromPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> FromPageText
        DISABLE Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText + '-' + Count ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
        ON ERROR PageOutOfBoundsError
            GOTO Finish
        END
    ELSE
        SET ToPage TO PageCounter
    END
    SET PageCounter TO PageCounter + 1
END
Text.FromNumber Number: ToPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> ToPageText
Text.FromNumber Number: FromPage DecimalPlaces: 0 UseThousandsSeparator: False FormattedNumber=> FromPageText
IF (FromPage > 0 AND ToPage > 0) = $'''True''' THEN
    Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText + '-' + ToPageText ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
    ON ERROR PageOutOfBoundsError
        GOTO Finish
    END
ELSE
    Pdf.ExtractPages PDFFile: PdfFilePath PageSelection: FromPageText ExtractedPDFPath: $'''C:\\Boot\\invoice.pdf''' IfFileExists: Pdf.IfFileExists.AddSequentialSuffix ExtractedPDFFile=> ExtractedPDF
    ON ERROR PageOutOfBoundsError
        GOTO Finish
    END
END

 

 

Please try and let me know in case of any queries. Please build your own logic to keep new name for newly creating pdf files.

 

How to copy/paste the above code into your PAD?

Deenuji_3-1712920613876.gif

 


Thanks,
Deenuji Loganathan 👩‍💻
Automation Evangelist 🤖
Follow me on LinkedIn 👥

-------------------------------------------------------------------------------------------------------------
If I've helped solve your query, kindly mark my response as the solution ✔ and give it a thumbs up!👍 Your feedback supports future seekers 🚀

 

Thank you both for sharing, this seriously will help so many people with multi pages PDF 🙂

Helpful resources

Announcements

Community will be READ ONLY July 16th, 5p PDT -July 22nd

Dear Community Members,   We'd like to let you know of an upcoming change to the community platform: starting July 16th, the platform will transition to a READ ONLY mode until July 22nd.   During this period, members will not be able to Kudo, Comment, or Reply to any posts.   On July 22nd, please be on the lookout for a message sent to the email address registered on your community profile. This email is crucial as it will contain your unique code and link to register for the new platform encompassing all of the communities.   What to Expect in the New Community: A more unified experience where all products, including Power Apps, Power Automate, Copilot Studio, and Power Pages, will be accessible from one community.Community Blogs that you can syndicate and link to for automatic updates. We appreciate your understanding and cooperation during this transition. Stay tuned for the exciting new features and a seamless community experience ahead!

Summer of Solutions | Week 4 Results | Winners will be posted on July 24th

We are excited to announce the Summer of Solutions Challenge!    This challenge is kicking off on Monday, June 17th and will run for (4) weeks.  The challenge is open to all Power Platform (Power Apps, Power Automate, Copilot Studio & Power Pages) community members. We invite you to participate in a quest to provide solutions to as many questions as you can. Answers can be provided in all the communities.    Entry Period: This Challenge will consist of four weekly Entry Periods as follows (each an “Entry Period”)   - 12:00 a.m. PT on June 17, 2024 – 11:59 p.m. PT on June 23, 2024 - 12:00 a.m. PT on June 24, 2024 – 11:59 p.m. PT on June 30, 2024 - 12:00 a.m. PT on July 1, 2024 – 11:59 p.m. PT on July 7, 2024 - 12:00 a.m. PT on July 8, 2024 – 11:59 p.m. PT on July 14, 2024   Entries will be eligible for the Entry Period in which they are received and will not carryover to subsequent weekly entry periods.  You must enter into each weekly Entry Period separately.   How to Enter: We invite you to participate in a quest to provide "Accepted Solutions" to as many questions as you can. Answers can be provided in all the communities. Users must provide a solution which can be an “Accepted Solution” in the Forums in all of the communities and there are no limits to the number of “Accepted Solutions” that a member can provide for entries in this challenge, but each entry must be substantially unique and different.    Winner Selection and Prizes: At the end of each week, we will list the top ten (10) Community users which will consist of: 5 Community Members & 5 Super Users and they will advance to the final drawing. We will post each week in the News & Announcements the top 10 Solution providers.  At the end of the challenge, we will add all of the top 10 weekly names and enter them into a random drawing.  Then we will randomly select ten (10) winners (5 Community Members & 5 Super Users) from among all eligible entrants received across all weekly Entry Periods to receive the prize listed below. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once overall. If they are drawn multiple times, another user will be drawn at random.  Individuals will be contacted before the announcement with the opportunity to claim or deny the prize.  Once all of the winners have been notified, we will post in the News & Announcements of each community with the list of winners.   Each winner will receive one (1) Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value). NOTE: Prize is for conference attendance only and any other costs such as airfare, lodging, transportation, and food are the sole responsibility of the winner. Tickets are not transferable to any other party or to next year’s event.   ** PLEASE SEE THE ATTACHED RULES for this CHALLENGE**   Week 1 Results: Congratulations to the Week 1 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Community MembersNumber SolutionsSuper UsersNumber Solutions Deenuji 9 @NathanAlvares24  17 @Anil_g  7 @ManishSolanki  13 @eetuRobo  5 @David_MA  10 @VishnuReddy1997  5 @SpongYe  9JhonatanOB19932 (tie) @Nived_Nambiar  8 @maltie  2 (tie)   @PA-Noob  2 (tie)   @LukeMcG  2 (tie)   @tgut03  2 (tie)       Week 2 Results: Congratulations to the Week 2 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 2: Community MembersSolutionsSuper UsersSolutionsPower Automate  @Deenuji  12@ManishSolanki 19 @Anil_g  10 @NathanAlvares24  17 @VishnuReddy1997  6 @Expiscornovus  10 @Tjan  5 @Nived_Nambiar  10 @eetuRobo  3 @SudeepGhatakNZ 8     Week 3 Results: Congratulations to the Week 3 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 3:Community MembersSolutionsSuper UsersSolutionsPower Automate Deenuji32ManishSolanki55VishnuReddy199724NathanAlvares2444Anil_g22SudeepGhatakNZ40eetuRobo18Nived_Nambiar28Tjan8David_MA22   Week 4 Results: Congratulations to the Week 4 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 4:Community MembersSolutionsSuper UsersSolutionsPower Automate Deenuji11FLMike31Sayan11ManishSolanki16VishnuReddy199710creativeopinion14Akshansh-Sharma3SudeepGhatakNZ7claudiovc2CFernandes5 misc2Nived_Nambiar5 Usernametwice232rzaneti5 eetuRobo2   Anil_g2   SharonS2  

Check Out | 2024 Release Wave 2 Plans for Microsoft Dynamics 365 and Microsoft Power Platform

On July 16, 2024, we published the 2024 release wave 2 plans for Microsoft Dynamics 365 and Microsoft Power Platform. These plans are a compilation of the new capabilities planned to be released between October 2024 to March 2025. This release introduces a wealth of new features designed to enhance customer understanding and improve overall user experience, showcasing our dedication to driving digital transformation for our customers and partners.    The upcoming wave is centered around utilizing advanced AI and Microsoft Copilot technologies to enhance user productivity and streamline operations across diverse business applications. These enhancements include intelligent automation, AI-powered insights, and immersive user experiences that are designed to break down barriers between data, insights, and individuals. Watch a summary of the release highlights.    Discover the latest features that empower organizations to operate more efficiently and adaptively. From AI-driven sales insights and customer service enhancements to predictive analytics in supply chain management and autonomous financial processes, the new capabilities enable businesses to proactively address challenges and capitalize on opportunities.    

Updates to Transitions in the Power Platform Communities

We're embarking on a journey to enhance your experience by transitioning to a new community platform. Our team has been diligently working to create a fresh community site, leveraging the very Dynamics 365 and Power Platform tools our community advocates for.  We started this journey with transitioning Copilot Studio forums and blogs in June. The move marks the beginning of a new chapter, and we're eager for you to be a part of it. The rest of the Power Platform product sites will be moving over this summer.   Stay tuned for more updates as we get closer to the launch. We can't wait to welcome you to our new community space, designed with you in mind. Let's connect, learn, and grow together.   Here's to new beginnings and endless possibilities!   If you have any questions, observations or concerns throughout this process please go to https://aka.ms/PPCommSupport.   To stay up to date on the latest details of this migration and other important Community updates subscribe to our News and Announcements forums: Copilot Studio, Power Apps, Power Automate, Power Pages

Users online (1,034)