Solved

How to fill out a PDF form containing predefined field's and field names with Access?

Posted on 2004-04-24
27
1,117 Views
Last Modified: 2007-12-19
Development environment: Adobe 5 & 6, XP Pro, Access 2000, Access XP. Access 2003, Word XP, Word 2003

Distribution target: Windows 98 through Windows XP, Access XP through Access 2003, Acrobat (latest ver.), 17" monitors at minimum 800x600 resolution

Currently have been filling out Word documents from Access but want to switch to PDF's for more reliable print output (margin control, driver issues, etc.).  I have been browsing the Exchange knowledge base but I am confused if :

1. Do I need a third party API for the Adobe PDF's or is there an Access tool?
2. Do I need full Adobe on each and every PC using the Access Form Filler or can they just have Acrobat?
3. Not being a database programmer, do I need to fill each field from database to form field (i.e. set Custname_PDF to CustName_db) or is there a more elegant (easier) way to sweep over a group of fields from the database to all the existing fields in the form given the field names are exact matches ?
4. If a new PDF is created (perhaps using an API for PDF's),  will I enounter an issue with the need to delete the last created pdf (with fields filled in) each time I recreate the new PDF?
5. Do I have some type of returned flag or boolean for successfull_ print?

Sorry for all the questions but I am under the gun with a very demanding customer and few programming resources available.
0
Comment
Question by:doublery
  • 10
  • 9
  • 4
  • +2
27 Comments
 
LVL 54

Expert Comment

by:nico5038
ID: 10909677
Much Q's, but let me start woth the general possibilities:
1) When PDF is installed you'll have a "PDF-printer" that's addressable like a normal printer but will create a .pdf file instead of printing.
    This is the way we publish output from Access in .pdf format
2) For repeating data we normally create a report and direct that to the printer after a user has previewed it.
3) Besides printing in .pdf format there's also a free snapshot viewer for Access reports:
     http://www.microsoft.com/ACCESSDEV/ProdInfo/snapshot.htm
    this will however require to be installed by the target PC's and to do so the user will require to have admin rights.

Need more info ?

Nic;o)
0
 
LVL 27

Expert Comment

by:jjafferr
ID: 10910783
Hi doublery,

1-
print with the code to the PDF Destiller, use this site to get the code.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnacc2k2/html/odc_acc10_printers.asp

OR
http://www.mvps.org/access/reports/rpt0011.htm

2-
Create PDF Documents, FREE
http://www.help2go.com/article62.html

Hope this helps

Jaffer
0
 

Author Comment

by:doublery
ID: 10911184
OK.  Maybe I left out the fact that I am trying to switch over from predefined Word doc's to PDF forms.  I understand I can print to PDF files using the PDF printer.  I want to start out with a predesigned Adobe PDF form.  For example, a job application.  I want to distribute the job application PDF to clients with only Adobe reader and my Access program. They manage to manipulate the Word documents and render them unusable.  Please don't suggest ways to secure the Word doc's.
0
 
LVL 54

Expert Comment

by:nico5038
ID: 10911212
I'm sorry, but as I don't have Adobe Installed I can't advise you further on this.

Nic;o)
0
 
LVL 27

Expert Comment

by:jjafferr
ID: 10911215
Its not clear what you exactly want :o(

What I suggested, you can print to pdf, OR create pdf from Reports (where you can predefine your templets).
You can make as many Report Templets as you like, then use either if .. then (or Case) statement to select your Report based on certain criteria on the Form, OR creteria of the contact person.

You will have to make a field in your Table/Form to tell the code, to define who should get pdf Report A, OR pdf Report B, OR word doc C. all this is possible, but you have to define it first.

if you can give some examples, then we will be of better help.

jaffer
0
 
LVL 27

Expert Comment

by:jjafferr
ID: 10911223
Hi Nic,
Time for my lunch break, gotta go before my wife calls ;o)

see you later.

jaffer
0
 

Author Comment

by:doublery
ID: 10911309
Thanks Nico and Jaffer.  Still deep in the research given your suggestions and my other findings.  I am just trying to use Access to fill out a distributable PDF form.  
0
 
LVL 54

