Auto Attach Report .pdf to new source sheet row

Is it possible to take data from a Report and have it auto export as pdf/excel file and attach that new file to another sheets row?

Case: We have a User Access process built and once a month, the primary owners of each software need to review the user access as a pdf file. We were using the "Send as Attachment" feature in reports to send out monthly report to the primary owner as a pdf through email but our auditing process has changed and that pdf file needs to run through our internal ticketing system (built in Smartsheet) for approval/auditing. So as mentioned, is there a way to get that pdf from the report to be attached to a specific row so I can use automations to feed it into our ticketing system?

Thank you for any thoughts or ideas for this request. I'm hoping it won't need to be a manual process for my team.

-Michael

"Strive for Progress, not perfection."

Answers

  • Paul Newcome
    Paul Newcome ✭✭✭✭✭✭

    You will have to leverage the API for this. The premium add-on Bridge might be able to help, and other third party apps such as Zapier might be able to help as well.

  • MHalvey
    MHalvey ✭✭✭✭

    Hey@Paul Newcome- thank you for the ideas. I have very little knowledge into API builds. But we do have Bridge and I was reviewing some of the Smartsheet modules like"Get Report"however what is does and how it works is limited in this section. I can't find many details on Bridge other than discussions here and the few University training sections.

    I'll take a look at Zapier but I'm almost 100% sure my Directs wouldn't want to buy another software or manage another one either.

    Thank you again for taking the time,

    Michael

    "Strive for Progress, not perfection."

  • Paul Newcome
    Paul Newcome ✭✭✭✭✭✭

    @Kelly MooreDo you think Bridge might be able to do this? Basically we need to automatically export a Report on a regular basis and have that Excel or PDF attach to a specific row in a sheet.

  • Kelly Moore
    Kelly Moore ✭✭✭✭✭✭

    Hey@Paul Newcomeand@MHalvey

    I would love to say I was the one who worked this out when I had the same need, but all credit goes to the talented and gracious smartsheet product manager.

    Smartsheet does have info in it's API documentation. In the documentation there is a call tosend a report as a PDF.


    image.png


    Some notes on next steps:

    1. Replace the{reportId}bit in the URL field with an actual report ID.
    2. In the Header > Authorization section, afterBearerin the Value #1 field, you'll need to put your Smartsheet API token.
    3. In the Body field, adjust the verbiage to what you need - who to send to, email title, etc. Here's an example:
    4. {"sendTo" : [{"email": "[email protected]"}], "subject": "Testing Bridge Report Send As", "message": "Testing McTesterson", "ccMe": false, "format": "EXCEL", "formatDetails": {"paperSize": "A4"}}
    5. Check the box for Response Handler, that way the Run Log will show when the run is successful or if it gives an error.

    It works for both PDF and EXCEL format. From there, you'll just need to set your trigger in the trigger command section.


    Kelly

  • MHalvey
    MHalvey ✭✭✭✭

    Hello@Kelly Mooreand@Paul Newcome- Thank you for taking the time to follow up and share this information. I am very new to Bridge and it's abilities, let alone the API section you shared.

    So for my example and if I'm understanding correctly and using Bridge. I could create a Bridge trigger for "When a Row is Change" and have a checkbox check (sheet level automation), once a month causing the Bridge trigger to work.

    That would cause this Bridge trigger to Send report via email to a specific user.

    How does that attachment from the email then return to a specific row in a sheet? I believe I must of missed a step or is there another module from Bridge that's needed?

    image.png

    I appreciate the time you are putting into this and helping me with this problem.

    Thank you again,

    Michael

    "Strive for Progress, not perfection."

  • Kelly Moore
    Kelly Moore ✭✭✭✭✭✭

    Hey@MHalvey

    I missed that last step in your process of needing the attachment sent to another sheet. That's a problem that no one has seemed to crack yet, at least doing it automatically. To make iteasier to do manually,there is the Outlook Add-in that lets you view smartsheet directly from outlook so you don't have to jump from one app to another. But it's still manual. Here's more on theoutlook add-in.

    Because I dabble in Power Automate, coincidentally this week I've been working on a project involving bringing an document file link from a sharepoint list to smartsheet. My plan is to (1) automatically add a file to sharepoint (I email attachments into Teams all the time to have files created), (2) automatically pass the attachment-file-url-link to a sharepoint list, then (3) automatically add the list row as a new smartsheet row for the rest of my desired workflow to finish. If this goes as planned then the smartsheet row would contain a cell that has the link to the files.

    My workflow is different than yours in that we want the file, for other purposes, to ultimately reside in sharepoint. All I need for my smartsheet is the file link on the relevant row. If I can get this to work, would the link work for you?

    Kelly

  • MHalvey
    MHalvey ✭✭✭✭

    Hi@Kelly Moore

    再次感谢看着这对我更多。A file link might work as long as it's a new one each time. I cannot have the link get updated or the file in Sharepoint be updated. I'd need to keep each one for each month to show for auditing. I'd love to hear more about it if you end up getting it to work.

    I was trying to think something down that path if Outlook could auto download attachments off Rules to OneDrive and then use a pair of Data Shuttles to upload and offload the data to a sheet as an excel file. I couldn't find a way to take the attachment on the sheet level off and move it to a specific Row in the sheet. Bridge's "Get Attachment" or "Update Row" didn't seem to do the trick. I looked through the API 2.0 page and couldn't find anything that might work either.

    Again, I really appreciate the conversations and bouncing ideas off each other.

    Michael

    "Strive for Progress, not perfection."

  • Kelly Moore
    Kelly Moore ✭✭✭✭✭✭

    Hey@MHalvey

    Yay Michael, the link idea worked for me. The Bridge routine above could kick this off for you. It's the best work-around I've been able to find.

    In case you aren't familiar with Power Automate, depending on your access to Office365, you probably have access to Power Automate. This particular flow is a 'cloud flow'.


    image.png

    Here's the output

    image.png

    Let me know if you have any questions - or even better, other ideas to try. I also appreciate bouncing ideas of others.

    Kelly

