Stefan Cameron on Forms
Building intelligent forms using Adobe LiveCycle Designer

Adobe Forums Revamped

The Adobe Forums have finally received a long-awaited update. Here are some of new feature highlights I was told about:

  • Integration of Adobe ID for true single sign on to all Forums;
  • Updated look and feel, more consistent with other forum systems;
  • Email participation, including starting a new discussion and alerts; and
  • RSS feeds for many parts of the forum (topics, users, announcements, etc.).

Rest assured, this does not change my blog mission, however if you have previously used the forums to search for other LiveCycle, Acrobat or Reader tips and tricks, it’ll make your life much easier!


Posted by Stefan Cameron on April 6th, 2009
Filed under Acrobat,Designer,General,LiveCycle
Both comments and pings are currently closed.

15 Responses to “Adobe Forums Revamped”

  1. Aggrey on April 15th, 2009

    Stefan,

    Thanks for your blog. It supplements and clarifies my readings elsewhere.

    I am a beginner with Acrobat and LiveCycle and have a loOong! way to go and enough to keep me studying for a while, but I keep reading about Flex, Flex, Flex.

    I have read a little about it and it seems to be for RIAs, but I want to know if it is worth learning for PDF forms in particular – the way Javascript is. How can Flex enhance my forms education? How can Flex make my forms “better?” I just want to create great forms that may be collected via Acrobat Tracker and perhaps, exported to Excel or tied into some datastore, but I am not thinking about Internet applications. Where does Flex fit in all this? Should I learn Javascript or Flex or both? I don’t mind, but I don’t want to learn something that I may not need.

    For Flash programming – do I need Actionscript CS4 and Flex? Can Flex do everything that ActionScript does? Can ActionScript do everything that Flex does? Is one better for Flash development?

    I’m not sure this is the place to post this question, but I don’t have your email address. I would appreciate guidance/advice on this Flex matter. Thank you.

  2. Stefan Cameron on April 17th, 2009

    Aggrey,

    Based on what you wrote, I don’t think you need to worry about Flex just yet but here’s why you’re hearing/reading so much about it:

    In Flash, you write in ActionScript. Flex is a framework written in ActionScript that provides thousands of utilities for building RIAs (in pure Flash, you have to create everything from scratch whereas with Flex, you get nice objects like buttons and drop down lists which you can extend to suit your needs).

    With Flex, you can create much more engaging online experiences than you can with a regular XFA-PDF form. That’s why Adobe created the Form Guide technology which lets you create, using Guide Builder (provided with Designer 8.0+), Flex-based RIAs based on XFA forms.

    Imagine how much easier and intuitive it would be to fill a complex, multi-page car insurance claim form if you had a Flex-based wizard built on-top of it that showed you a picture of a car with various hot spots that you could click-on and upload pictures of the damages (e.g. to the bumper, passenger door and rear bumper) instead of explaining, in words, what and where the damage is — and the form is filled for you in the background as you go through the wizard.

    That’s what Flex-based Form Guide technology can do for you but you don’t have to know Flex in order to build Form Guides (unless you want to customize them to an extent not supported by Guide Builder).

    Flex is blurring the lines that once existed between electronic forms and engaging applications you typically find online or on your desktop. With Acrobat 9, you can now add Flex apps into a PDF (since the Flash Player is now integrated into Acrobat) so you’ll start seeing much more engaging documents as well. With AIR, we’ve now shown that you can have an off-line Form Guide so the experience is even possible on the disconnected desktop.

  3. Aggrey on April 30th, 2009

    Ah! So you did reply. All replies to my posts on Adobe forums are forwarded to my mailbox and so I thought you didn’t reply when nothing arrived from here.

    Thank you for your reply. Flex is not urgent, but could come in handy in future, is what I am taking from your reply. And I now see the relationsip between ActionScript amd Flex. Good.

    XFA – Where do I learn this? Having read quite a bit since I posted the above, it’s clear that I need to get some XFA ASAP! I have just come from Amazon and there is nothing there about XFA. Is the Adobe XFA Reference the best starting point for a beginner?

  4. Stefan Cameron on May 4th, 2009

    Aggrey,

    Unfortunately, there’s no email notification when I post a reply…

    XFA is quite complex to learn on its own. What’s more is that it’s not really a language that you would benefit from learning to write by hand (though that may come with time and practice). You’re much better off downloading a trial of Acrobat Pro v9.0 which comes with a trial of LiveCycle Designer ES v8.2

    Designer is the tool you use for designing XFA forms. You can then save them in PDF format from Designer and have recipients fill them using Acrobat/Reader.

    The “Designing Forms” section of the LiveCycle Developer Center has lots of great resources though the most useful for you will be the LiveCycle ES Scripting Reference v8.2. If you’re up for it, you can also check-out the XFA specification v2.8 but Designer’s job is to do that for you.

  5. Aggrey on May 5th, 2009

    I do have Acrobat 9.1 Extended and have been designing basic forms in Designer 8.2 for people. Done about 14 forms so far. My fear is when I am asked for anything outside the GUI.

    E.g., take two forms A and B. Person completes form A with name, phone, etc. When Person asks to have form B auto-populate with name, phone, etc., so that they don’t have to duplicate effort, that’s when I start sweating, and that’s how I ended up on your blog here. It appears the real power of forms is under the hood – scripting, which is why I am inquiring about Flex, XFA, etc. Trying to go beyond the GUI before I get asked to do stuff and then I start sweating…

    While you’re here, if you could give me a clue how to auto-populate form B as described above, that’ll be swell. I didn’t come here for tech support, but hey, why let an expert get away, eh? 🙂

    Big!!!! Questions – So, there is “core” Javascript, then there is Acrobat JavaScript, then there is LiveCycle Javascript.

    (1) Is Acrobat Javascript significantly different from Designer Javascript?

    (2) Are there any plans to merge AcroForms and XFA forms so that we can learn just one Javascript to script both?

    I appreciate the links in your replies. They are safely tucked away in my bookmarks. One of them took me to a demo of a Forms Guide (or Guide Builder) application. Very nice. It piqued my interest in Guide Builder. There is just sooo much to learn. Who would have thought there was so much knowledge behind forms? And having Javascript for different platforms – web, Acrobat, Designer, etc – means I’m having to untangle this mess first before I buy another book on JavaScript that turns out to be for HTML. I thought JavaScript was JavaScript, but apparently, not.

    Thanks for your blog and thank you for your time.

  6. Stefan Cameron on May 8th, 2009

    Aggrey,

    You’re welcome. I’m glad to help-out.

    With respect to JavaScript, there’s “basic” JavaScript which is the language itself. That is, for the most part, common on anything that uses JavaScript as the scripting language (e.g. the fact that you concatenate strings using the “+” operator, you end commands with a semi-colon “;”, you access object properties with the dot “.” operator, you access array elements with the “[]” brackets, etc.). Where things differ is with the various APIs (Application Programming Interface) that are implemented to work with JavaScript. Now you have many flavours, like the JavaScript for Acrobat API, the JavaScript for XFA API, etc. On windows, you can write scripts using “JScript” which is Microsoft’s version of JavaScript extended with its own OS-related APIs. The important thing to remember is that these APIs simply make new objects and functions, specific to some functionality, available to you when you write JavaScript code and when that code is executed.

    JavaScript is interpreted at runtime so it’s very difficult to tell, at design time, if you’re not using an API call correctly but there are advantages like being able to write for different APIs in the same code and using IF statements to choose which code to execute so that the code pertaining to the current context (and APIs) is executed at the right time.

    As for your question about populating Form B with Form A’s data, that’s definitely a challenge and there are many ways of doing it. What you have to remember is that data is what drives a form. The form’s purpose is to show and/or collect data. What shape/form this data has may depend on a schema and you typically have one schema per form. (An XML Schema describes the structure of the data.) If Form A’s schema is different from Form B’s schema, then you have to figure-out a way to translate data from Form A’s format into a format that Form B can read. Even if you were using a database to get and set data, Form A may still have a different structure than Form B (different field names, different nesting of objects, etc.) so, at the very least, you would need script to get data submitted into the database by Form A and push it into the right fields in Form B (and that script is the translation of the data from Form A’s structure into Form B’s structure).

  7. Aggrey on May 10th, 2009

    > important thing to remember is that these APIs simply make new objects and functions, specific to some functionality…

    Aha! Aha!
    Lightbulb switched on in my head.
    Aha!
    This really untangles the mess in my head about the different JavaScripts.

    Aha!

    ——————

    > but there are advantages like being able to write for different APIs in the same code and using IF statements …

    Hmm. Very interesting. I am going to stay with the Designer API for now and learn the Acrobat API along the way.

    ——————

    Schema – we meet again. I am familiar with this noun from other data structures like the directory services for Mac and Windows.

    My clients are small businesses that cannot afford server solutions like your LiveCycle products and so I am solely concerned about client-side everything. It looks like I may be able to accomplish quite a bit on the desktop by getting a good handle on Designer’s schema. I could tie PDF forms to my clients’ spreadsheets, and perhaps other desktop applications data. (I hear XML ringing in my head as I type this.)

    ——————

    Very educational response above. Very enlightening, indeed. Thank you very much.

    BUT yet another question 🙂 BARCODES.

    Is there a desktop-only way to incorporate these into Acrobat or Designer forms, or is your LiveCycle Barcode server product required for all deployments of barcode PDF forms?

    If you know of any links to good posts about subforms, please let me know. My search for ‘subforms’ on Adobe forums returned little of value. There again, I’ve read (and experienced) that the search feature of Adobe’s forums is not the best. Haha.

    (To any beginner who may be reading this thread) I highly recommend the book PDF Forms by Angie Okamoto and Ted Padova. Excellent, excellent book. That + the built-in Help manual of Designer will get you started in a methodical fashion instead of the random topics on forums and blogs.

  8. Stefan Cameron on May 15th, 2009

    Aggrey,

    I understand about the costs. Note that if you do not involve LiveCycle server products, you will not be able to import/export data using data connections. If you need this capability, you will have to rely on JavaScript to code the import into your form in an unsecure fashion via the URL Request. When exporting data, you will have to either submit it in XML via email and reconstitute the form on your end using Acrobat Pro or you will have to code a PHP/ASP/JSP/etc. server page to which the form can submit its data. You would submit via HTTP and write your own code to take that data and insert it into whatever back-end system your clients have.

    As for barcodes, Designer ships with many barcodes which you can use as long as you have the proper scanner. The real value, however, is in the 2D barcodes which you use in concert with LiveCycle Barcoded Forms ES. If you use the 2D barcodes, data will be encrypted and you’ll need Barcoded Forms to decode it on the server. That’s not to say you couldn’t implement your own system using script and various “free” barcodes but it may be a lot of work and will likely not be as robust.

    Subform-related posts:
    http://forms.stefcameron.com/category/instance-manager/
    http://forms.stefcameron.com/category/data-binding/
    http://forms.stefcameron.com/category/data-nominated-subforms/
    http://forms.stefcameron.com/category/tables/

    Enjoy!

    PS: I found a great online JavaScript reference at W3School. It covers the basics of JavaScript.

  9. Aggrey on May 19th, 2009

    Thanks a lot for everything!

    I shall return at a later date, but for now, my head is clearer than when we began this thread a month ago. I am much, much clearer about how to proceed.

    All the above questions were clouding my mind big time, and so thanks a lot for your full responses. I’m very grateful.

    ————-

    Hello, World,

    Here I come!

  10. Kimberlee A. Miller on December 8th, 2009

    Hi Stefan,

    I’m hoping you can help me?

    I’m wondering if there is a way to programmatically associate an attachment to a Form Object Collection so that when that section of the form is digitally signed it locks the associated attachment (subsequently allowing additional attachments to be added to other Form Object Collections on the same form that have not been digitally signed and locked yet)?

    This is a Form requirement I’ve been struggling with and have been unable to come up with a solution.

    I know that Designer 8.2 itself is limited and does not allow this but can you suggest an alternative (maybe FLEX) that would allow me to accomplish this?

    I’m contracting remotely for a client in Southern California but I’m physically located in Colorado.

    Thanks very much.
    Kim Miller
    {scof: phone number removed}

  11. Stefan Cameron on December 17th, 2009

    Kimberlee A. Miller,

    Unfortunately, I don’t have any direct advice on this however my colleague John Brinkman has some articles on attachments that might help:

    Base64-encode a PDF Attachment
    New util.readFileIntoStream() API in Acrobat/Reader 9.2

    I believe the first article shows how to load an attachment as base64-encoded text into an XFA form field, at which point you could essentially achieve what you’re wanting to do if the field was in the Form Object Collection…

  12. Calvin on April 6th, 2010

    Hi Stefan,

    I am wanting to create a PDF form that a user can key information and the form will generate a 2d barcode when printed out. My user will be faxing these forms to a fax server and I will be scanning the forms to read the 2d barcode.

    Can I do this with Ddesigner?

    Thanks.
    Calvin

  13. A C on April 7th, 2010

    adobe reader 9 has encountered a problem and shuts down (crashes)
    I had been having difficulties opening any pdf,for 3 weeks, from the Web with Adobe reader 9. … any version of 9. Any saved pdf opened without difficuly..
    I deleted 9.3 and reinstalled 8.2 and now have no problems opening pdf. Hopefully anew releases will have corrected the problem…

    PS – Adobe support was useless, suggested I try private forums. They don’t appear to want to admit issues/problems nor correct them.

  14. Stefan Cameron on April 14th, 2010

    @Calvin,

    Yes, you can add hardware- and software-rendered barcodes to forms using the Object Palette’s Barcode panel. Designer supports a multitude of barcodes, both 1-D and 2-D.

  15. Stefan Cameron on April 14th, 2010

    @AC,

    Unfortunately, I don’t have a magic solution. What you describe is strange behaviour. Perhaps it just needed to be re-installed?