If you plan to customize any portion of the Integral Accounting Enterprise software, you will need to be familiar with the names and naming convention of the various fields, tables, stored procedures, web services and forms or screens. Therefore, it is important to take the time now to read this document on the Naming Conventions used in the Integral Accounting Enterprise software so you can easily and efficiently find the fields, tables, stored procedures, web services and forms or screens you need to customize the software.
Part of the uniqueness of the Integral Accounting Enterprise software is the simplicity used in naming the various tables, fields and screens. You will find that the naming conventions are rather intuitive and after reviewing this document, it should be easy to understand how each table, field and screen is named.
First and most important, we use complete word sentences or phrases for the names of fields, screens and tables in the system. For example, an Order Ship Date field in the system would be named OrderShipDate.
Each field name is a complete word, with the first letter of each word capitalized for easy identification. Field names are named according to the data that will be recorded and entered in that field. They are very simple and intuitive. For example, in an order table, a field that would capture the address where the order is being shipped to would be called ShipToAddress. If there was a second or third field capturing the ship to address, in the case of more then one line needed for the address, it would be named similarly, such as ShipToAddress1 and ShipToAddress2. This indicates that the fields capture similar information all related to the ShipToAddress, but that there are additional lines in the address.
Another example would be some of the fields found in the Bank Transactions table. Fields such as CurrencyExchangeRate, or BankDocumentNumber mean just that, the currency exchange rate or the bank document number, respectively.
Tables are named in the same manner as the fields. Each Table name is a complete word or several words, with the first letter of each word capitalized for easy identification. Tables are named according to the data that will be recorded and entered in that Table. They are very simple and intuitive. For example, the table in the system that holds the audit trail is called AuditTrial. Similarly, the name of the table that holds warehouse information is called Warehouses.
Types tables are a table where a group of data is stored. Such as order types or credit card types that store all the allowable "type" of orders or credit cards within the system. These tables are always named with the name of the types as the first part of the name and the word "type" as the second part of the name.
For example, the Order Types table which stores all the different "types" of orders that are allowed in the system is called OrderTypes. The Bank Transaction Types table which stores all the different "types" of Bank Transactions that are allowed in the system is called BankTransactionTypes. Pay close attention to the capitalization in the table name, since that is also used in the naming of each field, screen and table. The capital letters identify a new "word" within the name.
Tables with Related Records
Many of the tables in the Integral Accounting Enterprise system are related and are designed to have a main table with related "child" records. Child records are a record that is part of a main table. For example, all the tables that capture information for an Order are related.
The table that has the main information for the function (such as shipping information on an order, etc). would be called the "Header" table (since it is the main table). The table that captures and records the detail information for the function (such as the items being ordered on an Order) is called the Detail table. The Header and Detail table are named with their specific function as the first part of the name, just like the Types table.
For example, the header table that records the main information for an order is called the OrderHeader table and the table that records the detail information for an Order is called the OrderDetail table. This is consistent throughout the system.
Another example is the Payment Tables. All the tables capturing information relating to making a payment begin with the word Payment. The second word in the name is the specific table that it refers to. For example, the Payment Header table which records the main information for a payment is called PaymentHeader. The Payment Detail table which records the line items of the payments is called PaymentDetail.
All of the tables related to a particular function within the system are given the same prefix. So to use the above examples, all of the tables that are mainly concerned with storing Payment information, being with the word Payment
Stored Procedures are mini-programs embedded inside SQL Database. They execute tasks when they are called or when certain triggers are activated. The Integral Accounting Enterprise system utilizes Stored Procedures to carry out the functions within the software, such as posting an invoice to the GL after it has been entered and when the Post button is pressed.
Like the other sections in the Integral Accounting Enterprise system, Stored Procedures are named first by their transaction then by their function such as Transaction_Function. For example, the Stored Procedure that that creates a General Ledger transaction for an Invoice is be called Invoice_CreateGLTransaction. The Invoice_Create indicates that this stored procedure is creating a new GL transaction, as identified by the second half of the name GLTransaction.
Any web services, core services, controllers, etc, used within the system that are used to call stored procedures use the same naming convention. The transaction is first, followed by an underline to separate the word, then the actual function or task that the routine is doing. A simple way to remember it is: Transaction_Function.Type.
Models, Views, Controllers, Web Services, Forms, & Other Information about the Naming Conventions
Following are some important points to keep in mind about the naming convention used in the Integral Accounting Enterprise.
Everything in the system that is related to each other has the same or similar name.
For example, everything that has the same name is somehow related to each other. If you are on some FormSomeEntityX and want to know what web services this form calls, the web service will be namedSomeEntityX, and the database call from that Service (By this we mean the Dataset XSD & VB) will be called SomeEntityX.
This method works both forward, working from the forms through the service to the database, and backward, working from the database table in SQL Database and then through the web services to the forms on the front end.
This means that if you start at the database table level, and want to see what services and service datasets use that table, the service, service dataset, and the database table will all be named the same or will be named something very similar.
You will also see in the system services, service datasets, and in most forms and screens two different forms with the same entity name, SomeEntityX_Detail and SomeEntityX_List. This convention allows you to know if the Entity is operating against a list of records, or against a single record.
For example, for services datasets, The _List is returning a list of the records in the dataset, and the _Detail is returning the particular record from the dataset. For forms and screens, The _List displays a list of the records in the dataset on the screen, and the _Detail is returning the particular record from the dataset to the form for editing. Like the other naming conventions used in the system, this is a very simple intuitive method that is easily understood and adjusted to.