I would suggest reaching out to your system admin or account manager. If your company has access to a trial of Data Shuttle, it will still need to be turned on for your specific account.<\/p>"}]}},"status":{"statusID":3,"name":"Accepted","state":"closed","recordType":"discussion","recordSubType":"question"},"bookmarked":false,"unread":false,"category":{"categoryID":343,"name":"Add Ons and Integrations","url":"https:\/\/community.smartsheet.com\/categories\/apps-and-integrations","allowedDiscussionTypes":["discussion","question"]},"reactions":[{"tagID":3,"urlcode":"Promote","name":"Promote","class":"Positive","hasReacted":false,"reactionValue":5,"count":0},{"tagID":5,"urlcode":"Insightful","name":"Insightful","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":11,"urlcode":"Up","name":"Vote Up","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":13,"urlcode":"Awesome","name":"Awesome","class":"Positive","hasReacted":false,"reactionValue":1,"count":0}],"tags":[{"tagID":474,"urlcode":"data-shuttle","name":"Data Shuttle"}]},{"discussionID":108931,"type":"question","name":"Attachments and Deleted Users","excerpt":"My company uses onedrive to upload attachments to sheets. If a user uploads attachments via onedrive and the employee is deleted or deactivated, will the files still be accessible?","snippet":"My company uses onedrive to upload attachments to sheets. If a user uploads attachments via onedrive and the employee is deleted or deactivated, will the files still be accessible?","categoryID":343,"dateInserted":"2023-08-14T18:13:59+00:00","dateUpdated":null,"dateLastComment":"2023-08-14T19:29:57+00:00","insertUserID":165068,"insertUser":{"userID":165068,"name":"imayes","url":"https:\/\/community.smartsheet.com\/profile\/imayes","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/defaultavatar\/nWRMFRX6I99I6.jpg","dateLastActive":"2023-08-14T20:04:57+00:00","banned":0,"punished":0,"private":false,"label":"✭"},"updateUserID":null,"lastUserID":45516,"lastUser":{"userID":45516,"name":"Paul Newcome","title":"","url":"https:\/\/community.smartsheet.com\/profile\/Paul%20Newcome","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/userpics\/082\/nQPUTVFKKWDJ2.jpg","dateLastActive":"2023-08-18T20:45:06+00:00","banned":0,"punished":0,"private":false,"label":"✭✭✭✭✭✭"},"pinned":false,"pinLocation":null,"closed":false,"sink":false,"countComments":1,"countViews":44,"score":null,"hot":3384078836,"url":"https:\/\/community.smartsheet.com\/discussion\/108931\/attachments-and-deleted-users","canonicalUrl":"https:\/\/community.smartsheet.com\/discussion\/108931\/attachments-and-deleted-users","format":"Rich","tagIDs":[268,549],"lastPost":{"discussionID":108931,"commentID":390560,"name":"Re: Attachments and Deleted Users","url":"https:\/\/community.smartsheet.com\/discussion\/comment\/390560#Comment_390560","dateInserted":"2023-08-14T19:29:57+00:00","insertUserID":45516,"insertUser":{"userID":45516,"name":"Paul Newcome","title":"","url":"https:\/\/community.smartsheet.com\/profile\/Paul%20Newcome","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/userpics\/082\/nQPUTVFKKWDJ2.jpg","dateLastActive":"2023-08-18T20:45:06+00:00","banned":0,"punished":0,"private":false,"label":"✭✭✭✭✭✭"}},"breadcrumbs":[{"name":"Home","url":"https:\/\/community.smartsheet.com\/"},{"name":"Get Help","url":"https:\/\/community.smartsheet.com\/categories\/get-help"},{"name":"Add Ons and Integrations","url":"https:\/\/community.smartsheet.com\/categories\/apps-and-integrations"}],"groupID":null,"statusID":3,"attributes":{"question":{"status":"accepted","dateAccepted":"2023-08-14T19:37:58+00:00","dateAnswered":"2023-08-14T19:29:57+00:00","acceptedAnswers":[{"commentID":390560,"body":"

