I'm currently using Powerbuilder Version 2022 Build 1878 64-bit and the AcroExchApp/AcroExchPDDOC.
I can open the XFA pdf files and *read* the values, but I can not change the value in the JS Object. I'd like to figure out how or find another way to change the fillable field.
Current code looks like
AcroExchApp = create OLEObject
li_rtn=AcroExchApp.ConnectToNewObject("AcroExch.App")
AcroExchPDDoc = create OLEObject
li_rtn=AcroExchPDDoc.ConnectToNewObject("AcroExch.PDDoc")
lb_rtn=AcroExchPDDoc.Open('c:\temp\FILE1.pdf')
PDDocGetJSObject = AcroExchPDDoc.GetJSObject();
ls_field_name = 'form1[0].#subform[0].TextField1[0]'
PDDocField = PDDocGetJSObject.getField(ls_field_name)
lb_readonly = PDDocField.readonly;
ls_current_value=PDDocField.value;
PDDocField.value = "FUZZY"
ls_new_value = PDDocField.value;
In that ls_current_value receives the value that is currently in the fillable field (James), and PDDocField.readonly is false. But ls_new_value still has the value currently in the fillable field (so James, *not* FUZZY). I have full Adobe Acrobat PRO on my machine (as will the people using the software).
If I can't use this software inside Powerbuilder, I'll happily change to some other suggested method. Note, these are XFA files, I don't have a copy of the template in a more modern setup.