The Database Interface



This section supplies a list of the data fields a .NET database interface needs to support. For  for samples, please refer to the Noah 4 Business System Development page on himsa.com.

The database interface is necessary for the Noah 4 system to communicate with a Business System vendor’s database. A description of the objects used by Noah when interfacing to its own database is supplied. Developers can use this as a reference when designing their own database interface.

Required Data Fields

The tables below only list information relevant to the Noah 4 Managed Database Interface. The issue of inter-table relations has not been considered.  The information listed in these tables should only be considered as an absolute minimum set of fields; it is possible, of course, to choose to have as many fields in the database as are deemed necessary.

NOTE: Some of the methods could potentially corrupt the relational integrity of the database. It is the implementers’ responsibility to prevent this.

Patient Table

Field

Type

Description

ID

Int32

Unique (within the database) Patient identifier

PatientGUID

Guid

Global unique patient identifier

ActivePatient

Short

1=true, 0 = false

PatientNo

String(20)

Dispenser’s Patient identification

CreateDate

DateTime

Date of record creation

FirstName

String(30)

Patient’s First Name

LastName

String(30)

Patient’s Last Name

MiddleName

String(30)

Patient’s Middle Name

Gender

Short (enum)

Patient’s Gender {0=Unknown,1=Male,2=Female}

BirthDate

DateTime

Patient’s Birth date

Salutation

String(30)

Salutation

Title

String(30)

Title

Address1

String(30)

Address line 1

Address2

String(30)

Address line 2

Address3

String(30)

Address line 3

Province

String(30)

Province or State

Zip

String(20)

Zip Code

City

String(30)

City

Country

String(30)

Country

 

 

 

HomePhone

String(30)

Home phone

WorkPhone

String(30)

Work phone

MobilePhone

String(30)

Mobile phone

EMail

String(50)

Email

SSNumber

String(20)

Social security number

Physician

String(30)

Main Physician

Referral

String(30)

Physician being referred to

Insurance1

String(30)

Insurance information

Insurance2

String(30)

Insurance information

Other1

String(30)

Other 1

Other2

String(30)

Other 2



NOTE :   The setup tables below, for both user and patient, store setup data as BLOB files. The setup data consist of user, or patient, preferences. For example, NOAHaud stores profile settings as User Setup data. Thus, if a user moves to a different workstation in a network, the user’s specific profile-settings are automatically transferred to that workstation.

Patient Setup Table

Field

Type

Description

PatientID

Int32

ID of associated patient (> patient table)

ModuleID

Int32

ID of module that added this setup

SetupData

BLOB

Maximum BLOB size can be retrieved through BusinessAPI, GetNoahProperties , MaxSetupBlobSize



User Table

Field

Type

Description

UserID

Int32

Unique identifier for user

CreateDate

DateTime

Date of record creation

UserInitials

String(3)

Three letter initials used for logon

UserName

String(30)

Full user name



Action Table

Field Name

Type

Description

ID

Int32

Unique identifier for action

(NOTE: An Action object holds information about an action performed during a patient’s visit. In addition to the actual action data, an Action object contains information about what kind of action it is, what user created it, a description of the action and a reference to an Actions collection of referenced actions. A reference, which is of type long, holds an ActionID of the action it is referencing. ActionReferences link, for example, audiograms to selections/fittings.)

SessionID

Int32

ID of session in which the action belongs (> session)

UserID

Int32

ID of user who created the action (> user table)*

CreateDate

DateTime

Date of creation

LastModifiedDate

DateTime

Date of last modification

Description

String(64)

Description of the action

ModuleID

Int32

ID of module that created the action

DeviceType

Short

Module specific code for external equipment

DataTypeCode

Short

Code describing the action

DataFmtStd

Short

Code describing the format of the PublicData field

DataFmtExt

Short

Code describing the format of the private part of the PublicData field

Removed

BOOL

Action marked as removed

Hidden

BOOL

Action marked as hidden

PublicBlob

BLOB

Maximum BLOB size can be retrieved through BusinessAPI, GetNoahProperties , MaxBigBlobSize

PrivateBlob

BLOB

Maximum BLOB size can be retrieved through BusinessAPI, GetNoahProperties , MaxSmallBlobSize

ActionGroup

DateTime

Value used for Action grouping.



*Action records must not be deleted if the referenced user is deleted.



Session Table

Field Name

Type

Description

ID

Int32

Unique identifier for session

PatientID

Int32

ID of patient the session belongs to (> patient table)

CreateDate

DateTime

Date of creation (when first action was added)



FastView Table

Field Name

Type

Description

ActionID

Int32

The ID of the action this FastView is related to

LastModifiedDate

Int32

Date of last modification

CreateDate

DateTime

Date of creation

Data

BLOB

Maximum BLOB size can be retrieved through BusinessAPI, GetNoahProperties , MaxFastViewBlobSize

Format

Int32

Pdf = 1, Rtf = 2, Jpg = 3

Version

Int32

Version