As long as the document is still available in OneDrive, the document should still be available in Smartsheet. Think of it as a URL to a website. As long as the website is still up, it doesn't matter who the owner is.<\/p>"}]}},"status":{"statusID":3,"name":"Accepted","state":"closed","recordType":"discussion","recordSubType":"question"},"bookmarked":false,"unread":false,"category":{"categoryID":343,"name":"Add Ons and Integrations","url":"https:\/\/community.smartsheet.com\/categories\/apps-and-integrations","allowedDiscussionTypes":["discussion","question"]},"reactions":[{"tagID":3,"urlcode":"Promote","name":"Promote","class":"Positive","hasReacted":false,"reactionValue":5,"count":0},{"tagID":5,"urlcode":"Insightful","name":"Insightful","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":11,"urlcode":"Up","name":"Vote Up","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":13,"urlcode":"Awesome","name":"Awesome","class":"Positive","hasReacted":false,"reactionValue":1,"count":0}],"tags":[{"tagID":268,"urlcode":"Attachments","name":"Attachments"},{"tagID":549,"urlcode":"account-and-user-management","name":"Account and User Management"}]},{"discussionID":104380,"type":"question","name":"Questions about Bridge from a potential newbie","excerpt":"We are considering upgrading to Advance, and I have questions about Bridge capabilities: Our project blueprint includes multiple reports that pull entries from master logs based on the job number. This means that our admins have to add the job number to every single new report filter when they set up a project. Can Bridge…","snippet":"We are considering upgrading to Advance, and I have questions about Bridge capabilities: Our project blueprint includes multiple reports that pull entries from master logs based…","categoryID":343,"dateInserted":"2023-04-24T16:40:19+00:00","dateUpdated":"2023-04-24T17:41:23+00:00","dateLastComment":"2023-08-14T17:16:34+00:00","insertUserID":126351,"insertUser":{"userID":126351,"name":"Julie Fortney","title":"","url":"https:\/\/community.smartsheet.com\/profile\/Julie%20Fortney","photoUrl":"https:\/\/aws.smartsheet.com\/storageProxy\/image\/images\/u!1!hZje4WgcMyQ!en9eZ1QFHfo!MFtz_rjuwYj","dateLastActive":"2023-08-18T21:46:54+00:00","banned":0,"punished":0,"private":false,"label":"Overachievers"},"updateUserID":126351,"lastUserID":140451,"lastUser":{"userID":140451,"name":"Brian_Richardson","title":"","url":"https:\/\/community.smartsheet.com\/profile\/Brian_Richardson","photoUrl":"https:\/\/lh3.googleusercontent.com\/a\/AAcHTtdoak7dmkycj4YXWA0KDZnC6qO3ZJMvHnAxo52tsjtiGh4=s96-c","dateLastActive":"2023-08-19T15:11:48+00:00","banned":0,"punished":0,"private":false,"label":"Overachievers"},"pinned":false,"pinLocation":null,"closed":false,"sink":false,"countComments":7,"countViews":316,"score":null,"hot":3374392013,"url":"https:\/\/community.smartsheet.com\/discussion\/104380\/questions-about-bridge-from-a-potential-newbie","canonicalUrl":"https:\/\/community.smartsheet.com\/discussion\/104380\/questions-about-bridge-from-a-potential-newbie","format":"Rich","tagIDs":[369],"lastPost":{"discussionID":104380,"commentID":390521,"name":"Re: Questions about Bridge from a potential newbie","url":"https:\/\/community.smartsheet.com\/discussion\/comment\/390521#Comment_390521","dateInserted":"2023-08-14T17:16:34+00:00","insertUserID":140451,"insertUser":{"userID":140451,"name":"Brian_Richardson","title":"","url":"https:\/\/community.smartsheet.com\/profile\/Brian_Richardson","photoUrl":"https:\/\/lh3.googleusercontent.com\/a\/AAcHTtdoak7dmkycj4YXWA0KDZnC6qO3ZJMvHnAxo52tsjtiGh4=s96-c","dateLastActive":"2023-08-19T15:11:48+00:00","banned":0,"punished":0,"private":false,"label":"Overachievers"}},"breadcrumbs":[{"name":"Home","url":"https:\/\/community.smartsheet.com\/"},{"name":"Get Help","url":"https:\/\/community.smartsheet.com\/categories\/get-help"},{"name":"Add Ons and Integrations","url":"https:\/\/community.smartsheet.com\/categories\/apps-and-integrations"}],"groupID":null,"statusID":3,"attributes":{"question":{"status":"accepted","dateAccepted":"2023-04-26T14:21:28+00:00","dateAnswered":"2023-04-26T02:30:08+00:00","acceptedAnswers":[{"commentID":373252,"body":"

