on 09-26-2005 9:38 PM
Hi everybody!
Anybody know if is posible to create an Adobe Form dynamicly? Can I create fields dependindg of the user input data?
Any example, tutorial or link of Interactive Forms with Webdynpro and connection to SAP with RFC will be good
thanks !!!
Hi Leslie,
As per i know, This functionality is not available.
You can not create Adobe forms dynamically.
But, you can always do it manually.
Means, You can create XML structure of your pdf template and specify all properties and parameters in this XML. Then, use this XML file as your Template source of extension ".XDP".
This is just work around. If you have to implement anyhow based on your requirement then you can follow this. Its combersome and time taking method.
Regards,
Bhavik
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks for the answer! I was very lost about this issue.
Another question: I'm thinking if it is posible to hide fields in the form? like Lotus Notes...It's that posible?
because, my form should work like this:
A manager must to evaluate employees.
the employees have several profiles.
this profiles comes from SAP R/3
the form to evaluate a employee has to include different fields, depends of the profile.
How can I implement it!
Must I create a Form with all the profiles and show only the current employee profiles?(hide the others)
any help will be usefull!!
thanks
Hi Leslie,
I have not tried it but I think you can do what you want.
As you know every form has "FormCalc" where you can do some calculations, validations, and other verifications. Also there are Scripting Properties for each control.
Like for button you can set a property like Button1.presence = "visibility"
Button1.relevant = "print"
Now you have to use both these and acheive what you want. Check the F1 help in the form designer.
Actually I was planning to do this for one of my requirements. But then I found that in my case there were basically only 3 roles for which we need different form actions available at run time. So I decided to create 3 views, have 3 forms inside them and then call the views based on employee roles. That was very easy.
Hope this helps.
Regards,
Shubham
Hi Leslie,
I tried to hide the fields based on some condition using the FormCalc script and was able to do so.
You can do something like this:
1) Select the Object that you want to hide.
2) In the script editor, select
Show = Calculate
Language = FormCalc
Run At = Client
3) Now write this syntax
if ( $record.<SourceNode>.<FieldName> eq "Manager" )
then
Approve.presence = "invisible"
endif
Here Approve is the ID of the approve button in my form.
SourceNode Contains a fieldname. In mycase
SourceNode is "Employee" and FieldName is "Role"
4) Click on the "+" icon just above the script editor.
Save the form and run. This will work.
Let me know if you have any doubts.
Regards,
Shubham
Hi Shubham:
Thanks for the answers, but I can't able to deploy and run!
this are the errors, maybe you know wath happend
Error stacktrace:
com.sap.tc.webdynpro.pdfobject.core.PDFObjectRuntimeException: Service call exception; nested exception is:
java.net.SocketTimeoutException: Read timed out
at com.sap.tc.webdynpro.pdfobject.core.PDFObject.doSoapCall(PDFObject.java:268)
at com.sap.tc.webdynpro.pdfobject.core.PDFObject.createPDF(PDFObject.java:209)
at com.sap.tc.webdynpro.clientserver.adobe.AdobeFormHelper.createPDFDocumentForUIElement(AdobeFormHelper.java:417)
at com.sap.tc.webdynpro.clientserver.uielib.adobe.impl.InteractiveForm.afterHandleActionEvent(InteractiveForm.java:161)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.afterHandleActionEvent(ClientApplication.java:1088)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.handleActionEvent(WebDynproMainTask.java:393)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:640)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:251)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:48)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:391)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:265)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:345)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:323)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:865)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:240)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
Caused by: java.rmi.RemoteException: Service call exception; nested exception is:
java.net.SocketTimeoutException: Read timed out
at com.sap.tc.webdynpro.adsproxy.ConfigBindingStub.rpData(ConfigBindingStub.java:85)
at com.sap.tc.webdynpro.adsproxy.ConfigBindingStub.rpData(ConfigBindingStub.java:95)
at com.sap.tc.webdynpro.pdfobject.core.PDFObject.doSoapCall(PDFObject.java:265)
... 27 more
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:183)
at java.io.BufferedInputStream.read(BufferedInputStream.java:201)
at com.sap.engine.services.webservices.jaxm.soap.HTTPSocket.readLine(HTTPSocket.java:636)
at com.sap.engine.services.webservices.jaxm.soap.HTTPSocket.getInputStream(HTTPSocket.java:323)
at com.sap.engine.services.webservices.jaxm.soap.HTTPSocket.getResponseCode(HTTPSocket.java:225)
at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.HTTPTransport.getResponseCode(HTTPTransport.java:346)
at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.MimeHttpBinding.outputMessage(MimeHttpBinding.java:458)
at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.MimeHttpBinding.call(MimeHttpBinding.java:1159)
at com.sap.tc.webdynpro.adsproxy.ConfigBindingStub.rpData(ConfigBindingStub.java:78)
... 29 more
Hi Leslie,
This can be due to lot of reasons.
I advice you to first try running a standard tutorial avaialble on SDN Downloads.
If that also is not running, please have a look at the following SAP Notes:
826419 Setting socket timeout for WS Clients in SP10 and SP11
849851 Importing a Web Dynpro patch for Support Package 12
867502 Read Timeout using AdobeDocumentService in Web Dynpro
Whats the version of your NWDS, WAS and ADS.
If its SP12, you need to install a patch as per note 849851 and then set the ADSCallingMode as per note 867502.
Let me know if you still got this problem.
Regards,
Shubham
Hi again!
It was a problem about the ADS, the server was updated with the components and now I don't get errors!! (good)
But ..... now I get: "Preliminary, Draft not for production Use". I was reading about this issue and I think is due to the license, we need to develop Adobe Interactive Forms?
It displays the fields, and Sap Submit buttons, but when I clicked on it(SAP submit), the action not go on.
It 's all about the license?
thanks about the others tips, they help me a lot!!
regards,
Leslie
Hi Leslie,
Because of liscense you will get that text on Adobe form. But, you can still capture your submit events on your form.
Check following things:
1. Have you specified action for Submit event for your Interectiveform UI element?
2. Have you installed Active component framework on your client machine?
3. What is the version of your Acrobat reader?
Regards,
Bhavik
Hi Leslie,
The watermark "Preliminary, Draft not for production Use" is being displayed since you are using the credential file supplied from SneakPreview. If you order a file from SAP according to note 736902 you will not see this watermark.
You need a license for Adobe Interactive Forms in Production Environment. I think you have to get a license for the number of interactive forms you can use in production. But this does not restrict you in designing the Print/Interactive Forms in development.
Read this thread for more details
And for the Submit button, do as suggested by Bhavik.
Regards,
Shubham
Hi Leslie,
for the ACF check SAP Notes 766191 and 846952.
You should probably
- Read the complete Installation and Configuration Guides for Interactive Forms first.
- Check the documentation on the SAP Help Portal in the Reference Manual at http://help.sap.com/saphelp_nw04/helpdata/en/19/00ce93b41940479aa32e81de3cda9a/frameset.htm under UI Reference Guide -> Adobe Library.
- Go to http://sdn.sap.com/sdn/adobeforms.sdn in SDN and go through the Web Dynpro tutorials to familiarize yourself with the solution.
Regards,
Markus Meisl
SAP NetWeaver Product Management
Hi Leslie,
You can download ACF from service market place http://service.sap.com/
Acrobat reader 6.0.2 is enough version. But, if you have 7.0 then install it.
Regards,
Bhavik
Hi Leslie,
Just one more thing.
Please check the SAP Note No 848539.
So if you are on SP12 or higher version its advisable to install the Adobe Designer 7.0.
If you have Adobe Designer 7.0, you should install Acrobat Reader 7.x otherwise while displaying the form it will always prompt you that your Acrobat version is lower.
Regards,
Shubham
Hi again,
I installed ACF the file xACF_NW04_SP13.zip in my machinne. I downloaded it from SAP note 766191, , I have SAP NetWeaver Developer Studio Version: 2.0.11, is that the ACF correct?. My Adobe Reader is 6.0.2. In the server, ADS was installed and configurated; the Authentication Method was Basic Authentication, is that enought? I don't know where is the problem? the form is displayed ok, but the submit and listboxes don't work yet. Any idea? every idea could take me to the solution.
Thanks beforehand!
regards,
Leslie
Hi Leslie,
Follow this tutorial to connect Webdynpro to SAP with RFC. This will prepare the view context that you can bind as a dataSource to the interactiveForm.
http://help.sap.com/saphelp_nw04/helpdata/en/c3/76b45d9688e04abe1a1070410ddc1e/content.htm
Create an attribute pdfSource should have the datatype as binary. Bind it to the pdfSource property of the interactiveForm.
Click Edit from the context menu of Interactive Form.
You can see the context attributes in the data view of the AdobeForm Designer. Drag and drop them to create Form Elements in the form.
In case you want a table in the interactive form, follow these steps:
a. Drag and Drop Subform from the Standard Library.
b. Make its type to flow content and flow direction to Table in object property.
c. Insert another subform in above sub form and makes its type to flow content and flow direction to Table row.
d. In binding tab for this subform check the checkbox for "Repeat subform for each Data Item" and in min count you can specify at a time how much rows you want to display.
e. Now place your UI Elements for Data view into this sub form
f. Format these UI elements as you required. Set the default binding in the object properties.
Hope this helps.
Regards,
Sangeeta
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
95 | |
11 | |
11 | |
10 | |
9 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.