Skip to Content
Technical Articles
Author's profile photo Jacky Liu

Configure the SAP BTP Cloud Foundry Environment Subaccount with SAP Forms Service by Adobe and Test with Postman

 Purpose

This section shows how to configure the SAP BTP, Cloud Foundry environment subaccount, and the SAP Forms service by Adobe. This service API will be tested with with  postman

Prerequisites

You have a subaccount on SAP BTP, Cloud Foundry environment and the subaccount has entitlement of service Forms service by Adobe .

 

Procedure

Note : Please use Microsoft Edge Browser to do the configuration .

1, Create instance for ADS subscription

Enter BTP sub-account and create instance for Form Service by Adobe

 

2,Enter BTP sub-account and create instance for Forms Service by Adobe API

 

 

3,Create key for Forms Service by Adobe API instance .

 

The ads rest api document URL: URI + /swagger-ui.html

https://adsrestapi-formsprocessing.cfapps.eu10.hana.ondemand.com/swagger-ui.html

4,Assing user Role Collections

5.Upload template file into Forms Service by Adobe

a .Copy address of Forms Service by Adobe

b. The form template store URL is : a. url + /adsrestapi/ui.html

https://apjcoe-x66183k9-ads.formsprocessing.cfapps.eu10.hana.ondemand.com/adsrestapi/ui.html

c. create form in ADS

 

d.download xdp temlate file from github in the following linkage :

https://github.com/SAP-samples/s4hana-ext-cloud-label-printing/blob/main/PrintLabel.xdp

e. Upload the downloaded XDP template file into ADS

Now the xdp template has been created in ADS

6, Test BTP form service by abobe rest api to render adobe form

a, use adobe live designer to open the xdp file from the following linkage:

s4hana-ext-cloud-label-printing/PrintLabel.xdp at main · SAP-samples/s4hana-ext-cloud-label-printing · GitHub

 

b, build  printing content data for render rest api call

use notepad open the preview data

paste the body in the following website to encode it to BASE64

Base64 Encode and Decode – Online

c, build body for rest API call according to swagger ui  in 2 :

d, test in postman

Method : Post

URL: From 3  URI + Swagger render api path

Authorization Type : OAuth 2.0

Authorization token url , client key client secret are from 3  instance key .

parameters :

templateSource:  storageName

TraceLevel, 2

body is from c

 

response:

 

The End

Best regards!

Jacky Liu

 

 

 

 

 

 

 