Expert Comment

by:nico5038
ID: 10911327
An alternative might be to use an XML form as that's "readable" by an internet browser and easy to import into an access database. Thinking about something like that myself, but haven't found the time yet...

Nic;o)
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 10912270
some stuff here that might aid u

some more stuff, including some freebies

http://www.acrosoftware.com/products/cutepdf/writer.asp (cutePDF)
http://www.access2pdf.com (evaluation version available)
http://ourworld.compuserve.com/homepages/attac-cg/acgsoft.htm (a PDF and mail class library for Access)

adobe acrobat API docs
http://partners.adobe.com/asn/acrobat/docs.jsp

adobe acrobat SDK
http://partners.adobe.com/asn/acrobat/download.jsp
0
 
LVL 10

Expert Comment

by:TOPIO
ID: 10921065
Basically what you're going to be doing is to  send a word file to adobe acrobat
however the fill-form functionality of acrobat will not be availble to you using the acrobat PDF writer.
therefore making the form filling part that you want not to work at all.
If you want to have a user filleable form from word my understanding is that you do the form design in word but then you have to do the form fields in acrobat.

0
 

Author Comment

by:doublery
ID: 10923018
I can easily recreate the forms in Adobe with blank fields.  I have typesetters available to me for that.  It is the Access call to print the prepared form with queried data that I am searching for a solution.  It is very confusing to read the available solutions and determine what would be the "best practice'.
0
 
LVL 27

Expert Comment

by:jjafferr
ID: 10925746
doublery

Let start from square ONE.
1-
Make a Table with the field names you wish, lets call it Table1.
2-
Make a Columnar Form based on the Table, follow the wizard, it will automatically create the Table fields on your Form, lets call it Form1.
3-
Make a Columnar Report based on the Table, follow the wizard, it will automatically create the Table fields on your Report, lets call it Report1.
4-
Make a command button on Form1, follow the wizard to Open Report1> Report Operations,
Select Preview Report to see the Report before printing, then press on the print button to print the Report,
OR
Select Print Report to print the Report without previewing.
5-
You can enter Data in Form1
OR
If they are available in Word OR Excell, you can either cut and paste Directly in Table1 (provided the sequence of the fields is the same in Table1 as in Word OR Excell.

With this, you have your DataBase done.
Then we come to pdf Printing, which we have a few options based on what you want to print,
For example (Print means pdf printing):
Will you want to print All the Records everytime you press on print Report,
OR
Only Selected Records based on certain values (like customer ID for example).

Will you print from machines which have Acrobat Distiller,
OR
You don't mind printing with any software.

Will you want to always print on the same path/file name
OR
It have to change based on certain values (for example Customer ID.pdf)
OR
You prefer the user to enter path/file name each time.

Let me take it one step further, it is getting interesting ;o)
What will do with the printed file?
Do you want to email it to one or several contacts, just have the emails in another Table, and the whole process can be automated.

Now the ball is in your corner, Where do you want to start?

jaffer
0
 

Author Comment

by:doublery
ID: 10927193
Jaffer,

thanks for the sincere interest but I think I am having a problem making my project clear.  The client distributes digital forms in Adobe PDF format on CD.  His client wants a small database utilitiy to fill out the digital forms for immediate print to hardcopy and then perform some rudimentary reporting on the collected database.  I want to prepare the Access program to fill out the PDF forms and collect the information.  Each PDF already has all the fields labeled and mapped.  I have been successfull outputting to test Word Doc's but they are unreliable on the print side (drivers, security, etc.).  I have created the database, drawn the data input screens (Access forms) and now need to fill out the Adobe PDF versions of my paper forms and print them.    

Assume I have an employment application in PDF format with all the fields defined and labeled.  I then want to collect the data input via Access input forms.  I then want to print the collected data on the predefined PDF on a laser printer.  It appears I have to create a subsequent PDF with the data imbedded in the desired fields. I do not need to distribute the newly created PDF, nor do I neccessarily need to store it since I can recreate it from the database and the original PDF (although the suggestions made here have led me to think that I could offer the capability to store and retrieve the filled out PDF as an added feature).

