cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
jay312
Helper V
Helper V

Create a duplicate of a file in a Teams site?

Hello!

 

I wanted to check if the following is easily technically possible to make things more efficient :).

 

  1. I have a Teams site, with a sharepoint site behind it
  2. I have a powerpoint called e.g. 20.04.20 Test 1 for Monday
  3. On e.g. Tuesday I want to create a copy of this file and change the name to e.g. 21.04.20 xxxx 
  4. The flow should then move the 20.04.20 Test 1 for Monday into a folder called 'Archive' 

 

Is there a technical way to set this up that is easy?

Ideal case:

  • Flow triggered by a button or a schedule
  • Flow creates a copy/duplicate of the last file that is in this folder/site location
  • Flow could rename the copy to something else (Date at start of name would be best case)
  • Flow then moves the first file to an 'Archive' Folder
  • Now we only have one file in the folder, this would be the duplicate file that flow has renamed.

Please see the pics for a basic set up of the Teams site. Does this sound feasible?

 

Currently I:

  • Copy and paste the file I want to use as a duplicate
  • Rename the duplicate file to e.g. 21.04.20
  • Move the older duplicate file e.g. 20.04.20 to Archive file

I want to make changes to the latest file, and use the latest file as a template for the next day the powerpoint is needed

Thank you!

image.png

1 ACCEPTED SOLUTION

Accepted Solutions
efialttes
Super User
Super User

Hi!

-REcurrence trigger

-'Get files (properties only)' on the source library, assign the following ODATA expression as 'Order by' input...

Modified desc

 ...and assign value 1 to 'Top count' input, so you ensure to get the newest file

 

-Now, you can get the file ID by means of the following expression...

first(body('Get_files_(properties_only)')?['Value'])?['ID']

...and the file identifier by means of the following expression

first(body('Get_files_(properties_only)')?['Value'])?['{Identifier}']

-In order to create a copy and rename it, my suggestion is to use 'Create file'. You will need first to get current file content by means of 'Get file content' or 'Get file content using path'

-In order to move source file, you can use 'Move file'

 

More info on Sharepoint connector and its action blocks here

https://docs.microsoft.com/en-us/connectors/sharepointonline/#actions

 

Hope this helps

 



Each time you click on any of our inspiring answers 'Thumb up' icon...
...an ewok scapes from the stormtroopers.

Be grateful, Thumbs up! Save the Galaxy for free!


Escribo sobre Power Automate en:
https://medium.com/anyone-can-automate/

Proud to be a Flownaut!



View solution in original post

9 REPLIES 9
efialttes
Super User
Super User

Hi!

-REcurrence trigger

-'Get files (properties only)' on the source library, assign the following ODATA expression as 'Order by' input...

Modified desc

 ...and assign value 1 to 'Top count' input, so you ensure to get the newest file

 

-Now, you can get the file ID by means of the following expression...

first(body('Get_files_(properties_only)')?['Value'])?['ID']

...and the file identifier by means of the following expression

first(body('Get_files_(properties_only)')?['Value'])?['{Identifier}']

-In order to create a copy and rename it, my suggestion is to use 'Create file'. You will need first to get current file content by means of 'Get file content' or 'Get file content using path'

-In order to move source file, you can use 'Move file'

 

More info on Sharepoint connector and its action blocks here

https://docs.microsoft.com/en-us/connectors/sharepointonline/#actions

 

Hope this helps

 



Each time you click on any of our inspiring answers 'Thumb up' icon...
...an ewok scapes from the stormtroopers.

Be grateful, Thumbs up! Save the Galaxy for free!


Escribo sobre Power Automate en:
https://medium.com/anyone-can-automate/

Proud to be a Flownaut!



View solution in original post

Hello @efialttes 

 

Thank you for reply!

 

Is there any chance you could please add some pictures?

 

My flow at the moment is a little confusing and looks like below..image.png

Hi!

IN your 'Get file content'... did you used the expression I suggested to assign the File identifier?

If you are not familiar with expressions, please follow these steps

https://flow.microsoft.com/es-es/blog/use-expressions-in-actions/

 

Now, let's discuss "Create file" inputs:

-you should assign to 'Create file' 'File content' input the corresponding output from 'Get file Content'

-you should assign to 'Create file''File name' not only the file name, also the extension (myimage.jpg, myexcelsheet.xlsx)

