found above topic because i have the same issue.
Is there any option to passthrough sas-token through a parameter in the task?
Security wise it's not an option to store the token in a table or hardcoded in the report
found above topic because i have the same issue.
Is there any option to passthrough sas-token through a parameter in the task?
Security wise it's not an option to store the token in a table or hardcoded in the report
Best answer by Mark Jongeling
Hi Theo,
Without the SAS token, it could only work if the URL is freely accessible by anyone. But you could opt for the Base64 solution I mentioned earlier.
Prior to generating the report, you can use the Read file process action to obtain the image data in varbinary format. Once you have that data, you can encode it to a Base64 string stored in a variable of datatype varchar. Then link that variable, that holds the Base64, to a Report parameter with the same datatype. Mirror the existence of that report parameter in your DevExpress report. Use the Report parameter like mentioned here: Emails and (devexpress) reports with "embedded" images | Thinkwise Community
That eliminates the need for a SAS token as the authentication is done through Indicium itself.
Example how to encode the varbinary file data in Base64:
declare @binarydata varbinary(max) = 0x5468696e6b77697365 -- example binary data ('Thinkwise' as ascii bytes)
-- Encode to base64
select cast('' as xml).value('xs:base64Binary(sql:variable("@binarydata"))', 'VARCHAR(max)')
Read file: output file data into @binarydata → Using the above code to fill a new varchar variable → Link that variable to a Report parameter.
That Report parameter can then be bound/mirrored in the DevExpress report. Place a PictureBox in the report, use the parameter as the image source like "?base64string” where base64string is the parameter name in my case. When you preview your report, the image should be visible.
Hope this helps!
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.