Components | All | New | MacOS | Windows | Linux | iOS | ||||
Examples | Mac & Win | Server | Client | Guides | Statistic | FMM | Blog | Deprecated | Old |
DynaPDF.SetFieldFlags
The function sets the flags of a specific interactive form field.
Component | Version | macOS | Windows | Linux | Server | iOS SDK |
DynaPDF | 4.0 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes |
Parameters
Parameter | Description | Example |
---|---|---|
The PDF reference returned from DynaPDF.New. | ||
Field | The field index or field name. | "FirstName" |
Flags | New field flags. You can pass a flag by name | 1 |
Reset | Pass 1 to set flags to the ones you passed or pass 0 to add the flag. | 1 |
Result
Returns OK or error.
Description
The function sets the flags of a specific interactive form field.The parameter Flags is a bit mask, multiple flags can be set by adding the values or use a bitwise Or operator, e.g. Print + Multiline (4096+32 = 4128). If the parameter Reset is 1 the flags of the field are set to the ones specified. If Reset is 0, the flags are added by using a bitwise Or operator.
Possible flag names: ReadOnly, Required, NoExport, Invisible, Hidden, Print, NoZoom, NoRotate, NoView, Multiline, Password, NoToggleToOff, RadioIsUnion, CommitOnSelCh, Edit, Sorted, FileSelect, MultiSelect, DoNotSpellCheck, DoNotScroll or Comb.
See Dynapdf_help.pdf for the meaning of the flags or their numerical value.
Instead of making a field read only, you can also flatten it with DynaPDF.FlattenAnnotOrField function.
See also SetFieldFlags function in DynaPDF manual.
Examples
Create a read only invisible field to e.g. hide your record ID in FileMaker:
Set Variable [ $r; Value:
Let ( [
fieldName = "ID";
field = MBS( "DynaPDF.CreateTextField"; $pdf; fieldName; -1; 0; 200; 120; -50; 300; 20 );
r = MBS("DynaPDF.SetFieldFlags"; $pdf; field; "Hidden ReadOnly Invisible NoView"; 0)
/* yes, three ways to hide! */
]; field ) ]
Create readonly field:
Set Variable [ $r; Value:
Let ( [
fieldName = "Customer No";
field = MBS( "DynaPDF.CreateTextField"; $pdf; fieldName; -1; 0; 200; 120; -50; 300; 20 );
r = MBS("DynaPDF.SetFieldFlags"; $pdf; field; "ReadOnly"; 0)
]; field ) ]
Loop over all fields and turn them read only:
Set Variable [ $count ; Value: MBS( "DynaPDF.GetFieldCount"; $PDF ) ]
Set Variable [ $index ; Value: 0 ]
If [ $index ≤ $count ]
Loop [ Flush: Always ]
# turn field to read only
Set Variable [ $r ; Value: MBS("DynaPDF.SetFieldFlags"; $pdf; $index; "ReadOnly"; 0 ) ]
#
# next
Set Variable [ $index ; Value: $index + 1 ]
Exit Loop If [ $index ≥ $count ]
End Loop
End If
See also
- DynaPDF.GetField
- DynaPDF.GetFieldCount
- DynaPDF.GetFieldFlags
- DynaPDF.New
- DynaPDF.SetFieldDate
- DynaPDF.SetFieldFont
- DynaPDF.SetFieldMapName
- DynaPDF.SetFieldName
- DynaPDF.SetGStateFlags
- DynaPDF.SetImportFlags
Example Databases
Blog Entries
FileMaker Magazin
This function checks for a license.
Created 18th August 2014, last changed 15th December 2023