Wednesday 16 October 2013

Guidelines for adding custom tables and fields to Syspro

It is very easy to add custom information to Syspro.

There are a few ways you can go about it.

1. Use a User-Definable field

There are some spare fields in Syspro; they usually go by the name of "user-definable field", but there are not many of them. Here are some of them:

  • SorMaster.User1
  • SorDetail.MUserDef

The advantage of using these fields is that they can usually be passed or retrieved as standard parameters in the relevant Syspro Business Objects.


2. Use standard fields

There are several fields to which you can add a LOT of information in Syspro:

  • Notes - Many tables have free-form notes in which you can write a large amount of text.
  • Files - You can attach files to may Syspro tables - multimedia files, pictures, diagrams, etc.


3. Create a Custom Field

You can add custom fields, via the Syspro GUI, to just about any Syspro table and screen. The advantage of doing things this ways is that these custom fields are editable by the Syspro user, without any extra code needing to be written.
In Syspro 6.1 and earlier, these custom fields are stored in the AdmFormData table.
In Syspro 7, these custom fields are added to the actual table (e.g. InvMaster).

These fields can be written and retrieved using these business objects:
  • COMSFM - create/update custom fields
  • COMQFM - query custom fields

Using the AdmFormData does come with a bit of friction – having to write the extra calls to save or retrieve the custom fields using the Business Object or messy joins in SQL, plus having to obtain the correct key fields.
However, this would normally be the recommended way of extending the data stored in Syspro.


4. Update the database schema

You CAN update Syspro's database schema, provided you adhere to the following rules: 
  1. You can ADD tables and indexes to Syspro. This is the safest way to go.
  2. You can ADD fields to existing tables, but adding separate tables is recommended over this option as it keeps everything entirely separate.
  3. You must not delete any standard schema objects: tables, fields, indexes, relations, etc.

If you update the database schema, it is highly recommended that you follow the Recommended Naming Convention for custom tables and fields.


1 comment:

  1. Hi,
    Love your blog, very useful information. please could you make a post on standalone installation of SYSPRO 7 or i must fopllow the same process as you showed (in detail) for server installation?
    I hope you will keep sharing your knowledge. All the best

    ReplyDelete