Sorry I am not with my laptop... please take a try and let us know your progress

THanx!

 

 



Each time you click on any of our inspiring answers 'Thumb up' icon...
...an ewok scapes from the stormtroopers.

Be grateful, Thumbs up! Save the Galaxy for free!


Escribo sobre Power Automate en:
https://medium.com/anyone-can-automate/

Proud to be a Flownaut!



Hello @efialttes 

 

I put your first expression, in the File Identified box first(body('Get_files_(properties_only)')?['value'])?['ID']

 

I am not sure where to use the formula below. Also is Order By = to 'Modified desc' ?  on Get files properties?
 
first(body('Get_files_(properties_only)')?['Value'])?['{Identifier}']

 

For File Name I have put Test and then File name with extension dynamic content.

 

Thank you! Pic below 

image.pngimage.png

 

Hi again!

First of all, let me apologize for not explaining me better:

THe File Identifier you need to add in 'Get file content' shall be derived from the following expression:

first(body('Get_files_(properties_only)')?['Value'])?['{Identifier}']

 

Now, you got the 'File Name' dynamic content from 'Get files (properties only), right? This explains an 'Apply to Each' that is shown in your current flow design

 

Taking into account we are limiting the 'Get files (properties only)' to provide max 1 result ('Top count' is set to one) this approach you took is probably easier than the one I suggested with expressions.

 

Probably it's not the best designed flow, but it should work now

Hope this helps

 

 



Each time you click on any of our inspiring answers 'Thumb up' icon...
...an ewok scapes from the stormtroopers.

Be grateful, Thumbs up! Save the Galaxy for free!


Escribo sobre Power Automate en:
https://medium.com/anyone-can-automate/

Proud to be a Flownaut!



Hello @efialttes 

 

Thanks for reply.

 

Does this flow look right? I have replace File Identifier with the formula you said (

first(body('Get_files_(properties_only)')?['value'])?['{Identifier}']

 

Under File name i put test and then file name with extension? and under File content is file content

 

I am not sure if this is right / limited flow knowledge but will test it now.. 

 

image.pngimage.png

 

Hi!

Looks fine. Just try it and let us know your progress

Thanx!



Each time you click on any of our inspiring answers 'Thumb up' icon...
...an ewok scapes from the stormtroopers.

Be grateful, Thumbs up! Save the Galaxy for free!


Escribo sobre Power Automate en:
https://medium.com/anyone-can-automate/

Proud to be a Flownaut!



Hello @efialttes 

 

Thank you! It worked fine!

 

Do you know what sort of formula or expression I can add to the File Name to include todays date?

 

Also for File Name do I even need File name with extension dynamic content on it?

 

Could I just put formula for todays date + test as the name and get rid of file name with extension?

 

And to move the file, Please could you see my screenshot? How do I reference the original file to be moved? I am not sure what to type under file to move. Each time the file is copied the original should be moved so this seems to be dynamic?

 

 

HURRAY! IT WORKS!

Congrats, man!

 

 

Next steps? My humble suggestion is:

1.-Mark this topic as "Solved" by clicking "Accept as a solution". THis way others with the same problem can find a solution faster. Please also note you can even select several responses as solution, even from different community members!

 

Flow_AcceptSolution.png

 

2.- Open a new thread for your next question, following the policy: 'One Question, one post'. This way you have more chances to attrack attention for superusers that are seeking for unanswered topics.

3.- (OPTIONAL) Click on 'Thumbs up' in any of my answers in this current thread if you found them valuable... or even in all of them 😉

 
 

Flow_thumbsUp.png

 

Even though this 3rd step is OPTIONAL, please remember it is the cheapest, easiest way to say thanks to somebody that simply tried to help, specially on weekends. And just between you and me, everytime an inspiring answer receive a kudo in this community, an ewok escapes from The Emperor menace 

 

Thanx for your help making this community great!

 



Each time you click on any of our inspiring answers 'Thumb up' icon...
...an ewok scapes from the stormtroopers.

Be grateful, Thumbs up! Save the Galaxy for free!


Escribo sobre Power Automate en:
https://medium.com/anyone-can-automate/

Proud to be a Flownaut!



Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Welcome Super Users.jpg

Super User Season 2

Congratulations, the new Super User Season 2 for 2021 has started!

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Top Solution Authors
Users online (2,935)