On which event should I run a script to after a user would import data into the form? | Community
Skip to main content
MHWinter
Level 4
February 28, 2022
Solved

On which event should I run a script to after a user would import data into the form?

  • February 28, 2022
  • 3 replies
  • 1013 views

I have a form that incorporates a signature.

We decided to add a text field to log the changes to the signature. Essentially if the signature changes, it appends the date and time of the change, and the Signature information (signatureInfo().statusText);

I also have a numeric field that records the SignatureValidate() value at the time of the change.

 

The reason for this is to track in particular if a signature might have been removed other that by a user clearing its own signature, in particular by exporting the form's data and reimporting in to a blank form. Doing so removes the signature and there is a mismatch between the signature validity and the recorded value in the numeric field.

I tried to put a script to test for mismatch between the signature field and the numeric field on the docReady event but this works only after I close the file and open it again... which means the import would not be detected if the user adds a signature between importing data and closing the file.

I would like the form to run a script immediately after data being imported to test if there is such a mismatch, and if so, record it in the text field (i.e. log) . Which event would that be?

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by MHWinter

The initiate event seems to do the job.

3 replies

MHWinter
MHWinterAuthor
Level 4
February 28, 2022

... And I just realize another issue: if I import data into an already signed form, the signature was not removed,... so there is now a data mismatch between the date of signature and and the recorded dates in the log. I thought importing data would reset the form first, including signatures. Any thoughts?

Mayank_Tiwari
Adobe Employee
Adobe Employee
March 1, 2022

You can't re-import the data into a signed form. Signed form is not supposed to be modified. Signing should be the last thing we do in a form.

MHWinter
MHWinterAuthor
Level 4
March 1, 2022

Thanks @mayank_tiwari

I guess you mean I should not import data into a signed form,... but Acrobat let me so I can. And my problem is the form I have developed is to track issues and interactions about it and we have experienced some ill-intentioned people changing the data content before passing it to another party. Although I cannot prevent that, I want to be able to detect it through a read-only log. I initially intended to check any mismatch between the last recorded signature validity status and the its status when initializing the form (like right after import). It does work except when the data is being imported into an already signed form. So I decided to check consistency not only with the validity status but also with the time-stamp. and it works.

 

Now, since you said one should not be capable of importing data into a signed form,  is it a bug in Acrobat ?   

MHWinter
MHWinterAuthorAccepted solution
Level 4
February 28, 2022

The initiate event seems to do the job.

Mayank_Tiwari
Adobe Employee
Adobe Employee
March 1, 2022

You may use any one of these: initialize and form:ready .