It's a simple proposal.  
Step. 1. Start with a PDF.  
Step. 2. Print the filled out PDF.  
Step. 3. Next time needed, go back to Step. 1.


Doublery
0
Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

 
LVL 27

Expert Comment

by:jjafferr
ID: 10936227
doublery

Lets see if I understand you correctly:

You have an employment application in pdf,
You want Access to read data from this pdf and save it in a Table, via a Form,
You want to print this data on a predefinde Laser printer,
You want to create another pdf file from this data (why do you want it if, you will don't distribute nor store it?),

You are already extracting/importing the pdf file into Word doc, but having problem printing it.


Am I understanding it correctly?
Could you please tell us/ provide the code of importing pdf to Word doc.

jaffer
0
 

Author Comment

by:doublery
ID: 10937416
Jaffer,

I am trying to do away with the Word doc's.  Too unreliable and insecure.  

I have a collection of existing PDF forms.  Assume I am mainly dealing with an employment application.
I want to start with PDF forms and end with a paper hardcopy of the form with the fields filled in.
I want the user to enter data into Access screens (forms) for the data entry/warehousing.
I want to print the PDF employment application with the data freshly collected in the Access screens.

It's a simple proposal.  
Step. 1. Start with a PDF.  
Step. 2. Print the filled out PDF.  
Step. 3. Next time needed, go back to Step. 1.

Doublery


0
 
LVL 10

Expert Comment

by:TOPIO
ID: 10940646
IF the forms are already in adobe Acrobat, access is not the best way to do it.
By design, PDF Forms Have fields than can be filled out and even validated if you want to.
So if you want to start with a PDF and then Print out the Filled out PDF the best and easiest way is to use the Adobe Acrobat Reader which is freely available onnline to  and will perform the function that you want to do quite faster and easier than Acces could.

0
 

Author Comment

by:doublery
ID: 10945448
Seems like I can't explain this problem properly.  I still need to store/data warehouse the information.  An access database is convenient and easy to manage.  I am going to research APIPdf and PDF Filler.  Both are products mentioned here in the forums.
0
 
LVL 27

Expert Comment

by:jjafferr
ID: 10945755
doublery
I understood what you want, but never had to extract text from pdf,
usually we export to pdf.

I am doing some reading in the Acrobat 5 SDK.
Meanwhile, why don't you tell us how you extract pdf to Word doc, even if not reliable.
most of the guys here will jump for help once this part is cleared.
the remaining parts are easy/easier to deal with.

jaffer
0
 

Author Comment

by:doublery
ID: 10954285
Sorry Jaffer.  

Seems like a total misunderstanding. I have field defined forms developed in Word for the prototype product, there is no Adobe involved.  I also have the equivalent forms developed in Adobe waiting in the wings for the solution in question.  

I will post my solution ASAP.

Thanks again,


Doublery
0
 
LVL 10

Assisted Solution

by:TOPIO
TOPIO earned 250 total points
ID: 10954715
Ok  here's the info
Directly from Adobe Acrobat
"Known Issue: Reader Does Not Support OLE Automation
Issue
Why does my Visual Basic application work with Acrobat but not with Reader?
Solution Acrobat Reader is not an OLE Automation Server, as stated in the IAC Overview.
You may purchase other Acrobat products that are OLE servers. Please refer to the Acrobat family website"
http://support.adobe.com/devsup/devsup.nsf/docs/50796.htm
(Registration required)

Basically what this means is that there is No easy way to use/create  a program that will fill out a form using Adobe Acrobat READER. and since Adobe Acrobat costs over $200 I would not think that is feasible to give Acrobat to everyone.

 So that for your requirement.
Step. 1. Start with a PDF.  
Step. 2. Print the filled out PDF.  
Step. 3. Next time needed, go back to Step. 1.

This is not possible using Access.
However what is possible is that you convert your forms to Reports.  Have a very simple Form that can be Filled out and print out skipping the WORD/PDF part completely.

However if you still want to use PDF's a Simple way to do it is a product like

PDF Writer -Free Download
www.docudesk.com      Make PDF's from any application.  EZ to use, Quality output, Save!  
Print To Pdf
www.activePDF.com      Easy-to-use PDF conversion program.  Convert your document files to PDF!

If you have any question please do let me know
0
 
LVL 10

Expert Comment

by:TOPIO
ID: 10954785
You can aso check planetpdf at:
http://www.planetpdf.com/
there's a list of over 130 products
And none of them does the filling out of Acrobat pdf files
0
 
LVL 27

Expert Comment

by:jjafferr
ID: 10960611
Doublery

Let start from square ONE (take 2)
I am trying to understand the situation:
1- There is Raw Data that needs to be Imported/Entered in Access,
2- In Access it is to be further manuplated then printed/created in pdf.

1-
Where is the raw data now, on PC, on Internet?
In which Format, HTML, txt, word OR what?
How does this data look like?
Name  ID  zip
jaffer  01  11111
Jhon   20   92025

2-
What is required for precessing, select the highest value of the day, select by certain dates?
What are the fileds required?

You can tell us the rest.

jaffer
0
 

Author Comment

by:doublery
ID: 10960975
Jaffer,

>> 1- There is Raw Data that needs to be Imported/Entered in Access,
     I have drawn Access data entry screens for the user to input the data.  Each series of screens has corresponding fields which are contained in the preexisting PDF forms.  The data is manually entered by the user.  


>> Where is the raw data now, on PC, on Internet?
     I store the data in a database when the user clicks on save.   Since many of the data entry screens/forms have the same data requirements (i.e. name, account, etc.) these are populated from the database once they have been captured from another data entry screen.

>> 2- In Access it is to be further manuplated then printed/created in pdf.
     They also have a control to print the corresponding form (Word doc's only at this point).   This is where I want to eliminate all Word doc's and print to the predesigned PDF forms.

>> 2- What is required for precessing, select the highest value of the day, select by certain dates?
     The account number is the primary key.

>> What are the fileds required?
     The required fields are all the information necessary to complete the fields defined on the preexisting PDF form.  For example:  use the employment application.  It's a lot of information.  Name, geographic, employment history, education, etc.



0
 
LVL 27

Expert Comment

by:jjafferr
ID: 10961916
doublery

So basically what you want to do is to print your data to a predefined pdf Format, instead of Word.

The best way to do this, is to make a Report in Access with your fields, then follow this link:
http://www.mvps.org/access/reports/rpt0011.htm
OR
http://www.help2go.com/article62.html

if you already have a predefined pdf Form that need to insert data in, then see this link:
http://www.experts-exchange.com/Web/Graphics/Adobe_Acrobat/Q_20946792.html

I am working on something else as well, so I will keep you posted.

jaffer
0
 
LVL 27

Accepted Solution

by:
jjafferr earned 250 total points
ID: 10994312
Hi doublery
I am back as promissed :o)

I just finished a full investigation/modification and testing of what you are asking for.

To produce pdf file/s from an Access Report, you have to make a Report in Access with your fields,

It doesn't depend on Adobe Acrobat Maker, its FREEware.

I got it from a site, so I don't claim it for my self,
I just added a Table, a Form, a Report and Duplicated a Function and did my modifications on it to accomplish my Task.
So the Original Files are there which does other things too, try them, they are good.

I posted it on:
http://www.almosawe.ae/jaffer/pdf-Report.zip

jaffer
0
 

Author Comment

by:doublery
ID: 11156142
Thanks for all the great suggestions and help.  As you can imagine now the real work begins coding, testing, more coding and more testing.  

Doublery
0
 
LVL 27

Expert Comment

by:jjafferr
ID: 11157878
doublery
Thanks for the points, and I wish you seccess in you project.

Hey TOPIO
I didn't notice before that we were working together, nice working with you man.


jaffer
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Suggested Solutions

In the article entitled Working with Objects – Part 1 (http://www.experts-exchange.com/Microsoft/Development/MS_Access/A_4942-Working-with-Objects-Part-1.html), you learned the basics of working with objects, properties, methods, and events. In Work…
Describes a method of obtaining an object variable to an already running instance of Microsoft Access so that it can be controlled via automation.
Familiarize people with the process of utilizing SQL Server stored procedures from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Micr…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now