web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Is that possible to pa...
Power Apps
Unanswered

Is that possible to patch attachments to sharepoint documents without with flow?

(0) ShareShare
ReportReport
Posted on by 7

I have a business requirement to upload files to sharepoint documents directly using the native attachment control, I would like to ask if there is such a method that can be used directly.

Categories:
I have the same question (0)
  • RusselThomas Profile Picture
    4,014 on at

    Hi @nico888 ,

    I think even with the advice provided here, I believe you still use the attachment 'control' inside a form to select the attachments, even if you don't use the SubmitForm() function to save them.
    Are you still wanting to use the control, or somehow patch content directly?

    There might be a better way with Flow - can you explain your scenario a little more?

    Kind regards,

    RT

  • WarrenBelz Profile Picture
    153,034 Most Valuable Professional on at

    Hi @nico888 ,

    The only way to Patch Attachments in Power Apps is with FormName.Updates. You can of course use SubmitForm(). If by Upload, you are referring to storing in a SharePoint Library, then you cannot do this without Power Automate.

     

    Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider giving it Thumbs Up.

    Visit my blog Practical Power Apps

  • nico888 Profile Picture
    7 on at

    I need to upload the attachment to sharepoint documents library but not sharepoint list ,and without use flow

  • RusselThomas Profile Picture
    4,014 on at

    Hi @nico888 ,

    The Power Apps SharePoint connector does not cater for creating document content in a library - you can browse document libraries in Power Apps by connecting to a library as a SharePoint list data source, but this is simply because the frontend to every document library is actually a special kind of list - so all you're actually seeing in Power Apps are document properties.

    The actual document content is stored in the backend and is not directly accessible through the connector, so you can neither download nor upload document content using this connector.

     

    As @WarrenBelz noted, the easiest way you can achieve this is to use the SharePoint connector available in Power Automate.  You can use the "Add picture" or Attachment control to get document contents from a device into Power Apps - however you need to pass that content data to Power Automate in order save it to a document library using the Create File method.

     

    At the far end of the solution spectrum, I guess you could possibly create your own custom connector for SharePoint Online and include a method that allows you to post document content into the SPO REST API - you could connect this connector to your Power App directly and use it - but then you're basically doing a tonne of work just to avoid something that would take less than two minutes in Power Automate, which is kind of like saying "I don't want to walk to the bus stop to catch the bus, so I think I'll build a car instead..."

     

    Kind regards,

    RT

  • nico888 Profile Picture
    7 on at

    ok,thanks for your answer !

  • nico888 Profile Picture
    7 on at

    Thanks for your answer!

  • HEATFreight Profile Picture
    1,024 on at

    How can I do this directly in a canvas app without using Power Automate? Is that possible?

    I want to copy the attachments from an item in list A to an existing item in a totally different list, call it list B. It does not seem like PowerApps allows for programmatically copying attachments between items in different SharePoint lists. Can someone confirm if this is true?

    See my response in this other thread.

    EDIT: 

    Aha! I figured it out. If you need to patch attachments from an item in one SharePoint list to an item in a totally different SharePoint list, you must first remove the Attachments.Id parameter from the collection!

    I used the following code:

     

    ClearCollect(colAttachments,AddColumns(DropColumns(colAttachments,"Id"),"Id",""));
    ResetForm(AttachmentsForm);
    Patch(SharePointList,LookUp(SharePointList,ID=ThisItem.ID),AttachmentsForm.Updates);

     

  • Shazam007 Profile Picture
    on at

    Hi I came across your post, I raised a similar problem, then managed to find a workaround 

     

    see my post link Solved: Re: Flow versus Office365GroupsHttpRequest Connect... - Power Platform Community (microsoft.com)

     

    I managed to find a solution for the problem (Is it possible to use office365groups.httprequest connector with a Patch or Collection, or maybe a combination , within a Power Apps environment to simultaneously add metadata from sharepoint list to sharepoint document library ? ), see code highlighted in red.

    ForAll(DataCardValue52.Attachments,Office365Groups.HttpRequest(" https://graph.microsoft.com/v1.0/sites/..../root:/"&ThisRecord.Name&":/content","PUT",ThisRecord.Value));
    Refresh(DocLibAB);
    ClearCollect(collastdoclib,Last(DocLibAB));
    ForAll(collastdoclib,Patch(DocLibAB,LookUp(DocLibAB,ID=collastdoclib[@ID]),{ProdId2Num:varproditem2.ID}))
    *Note*
    ProdId2Num is column name within SP Doc lib AB where the value from the SP list A will land
    varproditem2.ID is the prod SP LIST ID value from SP list A. This variable was initiated and set when clicked a button within a gallery list item of SP list A. The Button had following on the onselect; Set(varproditem2,thisitem);Navigate(newuploaddoclib)

    **More on the Office365Groups.HttpRequest(" https://graph.microsoft.com/v1.0/sites/..../root:/" - check out first Reza Dorani video  : https://youtu.be/n3mhe88BI34 to help to get a better understanding of the first FORALL part

     

    Step by Steps:
    1.After the first FOR ALL I added a new line; REFERESH of the doc library
    2.COLLECTION of that last or latest doclib record just added
    3.then a new FORALL to MATCH ID's of Collection with Last Doc Lib AB record ID
    4.PATCH the variable containing the Sharepoint list ID value to the Doc Lib AB Column (this is the relational table part wanted to achieve)

    After a few test runs Worked... No more flow errors with my flow....Happy Days

    Thanks 

    Shahzaad

     

     

  • HEATFreight Profile Picture
    1,024 on at

    That looks complicated, but your use case also seems different than mine.

    My solution for the use case of wanting to attach files from SharePoint ListA to SharePoint ListB is simple:

    If you need to patch attachments from an item in one SharePoint list to an item in a totally different SharePoint list, you must first remove the Attachments.Id parameter from the collection!

    I used the following code:

     

    ClearCollect(colAttachments,AddColumns(DropColumns(colAttachments,"Id"),"Id",""));
    ResetForm(AttachmentsForm);
    Patch(SharePointList,LookUp(SharePointList,ID=ThisItem.ID),AttachmentsForm.Updates);

     

  • Shazam007 Profile Picture
    on at

    Correct. 

     

    My case is different. I needed to attach a file from SharePoint ListA from within a Gallery of SP ListA, send attachment to SharePoint DocLib A + pull related data (values e.g. SP List ID value) about the attachment (automatically) 

     

    I was using a flow then changed to this option ... 1 less flow to run 

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 796 Most Valuable Professional

#2
Michael E. Gernaey Profile Picture

Michael E. Gernaey 327 Super User 2025 Season 2

#3
Power Platform 1919 Profile Picture

Power Platform 1919 268

Last 30 days Overall leaderboard