SAP BI Open Doc URL for retrieving pdf - pdf

In a reporting application we use, we were using BI 3.x API to produce Web reports. While doing the migration activity to 4.x version, we thought it is fine to go with open doc url rather than doing the report generation through API.
Many of the samples I have seen uses sIDType and iDocID parameters along with Token value to retrieve the document by constructing a URL like below http://server:port/BOE/OpenDocument/opendoc/openDocument.jsp?token=[LogonToken]&iDocID=[XXXX]&sIDType=CUID
But all those URLs get HTML page as response from BI 4.x SAP webservice, the java script in that HTML page does the task of retrieving the pdf file.
I am just wondering if there is any way I could retrieve the pdf report as response from the BI Webservice directly ? Please assist me on this. Thanks

You can if you use the REST SDK to retrieve the document, refresh it and then export it to PDF.
In short, these are the steps:
Logon: POST /biprws/logon/long
Get the doc's prompts (if any) GET /biprws/raylight/v1/documents/5690743/parameters
Pass the correct values for the prompts (if any) and refresh the document: PUT /biprws/raylight/v1/documents/5690743/parameters
Export as PDF GET /biprws/raylight/v1/documents/5690743
That last step requires you to pass Accept: application/pdf in your HTTP headers to get the PDF version.
Detailed information on the REST SDK and the different steps listed above is available on help.sap.com (look for the manual SAP BusinessObjects RESTful Web Service SDK User Guide for Web Intelligence and the BI Semantic Layer).

Use sOutputFormat=P to always retrieve the PDF of the report using open doc

Related

Power BI Report Server Paginated subscription in HTML 4.0 not showing images when saving to fileshare then embedding in email

In order to implement custom from addresses for paginated subscription, I am saving HTML 4.0 formatted report to a file share, then using OPENROWSET/BULK load in SQL plus sp_send_dbmail to send the mail. All worked great after adding the HTML 4.0 type and configured embedding. The only issue is that images do not show in the email.
In my research, all of the articles I am seeing are people rendering the reports via web service or code. SSRS -Image not rendering on HTML 4.0 Report(Unauthorization )
I am on Power BI report server and wondering if it would even be possible to get the images to render. The article mentions overriding the Deviceinfo StreamRoot, is this something I could do in my scenario without external code? Like via settings or anything else? I also saw a suggestion to just add a rectangle but that had no affect. Any ideas are appreciated.

How to open a PDF file that is present with API response in karate?

We have an API with just retrieves PDF from a Server. So when the API is hit, we get this as response.
In SOAP UI, there will be an attachment tab from which we can open the PDF file.
Is there a way to do this in Karate.?
We are trying to move towards Karate
Being able to preview a PDF is for manual testing and Karate is a test-automation tool. So it is not supported and my suggestion is that you don't worry about this and move on. In my opinion this is not a mandatory requirement for you.
What is important is to be able to do a comparison. If you are doing an exact binary match, this is already possible, refer: https://stackoverflow.com/a/55147777/143475
You may be able to embed a PDF into an HTML report, refer: https://github.com/karatelabs/karate/tree/v1.2.1.RC1/karate-demo/src/test/java/demo/embed
Finally if you really insist on "opening" the PDF somehow during a test, you can use the ability of Karate to call command-line programs. For example open foo.pdf works on a Mac. Refer this: https://stackoverflow.com/a/62911366/143475
EDIT: Karate has visual testing in version 1.3.0 onwards, perhaps you can give this a try: https://github.com/karatelabs/karate#compare-image

Uploading documents to a deal in hubspot

I want to implement the following use case and I'm not sure how to do this with the Hubspot API and I don't find any solution within the documentation.
I created a custom request flow which is creating contacts and deals within Hubspot programmatically via the API in the next step the user should upload documents related to his case and I would like to upload and associate these documents with the related deal. Could someone help me or point me to the right spot in the documentation on how such a scenario can be established with the API.
I got the following answer on the community board of Hubspot which worked for me:
You can upload a File (and set the permissions) using the CMS Files
API.
Once you've upload the file you can the associate the file to your
deal (using the File ID returned from the CMS Files API) with the
Create Engagement API.
Link: https://community.hubspot.com/t5/APIs-Integrations/Upload-File-to-a-contact/m-p/398156#M39358

Can I use Autodesk viewing API to render local DWG (2D) files to my browser?

The main goal of my project is to read Autocad(DWG) drawings from my local server to output them in a web browser (Chrome).
I managed to do it with the View and Data API in JAVA from Autocad with buckets, Key, etc. but when it comes to read offline files with this sample code from https://github.com/Developer-Autodesk/view-and-data-offline-sample, the DWG format did not work.
Do you have suggestion or have a clue to use the offline API with DWG files?
The Autodesk View & Data API (developer.autodesk.com) allows you to display a DWG on your website using a zero-client (WebGL) viewer. You need to upload the DWG to the Autodesk server, translate it, and either then download the translation to store on your local server (as demonstrated on extract.autodesk.io) or keep it on the Autodesk server. You might consider downloading it to be advantageous because then you don't need to implement the OAuth code on your server.
Buckets on the Autodesk server can only be accessed using the accesstoken created from your API keys, so it is secure in that only someone with your accesstoken and who knows the URN can access your translated file. However, for the viewer on your client-page to access the file, you need to provide it with your accesstoken. This does mean that someone could separately access your translated file by grabbing the accesstoken and URN from your webpage. But if you're serving up the model on a public page, then you presumably don't care about that.
There is a 'list' API available, but this is white-listed (available on request), so getting your accesstoken and urn for one file doesn't automatically give access to your other files - unless someone can guess the other filenames (or iterate to find them).
If you use a non-permanent bucket, then your original (untranslated file) becomes unavailable when the bucket expires, or you can explicitly delete the untranslated file (using the delete API).
Files translated via the View & Data API are not accessible via A360. They are stored in a separate area. (But I wouldn't be at all surprised if an A360 file access API became available in the near future :-).
Finally, unless you want to interact with the displayed file via the viewer's JavaScript API, you may prefer just to upload your files to A360, share the translated model, and then iframe embed them in your webpage.

How to created template through java code in docusign by REST API?

I wants to create template and generate template ID through Rest API call and send the documents with template to Docusign.
How to created template through java code in docusign.
You do not need a Template to send a PDF for signature. A DocuSign Template is a design-time object you can create in your account that is used to streamline the sending process when you send the same or similar documents frequently.
However, if you do not know the document ahead of time or you want to let the user select a document in real-time then Templates won't work, you can just send a signature request from a local PDF or document in that case.
The Request Signature on Document Quickstart in the DocuSign Developer Center shows you how to accomplish this in numerous languages (including Java) so I recommend you take a look.