Automatically fill out forms

Since I will have to fill out every month an activity report in order to receive my PhD scholarship, I decided to automate this process. Thus, I scanned the paper to be filled and then used Inkscape for filling in the blanks. The information to be filled is almost 100% the same: there is only a field which requires specifying the month (and I assumed the year also) for which the activity report corresponds. With Inkscape, I wrote “ll aa” as a generic month and year identifiers. I then saved the report as an Inkscape SVG file. This file is a simple XML file which links the report image file (report.png) with the information that I used to fill the form with.I created two .sh files. One (report-automatic-build.sh) takes the month and year from the system. The other (report-custom-build.sh) takes the month and year as input parameters. Both scripts replace (in the Inkscape SVG) the string “ll aa” with the month and year provided (by the system or by the user). Then, I use Inkscape to automatically create .png file containing the report for a specific month and year.

Obtaining a report for a given month and year takes a few seconds but, with a simple double-click I will have my report ready to be signed every month!

I decided to make this public because I believe that it is a simple example for automating the process of filling papers.

If you are asking why I do not just fill my activity report using it’s electronic version and then simply email it, then, I must point out that, first, this report must be signed by my PhD Professor and by my self and secondly, I wanted to have the month field completed automatically also.

My “activity-report-generator.tar” is available for download.