Assigned Tags

      35 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Murali Shanmugham
      Murali Shanmugham

      Thanks for sharing. We no longer required to create a BTP Neo subaccount just for using Forms service by Adobe 🙂

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Shanmugham,

       

      This blog is base on BTP cloud foundry Forms service by Adobe .

       

      Author's profile photo Ramon Lee
      Ramon Lee

      Hi Jack,

      Awesome blog, but i got stuck after RoleCollections adobeservice have been assigned to myself.

      When attempting to access the Adobe Form Process i got a forbidden issue.

      https://eu-au-hack2build-fhqf9s3k-ads.formsprocessing.cfapps.eu10.hana.ondemand.com/adsrestapi/ui.html

       

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi,Ramon,

       

      After assigning role , you'd better waite some time or  clean  browser's cache and login again . Then you can try again .

       

      Best regards!

      Jacky Liu

       

      Author's profile photo Henry Banks
      Henry Banks

      Hi Murali Shanmugham Hi Jacky Liu

      Please could you help me with a customer question in relation to how the SAP Forms Service by Adobe is charged? (CPEA consumption model)

      When using the Discovery Centre calculator, I can see this is charged in blocks of x forms per month but I would like to understand if this charge would apply for each sub-account that the service is activated under?

      Regards, H

      p.s. Ryan Gosnold

      Author's profile photo Henry Banks
      Henry Banks

      Replying to my own question ^^ as I got confirmation from the product manager who looks after this service:

      << An important point: The licensable entity is not forms, but ‘form requests’. It’s one ‘form request’ per 5 pages.

      A customer purchases a global account and then activates Forms by Adobe for each subaccount. E.g. create and assign one subaccount for Prod, Test and Dev if they like.  

      However, this does not change anything with respect to the charge, because the charging for this forms service is based at the global account level. >> 

      Hope this helps.

      Regards, H

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Henry,

      Thanks for the sharing this information ! I think this explanation from PM team explain the cost estimate in discover center in the following linkage .

      ads cost estimate

       

      Best Regards!

      Jacky Liu

      Author's profile photo Tom Franckaert
      Tom Franckaert

      Hello Jacky,

      Very nice blog but when I try to test it (Get new access token) with postman I run into an issue.

      The following 2 popups are displayed and no access token is returned.

      Am I using the wrong grant type because when I use "Authorization code" I'm also obliged to fill in field "Auth URL"

      Any help is highly appreciated.

      Tom.

      Author's profile photo Tom Franckaert
      Tom Franckaert

      Solved it myself.

      Still, nice blog. 😉

      Author's profile photo Ashutosh Kumar Sinha
      Ashutosh Kumar Sinha

      Hello Tom,

      I am having same issue that you faced. Could you please help me with your solution to resolve this.

      Thank you.

       

      Ashutosh 

      Author's profile photo Rohit Patil
      Rohit Patil

      hello sir,

      if u  struggle to get access token  add    this line last      " /oauth/token"    in

      "Access token URL"

      Author's profile photo Declan Moore
      Declan Moore

      Hi,

       

      I'm having some trouble with the final part of this guide. I'm up to 6c and have the body of the request created in Notepad++ including the encoded xml. Beyond that I am not sure what to do next.

      I have installed Postman (which I have not used before) and it is unclear how I test the API from Swagger UI in Postman? I seem to be able to import the API ref from API Business Accelerator Hub or directly from the URL and can then see a collection with all of the various methods for each API but I'm not sure if this is right - and I'm unsure how to get my API call page to look like your's in 6d.

      Could you provide some further clarity to how you get from 6c to 6d?

       

      Thank you

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Moor ,

      6c is just for use to understand  who define the path , parameter , and body in postman . You can test in 6d directly .

       

      The following is the url and body I used in postman. Replace the bold part.

      Replace the hostanme from your adobe service service key . Replace the xdpTemplate and xmlData in body .

       

      https://adsrestapi-formsprocessing.cfapps.eu10.hana.ondemand.com/v1/adsRender/pdf?templateSource=storageName

       

      {
      "embedFont": 0,
      "formLocale": "en_US",
      "formType": "print",
      "taggedPdf": 1,
      "xdpTemplate": "labelprint/PrintLabel",
      "xmlData": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGZvcm0xPgogICA8TGFiZWxGb3JtPgogICAgICA8RGVsaXZlcnlJZD44MDAwMzExPC9EZWxpdmVyeUlkPgogICAgICA8UG9zaXRpb24+MDAxMDwvUG9zaXRpb24+CiAgICAgIDxNYXRlcmlhbE5vPk0xMDAwMDE8L01hdGVyaWFsTm8+CiAgICAgIDxRdWFudGl0eT4xMjM0NTYuMzIxPC9RdWFudGl0eT4KICAgICAgPFBhY2thZ2U+UDExMTExMTwvUGFja2FnZT4KICAgICAgPFFSQ29kZT4wMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTwvUVJDb2RlPgogICA8L0xhYmVsRm9ybT4KICAgPExhYmVsRm9ybT4KICAgICAgPERlbGl2ZXJ5SWQ+ODAwMDMxMjwvRGVsaXZlcnlJZD4KICAgICAgPFBvc2l0aW9uPjAwMTA8L1Bvc2l0aW9uPgogICAgICA8TWF0ZXJpYWxObz5NMTAwMDAyPC9NYXRlcmlhbE5vPgogICAgICA8UXVhbnRpdHk+MTIzNDU4LjMyMTwvUXVhbnRpdHk+CiAgICAgIDxQYWNrYWdlPlAxMTExMTI8L1BhY2thZ2U+CiAgICAgIDxRUkNvZGU+MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODk8L1FSQ29kZT4KICAgPC9MYWJlbEZvcm0+CiAgIDxMYWJlbEZvcm0+CiAgICAgICA8RGVsaXZlcnlJZD44MDAwMzEzPC9EZWxpdmVyeUlkPgogICAgICA8UG9zaXRpb24+MDAxMzwvUG9zaXRpb24+CiAgICAgIDxNYXRlcmlhbE5vPk0xMDAwMDM8L01hdGVyaWFsTm8+CiAgICAgIDxRdWFudGl0eT4xMjM0NTguMzIxPC9RdWFudGl0eT4KICAgICAgPFBhY2thZ2U+UDExMTExMzwvUGFja2FnZT4KICAgICAgPFFSQ29kZT4wMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTwvUVJDb2RlPgogICA8L0xhYmVsRm9ybT4KICAgPExhYmVsRm9ybT4KICAgIDxEZWxpdmVyeUlkPjgwMDAzMTE8L0RlbGl2ZXJ5SWQ+CiAgICA8UG9zaXRpb24+MDAxMDwvUG9zaXRpb24+CiAgICA8TWF0ZXJpYWxObz5NMTAwMDAxPC9NYXRlcmlhbE5vPgogICAgPFF1YW50aXR5PjEyMzQ1Ni4zMjE8L1F1YW50aXR5PgogICAgPFBhY2thZ2U+UDExMTExMTwvUGFja2FnZT4KICAgIDxRUkNvZGU+MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODk8L1FSQ29kZT4KIDwvTGFiZWxGb3JtPgogPExhYmVsRm9ybT4KICAgIDxEZWxpdmVyeUlkPjgwMDAzMTI8L0RlbGl2ZXJ5SWQ+CiAgICA8UG9zaXRpb24+MDAxMDwvUG9zaXRpb24+CiAgICA8TWF0ZXJpYWxObz5NMTAwMDAyPC9NYXRlcmlhbE5vPgogICAgPFF1YW50aXR5PjEyMzQ1OC4zMjE8L1F1YW50aXR5PgogICAgPFBhY2thZ2U+UDExMTExMjwvUGFja2FnZT4KICAgIDxRUkNvZGU+MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODk8L1FSQ29kZT4KIDwvTGFiZWxGb3JtPgogPExhYmVsRm9ybT4KICAgICA8RGVsaXZlcnlJZD44MDAwMzEzPC9EZWxpdmVyeUlkPgogICAgPFBvc2l0aW9uPjAwMTM8L1Bvc2l0aW9uPgogICAgPE1hdGVyaWFsTm8+TTEwMDAwMzwvTWF0ZXJpYWxObz4KICAgIDxRdWFudGl0eT4xMjM0NTguMzIxPC9RdWFudGl0eT4KICAgIDxQYWNrYWdlPlAxMTExMTM8L1BhY2thZ2U+CiAgICA8UVJDb2RlPjAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5PC9RUkNvZGU+CiA8L0xhYmVsRm9ybT4KIDxMYWJlbEZvcm0+CiAgICA8RGVsaXZlcnlJZD44MDAwMzExPC9EZWxpdmVyeUlkPgogICAgPFBvc2l0aW9uPjAwMTA8L1Bvc2l0aW9uPgogICAgPE1hdGVyaWFsTm8+TTEwMDAwMTwvTWF0ZXJpYWxObz4KICAgIDxRdWFudGl0eT4xMjM0NTYuMzIxPC9RdWFudGl0eT4KICAgIDxQYWNrYWdlPlAxMTExMTE8L1BhY2thZ2U+CiAgICA8UVJDb2RlPjAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5PC9RUkNvZGU+CiA8L0xhYmVsRm9ybT4KIDxMYWJlbEZvcm0+CiAgICA8RGVsaXZlcnlJZD44MDAwMzEyPC9EZWxpdmVyeUlkPgogICAgPFBvc2l0aW9uPjAwMTA8L1Bvc2l0aW9uPgogICAgPE1hdGVyaWFsTm8+TTEwMDAwMjwvTWF0ZXJpYWxObz4KICAgIDxRdWFudGl0eT4xMjM0NTguMzIxPC9RdWFudGl0eT4KICAgIDxQYWNrYWdlPlAxMTExMTI8L1BhY2thZ2U+CiAgICA8UVJDb2RlPjAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5PC9RUkNvZGU+CiA8L0xhYmVsRm9ybT4KIDxMYWJlbEZvcm0+CiAgICAgPERlbGl2ZXJ5SWQ+ODAwMDMxMzwvRGVsaXZlcnlJZD4KICAgIDxQb3NpdGlvbj4wMDEzPC9Qb3NpdGlvbj4KICAgIDxNYXRlcmlhbE5vPk0xMDAwMDM8L01hdGVyaWFsTm8+CiAgICA8UXVhbnRpdHk+MTIzNDU4LjMyMTwvUXVhbnRpdHk+CiAgICA8UGFja2FnZT5QMTExMTEzPC9QYWNrYWdlPgogICAgPFFSQ29kZT4wMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTwvUVJDb2RlPgogPC9MYWJlbEZvcm0+CjwvZm9ybTE+"
      }
      Hope this will help you !
      Best regards!
      Jacky Liu
      Author's profile photo Declan Moore
      Declan Moore

      Thank you!

      Author's profile photo Junpeng Lin
      Junpeng Lin

      Hi Jacky,

      I'm having some trouble with the API part of this guide.

      Firstly Forms Service by Adobe is an instance instead of application so I can't get the url to open ADS 

      Have there been any changes recently for the service?

      Secondly When I call the api by postman it response as below,

      {
          "timestamp": 1689559378.219144000,
          "path": "/v1/adsRender/pdf",
          "message": "CONFLICT",
          "results": "RESTAPI: Conflict Error",
          "trace": "Conflict : Unable to connect to template store repository. Repository not found.",
          "errorLevel": "4"
      }

      Best Regards,

      Junpeng Lin

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Junpeng,

      In 5 a and 5 e , we need to create form and upload template in xdp file . In 6c we need to use them as body fields . The error means the form and template can not be found .

       

      Jacky Liu

      Author's profile photo Tobias Haak
      Tobias Haak

      Hallo jacky Liu,Getting the same error as Junpeng.

      I did subscribe only to the API service. Do I also have to subscribe to the "general" Form Service, so that a repository can be created? Or is it possible to create one without this?

      Thanks!

      Tobias

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi,Tobias,

       

      You need to create to create subscribtion and instance(API) both. You need to use the subscribtion to upload form templated .

       

      Best regards!

       

      Jacky Liu

       

      Author's profile photo Inês Martins
      Inês Martins

      Hi!

      Thanks for the info. I'm getting status: 401Unauthorized, but I've followed all the steps. What can I be doing wrong?

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Martins,

       

      You need to get oauth token first as the following.

      Best regards!

       

      Jacky Liu

       

      Author's profile photo Farhan Ahmed
      Farhan Ahmed

      hello Jacky,

       

      while performing get method the API is being called correctly and returns the data but while post method

      https://adsrestapi-formsprocessing.cfapps.eu10.hana.ondemand.com/v1/adsRender/pdf?templateSource=storageName

      the url i am using.. can you enlighten me on What can I be doing wrong?

       

      Best regards!

       

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Ahmed

      I think you can check from the following 2 point .

      1 ,The URL https://adsrestapi-formsprocessing.cfapps.eu10.hana.ondemand.com should come from your adobe service service key .

       

      2, Check the request body .

       

      Best regards!

       

      Jacky Liu

      Author's profile photo Farhan Ahmed
      Farhan Ahmed

      Hello Jacky Liu,

      thanks working fine now probably had issue with Grant Type or Client Authentication

      Any idea on how to print these forms using specific parameter like Purchase order or Billing Document in Public Cloud ?

       

      Best regards!

      Farhan Ahmed

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Ahmed,

       

      If Public Cloud means s/4 hana  cloud Es version, there is outbound management in S4HC, check this with consultant .

       

      If Public Cloud does not mean s/4 hana  cloud Es version, and you want to realize in BTP , please refer to the following blogs:

      https://blogs.sap.com/2023/08/11/render-and-sign-pdf-document-in-a-ui5-application-with-btp-form-service-by-adobe/

      https://blogs.sap.com/2022/12/25/test-btp-sap-print-service-with-postman/

      https://blogs.sap.com/2023/09/03/build-digital-document-platform-backend-service-on-btp-with-btp-ads-sdm-print-service/

       

      Best regards!

       

      Jacky Liu

       

       

      Author's profile photo Pednekar Vidhi Milind
      Pednekar Vidhi Milind

      hello Jacky

       

      Great Blog!! Followed all the steps and was able to call the API on Postman Successfully.. Additionally I want to Print these forms on Public Cloud Please will you Guide me on that

       

      Best Regards,

       

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Milind,

       

      Thanks!

      Would you please refer to the following blogs :

      https://blogs.sap.com/2023/08/11/render-and-sign-pdf-document-in-a-ui5-application-with-btp-form-service-by-adobe/

      https://blogs.sap.com/2022/12/25/test-btp-sap-print-service-with-postman/

      https://blogs.sap.com/2023/09/03/build-digital-document-platform-backend-service-on-btp-with-btp-ads-sdm-print-service/

       

      Best regards!

       

      Jacky Liu

       

      Author's profile photo Abdul Hakim Sulaiman Batcha
      Abdul Hakim Sulaiman Batcha

      Hello Jacky,

      Thanks for sharing this blog with the community. QQ is there any detailed SAP training course on SAP Learning hub which covers these topics in more detail ?

       

      Regards,

      Abdul Hakim

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Hakim,

       

      As I know , currently there is no SAP Training couse on SAP Learning hub . There is mission named

      Best regards!
      Jacky Liu
      Author's profile photo Abdul Hakim Sulaiman Batcha
      Abdul Hakim Sulaiman Batcha

      Thanks Jacky for the response and clarification.

      Author's profile photo Abdul Hakim Sulaiman Batcha
      Abdul Hakim Sulaiman Batcha

      Hello Jacky

       

      Couple of questions.

      1. If the backend system is SAP S/4 HANA and if it is connected to BTP adobe form service. Is it possible to view and make changes to the SAP Standard form template? If Yes is it done using the form template url step 5b in the blog?

      2. Also is there any configuration guide available which System admin can follow and set up the connectivity between SAP S/4 and BTP form service

      3. Whether developer need access to BTP cockpit to access the form template url step 5b or if the system admin just share this url with the developer would suffice developer need without logging into BTP cockpit?

       

      Regards

      Abdul Hakim

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Abdul Hakim

       

      You can refer to the following document . You can replace S/4HANA embedded ADS with BTP ADS .

      https://help.sap.com/docs/forms-service-by-adobe/sap-forms-service-cf/configure-sap-forms-service-in-s-4hana-on-premise-systems?locale=en-US

       

      Best Regards!

      Jacky Liu

      Author's profile photo Inês Martins
      Inês Martins

      Hello,

      What about if we want to deploy the app to the system?
      I'm getting CORS errors when calling the api, but nothaving problems on postman.

      How can i solve that?

      Regards,
      Inês

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Ines,

      You can use destination in BTP Cloud foundry to overcome the CORS error .

      You can refer to the following blog .

      https://blogs.sap.com/2022/11/23/render-and-view-pdf-in-sap-ui5-with-forms-service-by-adobe-in-btp/

       

      Best regards!

       

      Jacky Liu

      Author's profile photo Julius Pereira
      Julius Pereira

      Hi Jacky,

      When performing step 4 - "assign role collections" step, i do not see adobeservice role collection listed. Is this something that has to be manually created?

      I only see these. 

       

      Thank you

      Julius

      Author's profile photo Jacky Liu
      Jacky Liu
      Blog Post Author

      Hi, Julius,

       

      It will take a some time for step 1 to be finished. Step 1's status should be subscribed . Then you could open browser in Incognito and login into BTP cockpit  to do Step 4 .

      Best regards!

      Jacky Liu