Hey @Julie Fortney<\/a> <\/p>

I'll answer what I can and shout out to @Brian_Richardson<\/a> for back up. <\/p>

#1 Report Filters- To my knowledge there isn't a direct Report Filter update however I wondered if the column was a dropdown list - if so, Bridge can update dropdown lists and if the filter was set to select all it made me wonder if the filter would pick it up new selections. (Datashuttle also updates dropdown lists if this method works)<\/p>

#2 I've had problems with a slow sheet erroring out in Bridge. The sheet was massive and Bridge would time-out. Bridge did not help this sheet (it might have been too large for anything to help)<\/p>

#3 -I don't have any experience with Control Center, so sorry, I can't answer those questions<\/p>

My fav Bridge solutions?<\/p>

-Capturing Approver Names in approval workflows<\/p>

-Adding rows - same sheet, different sheets, Child rows to Parents, On a weekly cadence, Adding New rows of acquired data to a status update sheet which feeds into a dashboard report<\/p>

-Translating Employee Ideas from their native tongue to English<\/p>

-Checking FedEx Tracking Status on a sheet's worth of shipments<\/p>

I hope this helps<\/p>

Kelly<\/p>"},{"commentID":373322,"body":"

Hey @Julie Fortney<\/a> !<\/p>

  1. In general you cannot update reports with bridge or the API, you can only get report information and details. So unless you are able to come up with a different solution you may be out of luck. Although, if this is a control center program, you may be able to use \"Dynamic Reports\" which adds new sheets to reports every time a project is provisioned (and removes as projects are archived). <\/li>
  2. Maybe using JavaScript in bridge would help, hard to say. <\/li>
  3. Unfortunately not.. You can not programmatically retrieve a form link (Big functionality gap in my opinion). We have begged Smartsheet to dynamically update forms with control center. Also you can not update the contents of widgets in dashboards with bridge or the api.<\/li>
  4. You could definitely set up a solution to achieve this. It would involve using a summary sheet in your blueprint where the link to your template sheets is profile data on your summary sheet. From there you can get the sheet id for each project in bridge, loop through them and make updates.<\/li><\/ol>"},{"commentID":373373,"body":"

    @Kelly Moore<\/a> thanks for the shout out :-) but I'm not sure I can help more than what's already been posted. <\/p>

    @Julie Fortney<\/a> in general Bridge is an API tool. You can setup multi-branched workflows in Bridge with pre-set API calls and utilities. You can also do custom HTTP calls to any API that you have access to in the cloud. So anything you can do with API calls you can do with Bridge. It also, importantly, allows you to run Javascript code using the results of your API calls, and to trigger workflows on changes to Smartsheet content or on any other webhook that you can receive from other tools.<\/p>

    There's a fair amount of Smartsheet API methods that are prebuilt into Bridge, but not all of them. So if you're looking at the Bridge documentation for Smartsheet<\/a> integrations and not finding what you need, you can also look at the Smartsheet API documentation<\/a> to see if there's something there to help you out. If you find an API method to use that's not already pre-built as an integration, then you can use the Custom HTTP Call step to directly call the API. You just have to provide the Smartsheet API with an API token, which you can assign to yourself in your Personal Settings.<\/p>

    It looks like your specific questions were answered pretty comprehensively by Kelly and Samuel but here's my 2c:<\/p>

    1. Because you cannot adjust report filters using the Smartsheet API, you cannot do this with Bridge. Here's the Reports methods<\/a>. You might want to consider a workaround for the process of having reports hand-updated with new job numbers. Perhaps leverage a creation date or flag new items with a checkbox that's cleared once the conditions are met that would cause the project to fall back off the report? You can also explore the \"contact has any of current user\" filter to pick up specific jobs for the viewer?<\/li>
    2. You could definitely use Bridge to read one sheet on a schedule or trigger, perform calculations using Javascript or the included utilities, and post the results. It may be faster and more stable than a huge number of formulas in Smartsheet, but I'm not 100% sure it would be. I would probably first explore using Data Mesh, which is setup to do this in a much more friendly way. If you don't already use Data Mesh, it's basically a batch index\/match tool. <\/li>
    3. As Samuel said, there's no API for updating widgets on a dashboard or retrieving a form URL. Also, I tested copying a dashboard and sheet in a common folder, where the form link was embedded in the dash, and unfortunately it does not update the form link. Seems like a gap and would be a good enhancement request. You could potentially work around this by having a common sheet with the form to capture entries, have a dropdown in that form for the project name that you can keep updated with Bridge, do a lookup to the sheet ID that the entry should go to on a sheet that Bridge maintains, and then copy the form responses into the individual project sheets using Bridge. I know that's pretty roundabout.<\/li>
    4. As Samuel and Kelly said, you can push dropdown updates through Bridge, it works better than Data Shuttle. You wouldn't need to maintain a separate lookup sheet though, if you create a report that contains the dropdown columns across your various created sheets, and then read that report with Bridge, the return from the API includes the source sheet ID and column ID for each report row. You can then leverage that to point Bridge at the right columns across your sheets without having to maintain a separate lookup.<\/li><\/ol>

      At Iron Mountain we use Bridge for a variety of use cases, here's the most effective ones:<\/p>