Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

Data Model & Form

Avatar

Level 2

If I follow the tutorial at http://www.adobe.com/devnet/livecycle/articles/livecycle_forms_iphone_03.html (I don't want an iphone app, I want to create a form based on a data model) I can get the data model in my form.

When I bring the data model (from the "data view") in a form I get either a non-form field when I preview the pdf (I can't write anything in the field) if I bring in one property or, if I bring in the full model, all the fields are invisible in the preview the pdf view (like if the subform containing the fields are invisible).

Am I suppose to have something more then LiveCycle ES2 to use the data model (I see some reference to LCDS server)? Is there something missing in the tutorial above that could explain my problem?

I'm not sure if I'm clearly explaining my problem, so if you want me to clarify some things, don't hesitate.

P.S.: I'm using LiveCycle ES2.

1 Accepted Solution

Avatar

Correct answer by
Former Community Member

The data model tool is to be used with Form Guides. The Form Guide is a Flash application that is  derived from the model. Once data is collected in the app, then it can be merged onto a non-interactive PDF template (for archiving or a record of the transaction). You cannot create interactive PDFs at this point in time from a model. If you want an interactive PDF then a schema or sample xml data file is the best route to go.

Paul

View solution in original post

10 Replies

Avatar

Correct answer by
Former Community Member

The data model tool is to be used with Form Guides. The Form Guide is a Flash application that is  derived from the model. Once data is collected in the app, then it can be merged onto a non-interactive PDF template (for archiving or a record of the transaction). You cannot create interactive PDFs at this point in time from a model. If you want an interactive PDF then a schema or sample xml data file is the best route to go.

Paul

Avatar

Level 2

Ok, thanks a lot for your answer Paul.

Avatar

Former Community Member

Paul, I was curious if you were aware of Adobe's plans for this functionality moving forward.  It seems to me like there would be a lot of value to allow interactive PDFs to interact with an Adobe model in the same respect as with an XSD.  I understand that there are probably technical limitations, though admit that I don't have a clear understanding of what those are.  Assuming it is possible, do you know whether Adobe has that functionality on the horizon...perhaps in ES3?

Avatar

Former Community Member

I cannot comment on what is coming in the future in a public forum.

I can tell you that a model carries a lot more information that a schema (XSD) does and there are parts of the model that cannot be represented by the XSD (think constraints and validations). That is why it does not do it today. You can import a model to Designer but you are limited to a Document of Record (DOR) form meaning that it is a static non-interactive version of the form (no validations or constraints are run in that mode).

I can tell you that it is a common request by many Customers but I do not know if thet technical hurdles will hold it back or not.

I would suggest going through your Partner rep. to get an official statement from Product Management.

Paul

Avatar

Former Community Member

No problem.  I figured you probably couldn't answer anyway.  Thanks for the quick response all the same.

Avatar

Level 2

Paul,

  Why do the limitations of XSD factor into this?  Designer already supports other types of data connections in addition to XSD.  Sure, they're all XML-based, but isn't Fiber as well?  The way I see it, I would expect to be able to bind any form (Flex form, Guide, PDF form) to a Fiber data model.  Once that form is submitted, I should be able to leverage the data persistence capabilities that are available with Fiber in LCDS.  Right now it seems very disjointed.  For example, suppose I want to put a PDF form on my company website that people can download, fill offline, and submit.  Suppose I also want to provide an online version of this same form as a Guide.  When either is submitted, I want to invoke a LiveCycle orchestration and push the data into a database.  Correct me if I'm wrong, but I would have to do the following:

  • Define an XML Schema for the PDF Form
  • Create a PDF form bound to the schema
  • Define a Fiber model for the Guide
  • Create a Guide bound to the Fiber Model

This means I have to define my data model in two different places and keep them in sych.  I also have to define business logic in two different places...field properties and scripting in the PDF form, constraints and validations in the Fiber model.  Then I still have to go into my LiveCycle orchestration and use a JDBC component to define SQL call to push that data into my database.

Seems like a whole lot of work with a lot of opportunity to mess something up.  I think providing a tighter integration of Fiber into LiveCycle ES (the way it is with LCDS) presents a huge opportunity for improvement and I think will greatly enhance the value proposition of LiveCycle.

Justin

Avatar

Former Community Member

The thinking was that if you have a Guide then you woudl use that as the means to collect data from the user. Then if you require a document of record (DOR)  or a printed receipt of some sort the non-interactive PDF coudl be used (hence the import of the data model into designer). It made no sense to allow you to have an interactive PDF to collect information if you already have a Guide (especially seeing as you would loose functionality that you coded into the model).

In that scenario only a fiber model is required.

If the intent is to also allow an inetractive form, then you woudl start with an XSD and you woudl need LC ES2 SP1 to eb able to build a guide based on a schema. This of course would not allow you to build a Flex app based on the XSD (this was the case pre-ES2.

Make sense?

Paul

Avatar

Level 2

I understand what you're saying, but I don't agree with the following statement:

It made no sense to allow you to have an interactive PDF to collect information if you already have a Guide (especially seeing as you would loose functionality that you coded into the model). 

You're ignoring some of the benefits of PDF...it's more than just a document of record.  You can't take a Guide offline.  You can't apply a digital signature to a Guide.  Right now I have to make an either/or decision...either I provide an online guided experience using a Fiber model and an LC Guide, or I provide an online/offline experience using PDF and an XML Schema.

Wouldn't it make sense to build my data model and persistence layer once and then allow me to support multiple presentation layers with that one model?  Build a single Fiber model and then allow me to build a PDF Form, Guide, Flex form, HTML form, or Mobile form all based on that same model?  I understand it's not quite that easy, but it would seem to me to be the right direction to head in.

  Justin

Avatar

Former Community Member

I am not disagreeing with you I am only stating the philosophy that was employeed when building the Guide. It was not meant to be try and address any offline requirement hence the action that was taken.

If offline is a requirement then do not even look at Guides as they will not be able to satisfy the need.

Paul

Avatar

Level 2

Paul,

  Fair enough.  The original post was about the use of data models within LiveCycle ES, and it looks like the extent of that is just for the creation of a Guide and a read-only PDF.  I was expanding upon that to give some feedback on my wish list for the product going forward.  I do think this has been some good, healthy conversation that we've had.  I also appreciate that you are monitoring these forums and giving us some insight into the product development viewpoint.

Thanks!
  Justin

The following has evaluated to null or missing: ==> liqladmin("SELECT id, value FROM metrics WHERE id = 'net_accepted_solutions' and user.id = '${acceptedAnswer.author.id}'").data.items [in template "analytics-container" at line 83, column 41] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign answerAuthorNetSolutions = li... [in template "analytics-container" at line 83, column 5] ----