setfieldproperties
setfieldproperties
DATABASE
,
FIELD
,
DICTIONARY

The setfieldproperties statement modifies one or more properties (name, data type, formula, etc.) of the current field.

Parameters

This statement has three parameters:

database – name of the database containing the field to be modified. This parameter is optional, if omitted the current database will be assumed.

field – name (or number) of the field to be modified. This parameter is optional, if omitted the current field will be modified. Note: The data type and choice options cannot be changed for anything other than the current field in the current database.

dictionary – is the dictionary that contains one or more new properties for the field. This dictionary is usually created with the initializedictionary( function.

Description

This statement modifies one or more properties (name, data type, formula, etc.) of a field. Normally, the current field is modified. The properties are stored in a dictionary, making it easy to modify individual properties or a bunch of properties at once.

This example changes the name of the Company field to Organization.

    field Company
    setfieldproperties initializedictionary("NAME","Organization")

Alternatively, you can specify the field to be modified right in the setfieldproperties statement. This allows the properties to be changed without changing the current field.

    setfieldproperties "Company",initializedictionary("NAME","Organization")

The next example changes the type of the Quantity field to floating point (numbers). The available data types are Text, Integer, Float, Date, Choices and Binary.

    field Quantity
    setfieldproperties initializedictionary("TYPE","Float")

Note: Unlike other properties, the TYPE property can only be changed for the current field. If you want to change the type of a field, you must first use the field statement to make it the current field.

There are over a dozen different field properties that can be modified, and more are being added with each new release of Panorama. To find out the current list of available properties, use the getfieldproperties( function.

    listdictionarykeys(getfieldproperties())

### Changing Field Properties in Another Database

You can even add a third parameter to this statement to specify a database other than the current database. As long as the database is open, you can change the properties of any field (except for the TYPE and CHOICES properties). This example changes the width of the Price field in the Price List database, even if the Price List window is not currently the topmost database.

    setfieldproperties "Price List","Price",initializedictionary("WIDTH",12)

See Also

- addfield -- adds a new field to the current database (on the end).
- Adding New Fields -- adding one or more fields to a database.
- autoallfieldwidths -- automatically sets the width of all fields based on the data in each field.
- autofieldwidth -- automatically sets the width of the current field based on the data in it.
- Automatic Field Calculations -- performing formulas automatically when data is entered into a field.
- Automatic Field Code -- running a short program when data is entered into a field.
- automaticfieldchoices -- updates the current field's Choice list with actual data in the database.
- automaticfieldname( -- returns an available field name.
- cell -- enters a value into the currently active field (i.e. cell).
- checkdesignlock -- checks if field structure can be changed, if not, returns an error.
- commonfieldspopup -- pops up a list of common fields, and changes the current field specifications when a field is chosen from this menu.
- Construct Multiple Fields -- using a template to quickly add multiple fields to a database.
- constructfields -- creates one or more new fields based on a template.
- databaseconsoledump -- dumps the raw contents of the specified database to the console in comma delimited format.
- Date Patterns -- control how dates are displayed or converted to text.
- Dates -- working with dates.
- dbinfo( -- gets information about a database: what forms it contains, what fields, what flash art pictures, etc.
- deletefield -- deletes the current field from the database.
- Deleting Fields -- deleting fields from the database.
- Disable Editing of Individual Fields -- disable editing of inidividual database fields in the data sheet and/or forms.
- disablefieldediting -- disables editing for a specified list of database fields (all others are enabled).
- editfield -- begins editing of the specified field.
- editfieldname -- opens the data sheet window's field properties inspector and selects the field name.
- Field Blueprint Dialog -- examining and modifying the raw specification of a field.
- Field Properties -- available field attributes.
- Field Properties Panel -- examining and modifying field attributes.
- Field Width -- adjusting the width of a field in the data sheet.
- fieldalignment( -- returns the alignment of a database field.
- fieldformula( -- returns the formula associated with a database field.
- fieldname -- changes the name of the current field.
- fieldnumber( -- returns the number of a database field (starting with 1).
- fieldpattern( -- returns the output pattern associated with a database field.
- Fields -- introduction to database fields.
- fieldtype -- changes the data type of the current field.
- fieldtypes -- returns a carriage return delimited array with list of fields and field data types.
- fieldtypes( -- returns a carriage return delimited array with a list of the fields and field data types.
- fieldwidth( -- returns the width (in the data sheet) of a database field.
- findreplacedialog -- opens the Find & Replace dialog.
- firstcolumn -- moves to the first column in the data sheet (leftmost column).
- getfieldproperties( -- returns a dictionary containing all of the properties of the specified field. (See the setfieldproperties statement if you want to change one or more field properties.)
- hiddenfields( -- returns a list of hidden fields in the curent data sheet window
- hidecurrentfield -- hides the current field in the data sheet.
- hidefieldsbetween -- shows all fields except those in between specified numbers.
- hidelineitemfields -- hides all line item fields.
- hidethesefields -- hides specific fields in the data sheet, making all others visible.
- Hiding and Showing Fields -- temporarily hiding fields in the data sheet.
- info("datatype") -- returns the data type of the current field.
- info("disabledfields") -- returns a list of disabled fields in the current database (fields that cannot be edited).
- info("enabledfields") -- returns a list of enabled fields in the current database (fields that can be edited).
- insertfield -- inserts a new field into the database in front of the current field.
- lastcolumn -- move to the last column in the data sheet (rightmost column).
- Limiting the Maximum Number of Data Sheet Columns -- adjusting the maximum number of columns displayed in data sheet windows.
- Line Item Fields -- are used for repeating items within a record
- mergefieldsdialog -- opens the standard *Merge Fields* dialog.
- Merging Adjacent Fields -- merging two fields into one.
- movefieldbefore -- moves the current field to a new position.
- newdatabasewithfields -- creates a new database with one or more fields.
- newdatabasewithtemplate -- creates a new database with a template.
- Numeric Data -- numeric data (fixed and floating point).
- Numeric Patterns -- control how a number is displayed or converted to text.
- Rearranging Field Order -- rearranging the order of fields in the data sheet.
- reorderfieldsdialog -- opens the Reorder Fields dialog.
- serverdatabaseconsoledump -- dumps the raw contents of the specified database on the server to the console in comma delimited format.
- setfieldnames -- changes the names of all database fields at once.
- showallfields -- makes every field in the data sheet visible.
- showcolumns -- forces Panorama to display specified fields.
- showfields -- forces Panorama to display specified fields.
- showfieldsbetween -- hides all fields except those in between specified numbers.
- showhidefieldsdialog -- opens the standard Show/Hide Fields dialog (in the Fields menu).
- showthesefields -- makes specific fields in the data sheet visible, hiding all others.
- Smart Dates -- keyboard entry of dates.
- splitfielddialog -- opens the standard *Split Field* dialog.
- Splitting a Field -- splitting a field into two fields.
- tokenname( -- returns the name of a field or variable (instead of the value contained in the field or variables).
- visiblefieldnumbers( -- returns a data array of visible fields (by number) in the data sheet.
- visiblefields( -- returns a list of visible fields in the data sheet.

History

Version | Status | Notes
10.2 | Updated | Now allows properties of any field in any open database to be modified, not just the current field in the current database.
10.0 | No Change | Carried over from Panorama 6.0.