combined - hmislk/hmis GitHub Wiki
26-Week-Training-Schedule-for-Software-Trainee-Engineers.md
Week 1: Refreshing Knowledge on General Software Engineering
- Software Development Life Cycle (SDLC)
- Design Patterns and Best Practices
- Basic Version Control Concepts
Week 2: Git & GitHub, CI/CD Pipelines
- Git Workflow: Branching, Merging, Rebase
- GitHub: Issues, Pull Requests, Code Reviews
- Continuous Integration and Deployment (CI/CD) Concepts
Week 3: Object-Oriented Programming (OOP) Concepts
- Encapsulation, Inheritance, Polymorphism, and Abstraction
- SOLID Principles
- Java OOP Implementation
Week 4: Java Fundamentals & Java EE/Jakarta EE Basics
- Java Syntax, Exception Handling, Multithreading
- Java Collections, Streams, and Lambda Expressions
- Introduction to Java EE & Jakarta EE
Week 5: Relational Database Management Systems (RDBMS) – MySQL
- SQL Queries, Joins, Indexing
- Database Normalization
- MySQL Transactions & Stored Procedures
Week 6: JavaServer Faces (JSF), Expression Language (EL), XHTML
- Introduction to JSF and Component-based UI
- EL Expressions and Scopes
- JSF Managed Beans and Navigation
Week 7: Java Persistence API (JPA) & Query Language (JPQL)
- Entity Relationships & Lazy vs. Eager Fetching
- Writing Queries in JPQL
- Transactions and Entity Lifecycle
Week 8: PrimeFaces (PF) & Bootstrap (BS) for UI Development
- PrimeFaces Components & Theming
- Bootstrap for Responsive Design
- JSF Integration with PrimeFaces and Bootstrap
Week 9: RESTful Web Services (JAX-RS) & API Development
- REST Architecture Principles
- Implementing REST APIs using JAX-RS
- API Security (JWT, OAuth)
Week 10: ORM with EclipseLink
- Introduction to ORM & JPA Implementations
- EclipseLink Configuration and Caching
- Performance Optimization in ORM
Week 11: Application Servers (Payara, WildFly, Tomcat)
- Introduction to Java EE Application Servers
- Payara Deployment & Configuration
- Monitoring & Troubleshooting in Payara
Week 12: Agile Development & Software Project Management
- Scrum & Kanban Methodologies
- User Stories, Sprints, and Stand-ups
- Jira & Project Tracking Tools
Week 13: Software Licensing (aGPL, MIT, etc.)
- Open Source vs. Proprietary Licensing
- Compliance & Legal Considerations
Week 14: Socket Programming (TCP/IP, Serial Communication)
- Network Programming with Java Sockets
- Serial Communication Basics
- Handling Data Streams in Java
Week 15: Introduction to Digital Health & Healthcare IT Standards
- Overview of Digital Health Systems
- Role of IT in Healthcare and Challenges
Week 16: Healthcare Interoperability Standards (HL7, FHIR, ASTM)
- Introduction to HL7 & FHIR Frameworks
- Creating & Parsing HL7 Messages
- Implementing FHIR Resources
Week 17: Medical Terminologies & Data Standards (LOINC, SNOMED, ICD-10, dm+d)
- Introduction to Clinical Coding
- LOINC for Laboratory Data
- SNOMED CT & ICD-10 for Diagnoses
Week 18: Data Protection & Compliance in Healthcare IT
- Data Protection Act (DPA) & GDPR
- Secure Data Storage and Transmission
Week 19: User Requirement Specification (URS) & Software Requirement Specification (SRS)
- Writing URS & SRS Documents
- Functional vs. Non-functional Requirements
Week 20: Software Quality Assurance (QA) & Testing
- Unit Testing & Integration Testing
- Automated Testing Tools (JUnit, Selenium)
Week 21: Software Deployment & Implementation
- Deployment Strategies (On-premise, Cloud)
- Continuous Deployment Best Practices
Week 22: Training & End-user Support
- Creating Training Manuals & Documentation
- Conducting End-user Training
Week 23: Customer Support & Post-Implementation Maintenance
- Handling Bug Reports & Feature Requests
- Customer Service Best Practices
Week 24: Hands-on Project – Digital Health System Implementation
- Working on a Digital Health System Component
- Team Collaboration & Development
Week 25: Presentation & Documentation Review
- Finalizing Project Documentation
- Presenting Findings & Demonstrations
Week 26: Evaluation & Feedback
- Performance Review & Skill Assessment
- Future Career Pathways & Certifications
- Trainers/Organizers: Senior Software Engineers at CareCode
- Training Mode: Online/Physical (Hospital/Office)
- Project-Based Learning: Each trainee must contribute to a live project
- Assessments: Mid-course & Final Evaluation
About-Open-HMIS.md
Open Source Hospital Management Information System
This is a comprehensive Hospital Information Management System that is knowingly used by more than 40 health care institutions. It has several modules that support most of the workflows of a modern hospital. Most of the differences in the requirements of different hospitals can be achieved through customization. The system has given priority to user-friendliness and speed of the system rather than the fancy decoration of the user interfaces loaded with colours and graphics. It has been tested extensively in production since 2015.
The system is mainly designed using Object Oriented Principles. The system design has always followed well tested and recognized data models like dm+d of NHS, UK. The system design is so robust and optimized so that it can easily accommodate new extensions for emerging requirements.
Java Enterprise Edition is used to develop the web application and RESTful server. The database management system can be selected on preferences of the implementing team, but MySQL or MariaDB is recommended. The technologies used with JavaEE include JSF, JPA and PrimeFaces. The lab middleware is developed with C#. The standalone applications consume RESTful services are developed using JavaSE.
Dr M H B Ariyaratne is a medical doctor who developed an Electronic Medical Record (EMR) System for his general practice in 2004 using Microsoft Visual Basic 6 and MS-Access. Doctors who have seen this EMR requested him to give the system for them to use. AS more doctors used the EMR, their requirements were discussed and incorporated into the system systematically. Some of the doctors who were using the EMR were having clinical laboratories, medical channelling centres and hospitals. Then the system was added new modules to cover new requirements. In 2012, a new JavaEE based system was initiated as an Open Source Initiative hosted in GitHub under the MIT license. The students of Sri Lanka Institute of Advanced Technical Education at Labuduwa, Galle, were allocated during their training for The Higher National Diploma in Information Technology (HNDIT) programme facilitated by Mr Mr.K.M.G.T.R. Waidyarathne, a lecturer from the Department Of Information Technology. Some of the students continued to support the project after their graduation under financial support by Dr M H B Ariyaratne. Commercial support was made available for installations, user training, maintenance, cloud hosting and troubleshooting.
Installation: The installation is very easy for testing. Clone the project using Netbeans and configure a new database. Running the project will lead to an administer page to add an institution, department and a user. Configuration of hardware, operating system and GlassFish are discussed in detail in The Installation Manual.
The features available to different roles of the users are stated in detail in the User Manual.
Dr M H B Ariyaratne - Initiated the Project, Main System Architect
Mr.K.M.G.T.R. Waidyarathne - Project Management
- Dr M H B Ariyaratne
- Dr Chrishantha Widisinghe
- Dr Jagath Samarasekara
- Dr Veditha Banduwardana
- Dr Gayaman Dissanayake
- Dr Harsha Meemaduma
- Dr A T C Kumara
- Dr Saranathilaka Danthanarayana
- Dr Bolonghoge Dayanath
- Dr K M P Keerthi
- Dr Anura Krishantha
- Mr Dushan Madhuranga
- Mr Lahiru Madhushanka
- Dr M H B Ariyaratne
- Mr A C M Safrin
- Mr K Pasan Anuradha
- Mr Rohan Jayasundara
- Mr Dilshan Kanishka
- Ms Ravisarani Ranawaka
- Ms Anushka De Silva
- Mr Priyanka Sandaruwan
- Mr Anura Wijesinghe
- Mr Ruwan Tharaka
- Mr Gayan Malshan
- Mr Isuru Pathum
- Mr A R C Sanka
- Mr Senula Nanayakkara
- Mr Pavan Thiwanka Madhushan
- Mr Pasindu Wathsara
- Mr Damith Deshan
- Mr Lawan Chaamindu Jayalath Samarasekara
- Dr A N E M Gunasekara
- Ms Nadeeka Darshani Wijesooriya
- Mr Janith Liyanage
- Ms D W C Piumini
- Ms Irani Madushika
- Ms Deshani Pubudu
Our contributors and Open Source Community for their knowledge and time. Healthcare Institutions provided financial supporters are listed below.
- Galle Cooperative Hospital, Galle, Sri Lanka - 2008 - 2018
- Ruhunu Hospital, Karapitiya - 2008 - 2019
- Ruhunu MediHospital, Hambanthota - 2012 Up to date
- Arogya Hospital, Tangalle - 2014 Up to date
- Arogya Channelling Centre, Tangalle - 2010 Up to date
- Arogya Pharmacy, Tangalle - 2015 Up to date
- St. George Hospital, Biyagama - 2016 Up to date
- Digasiri Hospital, Puttalama 2015 Up to date
- Metro Lab, Wadduwa 2018 Up to date
- Suwasarana Hospital, Ragama - 2016 Up to date
- Suwani Hospital, Galle - 2015 Up to date
- Sahana Medicare, Thissamaharamaya - 2012 Up to date
- Matara Nursing Home, Matara - 2008 - 2010
- BestLife Medical Centre, Kamburupitiya - 2008 - 2016
- New Pharmacy, Matara - 2014 Up to date
- Sri Katha Hospital, Dangedara - 2014 up to date
- Suwasahana Medical Center, Kataragama - 2015 Up to date
- Suwana Medical Center, Akuressa - 2015 Up to date
- New Multi Drugs, Galle - 2015 up to date
- Matara Pharamcy, Akuressa, 2013 up to date
- Matara Pharmacy, Deniyaya, 2013 up to date
- Matara Pharmacy, Urubokka, 2013 - 2015
- Matara Pharmacy, Galle, 2015 up to date
- Supipi Medical Centre, Kamburupitiya 2011 up to date
- Ahangama Medical Centre, Ahangama - 2008 up to date
- Weligama Medical Center, Weligama - 2009 up to date
- Osethra Medical Centre, Beliatta - 2010 up to date
- Isuru Medihouse, Hambanthota - 2014 up to date
- Ruhunu Medihouse, Ambanlanthota - 2014 up to date
- Horizon Medical Centre, Deberawewa - 2013 up to date
- Pubudhu Medical Centre, Hakmana - 2008 - 2014
- City Lab, Matara - 2013
- Roseth Hospital, Ambalangoda - 2014 tp to date
- Richmond Laboratory Services, Galle - 2010 up to date
- Clinical Laboratory , Boossa - 2010 up to date
- Baddegama Medical Services, Baddegama - 2014 up to date
- Sahana Medicare, Thissamaharamaya - 2014 up to date
- Medray Medical Laboratory, Matara - 2014 up to date
- Agunukolapelssa Medical Centre, Agunukolapelessa - 2014 up to date
- Holton Hospital, Walasmulla - 2015 up to date
- Unawatuna Medical Centre, Unawatuna, Galle 2015 up to date
- Kegalu Medi Lab, 2014 up to date
- Raliable Medi Lab, Monaragala - 2016
MIT License details are attached as the LICENSE.md
Accounting-Module-Introduction.md
The Accounting Module within CareCode’s Hospital Information System (HIS) is designed to streamline financial operations and ensure comprehensive financial management across the entire hospital. This module integrates seamlessly with other hospital systems, providing accurate financial tracking, reporting, and compliance with accounting standards.
-
Comprehensive Transaction Handling: Manages all financial transactions, including patient billing, payments, procurement expenses, and payroll, ensuring all financial data is accurately captured and processed.
-
Real-Time Data Entry: Immediate recording of transactions as they occur, providing up-to-date financial information and enhancing the accuracy of financial records.
-
Budget Management: Supports the creation and monitoring of budgets for different departments or projects, allowing hospital administrators to keep financial spending within approved limits.
-
Forecasting Tools: Provides forecasting tools to help predict financial outcomes based on current trends and historical data, aiding in strategic financial planning.
-
Regulatory Compliance: Ensures that all financial processes comply with local and international accounting standards, reducing the risk of non-compliance penalties.
-
Automated Reporting: Generates a variety of financial reports, such as income statements, balance sheets, and cash flow statements, facilitating easy review and decision-making.
-
Cost Tracking: Tracks costs associated with specific departments, services, or activities, providing detailed insights into where resources are being used and identifying potential areas for cost reduction.
-
Profitability Analysis: Analyzes the profitability of various hospital services and departments, supporting management in making informed decisions about resource allocation.
-
Seamless Integration: Fully integrated with other modules such as Pharmacy, Outpatient, and Inpatient Services, ensuring that all financial data from various departments is synchronized and accurately reflected in the hospital’s overall financials.
-
Vendor and Inventory Management: Manages payments to vendors and tracks inventory levels, integrating supply chain costs into the hospital’s financial system.
-
Efficient Payment Processing: Streamlines the processing of incoming and outgoing payments, improving cash flow management.
-
Receivables Tracking: Monitors accounts receivable, ensuring timely collection of payments and maintaining healthy financial operations.
The Accounting Module is a crucial element of CareCode’s HIS, providing robust financial management capabilities that are essential for the efficient and effective operation of the hospital. By offering comprehensive tools for financial tracking, budgeting, and compliance, this module supports the hospital in maintaining financial health and sustainability, ultimately enhancing the quality of healthcare services provided.
Accounting-Module---Cashier-Summaries.md
Menu > Reports > Cashier Reports > All Cashier Summary
- Select Dates: Choose the "From" and "To" dates.
- Select Additional Filters: Select Institution, Sight, and Department.
- Click Process.
- View Results:
A list of cashiers will be displayed along with additional information such as Cash, Card, Voucher, and Grand Total (during their shift).
Navigation Options for Each Cashier:
- Cashier Summary
- Cashier Details
- Bill Types
- Bill List
- Payment List
The cashier summary will display all the data related to payments, collections, cancellations, and refunds in each department in the selected institution.
The Cashier Details will display all data related to the bills processed by the selected cashier, which includes Date & Time, Bill No., Bill Type, Patient, Net Total, Cash Amount and Credit Amount.
By selecting Bill types we can view data about bills including bill type, atomic bill type, gross value of the bill, discounts and net value.
By selecting Bill List we can view data such as bill no., bill class, payment method, date/time, user, status, gross value, discount, and net value.
By selecting payment list we can view data such as payment ID, Bill ID, Bill no., Payment creator, current holder, date, payment method, Atomic bill type, Institution, department, and value of the bill.
Accounting-Module.md
Actual-Medicinal-Product-Packs-(AMPPs).md
Actual Medicinal Product Packs (AMP Packs) represent the tangible and physical packaging in which medicinal products are dispensed and administered to patients. (Ref VMPP, AMP)
- Introduction to AMP Packs:
- Definition of Actual Medicinal Product Packs and their essential role in the physical presentation of drugs.
- Significance in ensuring accurate dispensing, patient understanding, and regulatory adherence.
- Regulatory Compliance:
- Exploration of how AMP Packs align with regulatory requirements and standards.
- Importance in meeting packaging and labeling guidelines for safety and legal compliance.
- Pharmacy Dispensing Practices:
- Practical considerations for pharmacists in managing and dispensing AMP Packs.
- Strategies for efficient stock management, labeling, and minimizing medication errors.
- Patient-Centric Perspective:
- Consideration of AMP Packs from the patient's viewpoint and its impact on adherence.
- Importance of clear and patient-friendly labeling for safe and effective medication use.
- Integration with Inventory Systems:
- Real-world applications of AMP Packs in pharmacy inventory management.
- Enhancing accuracy in stock control, expiration tracking, and recall procedures.
- Contributing to AMP Packs Information:
- Guidelines for contributing to the classification and understanding of AMP Packs.
- Best practices for maintaining accurate and up-to-date information in pharmacy systems.
- Panadol 500 - 1000 tablet pack (Paracetamol 500mg tablet BP - 1000 tablet pack, Panadol 500)
Actual-Medicinal-Products-(AMPs).md
Actual Medicinal Products (AMPs) form the tangible and physical entities that are administered to patients for therapeutic purposes.
- Introduction to AMPs:
- Definition of Actual Medicinal Products and their central role in healthcare.
- Significance in ensuring patient safety and effective treatment.
- Regulatory Compliance:
- Exploration of how AMPs align with regulatory frameworks and approval processes.
- Importance in meeting quality standards, safety requirements, and legal obligations.
- ATC Classification System Integration:
- Understanding how AMPs are classified within the Anatomical Therapeutic Chemical (ATC) system.
- Relationship with other components such as Virtual Medicinal Products (VMPs) and therapeutic moieties.
- Patient-Centric Perspective:
- Consideration of AMPs from the perspective of patient education and adherence.
- Importance in promoting understanding and compliance with medication regimens.
- Pharmacy Inventory Management:
- Practical applications of AMPs in pharmacy inventory, dispensing, and documentation.
- Strategies for efficient stock management and minimizing medication errors.
- Contributing to AMP Information:
- Guidelines for contributing to the classification and understanding of AMPs.
- Best practices for maintaining accurate and up-to-date information.
Example
- Paracetamol 500mg tablet (SPMC) (Paracetamol 500mg tablet BP)
- Panadol 500 (Paracetamol 500mg tablet BP)
- Zithrox 250 (Azithromycin 250mg tablet BP)
- Zithrox 500 (Azithromycin 250mg tablet BP)
- Paramol 500 (Paracetamol 500mg tablet BP)
Actual-Therapeutic-Moieties-(ATMs).md
Actual Therapeutic Moieties (ATMs) are a critical component of the Anatomical Therapeutic Chemical (ATC) Classification System, contributing to the systematic categorization of drugs based on their actual therapeutic effects.
- Introduction to ATMs:
- Definition and significance of Actual Therapeutic Moieties in the context of the ATC Classification System.
- Importance in accurately representing the therapeutic actions of drugs.
- ATM Structure:
- Exploration of the hierarchical structure of ATMs within the ATC system.
- How ATMs align with Anatomical Main Groups, Therapeutic Subgroups, and other levels in the ATC classification.
- ATMs vs. Virtual Therapeutic Moieties (VTMs):
- Differentiating between ATMs and VTMs in drug classification.
- Understanding the distinction between the intended and actual therapeutic effects of drugs.
- Clinical Relevance:
- Application of ATMs in clinical practice and decision-making.
- How healthcare professionals utilize ATMs for precise drug selection and therapy management.
- Integration in Pharmaceutical Databases:
- Inclusion of ATMs in pharmaceutical databases for efficient drug information management.
- Examples illustrating how ATMs enhance data accuracy and retrieval.
- Contributing to ATMs:
- Guidelines for contributing to the classification and understanding of ATMs in the ATC system.
- Best practices for maintaining the relevance and accuracy of ATMs.
- Amoxicillin (SPMC)
- Azilide
Add-a-Consultant.md
- Navigate to Manage Staff Under Administration in the top menu.
- Choose Consultant from the left sidebar.
- Click the Add button first, then fill the right side form and click the Save button.
- Repeat these steps to add more Consultants.
Add-a-Doctor.md
- Navigate to Manage Staff Under Administration in the top menu.
- Choose Doctor(Excluding Consultants) or Doctor(Including Consultants) from the left sidebar.
- Click the Add button first and then give the necessary details click the Save button.
- Repeat these steps to add more doctors.
Add-a-new-user.md
Steps for adding new User to the system. After the login to the system with administration privileges,
(Administration menu -> Manage users -> Add new User)
-
Go to Administration drop down on the main menu and select Manage Users section.
-
After click the manage user direct to the new window and click on Add New User on the left sidebar.
-
Then fill in the required details and click the Save User button to add the new user.
For the relevant required data for a new user, Name, Address, Mobile, Username and Password are mandatory. And specially username must be unique. If already username exists you have to change it.
Other details are not mandatory(Optional) but good to have for system preferences.
Add-Anitbiotics.md
- Go to Administration in the top menu and click Manage Lab Services.
- From the left side menu, choose Add Anitbiotics.
- Fill the form with the necessary details and click the Save button.
- Repeat these steps to add more Anitbiotics.
Add-Category.md
- Go to Administration in the top menu and click Manage Lab Services.
- From the left side menu, choose Add Category.
- Fill the form with the necessary details and click the Save button.
- Repeat these steps to add more categories.
Add-Containers.md
- Go to Administration in the top menu and click Manage Lab Services.
- From the left side menu, Add Containers.
- Fill the form with the necessary details and click the Save button.
- Repeat these steps to add more Containers.
Add-Doctor-Specialities.md
- Navigate to Manage Staff Under Administration in the top menu.
- Choose Doctor Specialities from the left sidebar.
- Click the Add button first, then give Speciality Name and Income Name and Save button.
- Repeat these steps to add more Doctor Specialities.
Add-Estimated-Professional-Fee.md
Path:
Inward > Services and Items > Add Estimated Professional Fee
1. Search and Select BHT
You can search using the patient's name or the BHT number.
2. Select Speciality
3. Select Staff/Doctor
4. Enter the amount and the time
5. Select "Add"
Add-Investigation.md
Path: Administration > Manage Lab services > Manage Investigations > Add Investigation
First, fill in the fields provided, which includes,
- Basic Details
- Name
- Printing Name
- Full Name
- Short Name
- Item Code
- Description
- Category
- Sample
- Container
- Analyzer
- Priority
- Report Category
- Report Format
- Serial Numbers
- Worksheet
- Inward Category
- Is a Master Item
- Has a Report Format
- Multiple Reports Allowed
- Reports Allowed
- Alternative Report Allowed
- Reports Allowed
- Report Upload Allowed
- Upload Allowed
- Master Item Reference
- Billed as a separate investigation
- ui-button
- Reported as a separate investigation
- ui-button
- Institution
- Department
- Pricing Details
- Can change rate during Billing
- Rates visible during Inward Billing
- Margins Not Allowed
- Request for Quentity
- Discount Allowed
- VATable
- VAT Percentage
- Editing Details
- ID
- Item Inactive
- Created By
- Created At
- Last Editor
- Last edited at
- Manage Manage Format - Single Item Manage Format - All Items Export Format Manage Calculations Manage Replaceable Investigations Manage Format Components Manage Prices Manage Valuesets Manage Flags Dynamic Labels Validators Load Parent Investigation List of Investigations Manage Past Data
Add-New-Institution.md
Path: Administration > Manage Institutions > Manage > Manage Institutions
Here, all the available institutions will be displayed. By selecting an institution, you can see more details about the institution or edit the details.
To add a new institution, first select "Add". then fill in the institution details, such as,
- Basic Details
- Name
- Printing Name
- Bill Prefix
- Code
- Parent
- Route
- Description
- Type (ex: Agency, Bank Site, Branch, Collecting Centre Company, Credit Company, Dealer, Distributor, Educational Institute, Government Hospital, Importer, lab manufacturer, Non-Profit, Other Pharmacy, Private Practice, Store, Wholesaler)
- Phone
- Fax
- Address
- Web
- Advanced Details
- Point of Issue No.
- Bank
- Account No.
- Credit Limit
- Owner Email
- Email Sending Account
- Email Sending Password
- SMS Sending Username
- SMS Sending Password
- SMS Alias
After filling in the information select "Save". Then a new institution will be added.
Add-new-patient.md
Path:
EMR > Add New Patient
Then enter Patient Demographic Details such as,
- Title
- Name
- Sex
- Age
- Date of Birth
- Phone Number
- Mobile Number
- Email, NIC / Passport No
- Address
- Area
- PHN Number
- MRN No
- Comments
- Patient Account
- Mark as foreigner
- Credit Limit
Select "Save" to register the patient.
Add-Outside-Charges.md
Path:
Inward > Services and Items > Add Outside Charges
1. Search and Select BHT
You can search using the patient's name or the BHT number.
2. Select Inward Charge Type
3. Select the institution from which the charge is from
4. Enter the amount and description
4. Select "Add"
Then the Charge will be added to the selected BHT.
Add-Privileges-To-Users-By-Role.md
Path: Administration > Manage Users > Add Privileges To Users By Role
First, select the user. Then select the user role, institution, and department. Then select "Add user and role privileges to department", the user will have all the necessary privileges for that role for the selected department.'
Add-Professional-Fee.md
Path:
Inward > Services and Items > Add Professional Fee
1. Search and Select BHT
You can search using the patient's name or the BHT number.
2. Select Speciality
3. Select Staff/Doctor
Add-services-and-Investigations.md
Path:
Inward > Services and Items > Add services and Investigations
1. Search and select BHT
2. Add service/ Investigation
Under Item requests services and investigations are available. You can search for and add items as necessary.
After an item is added it will be displayed under bill items.
After all the necessary items are added select "Settle" to finalize.
3. Print receipt
Add-Specimans.md
- Go to Administration in the top menu and click Manage Lab Services.
- From the left side menu, choose Add Category.
- Fill the form with the necessary details and click the Save button.
- Repeat these steps to add more categories.
Add-TImed-Services---Inward.md
Path:
Inward > Services and Items > Add Estimated Professional Fee
1. Search and Select BHT
You can search using the patient's name or the BHT number.
2. Select a timed service
3. Enter Start Time
4. Select "Add Service"
Add-Timed-Services.md
Path:
Theatre > Add Timed Services
- Search and select BHT.
Add-To-Stock.md
Path: Pharmacy > Retail Transactions > Add To Stock
Add to stock is used to add the items that were billed for cashier but not sold back into the stock.
First, search the sale for cashier bills using the date range. Then select the bills that need to be added back into the stock. Then select add to stock. Then, a Pharmacy Add to Stock Bill will be printed.
Add-Unit.md
Path: Administration > Pharmaceutical Management > Pharmaceutical Fundamentals > Add Unit
To add a new unit, first, enter the unit name. Then select whether the unit is a strength unit, issue unit, duration unit, or Frequency Unit.
If it is a duration unit, add the duration in hours. If it's a frequency unit, add the frequency in hours.
Then select "Save" to save the new unit.
Adjustment-Category.md
adjustment categories refer to classifications used to categorize various types of adjustments made within pharmaceutical operations or management.
e.g.
-
Inventory Adjustment
-
Production Adjustment
-
Quality Adjustment
-
Regulatory Adjustment
-
Supply Chain Adjustment
Admission-Items-and-Fees.md
Path: Administration > Manage Inpatient Services > Admission Types > Inpatient Services
First, select the admission type, then select "Press". Now, select an inward service and select "Add" to add that service to the admission.
Admissions-Search.md
Path:
Inward > Search > Admissions
You can search admissions using,
- Date Rangere
- BHT No.
- Patient Name
- Patient Phone
- Patient NIC/ Passport
- Referring Doctor
- Status
- Any Status
- Admitted but not discharged
- Discharged but final bill not completed
- Discharged and final bill completed
- Admission Type
- Institution Type
- Site
- Department
Under status, we can see whether the patient is discharged or not and also whether the final bill is completed or not.
Under actions, you have the option to view the patient profile and the patient dashboard.
Admit-a-Patient.md
Path:
Inward > Admissions > Patient Admit
1. Enterr Patient Information
You can quick search the patient using the phone number. If the patient is already registered, patient information will be filled automatically, If not you can enter patient details manually.
2. Add Patient Allergies
If the patient hass any allergies you can add them.
3. Enter Admission Details
You canenetr admission details suvch as Admitted Time, Consultant, Referring Consultant, Medical Officer, OPD Doctor, Doctor who referred the patient, Staff who referred the patient, Person who referred the patient, Referral Institution, Workplace, Referral Number.
4. Enter Gurdian Details
5. Enter payment details
Select a suitable payment method. If the patient is a foreigner select the option "mark forigner"
6. Select admisson type
BHT, CT Card, or OPD card (Then BHT number will be generated automatically)
7. Enter room number
8. Enter comment(Optional)
9. Select "Admit"
10. Print ward admission
Analyzer-Interfacing.md
Analyzer Interfacing
Module - Lab (LIMS)
- Biochemistry (SGOT, SGPT, Serum Creatinine)
- Haematology - (FBC)
- Hormonal - TSH, Ferritin
- Electrolyte - Na, K, Cl, Ca
- Other - HbA1C
Unidirectional Bidrecrection
- TCP/IP
- Comport
- ASTM (V1, V2)
- HL7
- FHIR
LIMS Characters
- Analyzer
- Department Analyzer
When an order is placed for a patient > Patient Investigation Objects are created for Investigations Lipid Profile > one Patient Investigation Liver Profile > One Patient Investigation
Patient Sample Created at the time of Barcode Generation Container * Components of an Investigation (Analyzer *) (Department *)
Examples of Having Components - Blood Sugar Series - FBS/ Post Break Fast, Pre Lunch, Post Lunch, Pre Dinner. Post Dinner
Patient Sample Run
Phlebotomy Barcode Generation
Anatomical-Therapeutic-Chemical-(ATC)-Classification-System.md
The ATC Classification System is a hierarchical system for classifying drugs based on their therapeutic use and chemical characteristics. Developed by the World Health Organization (WHO), it provides a standardized way to categorize medications, facilitating communication and research in the field of pharmacy and medicine.
The ATC code consists of seven alphanumeric levels, each representing a different aspect of drug classification:
1. Anatomical Main Group (1st level): Represents the main anatomical or therapeutic group. Example: A for Alimentary Tract and Metabolism.
2. Therapeutic Subgroup (2nd level): Further specifies the therapeutic class. Example: A02 for Drugs for Acid-related Disorders.
3. Pharmacological Subgroup (3rd level): Describes the drug's pharmacological action. Example: A02B for Drugs for Peptic Ulcer and Gastroesophageal Reflux Disease (GERD).
4. Chemical Subgroup (4th level): Identifies the chemical structure of the drug. Example: A02BA for H2-receptor antagonists.
5. Chemical Substance (5th level): Specifies the exact substance or compound. Example: A02BA02 for Ranitidine.
6. ATC Level 6: Additional subdivisions for specific formulations or combinations. 7. ATC Level 7: Represents individual drug products.
1. International Standardization: ATC provides a globally recognized standard for classifying drugs, enhancing communication among healthcare professionals, researchers, and regulatory authorities.
2. Research and Analysis: Facilitates systematic data analysis and research on drug utilization, prescribing patterns, and pharmacoeconomic.
3. Clinical Decision Support: Aids healthcare practitioners in selecting appropriate drugs for specific therapeutic categories.
1. Database Integration: ATC codes are commonly used in pharmaceutical databases, enabling efficient organization and retrieval of drug information.
2. Medical Coding: Widely employed in medical coding systems, supporting accurate documentation and billing in healthcare settings.
Back to Pharmaceutical Fundamentals
Anatomical-Theraputic-Chemical-(ACT)-Classification.md
The Anatomical Therapeutic Chemical (ATC) Classification System is a widely used standardized classification system for drugs. It was developed by the World Health Organization (WHO) collaborating with the Center for Drug Statistics Methodology and was first published in 1976. The ATC system is designed to categorize pharmaceutical substances according to their therapeutic, pharmacological, and chemical properties.
The ATC system classifies drugs based on three main characteristics:
- Anatomy: The organ or system on which the drug acts (e.g., the nervous system, the cardiovascular system)
- Therapeutics: The therapeutic effect of the drug (e.g., antibiotics, antidepressants)
- Chemistry: The chemical properties of the drug (e.g., steroids, non-steroidal anti-inflammatory drugs)
The ATC system has a hierarchical structure with five levels of classification:
- First level: Anatomical main group
- Second level: Therapeutic subgroup
- Third level: Pharmacological subgroup
- Fourth level: Chemical/therapeutic/pharmacological subgroup
- Fifth level: Chemical substance
The first level of the ATC code consists of 14 anatomical main groups, which are represented by a single letter:
- A: Alimentary tract and metabolism
- B: Blood and blood-forming organs
- C: Cardiovascular system
- D: Dermatologicals
- G: Genito-urinary system and sex hormones
- H: Systemic hormonal preparations, excluding sex hormones and insulins
- J: Anti-infectives for systemic use
- L: Antineoplastic and immunomodulating agents
- M: Musculoskeletal system
- N: Nervous system
- P: Antiparasitic products, insecticides, and repellents
- R: Respiratory system
- S: Sensory organs
- V: Various
The second level (therapeutic subgroup) is represented by two digits.
e.g., N02 for analgesics, C01 for cardiac medicines
The third level (pharmacological subgroup) by one letter.
e.g., N02A for opioids, C01A for cardiac glycosides
The second and third levels provide more specific classifications within each anatomical main group.
The fourth level further specifies the substances based on their chemical or pharmacological properties. This level is represented by one letter.
e.g., N02AA for morphine derivatives, C01AA for digitalis glycosides
The fifth level represents specific chemical substances within each subgroup and is represented by two digits.
e.g., N02AA01 for morphine
By combining codes from each level, a specific drug can be identified within the ATC classification system. For example, the code "C10AA" represents "C" for the cardiovascular system, "10" for lipid-modifying agents, and "AA" for "HMG CoA reductase inhibitors," which are commonly known as statins.
The ATC classification system simplifies drug utilization studies, pharmacovigilance, and monitoring across healthcare, pharmaceutical research, and regulatory domains. It provides a standardized method for comparing and analyzing drug usage patterns globally, aiding in understanding trends over time and across different populations. Researchers utilize it to track changes in drug utilization, and assess safety and efficacy, while regulators rely on it for informed decision-making regarding drug approvals and marketing. Healthcare professionals, pharmacists, nurses, and researchers benefit from its use in comparing drugs and conducting more effective studies. Importantly, the ATC system does not recommend specific drugs but enhances understanding and comparison across pharmaceutical agents.
API.md
API
Security No Security Basic Security - Header (Password + Username Encrypted) API Key Based Security - Key, Value - can have expiary OAuth 2.0 KeyCloack
Application-Options.md
Path: Administration > Manage Insttituions > Application Options
A list of different options available for the application will be listed here along with the type and value. To remove an option select the "delete" button and to change the value of an option select the "edit" button, make the necessary changes, and then select "Save".
Application-Preferences.md
This gives the option to decide if the website has a frontend, add a template, add a logo URL, login header and login text.
Here you can add:
SMS URL Authentication SMS Username Parameter Name SMS Username SMS Password Parameter Name SMS Password SMS User Alias Parameter Name SMS User Alias Phone Number Parameter Name Message Parameter Name
Here you can select whether the patient needs a Phone number, NIC/Passport or Area to register. You can also enter the regex pattern for the patient's name, phone number, email, and NIC/Passport. The case of the patient name can also be set.
You can add a template for SMS on the OPD bill settling and decide whether OPD billing can be done after the shift started.
Here you can enter the admission statement in English and/or Sinhala.
Options available under Miscellaneous include,
Long Date Format Short Date Format Long Date and Time Format Short Date and Time Format Long Time Format Short Time Format Family Membership Membership Expires Institution Logo Name Discount Scheme Validation Length of OTP Indexes
Architecture.md
Single-Tier Architecture:
All components (user interface, business logic, and data storage) run in a single system or application. There is no separation between layers.
Example: A desktop application like Microsoft Access where the user interface, processing, and database are within one system.
Two-Tier Architecture:
The application is divided into two layers:
- Client Tier (Presentation Layer) – user interface and basic validation.
- Server Tier (Data Layer) – database server handling data storage and queries.
Example: A client application (like a desktop app) directly communicating with a database (such as MySQL).
Three-Tier Architecture:
The application is divided into three layers:
- Presentation Tier – user interface.
- Business Logic Tier – processes data and applies rules.
- Data Tier – manages data storage and retrieval.
Example: A web application with a front-end (HTML/JS), back-end server (Java EE), and a database (MySQL).
Multi-Tier Architecture:
Extends the three-tier model by adding more specialised layers, such as:
- Security Layer
- Caching Layer
- API Layer
- Integration Layer
This improves scalability, flexibility, and maintenance in large systems.
ASTM-Protocol-(ASTM-E1394-ASTM-E1381).md
ASTM E1394 and ASTM E1381 are standards developed by ASTM International that focus on the electronic transmission of data between clinical laboratory instruments and computer systems. These standards are essential for ensuring interoperability and effective communication in clinical settings.
ASTM E1394 provides a framework for the two-way digital transmission of requests and results between clinical instruments and computer systems. It aims to standardize the conventions required for the interchange of clinical results and patient data, facilitating a logical link for communication in a standardized format. This standard is particularly relevant for text-oriented clinical instrumentation, covering aspects such as:
- Message Content: Specifies the structure and content of messages exchanged between instruments and computer systems.
- Data Elements: Defines how data elements should be represented within the message structures.
- Flexibility: Allows for the addition of new fields or record types to accommodate evolving testing methodologies.
The standard delineates a hierarchical message structure that includes various record types:
- Level 0: Message header and terminator.
- Level 1: Patient records, request information, and scientific records.
- Level 2: Test order records.
- Level 3: Result records.
Comment records can be inserted at any level, providing contextual information related to preceding records.
The significance of ASTM E1394 lies in its ability to enhance data flow between clinical instruments and computer systems, ensuring that demographic and test information can be transmitted efficiently. This standard supports the implementation of successful interfaces within clinical environments by providing clear guidelines on message content and structure.
ASTM E1381 focuses on the low-level protocol necessary for the electronic transmission of digital information between clinical laboratory instruments and computer systems. This standard is crucial for automated instruments that measure parameters from patient samples, ensuring that results can be processed, stored, or reported effectively[2][4].
The specification outlines several key components related to communication protocols:
- Physical Layer: Describes the electrical and mechanical connections between instruments and computers, including connector types and signal characteristics.
- Data Link Layer: Covers methods for establishing communication, error detection, error recovery, and message transmission. This layer manages how messages are sent and received, including handling acknowledgments and managing data link connections[2][3].
The communication process outlined in ASTM E1381 includes:
- Establishment Phase: Initiating a connection between devices.
- Transfer Phase: Sending messages in frames, with provisions for error checking through checksums.
- Termination Phase: Properly closing the connection after data transfer is complete.
Both ASTM E1394 and ASTM E1381 play critical roles in ensuring effective communication between clinical laboratory instruments and computer systems. While E1394 focuses on message content and structure, E1381 provides the necessary low-level protocols for data transmission. Together, these standards facilitate accurate data exchange, which is vital for patient care in clinical settings.
Citations:
[1] https://img.antpedia.com/standard/files/pdfs_ora/20230612/astm/E/E%201394%20-%2097.pdf
[2] https://www.astm.org/e1381-95.html
[3] https://www.medteh.info/_fr/140/XS_ASTM_Rev2.5.pdf
[4] https://cdn.standards.iteh.ai/samples/8091/36c8b26a235545f9945225dd34690a4c/ASTM-E1381-95.pdf
[5] https://clsi.org/media/2424/lis02a2e_sample.pdf
[6] https://standards.globalspec.com/std/160641/astm-e1394
[7] https://arrow.tudublin.ie/cgi/viewcontent.cgi?article=1017&context=teapotcon
Base-Item-Fees.md
Path:
Administration > Manage Pricing > Fees > Base Item Fees
When an item is selected all the fees currently available for that item will be listed here. To add a new fee select the "Add" button and fill the relevant information.
To remove a fee that was added to an item select the "Remove" button.
Batch-Bill-Payments.md
Billing
Billing Types
- Direct Billing - Order & Take Payments
- Billing for Cashier - Order First - Payment Collection at Cashier
Bill Types
- Batch Bill - COllection of all Department Bills for a single order session
- Department Bills - One bill per performing department. May have one or more departments bills for a single order session. The total of bill values equal to the batch bill total
Director Billing Creates Following
- Batch Bill - BilledBill
- Department Bills - BilledBill For each Department Bill > List of Bill Items & Bill Fees
Billing for Cashier
- Batch Bill - Prebill
- Department Bills - PreBills For each Department Bill > List of Bill Items & Bill Fees - NOT Used in Performance Analytics. May not make the payment at the cashier. Therefore NOT counted.
Settling at Cashier
- Batch Bill - Bill
- Department Bills - Bills For each Department Bill > List of Bill Items & Bill Fees - Used in Performance Analytics
Cancellation Type
- Direct Bill Cancelation - Batch Bill
Bill-Cancellation.md
The bill cancellation process in CareCode HIS follows a structured workflow to ensure accuracy, validation, and proper referencing. Below is a step-by-step description of the process.
-
Identify the specific
BilledBill
to cancel. -
Ensure the following verifications are completed before proceeding:
- Not Cancelled Previously: Confirm that the bill hasn’t been cancelled already.
- No Returns Recorded: If returns exist, they must be cancelled first before proceeding with the bill cancellation.
- Drawer Balance Check: Ensure that for payments made in cash or IOU, the drawer balance is checked. This step is not required for payments made via cards, patient deposits, etc.
- Preference-Based Criteria: Validate the cancellation request based on configured criteria, such as the allowed duration after the original billing.
-
Copy Values from the Original BilledBill:
- Clone all relevant attributes of the
BilledBill
into the newCancellationBill
.
- Clone all relevant attributes of the
-
Invert Financial Values:
- Convert values such as:
- Gross Total
- Discount
- Net Total
- Tax
- Sum of Hospital Fees
- Sum of Staff Fees
- Inversion ensures that the cancellation bill reflects negative amounts.
- Convert values such as:
-
Replace Certain Values:
- Update creator, creation timestamp (
createdAt
), and any other relevant metadata to reflect the current cancellation action.
- Update creator, creation timestamp (
-
Add a Reference to the Original BilledBill:
- The new
CancellationBill
will maintain a reference back to the cancelledBilledBill
.
- The new
-
Update References in the Original BilledBill:
- Save the newly created
CancellationBill
with updated references in the originalBilledBill
.
- Save the newly created
- For each item listed under the original
BilledBill
, create a corresponding bill item for theCancellationBill
. - Ensure that the cancellation bill items follow the same logic as the parent
CancellationBill
:- Copy original item values.
- Invert necessary values.
- Replace metadata like creator and timestamps.
- Add appropriate references to the original
BilledBill
and the newCancellationBill
.
- For each fee associated with the original bill items, create a corresponding fee entry for the cancellation bill items.
- Apply the same process followed for creating the
CancellationBill
:- Copy and invert fee values.
- Replace relevant metadata.
- Maintain references between the original
BilledBill
, the newCancellationBill
, the respective bill items, and their associated fees.
-
Invert Payments:
- Reverse the payment values recorded in the original
BilledBill
.
- Reverse the payment values recorded in the original
-
Modify Payment Methods if Required:
- Use a new payment method if necessary. For instance, if a card payment is being refunded, the patient may receive cash instead.
- Reflect the cancelled amounts in the drawer to ensure the balance stays accurate.
- Prepare the necessary details for printing the
CancellationBill
, ensuring all references, fees, and payments are correctly reflected.
Bill-Fees.md
Setting up / Configuration Item - Service, Investigation, Medicine, Inward Service, Channelling, etc
ItemFees - Name, Type (Hospital Fee, Staff Fee, Outside Fee, etc), FeeValue, ForeinerFee No fees for Medicines
During Billing
Create a Bill Bill Items are added to the Bill > Bill Item has references including Item, Bill
Bill Fees Bill Fees are created as per the instructions given in the configuration phase.
Bill-Item.md
Bill Item Define
Attributes Bill * - 1 BillItem (Bidirectional) Item * - 1 BillItem - (Unidirectional) Rate Qty Value
Bill.md
In the CareCode Hospital Information System (HIS), the concept of an Order, Bill, or Request is modelled using Object-Oriented Programming (OOP) principles. This design ensures that every order or bill is represented as a well-defined object with attributes and relationships. Below is an overview of the core attributes and class hierarchy.
-
Patient Attributes
A patient object contains all the necessary details about the patient for whom the order or bill is generated. -
Bill Date and Time
Records the exact date and time when the bill is issued. -
Bill Number
A unique identifier assigned to each bill for reference. -
Total Price
The total amount to be paid, including all bill items and fees. -
Referring Doctor
The doctor who referred the patient for the relevant service or procedure. -
Bill Department
The department where the bill is generated, typically the one responsible for collecting payments (e.g., OPD or Cashier). -
Bill Institution
The healthcare institution responsible for generating the bill. -
To Department
The department that provides the service (e.g., Radiology for X-rays or the Lab for blood tests). Revenue is attributed to this department. -
To Institution
The institution where the service is rendered, which may differ from the billing institution. -
Bill Items
Each bill contains multiple individual requests or services. For example, a single bill might contain requests for tests like FNAC, FBS, and CXR. -
Bill Fees
Each service in a bill includes several associated fees, such as:
- Consultant fee
- Medical Officer fee
- Laboratory Technician (MLT) fee
- Hospital fee
These fees are encapsulated within theBillFee
object and contribute to the overall bill item total.
- Gross Total, Discount, and Net Total
- Gross Total: The sum of all fees before any deductions.
- Discount: Any reductions or discounts applied.
- Net Total: The final payable amount after discounts.
-
Tax
Applicable taxes added to the bill. -
Fee Summaries
- Sum of Staff Fees
- Sum of Hospital Fees
- Sum of Collecting Centre Fees
(If the total is income for the institution, it is positive. If there are refunds or cancellations, it is negative.)
-
Bill
(Parent Class)
TheBill
class serves as the parent class, encapsulating all shared attributes and behaviour among its subclasses. -
Subclasses of
Bill
-
PreBill
Represents a preliminary bill, which may be subject to modification before finalisation. -
BilledBill
A finalised bill that is issued to the patient. It maintains a reference to any cancelled or returned bills associated with it:-
Cancellation Reference: Points to a
CancelledBill
if the bill is voided. -
Return Bills List: A list of multiple
ReturnBills
if the patient returns parts of the service.
-
Cancellation Reference: Points to a
-
CancelledBill
This object is created when aBilledBill
is cancelled. It holds a reference back to the originalBilledBill
. -
ReturnBill
-
This OOP-based design ensures that every bill or order is accurately represented with a well-structured hierarchy. It supports tracking services across departments and institutions, capturing staff and hospital fees, and handling complex scenarios like cancellations and returns. This modular structure also enhances flexibility, allowing the system to cater to various billing workflows.
A concept in CareCOde HIS OOP-based Design
Order or a Bill or a Request
Attributes-
- Patient attributes. And patient object content all the patient details.
- Bill date
- Bill time
- Bill Number
- Total price
- Referring Doctor
- Bill Department - where the Bill is raised, the cash is collected, ex. A patient comes to OPD, taking money for any services given by any other department
- Bill Institution
- To Department - where the service is given. for example. in the above bill, X-Rays will be done by the Radiology Department and Investigations will be done by the Lab. Revenue is generated by this department.
- To Institution
- Bill Items - One bill/request consists of multiple individual requests. One Bill from OPD for Patient A, may have BillItems for FNAC, FBS, CXR
- Bill Fees - Has a reference to Bill Item as well. For Ex. FNAC has the following fees - Staff fee for Cosultant Pathologist, Staff Fee for Medical Officer, Staff Fee for MLT, Hospital Fee, Fees for the medical user, etc. Each is represented by BillFee. Bill Fee total is added to decide Bill Item Totals and then Bill Totals
- Gross Total
- Discount
- Net Total
- Tax
- Sum of Staff Fees
- Sum of Hospital Fees
(For totals, we the company gets income, they are plus, if cash going out, as in cancellation, refund, totals are Negatives)
Bill - Parent Class Sub Classes
- PreBill -
- BilledBill - has a reference to cancelleBill as CancelBill, no referance to a single ReturnBill, has a list of returnBills.
- CancelleBill - when a BilledBill is cancelled, a new cancelledBill is created, which has a reference called BilledBill
- ReturnBill - when a BilledBill is returned, multiple times is a possibility, is created. Has a reference to BilledBill
Billing-for-Cashier.md
This document provides a detailed guide on how to manage patient orders and process payments within the CareCode Health Management Information System (HMIS). It covers the workflow from logging into the system to completing a transaction at the cashier.
-
Access the System: Open the CareCode HMIS and navigate to the login page.
-
Enter Credentials: Input your username and password.
-
Select Department: Choose the department you are working in to access the relevant functionalities.
- Open Main Menu: Click on the main menu after logging in.
- **Choose OPD: ** Select 'OPD' to proceed to outpatient services. Billing for Cashier
- Access Billing: Under the 'OPD' menu, find and click on the 'Billing' submenu.
- Select 'Billing for Cashier': This option takes you to the billing page specific for cashier operations.
- Patient Search: Use the patient's phone number to search and bring up their details.
- Add Services: Search for and add required services to the patient's order. Example services could include an ESR (Erythrocyte Sedimentation Rate) test and a FBC (Full Blood Count).
Settling the Bill
- Settle Bill: Once the services are added, proceed to settle the bill.
- Token Generation: A token indicating the amount payable will be generated and printed for the patient.
- Token Scanning: The cashier scans the barcode on the token provided to the patient. If unable to scan, navigate through menu > OPD > Cashier > Scan Bills.
- Manual Search: Alternatively, search for all pending payments under menu > OPD > Cashier > Accept Payments for OPD Bills.
- Payment Processing:
- Choose a payment method.
- For cash payments, enter the tendered amount to display change due.
- Click 'accept payment & settle' to finalize the transaction.
Bills-Orders-System-OOP-Design.md
This section outlines the Object-Oriented Design for the Bills/Orders system component of CareCode Health Management Information System (HMIS). The design focuses on encapsulating entities like bills, items, fees, and services into a structured and modular format, enabling efficient management and scalability.
-
Bill Attributes: billID, billDate, totalAmount, status, patient, etc. Methods: calculateTotal(), etc.
-
BillItem Attributes: item, quantity, price, etc. Relationships: Linked to Item (Investigation/Service). Methods: calculateItemTotal(), etc.
-
BillFees Attributes: fee, type (e.g., institution, facility use), amount, etc. Methods: getFeeDetails(), etc.
-
BillComponents This is a composite entity encapsulating different aspects of a bill.
-
BillPayments paymentID, amount, paymentMethod, date, etc.
-
BillSessions: sessionID, sessionType, duration,
-
BillExpenses: expenseID, description, amount, etc.
-
Item Attributes: itemID, name, code, category (Investigation/Service), etc.
Subclasses: Investigation: specificAttributes (e.g., labTestType) Services: specificAttributes (e.g., serviceType) InpatientService: additionalAttributes (e.g., roomType) TheatreService: additionalAttributes (e.g., equipmentUsed) PharmaceuticalItem: additionalAttributes (e.g., dosageForm)
Biological-Specimens-for-Laboratory-Testing.md
-
Blood – Whole blood or specific components used for various diagnostic tests.
-
Fluid – Includes various bodily fluids used for analysis.
- Cerebrospinal Fluid (CSF) – Collected via lumbar puncture, used to diagnose infections or neurological conditions.
- Peritoneal Fluid – Found in the abdominal cavity, analyzed for infections or malignancies.
- Pleural Fluid – Surrounds the lungs, tested for infections, cancer, or other diseases.
- Synovial Fluid – Lubricates joints; analyzed for arthritis, infections, or gout.
- Amniotic Fluid – Surrounds a fetus in the womb, tested for genetic and developmental disorders.
- Pericardial Fluid – Surrounds the heart, tested for infections or cardiac issues.
-
Plasma – The liquid component of blood, separated from cells, often tested for proteins, electrolytes, and hormones.
-
Semen – Used for fertility testing, sperm analysis, or forensic purposes.
-
Serum – The fluid portion of blood after clotting, used for various biochemical and immunological tests.
-
Stool (Feces) – Tested for infections, parasites, digestive disorders, and blood in stool.
-
Swab Samples – Used for microbiological cultures and viral or bacterial testing.
- Throat Swab – Collected for strep throat, viral infections, or respiratory pathogens.
- Nasal Swab – Used for flu, COVID-19, and other respiratory infections.
- Vaginal/Cervical Swab – Used for Pap smears, STIs, and HPV testing.
- Rectal Swab – Used for certain infections, including STIs and enteric pathogens.
- Wound Swab – Collected from open wounds to identify bacterial infections.
- Ear Swab – Used to diagnose ear infections.
- Skin Swab – Collected to diagnose bacterial, fungal, or viral skin infections.
-
Urine – Used for kidney function tests, drug screening, and infection detection.
-
Whole Blood – Used in transfusions and complete blood count (CBC) testing.
-
Bone Marrow – Collected via aspiration or biopsy to diagnose blood disorders and cancers.
-
Hair – Used in forensic testing, drug screening, and toxicology tests.
-
Nail Clippings – Used for fungal infections, heavy metal analysis, and forensic investigations.
-
Sweat – Used in drug testing and cystic fibrosis screening.
-
Breast Milk – Tested for infections, nutritional content, and contaminants.
-
Gastric Aspirate – Stomach fluid collected for tuberculosis and acid-related disorders testing.
-
Saliva – Used for hormone testing, genetic testing, and drug screening.
-
Tissue Biopsy – Used for cancer diagnosis, genetic analysis, and histopathology.
-
Meconium (Newborn Stool) – Tested for prenatal drug exposure and metabolic disorders.
-
Cord Blood – Collected at birth for genetic and stem cell banking purposes.
Cancel-GRN.md
Path: Pharmacy > Procurements > Goods Received
-
Find the GRN
-
Select the view button under actions to see the GRN.
- Select the "Cancel" button
- Enter a comment and select Cancel.
Then GRN cancellation will be printed.
Cancel-orders-requests.md
Path: Pharmacy > Disbursement > Issue for Requests > View Request
1. Select the "Cancel Request" button
2. Confirm the cancel request with a comment.
Now the order is cancelled and is visible in red.
CareCode-HIMS-???.md
විවෘත මූලාශ්ර රෝහල කළමනාකරණ තොරතුරු පද්ධතිය (CareCode Open-Source Hospital Management Information System) - ආරම්භකයා වෛද්ය එම්. එච්. බී. ආරියරත්න
මෙය වර්තමාන රෝහල් සඳහා විවිධ කාර්ය ප්රවාහන මොඩියුල විහිදුනු සමගින් විශාල පරිමාණ රෝහල කළමනාකරණ තොරතුරු පද්ධතියකි. විවිධ රෝහල් අවශ්යතා සඳහා වෙනස්කම් ඉටු කිරීමේ හැකියාව ඇත. පද්ධතිය පරිශීලක ආරක්ෂාව හා වේගය මූලික කරගෙන නිර්මාණය කර ඇත. 2015 සිට නිෂ්පාදනයේ විශාල පරිමාණ පරීක්ෂණයට ලක්කොට ඇත.
මෙම පද්ධතිය Object Oriented Principles අනුගමනය කරමින් නිර්මාණය කර ඇත. එය NHS, UK හී dm+d වැනි පරීක්ෂා කළ සහ ප්රතිචාර ලත් දත්ත ආකෘති අනුගමනය කර ඇත.
Java Enterprise Edition භාවිතා කරමින් වෙබ් අයදුම් හා RESTful සේවාදායකය නිර්මාණය කර ඇත. දත්ත ගබඩා කළමනාකරණ පද්ධතිය කණ්ඩායමගේ ප්රියතමයක් තෝරාගත හැකි නමුත් MySQL හෝ MariaDB නිර්දේශිත වේ. JavaEE සමග යොදා ගත් තාක්ෂණයන් වනුයේ JSF, JPA සහ PrimeFaces. ග්රාමීය මධ්යස්ථානයේ මධ්යසාරය C# භාවිතයෙන් සංවර්ධනය කර ඇත. RESTful සේවාවන් භාවිතා කරන ස්ථානීය යෙදුම් JavaSE භාවිතයෙන් සංවර්ධනය කර ඇත.
වෛද්ය එම්. එච්. බී. ආරියරත්න විසින් 2004 දී තම පුද්ගලික සායනය සඳහා Microsoft Visual Basic 6 සහ MS-Access භාවිතයෙන් ඉලෙක්ට්රොනික වෛද්ය වාර්තා පද්ධතියක් (EMR) සංවර්ධනය කරන ලදී. මෙම EMR පද්ධතිය භාවිතා කළ වෛද්යවරුන් නව අවශ්යතා සහිතව පද්ධතිය වෙනස් කිරීමට ඉල්ලා සිටිති. මෙම පද්ධතිය 2012 දී විවෘත මූලාශ්ර පියවරක් ලෙස GitHub හි MIT බලපත්රය යටතේ ආරම්භ කරන ලදී. ශ්රී ලංකා උසස් තාක්ෂණික අධ්යාපන ආයතනයේ (HNDIT) ලාබුදුව, ගාල්ලේ පිරිසක් පියවර පද්ධතියේ සහයෝගයක් ලබා දෙනු ලැබුවේ මාර්ගෝපදේශකයා ලෙස කටයුතු කළ K.M.G.T.R. වයිද්යරත්න මහතා විසිනි. උපාධියෙන් පසු ඔවුන් පද්ධතියට සහයෝගය ලබා දෙන ලදී. වාණිජ සහයෝගය ස්ථාපනය, පරිශීලක පුහුණුව, නඩත්තුව, මেঘ සත්කාරකය සහ ගැටලු විසඳීමට ලබා දෙනු ලැබේ.
පරීක්ෂණ සඳහා ස්ථාපනය ඉතා පහසු වේ. Netbeans භාවිතයෙන් ව්යාපෘතිය සම්බන්ධ කර නව දත්ත ගබඩාවක් සැකසිය හැක. ව්යාපෘතිය ක්රියාත්මක කිරීමෙන් ආයතනයක්, අංශයක් සහ පරිශීලකයෙක් එක් කිරීමට පරිපාලක පිටුවකට යොමු වේ. දෘඩාංග, මෙහෙයුම් පද්ධතිය සහ GlassFish සකස් කිරීමේ දී ක්රියාමාර්ග විස්තරවත්වී ඇත.
විවිධ පරිශීලක තනතුරු සඳහා ඇති විශේෂාංග User Manual හි විස්තර කර ඇත.
වෛද්ය එම්. එච්. බී. ආරියරත්න - ව්යාපෘතිය ආරම්භකයා, ප්රධාන පද්ධති ශිල්පියා
කේ. එම්. ජී. ටී. ආර්. වයිද්යරත්න - ව්යාපෘති කළමනාකරණය
- වෛද්ය එම්. එච්. බී. ආරියරත්න
- වෛද්ය ක්රිශාන්ත විදසිංහ
- වෛද්ය ජගත් සමරසේකර
- වෛද්ය වෙදිත බණ්ඩුවර්ධන
- වෛද්ය ගයාමන් දිසානායක
- වෛද්ය හර්ෂා මීමදූම
- වෛද්ය ඒ. ටී. සී. කුමාර
- වෛද්ය සරණතිලක දන්තනාරාණ
- වෛද්ය බොලෝන්ගේ දයානත්
- වෛද්ය කේ. එම්. පී. කීර්ති
- වෛද්ය අනුරා ක්රිශාන්ත
- දුෂාන් මධුරංග
- ලාහිරු මධුශංක
- වෛද්ය එම්. එච්. බී. ආරියරත්න
- එ. සී. එම්. සාෆ්රි
- කේ. පසන් අනුරධ
- රොහාන් ජයසුන්දර
- දිල්ශාන් කනීෂ්ක
- රවිසරනි රණවක
- අනුෂ්කා ද සිල්වා
- ප්රියංක සදරුවන්
- අනුර විජේසිංහ
- රුවන් තාරක
- ගයාන් මල්ෂාන්
- ඉසුරු පතුම්
- එ. ආර්. සී. සංක
- සෙනුල නානායක්කාර
- පවන් තිවංක මධුශන්
- පසින්දු වත්සර
- දමිත් දේශන්
- ලවන් චාමින්දු ජයලත් සමරසේකර
- ඩො. ඒ. එන්. ඊ. එම්. ගුණසේකර
- නදීකා දර්ශනී විජේසූරිය
- ජනිත් ලියනගේ
- ඩබ්. ඊ. සී. පියුමිණි
- ඉරානි මධුෂිකා
- දේෂනි පුබුදු
ඔවුන්ගේ දැනුම සහ කාලය වෙනුවෙන් අපගේ දායකයින්ට සහ විවෘත මූලාශ්ර ප්රජාවට ස්තූති කිරීමට අපි කැමතියි. මූල්ය ආධාර සපයන සෞඛ්ය සේවා ආයතන පහත ලැයිස්තුගත කර ඇත.
- ගාල්ල Cooperative රෝහල, ගාල්ල, ශ්රී ලංකා - 2008 - 2018
- රුහුණු රෝහල, කරාපිටිය - 2008 - 2019
- රුහුණු මැඩිහෝස්පිටල්, හම්බන්තොට - 2012 දක්වා
- ආරෝග්ය රෝහල, තංගල්ල - 2014 දක්වා
- ආරෝග්ය වෛද්ය මධ්යස්ථානය, තංගල්ල - 2010 දක්වා
- ආරෝග්ය ඖෂධ ශාලාව, තංගල්ල - 2015 දක්වා
- ශාන්ත ජෝර්ජ් රෝහල, බියගම - 2016 දක්වා
- දිගසිරි රෝහල, පුත්තලම - 2015 දක්වා
- මැට්රෝ ලැබ්, වාද්දුව - 2018 දක්වා
- සුවසරණ රෝහල, රාගම - 2016 දක්වා
- සුවනි රෝහල, ගාල්ල - 2015 දක්වා
- සහන මැඩිකෙයාර්, තිස්සමහාරම - 2012 දක්වා
- මාතර නර්සිං හෝම්, මාතර - 2008 - 2010
- බෙස්ට්ලයිෆ් වෛද්ය මධ්යස්ථානය, කඹුරුපිටිය - 2008 - 2016
- නව ඖෂධ ශාලාව, මාතර - 2014 සිට වර්තමානය දක්වා
- ශ්රී කථා රෝහල, දන්ගෙදර - 2014 සිට වර්තමානය දක්වා
- සුවසහන වෛද්ය මධ්යස්ථානය, කතරගම - 2015 සිට වර්තමානය දක්වා
- සුවන වෛද්ය මධ්යස්ථානය, අකුරැස්ස - 2015 සිට වර්තමානය දක්වා
- නව මල්ටි ඩ්රග්ස්, ගාල්ල - 2015 සිට වර්තමානය දක්වා
- මාතර ඖෂධ ශාලාව, අකුරැස්ස - 2013 සිට වර්තමානය දක්වා
- මාතර ඖෂධ ශාලාව, දෙනියාය - 2013 සිට වර්තමානය දක්වා
- මාතර ඖෂධ ශාලාව, උරුබොක්ක - 2013 - 2015
- මාතර ඖෂධ ශාලාව, ගාල්ල - 2015 සිට වර්තමානය දක්වා
- සුපිපි වෛද්ය මධ්යස්ථානය, කඹුරුපිටිය - 2011 සිට වර්තමානය දක්වා
- අහංගම වෛද්ය මධ්යස්ථානය, අහංගම - 2008 සිට වර්තමානය දක්වා
- වැලිගම වෛද්ය මධ්යස්ථානය, වෙළිගම - 2009 සිට වර්තමානය දක්වා
- ඔසෙත්රා වෛද්ය මධ්යස්ථානය, බෙලිඅත්ත - 2010 සිට වර්තමානය දක්වා
- ඉසුරු මැඩිහවුස්, හම්බන්තොට - 2014 සිට වර්තමානය දක්වා
- රුහුණු මැඩිහවුස්, අම්බලන්තොට - 2014 සිට වර්තමානය දක්වා
- හොරයිසන් වෛද්ය මධ්යස්ථානය, දෙබරවැව - 2013 සිට වර්තමානය දක්වා
- පුබුධු වෛද්ය මධ්යස්ථානය, හක්මන - 2008 - 2014
- සිටි ලැබ්, මාතර - 2013
- රොසෙත් රෝහල, අම්බලංගොඩ - 2014 සිට වර්තමානය දක්වා
- රිච්මන්ඩ් ලැබරටරි සේවාවන්, ගාල්ල - 2010 සිට වර්තමානය දක්වා
- ක්ලිනිකල් ලැබරටරි, බූස්ස - 2010 සිට වර්තමානය දක්වා
- බද්දේගම වෛද්ය සේවාවන්, බද්දේගම - 2014 සිට වර්තමානය දක්වා
- සහන මැඩිකෙයාර්, තිස්සමහාරම - 2014 සිට වර්තමානය දක්වා
- මැඩ්රේ මැඩිකල් ලැබරටරි, මාතර - 2014 සිට වර්තමානය දක්වා
- අගුණකොලපැලැස්ස වෛද්ය මධ්යස්ථානය, අගුණකොලපැලැස්ස - 2014 සිට වර්තමානය දක්වා
- හෝල්ටන් රෝහල, වාලස්මුල්ල - 2015 සිට වර්තමානය දක්වා
- උණවටුන වෛද්ය මධ්යස්ථානය, උණවටුන, ගාල්ල - 2015 සිට වර්තමානය දක්වා
- කෑගලු මැඩි ලැබ්, 2014 සිට වර්තමානය දක්වා
- රලියබල් මැඩි ලැබ්, මොණරාගල - 2016
MIT බලපත්ර විස්තර LICENSE.md ලෙස අමුණා ඇත
CareCode-Radiology-Information-System.md
CareCode Radiology Information System (RIS) is a comprehensive platform designed to streamline and optimise imaging-related workflows across multiple departments, including Radiology, Histopathology, and Cardiology. It efficiently manages the entire lifecycle of medical imaging, encompassing patient registration, procedure scheduling, image acquisition, storage, retrieval, and distribution.
The system integrates seamlessly with Picture Archiving and Communication Systems (PACS) to centralize all medical images and videos, such as X-rays, CT scans, MRIs, ECGs, echocardiograms, angiograms, and procedural videos. CareCode RIS fosters effective collaboration among radiologists, pathologists, cardiologists, technologists, and other healthcare professionals, ensuring improved workflow efficiency and enhanced patient care.
CareCode RIS is loosely coupled with CareCode HMIS, enabling smooth communication by default. It can be customized to integrate with any other Hospital Information Management System (HIMS) that supports HL7 FHIR and dynamic resource bundles via REST FHIR servers.
-
Centralized Image and Data Management
- Unified repository for managing all medical images and videos.
- Seamless integration with PACS for image storage, retrieval, and distribution.
- Comprehensive metadata handling for enhanced search and retrieval.
-
Advanced Scheduling and Resource Allocation
- Multi-department scheduling for radiology, pathology, and cardiology procedures.
- Optimized resource allocation for equipment and personnel.
- Automated patient notifications to minimize no-shows.
-
Order Management and Tracking
- Electronic order entry for imaging studies with clinical indications.
- Real-time tracking of orders, including priority handling for urgent cases.
-
Interoperability and Standards Compliance
- Supports HL7, FHIR, and DICOM standards for seamless data exchange.
- Integrates with Electronic Health Records (EHRs), Laboratory Information Systems (LIS), and other hospital systems.
-
Enhanced Reporting and Results Management
- Structured and multimedia reporting capabilities, including voice recognition dictation.
- Secure and efficient distribution of results to clinicians and patients.
-
Quality Assurance and Compliance
- Tools for peer reviews, regulatory compliance, and audit trails.
- Ensures adherence to international standards such as HIPAA and DICOM.
-
Customization and Scalability
- Configurable workflows, templates, and forms tailored to departmental needs.
- Modular architecture for seamless scalability and integration of new features.
-
Patient Information Management
- Captures and stores comprehensive demographic and clinical information.
- Integrates patient data seamlessly across hospital systems to ensure consistency and accuracy.
-
Imaging Procedure Management
- Streamlines the workflow from patient registration through image acquisition to report delivery.
- Supports standardized imaging protocols across modalities, ensuring quality and consistency.
-
Modality Worklist Management
- Automatically populates worklists for imaging modalities, reducing manual data entry and minimizing errors.
- Interfaces directly with imaging equipment, enhancing operational efficiency.
-
Reporting and Analytics
- Offers both structured and narrative reporting with multimedia integration.
- Advanced analytics tools provide insights into operational performance and clinical outcomes.
-
Interdepartmental Collaboration
- Facilitates multidisciplinary collaboration with shared access to imaging data and reports.
- Secure messaging and consultation features support real-time communication among clinicians.
-
Patient Engagement
- Provides patients with access to their imaging results and reports through a secure portal.
- Enhances communication and education for patients regarding their imaging procedures.
-
Workflow Customisation
- Allows tailoring of imaging workflows to meet the specific needs of different departments.
- Configurable rules and logic adapt the system to varying clinical requirements and practices.
-
User Interface and Experience
- Customizable dashboards and user interfaces cater to the preferences and roles of diverse system users.
- Supports localization and multi-language capabilities to accommodate a global user base.
-
Data Integration and Interoperability
- Extensive API support for integration with other hospital systems, including EHRs, LIS, and mobile health applications.
- Compliance with international standards like HL7, DICOM, and FHIR ensures seamless data exchange and interoperability.
-
Scalability and Security
- Modular design supports scalable architecture, allowing for expansion as healthcare facilities' needs grow.
- Robust security protocols safeguard sensitive patient data, with role-based access controls and data encryption.
-
Health System Integration
- Integrates smoothly with existing Hospital Information Systems (HIS), Laboratory Information Systems (LIS), and other healthcare management tools.
- Supports bidirectional data flow, ensuring that all relevant systems are updated with the latest patient and procedural information.
-
Third-Party Compatibility
- Provides flexible integration options with third-party software and hardware, avoiding vendor lock-in.
- Compatible with a wide range of imaging devices and diagnostic tools across manufacturers.
-
Remote Access and Mobile Solutions
- Enables remote access to RIS functionalities, allowing clinicians to view images and complete reports from any location.
- Mobile applications support on-the-go access to system features, enhancing flexibility for healthcare professionals.
-
Framework for Compliance
- Implements FHIR R4 standards to facilitate interoperability and data exchange, ensuring that the system can integrate seamlessly with modern healthcare technologies and platforms.
- Designed to support compliance frameworks that align with international health regulations such as HIPAA, GDPR, and others.
- While the system is developed with these standards in mind, actual certification or compliance for a specific version can be achieved at the customer's request and expense.
- The system architecture is flexible, allowing for regular updates to accommodate changing compliance requirements and keep the system aligned with global standards.
-
Audit Trails and Security Monitoring
- Detailed logging of all user actions and data access provides comprehensive audit trails.
- System security measures include data encryption, secure data transmission, and regular security assessments.
-
Peer Review and Quality Control
- Facilitates internal reviews and audits of diagnostic reports and images to ensure quality and accuracy.
- Supports discrepancy management workflows to address and rectify any identified issues promptly.
-
Automated Charge Capture
- Accurately captures and records all billable procedures and associated costs.
- Automates coding and billing processes to ensure timely and accurate financial reporting.
-
Insurance and Claims Processing
- Integrates with insurance providers to streamline pre-authorization processes and claims management.
- Provides tools for handling denials and rejections to reduce revenue loss and improve cash flow.
-
Financial Analytics
- Generates detailed financial reports that aid in tracking revenue, expenses, and profitability.
- Offers insights into financial performance, helping to make informed decisions about operational efficiency and cost control.
-
Data Backup and Recovery
- Implements comprehensive backup strategies to ensure data is securely stored and readily available for recovery.
- Configurable backup frequencies, including incremental and full backups, to minimize data loss.
-
System Redundancy and Failover
- Utilizes redundant hardware and software configurations to maintain system availability and minimize downtime.
- Failover mechanisms ensure continuous operation during hardware failures or other disruptions.
-
Emergency Management
- Provides robust emergency management tools to handle unexpected system outages or data integrity issues.
- Quick restoration capabilities ensure that critical imaging services remain available during and after incidents.
Change-Log.md
Change-password&theme.md
-
Access: settings > Change My Password.
-
Process: Enter the existing password, new password, and re-enter the new password in the appropriate input fields. Then click on the 'Change Password' button to update your password.
-
Access: settings > Change My Theme.
-
Process: Select the required theme from the drop-down menu, then click on the 'Save' button to apply the theme changes.
Channel-Booking---By-Date.md
Path:
Channelling > Channel Booking - By Date
1. Select Date Range
When a date range is selected, all available sessions will be displayed
2. Search and select required consultant and session
3. Enter Patient Information.
If the patient is already registered, patient information will be filled in automatically. If not, enter the patient information manually.
4. Enter Payment Details
Select an appropriate payment method and add a discount scheme(If Applicable).
If the patient is a foreigner, select "Mark Foreigner"
5. Enter Referral Details.
You can enter the referring institution, doctor or center. (Optional)
Booking details will be listed at the very bottom.
You have the option to add a normal booking or a reserved booking.
6. Print Channel Bill
If the payment was made, then this option will be available. If not, it will be available later after the payment is finalized.
Channel-Booking---By-Month.md
Path:
Channelling > Channel Booking - By Month
1. Select Date Range
When a date range is selected, all available sessions will be displayed
2. Search and select the required consultant and session
3. Enter Patient Information.
If the patient is already registered, patient information will be filled in automatically. If not, enter the patient information manually.
4. Enter Payment Details
Select an appropriate payment method and add a discount scheme(If Applicable).
If the patient is a foreigner, select "Mark Foreigner"
5. Enter Referral Details.
You can enter the referring institution, doctor or center. (Optional)
Booking details will be listed at the very bottom.
You have the option to add a normal booking or a reserved booking.
6. Print Channel Bill
If the payment was made, then this option will be available. If not, it will be available later after the payment is finalized.
Channel-Booking.md
Path:
Channelling > Channel Booking
1. Select Specialty from the 1st column.
2. Select the required Consultant from the second column.
Upon selecting a consultant, available sessions for the consultant will be displayed in the 3rd column.
3. Then select "+ To Add Booking"
You will be redirected to a new page where you can schedule a booking for a patient.
4. Enter Patient Information.
If the patient is already registered, patient information will be filled in automatically. If not, enter the patient information manually.
5. Enter Payment Details
Select an appropriate payment method, add a discount scheme(If Applicable) and mark if the patient is a foreigner.
Booking details will be listed on the right-hand side.
You have the option to add a normal booking or a reserved booking.
6. Print Channel Bill
If the payment was made, then this option will be available. If not, it will be available later after the payment is finalized,
Channel-Queue.md
Channel Queue displays all of the available sessions for a selected date.
Channelling---Introduction.md
This module handles the appointment scheduling for consultant visits for outpatients.
The important features are listed below.
- Flexible Appointment Session Creation - By Weekday or Selected Date
- Flexible Fee Creation - Hospital Fees, Doctor Fees, etc.
- Booking Cancellations and Refunds
- Credit Booking and Settling later
- Session charges can be charged for Cash, Card, on-call, Agent
- Different Discounts for Members
- Discount Schemes for Staff Members
- Different charges for Foreigners if required
- Different Bill numbers generation strategies
- Change Patient names on approval from a supervisor
- Flexible Doctor Payments
- Agency Management including Agents can log and book if authorized
- Can be developed to communicate with channelling services if an API is given by the service provider
- Availability of Channelling Details to the general public through the website or Mobile App
- SMS or Email Notifications
CHAR-vs-VARCHAR-in-Relational-Databases.md
This page outlines the key differences between CHAR
and VARCHAR
data types used in relational databases like MySQL. These types are commonly used for storing string data but behave differently in terms of storage, performance, and usage.
CHAR
and VARCHAR
are both used to store character strings, but they differ in how the data is stored and handled. Choosing the correct type is important for performance and storage efficiency.
Feature | CHAR | VARCHAR |
---|---|---|
Storage Type | Fixed-length | Variable-length |
Length Padding | Pads with spaces to full length | No padding |
Performance | Slightly faster for fixed-size fields | More efficient for variable-length text |
Storage Efficiency | Wastes space for short values | More compact for short/variable data |
Max Length (MySQL) | Up to 255 characters (before MySQL 5.0.3) / 255 bytes | Up to 65,535 bytes (row size limit applies) |
Trailing Spaces | Trailing spaces are removed during comparison | Trailing spaces are preserved |
-
Use CHAR when:
- All values have the same length (e.g., fixed-length codes like country codes, gender).
- You prioritise slightly better performance over storage.
-
Use VARCHAR when:
- Data length varies significantly (e.g., names, addresses, descriptions).
- You want to minimise storage space.
Creating a table with both types:
CREATE TABLE employees (
emp_code CHAR(5),
emp_name VARCHAR(100)
);
Check-Entered-Data.md
* Item distributor
* Error detection
* Error detection by Date
* Error detection by report
* Department stock by batch minus
* Correction of issue to unit(Discount to margin)
* Correction of issue to unit(Reset gross net value)
* Correction of issue to unit(Reset gross net value to old only cost issue)
[Back](https://github.com/hmislk/hmis/wiki/Pharmacy-Administration)
Clinical-Queue.md
**Path:**
EMR > Clinical Queue

You can search for OPD visits by selecting a date, speciality, and doctor name and then selecting the "Search" button. Both completed visits and visits that are not completed will be listed for the selected criteria.
[Back](https://github.com/hmislk/hmis/wiki/Electronic-Health-Record-(EHR))
Cloud-Management.md
* [Granting Access to Google Cloud Management](https://github.com/hmislk/hmis/wiki/Granting-Access-in-Google-Cloud-Management)
* [Creating a New VM Instance in Google Compute Engine](https://github.com/hmislk/hmis/wiki/Creating-a-New-VM-Instance-in-Google-Compute-Engine)
* [Creating a New Firewall Policy in Google Cloud's VPC Network Firewall](https://github.com/hmislk/hmis/wiki/Creating-a-New-Firewall-Policy-in-Google-Cloud's-VPC-Network-Firewall)
* [Using Basic SSH Commands in Google Cloud's Browser-Based SSH for VM Instances](https://github.com/hmislk/hmis/wiki/Using-Basic-SSH-Commands-in-Google-Cloud's-Browser%E2%80%90Based-SSH-for-VM-Instances)
Code-Conventions.md
* Full Description need to be used as the name for the method
* Full Description as the name of variables for public and class variables
* Full Description as the name for local variables where methods expand than a single screen
* May use short names for local variables if the full span is visible within a single screen
Follow all Java Code Conventions
[Referance](https://www.oracle.com/technetwork/java/codeconventions-150003.pdf)
Collecting-Centres.md
# Sample Collection Center (SCC)
A place where materials derived from the human body are collected and delivered under specific conditions for clinical examination purposes under an agreement or contract with a medical laboratory.
A Sample Collection Center (SCC) can be an organization that falls into one of the four categories given below:
- **Type A**
- **Description:** A center collecting samples to its own laboratory.
- **Personnel:** Employees are either of the center, the laboratory, or its parent organization.
- **Type B**
- **Description:** A center collecting samples to laboratories, including its own laboratory.
- **Personnel:** Employees are either of the center, its own laboratory, or its parent organization.
- **Type C**
- **Description:** A center collecting samples to a laboratory that is not affiliated with the center or its parent organization.
- **Operations & Personnel Responsibility:** The laboratory or its parent organization is entirely responsible for day-to-day operations and the employees of the center.
### Summary
- SCCs collect and deliver human-derived materials for clinical examination.
- They operate under agreements or contracts with medical laboratories.
- They can be categorized into Type A, B, or C based on their relationships with laboratories and their personnel's affiliations.
[Back](https://github.com/hmislk/hmis/wiki/User-Manual)
combined.md
26-Week-Training-Schedule-for-Software-Trainee-Engineers.md
## **26-Week Training Schedule for Software Trainee Engineers**
### **Phase 1: Foundations of Software Engineering (Weeks 1-5)**
**Week 1: Refreshing Knowledge on General Software Engineering**
- Software Development Life Cycle (SDLC)
- Design Patterns and Best Practices
- Basic Version Control Concepts
**Week 2: Git & GitHub, CI/CD Pipelines**
- Git Workflow: Branching, Merging, Rebase
- GitHub: Issues, Pull Requests, Code Reviews
- Continuous Integration and Deployment (CI/CD) Concepts
**Week 3: Object-Oriented Programming (OOP) Concepts**
- Encapsulation, Inheritance, Polymorphism, and Abstraction
- SOLID Principles
- Java OOP Implementation
**Week 4: Java Fundamentals & Java EE/Jakarta EE Basics**
- Java Syntax, Exception Handling, Multithreading
- Java Collections, Streams, and Lambda Expressions
- Introduction to Java EE & Jakarta EE
**Week 5: Relational Database Management Systems (RDBMS) – MySQL**
- SQL Queries, Joins, Indexing
- Database Normalization
- MySQL Transactions & Stored Procedures
---
### **Phase 2: Web & Backend Development (Weeks 6-12)**
**Week 6: JavaServer Faces (JSF), Expression Language (EL), XHTML**
- Introduction to JSF and Component-based UI
- EL Expressions and Scopes
- JSF Managed Beans and Navigation
**Week 7: Java Persistence API (JPA) & Query Language (JPQL)**
- Entity Relationships & Lazy vs. Eager Fetching
- Writing Queries in JPQL
- Transactions and Entity Lifecycle
**Week 8: PrimeFaces (PF) & Bootstrap (BS) for UI Development**
- PrimeFaces Components & Theming
- Bootstrap for Responsive Design
- JSF Integration with PrimeFaces and Bootstrap
**Week 9: RESTful Web Services (JAX-RS) & API Development**
- REST Architecture Principles
- Implementing REST APIs using JAX-RS
- API Security (JWT, OAuth)
**Week 10: ORM with EclipseLink**
- Introduction to ORM & JPA Implementations
- EclipseLink Configuration and Caching
- Performance Optimization in ORM
**Week 11: Application Servers (Payara, WildFly, Tomcat)**
- Introduction to Java EE Application Servers
- Payara Deployment & Configuration
- Monitoring & Troubleshooting in Payara
**Week 12: Agile Development & Software Project Management**
- Scrum & Kanban Methodologies
- User Stories, Sprints, and Stand-ups
- Jira & Project Tracking Tools
---
### **Phase 3: Advanced Software Concepts (Weeks 13-18)**
**Week 13: Software Licensing (aGPL, MIT, etc.)**
- Open Source vs. Proprietary Licensing
- Compliance & Legal Considerations
**Week 14: Socket Programming (TCP/IP, Serial Communication)**
- Network Programming with Java Sockets
- Serial Communication Basics
- Handling Data Streams in Java
**Week 15: Introduction to Digital Health & Healthcare IT Standards**
- Overview of Digital Health Systems
- Role of IT in Healthcare and Challenges
**Week 16: Healthcare Interoperability Standards (HL7, FHIR, ASTM)**
- Introduction to HL7 & FHIR Frameworks
- Creating & Parsing HL7 Messages
- Implementing FHIR Resources
**Week 17: Medical Terminologies & Data Standards (LOINC, SNOMED, ICD-10, dm+d)**
- Introduction to Clinical Coding
- LOINC for Laboratory Data
- SNOMED CT & ICD-10 for Diagnoses
**Week 18: Data Protection & Compliance in Healthcare IT**
- Data Protection Act (DPA) & GDPR
- Secure Data Storage and Transmission
---
### **Phase 4: Software Development Lifecycle & Real-world Applications (Weeks 19-26)**
**Week 19: User Requirement Specification (URS) & Software Requirement Specification (SRS)**
- Writing URS & SRS Documents
- Functional vs. Non-functional Requirements
**Week 20: Software Quality Assurance (QA) & Testing**
- Unit Testing & Integration Testing
- Automated Testing Tools (JUnit, Selenium)
**Week 21: Software Deployment & Implementation**
- Deployment Strategies (On-premise, Cloud)
- Continuous Deployment Best Practices
**Week 22: Training & End-user Support**
- Creating Training Manuals & Documentation
- Conducting End-user Training
**Week 23: Customer Support & Post-Implementation Maintenance**
- Handling Bug Reports & Feature Requests
- Customer Service Best Practices
**Week 24: Hands-on Project – Digital Health System Implementation**
- Working on a Digital Health System Component
- Team Collaboration & Development
**Week 25: Presentation & Documentation Review**
- Finalizing Project Documentation
- Presenting Findings & Demonstrations
**Week 26: Evaluation & Feedback**
- Performance Review & Skill Assessment
- Future Career Pathways & Certifications
---
### **Final Notes:**
- **Trainers/Organizers:** Senior Software Engineers at CareCode
- **Training Mode:** Online/Physical (Hospital/Office)
- **Project-Based Learning:** Each trainee must contribute to a live project
- **Assessments:** Mid-course & Final Evaluation
[Back](https://github.com/hmislk/hmis/wiki/Developer-Manual)
About-Open-HMIS.md
# An Open-Source Hospital Management Information System Initiated by Dr M H B Ariyaratne
## Title
Open Source Hospital Management Information System
## Description
This is a comprehensive Hospital Information Management System that is knowingly used by more than 40 health care institutions. It has several modules that support most of the workflows of a modern hospital. Most of the differences in the requirements of different hospitals can be achieved through customization. The system has given priority to user-friendliness and speed of the system rather than the fancy decoration of the user interfaces loaded with colours and graphics. It has been tested extensively in production since 2015.
The system is mainly designed using Object Oriented Principles. The system design has always followed well tested and recognized data models like dm+d of NHS, UK. The system design is so robust and optimized so that it can easily accommodate new extensions for emerging requirements.
Java Enterprise Edition is used to develop the web application and RESTful server. The database management system can be selected on preferences of the implementing team, but MySQL or MariaDB is recommended. The technologies used with JavaEE include JSF, JPA and PrimeFaces. The lab middleware is developed with C#. The standalone applications consume RESTful services are developed using JavaSE.
## History
Dr M H B Ariyaratne is a medical doctor who developed an Electronic Medical Record (EMR) System for his general practice in 2004 using Microsoft Visual Basic 6 and MS-Access. Doctors who have seen this EMR requested him to give the system for them to use. AS more doctors used the EMR, their requirements were discussed and incorporated into the system systematically. Some of the doctors who were using the EMR were having clinical laboratories, medical channelling centres and hospitals. Then the system was added new modules to cover new requirements. In 2012, a new JavaEE based system was initiated as an Open Source Initiative hosted in GitHub under the MIT license. The students of Sri Lanka Institute of Advanced Technical Education at Labuduwa, Galle, were allocated during their training for The Higher National Diploma in Information Technology (HNDIT) programme facilitated by Mr Mr.K.M.G.T.R. Waidyarathne, a lecturer from the Department Of Information Technology. Some of the students continued to support the project after their graduation under financial support by Dr M H B Ariyaratne. Commercial support was made available for installations, user training, maintenance, cloud hosting and troubleshooting.
Installation: The installation is very easy for testing. Clone the project using Netbeans and configure a new database. Running the project will lead to an administer page to add an institution, department and a user. Configuration of hardware, operating system and GlassFish are discussed in detail in The Installation Manual.
## Usage
The features available to different roles of the users are stated in detail in the [User Manual](https://github.com/hmislk/hmis/wiki/User-Manual).
## Contributing
[Dr M H B Ariyaratne](https://github.com/buddhika75) - Initiated the Project, Main System Architect
Mr.K.M.G.T.R. Waidyarathne - Project Management
### Main Contributors to the Design
* [Dr M H B Ariyaratne](https://github.com/buddhika75)
* Dr Chrishantha Widisinghe
* Dr Jagath Samarasekara
* Dr Veditha Banduwardana
* Dr Gayaman Dissanayake
* Dr Harsha Meemaduma
* Dr A T C Kumara
* Dr Saranathilaka Danthanarayana
* Dr Bolonghoge Dayanath
* Dr K M P Keerthi
* Dr Anura Krishantha
### Main Software Developers
* [Mr Dushan Madhuranga](https://github.com/HNDITDushan)
* [Mr Lahiru Madhushanka](https://github.com/lahirumadushanka)
* [Dr M H B Ariyaratne](https://github.com/buddhika75)
* [Mr A C M Safrin](https://github.com/acmsafrin)
* [Mr K Pasan Anuradha](https://github.com/kpasan89)
* [Mr Rohan Jayasundara](https://github.com/rohanjayasundara)
* [Mr Dilshan Kanishka](https://github.com/dilshankanishka)
* [Ms Ravisarani Ranawaka](https://github.com/Ravisarani)
* [Ms Anushka De Silva](https://github.com/anukadesilva)
* [Mr Priyanka Sandaruwan](https://github.com/Sandaruwanp2s)
* [Mr Anura Wijesinghe](https://github.com/arunawijesinghe)
* [Mr Ruwan Tharaka](https://github.com/ruwantharaka)
* [Mr Gayan Malshan](https://github.com/Gayan830)
* [Mr Isuru Pathum](https://github.com/isurupathum1996)
* [Mr A R C Sanka](https://github.com/arcasanka)
* [Mr Senula Nanayakkara](https://github.com/Senula88)
* [Mr Pavan Thiwanka Madhushan](https://github.com/Thiwanka570)
* [Mr Pasindu Wathsara](https://github.com/PasinduW99)
* [Mr Damith Deshan](https://github.com/DamithDeshan)
* [Mr Lawan Chaamindu Jayalath Samarasekara](https://github.com/DARKDRAGON-LK)
### Quantity Control Feedback
* [Dr A N E M Gunasekara](https://github.com/niluka)
* Ms Nadeeka Darshani Wijesooriya
* [Mr Janith Liyanage](https://github.com/jkliyanage)
* [Ms D W C Piumini](https://github.com/piumini)
* [Ms Irani Madushika](https://github.com/Irani96)
* [Ms Deshani Pubudu ](https://github.com/DeshaniPubudu)
### Credits
Our contributors and Open Source Community for their knowledge and time. Healthcare Institutions provided financial supporters are listed below.
* Galle Cooperative Hospital, Galle, Sri Lanka - 2008 - 2018
* Ruhunu Hospital, Karapitiya - 2008 - 2019
* Ruhunu MediHospital, Hambanthota - 2012 Up to date
* Arogya Hospital, Tangalle - 2014 Up to date
* Arogya Channelling Centre, Tangalle - 2010 Up to date
* Arogya Pharmacy, Tangalle - 2015 Up to date
* St. George Hospital, Biyagama - 2016 Up to date
* Digasiri Hospital, Puttalama 2015 Up to date
* Metro Lab, Wadduwa 2018 Up to date
* Suwasarana Hospital, Ragama - 2016 Up to date
* Suwani Hospital, Galle - 2015 Up to date
* Sahana Medicare, Thissamaharamaya - 2012 Up to date
* Matara Nursing Home, Matara - 2008 - 2010
* BestLife Medical Centre, Kamburupitiya - 2008 - 2016
* New Pharmacy, Matara - 2014 Up to date
* Sri Katha Hospital, Dangedara - 2014 up to date
* Suwasahana Medical Center, Kataragama - 2015 Up to date
* Suwana Medical Center, Akuressa - 2015 Up to date
* New Multi Drugs, Galle - 2015 up to date
* Matara Pharamcy, Akuressa, 2013 up to date
* Matara Pharmacy, Deniyaya, 2013 up to date
* Matara Pharmacy, Urubokka, 2013 - 2015
* Matara Pharmacy, Galle, 2015 up to date
* Supipi Medical Centre, Kamburupitiya 2011 up to date
* Ahangama Medical Centre, Ahangama - 2008 up to date
* Weligama Medical Center, Weligama - 2009 up to date
* Osethra Medical Centre, Beliatta - 2010 up to date
* Isuru Medihouse, Hambanthota - 2014 up to date
* Ruhunu Medihouse, Ambanlanthota - 2014 up to date
* Horizon Medical Centre, Deberawewa - 2013 up to date
* Pubudhu Medical Centre, Hakmana - 2008 - 2014
* City Lab, Matara - 2013
* Roseth Hospital, Ambalangoda - 2014 tp to date
* Richmond Laboratory Services, Galle - 2010 up to date
* Clinical Laboratory , Boossa - 2010 up to date
* Baddegama Medical Services, Baddegama - 2014 up to date
* Sahana Medicare, Thissamaharamaya - 2014 up to date
* Medray Medical Laboratory, Matara - 2014 up to date
* Agunukolapelssa Medical Centre, Agunukolapelessa - 2014 up to date
* Holton Hospital, Walasmulla - 2015 up to date
* Unawatuna Medical Centre, Unawatuna, Galle 2015 up to date
* Kegalu Medi Lab, 2014 up to date
* Raliable Medi Lab, Monaragala - 2016
## License
MIT License details are attached as the [LICENSE.md](https://github.com/hmislk/hmis/blob/master/LICENSE.md)
Accounting-Module-Introduction.md
# Introduction
The Accounting Module within CareCode’s Hospital Information System (HIS) is designed to streamline financial operations and ensure comprehensive financial management across the entire hospital. This module integrates seamlessly with other hospital systems, providing accurate financial tracking, reporting, and compliance with accounting standards.
# Key Features and Functionalities
## Financial Transactions Management
* **Comprehensive Transaction Handling:** Manages all financial transactions, including patient billing, payments, procurement expenses, and payroll, ensuring all financial data is accurately captured and processed.
* **Real-Time Data Entry:** Immediate recording of transactions as they occur, providing up-to-date financial information and enhancing the accuracy of financial records.
## Budgeting and Financial Planning
* **Budget Management:** Supports the creation and monitoring of budgets for different departments or projects, allowing hospital administrators to keep financial spending within approved limits.
* **Forecasting Tools:** Provides forecasting tools to help predict financial outcomes based on current trends and historical data, aiding in strategic financial planning.
## Compliance and Reporting
* **Regulatory Compliance:** Ensures that all financial processes comply with local and international accounting standards, reducing the risk of non-compliance penalties.
* **Automated Reporting:** Generates a variety of financial reports, such as income statements, balance sheets, and cash flow statements, facilitating easy review and decision-making.
## Cost Control and Analysis
* **Cost Tracking:** Tracks costs associated with specific departments, services, or activities, providing detailed insights into where resources are being used and identifying potential areas for cost reduction.
* **Profitability Analysis:** Analyzes the profitability of various hospital services and departments, supporting management in making informed decisions about resource allocation.
## Integration with Other Modules
* **Seamless Integration:** Fully integrated with other modules such as Pharmacy, Outpatient, and Inpatient Services, ensuring that all financial data from various departments is synchronized and accurately reflected in the hospital’s overall financials.
* **Vendor and Inventory Management:** Manages payments to vendors and tracks inventory levels, integrating supply chain costs into the hospital’s financial system.
## Payment Processing and Receivables Management
* **Efficient Payment Processing:** Streamlines the processing of incoming and outgoing payments, improving cash flow management.
* **Receivables Tracking:** Monitors accounts receivable, ensuring timely collection of payments and maintaining healthy financial operations.
# Conclusion
The Accounting Module is a crucial element of CareCode’s HIS, providing robust financial management capabilities that are essential for the efficient and effective operation of the hospital. By offering comprehensive tools for financial tracking, budgeting, and compliance, this module supports the hospital in maintaining financial health and sustainability, ultimately enhancing the quality of healthcare services provided.
[Back](https://github.com/hmislk/hmis/wiki/Accounting-Module)
Accounting-Module---Cashier-Summaries.md
# Accounting Module - Cashier Summaries
### Menu Path:
Menu > Reports > Cashier Reports > All Cashier Summary
### Steps:
1. Select Dates: Choose the "From" and "To" dates.
2. Select Additional Filters: Select Institution, Sight, and Department.
3. Click Process.
4. View Results:
A list of cashiers will be displayed along with additional information such as Cash, Card, Voucher, and Grand Total (during their shift).
Navigation Options for Each Cashier:
1. Cashier Summary
2. Cashier Details
3. Bill Types
4. Bill List
5. Payment List
### Cashier Summary
The cashier summary will display all the data related to payments, collections, cancellations, and refunds in each department in the selected institution.
### Cashier Details
The Cashier Details will display all data related to the bills processed by the selected cashier, which includes Date & Time, Bill No., Bill Type, Patient, Net Total, Cash Amount and Credit Amount.
### Bill Types
By selecting Bill types we can view data about bills including bill type, atomic bill type, gross value of the bill, discounts and net value.
### Bill List
By selecting Bill List we can view data such as bill no., bill class, payment method, date/time, user, status, gross value, discount, and net value.
### Payment List
By selecting payment list we can view data such as payment ID, Bill ID, Bill no., Payment creator, current holder, date, payment method, Atomic bill type, Institution, department, and value of the bill.
[Back](https://github.com/hmislk/hmis/wiki/Accounting-Module)
Accounting-Module.md
* [Introduction](https://github.com/hmislk/hmis/wiki/Accounting-Module-Introduction)
* [Cashier Summaries](https://github.com/hmislk/hmis/wiki/Accounting-Module-%E2%80%90-Cashier-Summaries)
[Back](https://github.com/hmislk/hmis/wiki/User-Manual)
Actual-Medicinal-Product-Packs-(AMPPs).md
## Overview
Actual Medicinal Product Packs (AMP Packs) represent the tangible and physical packaging in which medicinal products are dispensed and administered to patients. (Ref VMPP, AMP)
## Table of Contents
1. Introduction to AMP Packs:
> * Definition of Actual Medicinal Product Packs and their essential role in the physical presentation of drugs.
> * Significance in ensuring accurate dispensing, patient understanding, and regulatory adherence.
2. Regulatory Compliance:
> * Exploration of how AMP Packs align with regulatory requirements and standards.
> * Importance in meeting packaging and labeling guidelines for safety and legal compliance.
3. Pharmacy Dispensing Practices:
> * Practical considerations for pharmacists in managing and dispensing AMP Packs.
> * Strategies for efficient stock management, labeling, and minimizing medication errors.
4. Patient-Centric Perspective:
> * Consideration of AMP Packs from the patient's viewpoint and its impact on adherence.
> * Importance of clear and patient-friendly labeling for safe and effective medication use.
5. Integration with Inventory Systems:
> * Real-world applications of AMP Packs in pharmacy inventory management.
> * Enhancing accuracy in stock control, expiration tracking, and recall procedures.
6. Contributing to AMP Packs Information:
> * Guidelines for contributing to the classification and understanding of AMP Packs.
> * Best practices for maintaining accurate and up-to-date information in pharmacy systems.
## Example
* Panadol 500 - 1000 tablet pack (Paracetamol 500mg tablet BP - 1000 tablet pack, Panadol 500)
***
[Back to Medicines](https://github.com/hmislk/hmis/wiki/Medicines)
Actual-Medicinal-Products-(AMPs).md
## Overview
Actual Medicinal Products (AMPs) form the tangible and physical entities that are administered to patients for therapeutic purposes.
## Table of Contents
1. Introduction to AMPs:
> * Definition of Actual Medicinal Products and their central role in healthcare.
> * Significance in ensuring patient safety and effective treatment.
2. Regulatory Compliance:
> * Exploration of how AMPs align with regulatory frameworks and approval processes.
> * Importance in meeting quality standards, safety requirements, and legal obligations.
3. ATC Classification System Integration:
> * Understanding how AMPs are classified within the Anatomical Therapeutic Chemical (ATC) system.
> * Relationship with other components such as Virtual Medicinal Products (VMPs) and therapeutic moieties.
4. Patient-Centric Perspective:
> * Consideration of AMPs from the perspective of patient education and adherence.
> * Importance in promoting understanding and compliance with medication regimens.
5. Pharmacy Inventory Management:
> * Practical applications of AMPs in pharmacy inventory, dispensing, and documentation.
> * Strategies for efficient stock management and minimizing medication errors.
6. Contributing to AMP Information:
> * Guidelines for contributing to the classification and understanding of AMPs.
> * Best practices for maintaining accurate and up-to-date information.
Example
* Paracetamol 500mg tablet (SPMC) (Paracetamol 500mg tablet BP)
* Panadol 500 (Paracetamol 500mg tablet BP)
* Zithrox 250 (Azithromycin 250mg tablet BP)
* Zithrox 500 (Azithromycin 250mg tablet BP)
* Paramol 500 (Paracetamol 500mg tablet BP)
***
[Back to Medicines](https://github.com/hmislk/hmis/wiki/Medicines)
Actual-Therapeutic-Moieties-(ATMs).md
## Overview
Actual Therapeutic Moieties (ATMs) are a critical component of the Anatomical Therapeutic Chemical (ATC) Classification System, contributing to the systematic categorization of drugs based on their actual therapeutic effects.
## Table of Contents
1. Introduction to ATMs:
> * Definition and significance of Actual Therapeutic Moieties in the context of the ATC Classification System.
> * Importance in accurately representing the therapeutic actions of drugs.
2. ATM Structure:
> * Exploration of the hierarchical structure of ATMs within the ATC system.
> * How ATMs align with Anatomical Main Groups, Therapeutic Subgroups, and other levels in the ATC classification.
3. ATMs vs. Virtual Therapeutic Moieties (VTMs):
> * Differentiating between ATMs and VTMs in drug classification.
> * Understanding the distinction between the intended and actual therapeutic effects of drugs.
4. Clinical Relevance:
> * Application of ATMs in clinical practice and decision-making.
> * How healthcare professionals utilize ATMs for precise drug selection and therapy management.
5. Integration in Pharmaceutical Databases:
> * Inclusion of ATMs in pharmaceutical databases for efficient drug information management.
> * Examples illustrating how ATMs enhance data accuracy and retrieval.
6. Contributing to ATMs:
> * Guidelines for contributing to the classification and understanding of ATMs in the ATC system.
> * Best practices for maintaining the relevance and accuracy of ATMs.
## Example
* Amoxicillin (SPMC)
* Azilide
***
[Back to Medicines](https://github.com/hmislk/hmis/wiki/Medicines)
Add-a-Consultant.md
* Navigate to Manage Staff Under Administration in the top menu.
* Choose Consultant from the left sidebar.
* Click the Add button first, then fill the right side form and click the Save button.
* Repeat these steps to add more Consultants.
[Back](https://github.com/hmislk/hmis/wiki/Manage-Staff)
Add-a-Doctor.md
* Navigate to Manage Staff Under Administration in the top menu.
* Choose Doctor(Excluding Consultants) or Doctor(Including Consultants) from the left sidebar.
* Click the Add button first and then give the necessary details click the Save button.
* Repeat these steps to add more doctors.
[Back](https://github.com/hmislk/hmis/wiki/Manage-Staff)
Add-a-new-user.md
### Steps for adding new User to the system. After the login to the system with administration privileges,
**(Administration menu -> Manage users -> Add new User)**
1. Go to Administration drop down on the main menu and select Manage Users section.
2. After click the manage user direct to the new window and click on Add New User on the left sidebar.
3. Then fill in the required details and click the Save User button to add the new user.
For the relevant required data for a new user,
Name, Address, Mobile, Username and Password are mandatory. And specially username must be unique. If already username exists you have to change it.
Other details are not mandatory(Optional) but good to have for system preferences.
[Back](https://github.com/hmislk/hmis/wiki/User-Management)
Add-Anitbiotics.md
* Go to Administration in the top menu and click Manage Lab Services.
* From the left side menu, choose Add Anitbiotics.
* Fill the form with the necessary details and click the Save button.
* Repeat these steps to add more Anitbiotics.
[Back to Manage Lab Services](https://github.com/hmislk/hmis/wiki/Manage-Lab-Services)
[Back to Manage Metadata](https://github.com/hmislk/hmis/wiki/Manage-Metadata)
Add-Category.md
* Go to Administration in the top menu and click Manage Lab Services.
* From the left side menu, choose Add Category.
* Fill the form with the necessary details and click the Save button.
* Repeat these steps to add more categories.
[Back to Manage Lab Services](https://github.com/hmislk/hmis/wiki/Manage-Lab-Services)
[Back to Manage Metadata](https://github.com/hmislk/hmis/wiki/Manage-Metadata)
Add-Containers.md
* Go to Administration in the top menu and click Manage Lab Services.
* From the left side menu, Add Containers.
* Fill the form with the necessary details and click the Save button.
* Repeat these steps to add more Containers.
[Back to Manage Lab Services](https://github.com/hmislk/hmis/wiki/Manage-Lab-Services)
[Back to Manage Metadata](https://github.com/hmislk/hmis/wiki/Manage-Metadata)
Add-Doctor-Specialities.md
* Navigate to Manage Staff Under Administration in the top menu.
* Choose Doctor Specialities from the left sidebar.
* Click the Add button first, then give Speciality Name and Income Name and Save button.
* Repeat these steps to add more Doctor Specialities.
[Back](https://github.com/hmislk/hmis/wiki/Manage-Staff)
Add-Estimated-Professional-Fee.md
**Path:**
Inward > Services and Items > Add Estimated Professional Fee
**1. Search and Select BHT**
You can search using the patient's name or the BHT number.
**2. Select Speciality**
**3. Select Staff/Doctor**
**4. Enter the amount and the time**
**5. Select "Add"**

[Back](https://github.com/hmislk/hmis/wiki/Inward)
Add-Investigation.md
Path: Administration > Manage Lab services > Manage Investigations > Add Investigation
First, fill in the fields provided, which includes,
* Basic Details
> * Name
> * Printing Name
> * Full Name
> * Short Name
> * Item Code
> * Description
> * Category
> * Sample
> * Container
> * Analyzer
> * Priority
> * Report Category
> * Report Format
> * Serial Numbers
> * Worksheet
> * Inward Category
> * Is a Master Item
> * Has a Report Format
> * Multiple Reports Allowed
> * Reports Allowed
> * Alternative Report Allowed
> * Reports Allowed
> * Report Upload Allowed
> * Upload Allowed
> * Master Item Reference
> * Billed as a separate investigation
> * ui-button
> * Reported as a separate investigation
> * ui-button
> * Institution
> * Department
* Pricing Details
> * Can change rate during Billing
> * Rates visible during Inward Billing
> * Margins Not Allowed
> * Request for Quentity
> * Discount Allowed
> * VATable
> * VAT Percentage
* Editing Details
> * ID
> * Item Inactive
> * Created By
> * Created At
> * Last Editor
> * Last edited at
* Manage
Manage Format - Single Item
Manage Format - All Items
Export Format
Manage Calculations
Manage Replaceable Investigations
Manage Format Components
Manage Prices
Manage Valuesets
Manage Flags
Dynamic Labels
Validators
Load Parent Investigation
List of Investigations
Manage Past Data
[Back](https://github.com/hmislk/hmis/wiki/Manage-Investigations)
Add-New-Institution.md
Path: Administration > Manage Institutions > Manage > Manage Institutions

Here, all the available institutions will be displayed. By selecting an institution, you can see more details about the institution or edit the details.
To add a new institution, first select "Add". then fill in the institution details, such as,
* Basic Details
> * Name
> * Printing Name
> * Bill Prefix
> * Code
> * Parent
> * Route
> * Description
> * Type (ex: Agency, Bank Site, Branch, Collecting Centre Company, Credit Company, Dealer, Distributor, Educational Institute, Government Hospital, Importer, lab manufacturer, Non-Profit, Other Pharmacy, Private Practice, Store, Wholesaler)
> * Phone
> * Fax
> * Email
> * Address
> * Web
* Advanced Details
> * Point of Issue No.
> * Bank
> * Account No.
> * Credit Limit
> * Owner Email
> * Email Sending Account
> * Email Sending Password
> * SMS Sending Username
> * SMS Sending Password
> * SMS Alias
After filling in the information select "Save". Then a new institution will be added.
[Back](https://github.com/hmislk/hmis/wiki/Manage-Institutions)
Add-new-patient.md
**Path:**
EMR > Add New Patient

Then enter Patient Demographic Details such as,
* Title
* Name
* Sex
* Age
* Date of Birth
* Phone Number
* Mobile Number
* Email, NIC / Passport No
* Address
* Area
* PHN Number
* MRN No
* Comments
* Patient Account
* Mark as foreigner
* Credit Limit
Select "Save" to register the patient.
[Back](https://github.com/hmislk/hmis/wiki/Electronic-Health-Record-(EHR))
Add-Outside-Charges.md
**Path:**
Inward > Services and Items > Add Outside Charges
**1. Search and Select BHT**
You can search using the patient's name or the BHT number.
**2. Select Inward Charge Type**
**3. Select the institution from which the charge is from**
**4. Enter the amount and description**
**4. Select "Add"**
Then the Charge will be added to the selected BHT.

[Back](https://github.com/hmislk/hmis/wiki/Inward)
Add-Privileges-To-Users-By-Role.md
Path: Administration > Manage Users > Add Privileges To Users By Role

First, select the user. Then select the user role, institution, and department. Then select "Add user and role privileges to department", the user will have all the necessary privileges for that role for the selected department.'
[Back](https://github.com/hmislk/hmis/wiki/User-Management)
Add-Professional-Fee.md
**Path:**
Inward > Services and Items > Add Professional Fee
**1. Search and Select BHT**
You can search using the patient's name or the BHT number.
**2. Select Speciality**
**3. Select Staff/Doctor**
[Back](https://github.com/hmislk/hmis/wiki/Inward)
Add-services-and-Investigations.md
**Path:**
Inward > Services and Items > Add services and Investigations
**1. Search and select BHT**

**2. Add service/ Investigation**

Under Item requests services and investigations are available. You can search for and add items as necessary.
After an item is added it will be displayed under bill items.
After all the necessary items are added select "Settle" to finalize.
**3. Print receipt**

[Back](https://github.com/hmislk/hmis/wiki/Inward)
Add-Specimans.md
* Go to Administration in the top menu and click Manage Lab Services.
* From the left side menu, choose Add Category.
* Fill the form with the necessary details and click the Save button.
* Repeat these steps to add more categories.
[Back to Manage Lab Services](https://github.com/hmislk/hmis/wiki/Manage-Lab-Services)
[Back to Manage Metadata](https://github.com/hmislk/hmis/wiki/Manage-Metadata)
Add-TImed-Services---Inward.md
**Path:**
Inward > Services and Items > Add Estimated Professional Fee
**1. Search and Select BHT**
You can search using the patient's name or the BHT number.
**2. Select a timed service**
**3. Enter Start Time**
**4. Select "Add Service"**

[Back](https://github.com/hmislk/hmis/wiki/Inward)
Add-Timed-Services.md
**Path:**
Theatre > Add Timed Services

1. Search and select BHT.
[Back](https://github.com/hmislk/hmis/wiki/Theatre-Management-Module)
Add-To-Stock.md
Path: Pharmacy > Retail Transactions > Add To Stock
Add to stock is used to add the items that were billed for cashier but not sold back into the stock.

First, search the sale for cashier bills using the date range. Then select the bills that need to be added back into the stock. Then select add to stock.
Then, a Pharmacy Add to Stock Bill will be printed.

[Back](https://github.com/hmislk/hmis/wiki/Pharmacy-Sale)
Add-Unit.md
Path: Administration > Pharmaceutical Management > Pharmaceutical Fundamentals > Add Unit

To add a new unit, first, enter the unit name. Then select whether the unit is a strength unit, issue unit, duration unit, or Frequency Unit.
If it is a duration unit, add the duration in hours. If it's a frequency unit, add the frequency in hours.
Then select "Save" to save the new unit.
[Back](https://github.com/hmislk/hmis/wiki/Pharmaceutical-Management)
Adjustment-Category.md
adjustment categories refer to classifications used to categorize various types of adjustments made within pharmaceutical operations or management.
e.g.
1. Inventory Adjustment
2. Production Adjustment
3. Quality Adjustment
4. Regulatory Adjustment
5. Supply Chain Adjustment
[Back](https://github.com/hmislk/hmis/wiki/Pharmaceutical-Fundamentals)
Admission-Items-and-Fees.md
Path: Administration > Manage Inpatient Services > Admission Types > Inpatient Services

First, select the admission type, then select "Press". Now, select an inward service and select "Add" to add that service to the admission.
[Back](https://github.com/hmislk/hmis/wiki/Manage-Inpatient-Services)
Admissions-Search.md
**Path:**
Inward > Search > Admissions
You can search admissions using,
* Date Rangere
* BHT No.
* Patient Name
* Patient Phone
* Patient NIC/ Passport
* Referring Doctor
* Status
> * Any Status
> * Admitted but not discharged
> * Discharged but final bill not completed
> * Discharged and final bill completed
* Admission Type
* Institution Type
* Site
* Department

Under status, we can see whether the patient is discharged or not and also whether the final bill is completed or not.
Under actions, you have the option to view the patient profile and the patient dashboard.
[Back](https://github.com/hmislk/hmis/wiki/Inward)
Admit-a-Patient.md
**Path:**
Inward > Admissions > Patient Admit

**1. Enterr Patient Information**
You can quick search the patient using the phone number. If the patient is already registered, patient information will be filled automatically, If not you can enter patient details manually.
**2. Add Patient Allergies**
If the patient hass any allergies you can add them.
**3. Enter Admission Details**
You canenetr admission details suvch as Admitted Time, Consultant, Referring Consultant, Medical Officer, OPD Doctor, Doctor who referred the patient, Staff who referred the patient, Person who referred the patient, Referral Institution, Workplace, Referral Number.
**4. Enter Gurdian Details**
**5. Enter payment details**
Select a suitable payment method. If the patient is a foreigner select the option "mark forigner"
**6. Select admisson type**
BHT, CT Card, or OPD card (Then BHT number will be generated automatically)
**7. Enter room number**
**8. Enter comment(Optional)**
**9. Select "Admit"**
**10. Print ward admission**

[Back](https://github.com/hmislk/hmis/wiki/Inward)
Analyzer-Interfacing.md
Analyzer Interfacing
Module - Lab (LIMS)
## Analyzers Type -
* Biochemistry (SGOT, SGPT, Serum Creatinine)
* Haematology - (FBC)
* Hormonal - TSH, Ferritin
* Electrolyte - Na, K, Cl, Ca
* Other - HbA1C
## Communication Method
Unidirectional
Bidrecrection
# Physical Connection
* TCP/IP
* Comport
# Standards
* ASTM (V1, V2)
* HL7
* FHIR
LIMS Characters
* Analyzer
* Department Analyzer
When an order is placed for a patient > Patient Investigation Objects are created for Investigations
Lipid Profile > one Patient Investigation
Liver Profile > One Patient Investigation
Patient Sample
Created at the time of Barcode Generation
Container *
Components of an Investigation
(Analyzer *)
(Department *)
Examples of Having Components - Blood Sugar Series - FBS/ Post Break Fast, Pre Lunch, Post Lunch, Pre Dinner. Post Dinner
Patient Sample Run
Phlebotomy
Barcode Generation
[Back](https://github.com/hmislk/hmis/wiki/LIMS-Knowledgebase)
Anatomical-Therapeutic-Chemical-(ATC)-Classification-System.md
## Overview
The ATC Classification System is a hierarchical system for classifying drugs based on their therapeutic use and chemical characteristics. Developed by the World Health Organization (WHO), it provides a standardized way to categorize medications, facilitating communication and research in the field of pharmacy and medicine.
## Structure
The ATC code consists of seven alphanumeric levels, each representing a different aspect of drug classification:
**1. Anatomical Main Group (1st level):** Represents the main anatomical or therapeutic group. Example: A for Alimentary Tract and Metabolism.
**2. Therapeutic Subgroup (2nd level):** Further specifies the therapeutic class. Example: A02 for Drugs for Acid-related Disorders.
**3. Pharmacological Subgroup (3rd level):** Describes the drug's pharmacological action. Example: A02B for Drugs for Peptic Ulcer and Gastroesophageal Reflux Disease (GERD).
**4. Chemical Subgroup (4th level):** Identifies the chemical structure of the drug. Example: A02BA for H2-receptor antagonists.
**5. Chemical Substance (5th level):** Specifies the exact substance or compound. Example: A02BA02 for Ranitidine.
**6. ATC Level 6:** Additional subdivisions for specific formulations or combinations.
**7. ATC Level 7:** Represents individual drug products.
## Benefits
**1. International Standardization:** ATC provides a globally recognized standard for classifying drugs, enhancing communication among healthcare professionals, researchers, and regulatory authorities.
**2. Research and Analysis:** Facilitates systematic data analysis and research on drug utilization, prescribing patterns, and pharmacoeconomic.
**3. Clinical Decision Support:** Aids healthcare practitioners in selecting appropriate drugs for specific therapeutic categories.
## Usage
**1. Database Integration:** ATC codes are commonly used in pharmaceutical databases, enabling efficient organization and retrieval of drug information.
**2. Medical Coding:** Widely employed in medical coding systems, supporting accurate documentation and billing in healthcare settings.
## Resources
* [WHO]( https://www.who.int/tools/atc-ddd-toolkit/atc-classification#:~:text=In%20the%20Anatomical%20Therapeutic%20Chemical,groups%20at%20five%20different%20levels)
* [WHO Collaborating Centre for Drug Statistics Methodology](https://www.whocc.no/atc_ddd_index/)
***
[Back to Pharmaceutical Fundamentals](https://github.com/hmislk/hmis/wiki/Pharmaceutical-Fundamentals)
Anatomical-Theraputic-Chemical-(ACT)-Classification.md
The Anatomical Therapeutic Chemical (ATC) Classification System is a widely used standardized classification system for drugs. It was developed by the World Health Organization (WHO) collaborating with the Center for Drug Statistics Methodology and was first published in 1976. The ATC system is designed to categorize pharmaceutical substances according to their therapeutic, pharmacological, and chemical properties.
The ATC system classifies drugs based on three main characteristics:
* **Anatomy**: The organ or system on which the drug acts (e.g., the nervous system, the cardiovascular system)
* **Therapeutics**: The therapeutic effect of the drug (e.g., antibiotics, antidepressants)
* **Chemistry**: The chemical properties of the drug (e.g., steroids, non-steroidal anti-inflammatory drugs)
The ATC system has a hierarchical structure with five levels of classification:
> 1. First level: Anatomical main group
> 2. Second level: Therapeutic subgroup
> 3. Third level: Pharmacological subgroup
> 4. Fourth level: Chemical/therapeutic/pharmacological subgroup
> 5. Fifth level: Chemical substance
## First level: Anatomical main group
The first level of the ATC code consists of 14 anatomical main groups, which are represented by a single letter:
- A: Alimentary tract and metabolism
- B: Blood and blood-forming organs
- C: Cardiovascular system
- D: Dermatologicals
- G: Genito-urinary system and sex hormones
- H: Systemic hormonal preparations, excluding sex hormones and insulins
- J: Anti-infectives for systemic use
- L: Antineoplastic and immunomodulating agents
- M: Musculoskeletal system
- N: Nervous system
- P: Antiparasitic products, insecticides, and repellents
- R: Respiratory system
- S: Sensory organs
- V: Various
## Second level: Therapeutic subgroup
The second level (therapeutic subgroup) is represented by two digits.
> e.g., N02 for analgesics, C01 for cardiac medicines
## Third level: Pharmacological subgroup
The third level (pharmacological subgroup) by one letter.
> e.g., N02A for opioids, C01A for cardiac glycosides
The second and third levels provide more specific classifications within each anatomical main group.
## Fourth level: Chemical/therapeutic/pharmacological subgroup
The fourth level further specifies the substances based on their chemical or pharmacological properties. This level is represented by one letter.
> e.g., N02AA for morphine derivatives, C01AA for digitalis glycosides
## Fifth level: Chemical substance (two digits)
The fifth level represents specific chemical substances within each subgroup and is represented by two digits.
> e.g., N02AA01 for morphine
By combining codes from each level, a specific drug can be identified within the ATC classification system. For example, the code "C10AA" represents "C" for the cardiovascular system, "10" for lipid-modifying agents, and "AA" for "HMG CoA reductase inhibitors," which are commonly known as statins.
The ATC classification system simplifies drug utilization studies, pharmacovigilance, and monitoring across healthcare, pharmaceutical research, and regulatory domains. It provides a standardized method for comparing and analyzing drug usage patterns globally, aiding in understanding trends over time and across different populations. Researchers utilize it to track changes in drug utilization, and assess safety and efficacy, while regulators rely on it for informed decision-making regarding drug approvals and marketing. Healthcare professionals, pharmacists, nurses, and researchers benefit from its use in comparing drugs and conducting more effective studies. Importantly, the ATC system does not recommend specific drugs but enhances understanding and comparison across pharmaceutical agents.
[Back](https://github.com/hmislk/hmis/wiki/Knowledgebase)
API.md
API
Security
No Security
Basic Security - Header (Password + Username Encrypted)
API Key Based Security - Key, Value - can have expiary
OAuth 2.0
KeyCloack
Application-Options.md
Path: Administration > Manage Insttituions > Application Options

A list of different options available for the application will be listed here along with the type and value. To remove an option select the "delete" button and to change the value of an option select the "edit" button, make the necessary changes, and then select "Save".

[Back](https://github.com/hmislk/hmis/wiki/Manage-Institutions)
Application-Preferences.md
### Frontend
This gives the option to decide if the website has a frontend, add a template, add a logo URL, login header and login text.
### SMS
Here you can add:
SMS URL
Authentication
SMS Username Parameter Name
SMS Username
SMS Password Parameter Name
SMS Password
SMS User Alias Parameter Name
SMS User Alias
Phone Number Parameter Name
Message Parameter Name
### Patient registration
Here you can select whether the patient needs a Phone number, NIC/Passport or Area to register. You can also enter the regex pattern for the patient's name, phone number, email, and NIC/Passport. The case of the patient name can also be set.
### OPD
You can add a template for SMS on the OPD bill settling and decide whether OPD billing can be done after the shift started.
### Channelling
### InWard
Here you can enter the admission statement in English and/or Sinhala.
### Miscellaneous
Options available under Miscellaneous include,
Long Date Format
Short Date Format
Long Date and Time Format
Short Date and Time Format
Long Time Format
Short Time Format
Family Membership
Membership Expires
Institution
Logo Name
Discount Scheme Validation
Length of OTP Indexes
[Back](https://github.com/hmislk/hmis/wiki/Manage-Institutions)
Architecture.md
**Single-Tier Architecture:**
All components (user interface, business logic, and data storage) run in a single system or application. There is no separation between layers.
Example: A desktop application like Microsoft Access where the user interface, processing, and database are within one system.
**Two-Tier Architecture:**
The application is divided into two layers:
1. Client Tier (Presentation Layer) – user interface and basic validation.
2. Server Tier (Data Layer) – database server handling data storage and queries.
Example: A client application (like a desktop app) directly communicating with a database (such as MySQL).
**Three-Tier Architecture:**
The application is divided into three layers:
1. Presentation Tier – user interface.
2. Business Logic Tier – processes data and applies rules.
3. Data Tier – manages data storage and retrieval.
Example: A web application with a front-end (HTML/JS), back-end server (Java EE), and a database (MySQL).
**Multi-Tier Architecture:**
Extends the three-tier model by adding more specialised layers, such as:
- Security Layer
- Caching Layer
- API Layer
- Integration Layer
This improves scalability, flexibility, and maintenance in large systems.
ASTM-Protocol-(ASTM-E1394-ASTM-E1381).md
## Overview of ASTM E1394 and ASTM E1381
ASTM E1394 and ASTM E1381 are standards developed by ASTM International that focus on the electronic transmission of data between clinical laboratory instruments and computer systems. These standards are essential for ensuring interoperability and effective communication in clinical settings.
## ASTM E1394: Standard Specification for Transferring Information
### Scope and Purpose
ASTM E1394 provides a framework for the two-way digital transmission of requests and results between clinical instruments and computer systems. It aims to standardize the conventions required for the interchange of clinical results and patient data, facilitating a logical link for communication in a standardized format. This standard is particularly relevant for text-oriented clinical instrumentation, covering aspects such as:
- **Message Content**: Specifies the structure and content of messages exchanged between instruments and computer systems.
- **Data Elements**: Defines how data elements should be represented within the message structures.
- **Flexibility**: Allows for the addition of new fields or record types to accommodate evolving testing methodologies.
### Message Structure
The standard delineates a hierarchical message structure that includes various record types:
- **Level 0**: Message header and terminator.
- **Level 1**: Patient records, request information, and scientific records.
- **Level 2**: Test order records.
- **Level 3**: Result records.
Comment records can be inserted at any level, providing contextual information related to preceding records.
### Significance
The significance of ASTM E1394 lies in its ability to enhance data flow between clinical instruments and computer systems, ensuring that demographic and test information can be transmitted efficiently. This standard supports the implementation of successful interfaces within clinical environments by providing clear guidelines on message content and structure.
## ASTM E1381: Standard Specification for Low-Level Protocol
### Scope and Purpose
ASTM E1381 focuses on the low-level protocol necessary for the electronic transmission of digital information between clinical laboratory instruments and computer systems. This standard is crucial for automated instruments that measure parameters from patient samples, ensuring that results can be processed, stored, or reported effectively[2][4].
### Key Components
The specification outlines several key components related to communication protocols:
- **Physical Layer**: Describes the electrical and mechanical connections between instruments and computers, including connector types and signal characteristics.
- **Data Link Layer**: Covers methods for establishing communication, error detection, error recovery, and message transmission. This layer manages how messages are sent and received, including handling acknowledgments and managing data link connections[2][3].
### Communication Process
The communication process outlined in ASTM E1381 includes:
- **Establishment Phase**: Initiating a connection between devices.
- **Transfer Phase**: Sending messages in frames, with provisions for error checking through checksums.
- **Termination Phase**: Properly closing the connection after data transfer is complete.
## Conclusion
Both ASTM E1394 and ASTM E1381 play critical roles in ensuring effective communication between clinical laboratory instruments and computer systems. While E1394 focuses on message content and structure, E1381 provides the necessary low-level protocols for data transmission. Together, these standards facilitate accurate data exchange, which is vital for patient care in clinical settings.
Citations:
[1] https://img.antpedia.com/standard/files/pdfs_ora/20230612/astm/E/E%201394%20-%2097.pdf
[2] https://www.astm.org/e1381-95.html
[3] https://www.medteh.info/_fr/140/XS_ASTM_Rev2.5.pdf
[4] https://cdn.standards.iteh.ai/samples/8091/36c8b26a235545f9945225dd34690a4c/ASTM-E1381-95.pdf
[5] https://clsi.org/media/2424/lis02a2e_sample.pdf
[6] https://standards.globalspec.com/std/160641/astm-e1394
[7] https://arrow.tudublin.ie/cgi/viewcontent.cgi?article=1017&context=teapotcon
[Back](https://github.com/hmislk/hmis/wiki/Knowledgebase)
Base-Item-Fees.md
**Path:**
Administration > Manage Pricing > Fees > Base Item Fees

When an item is selected all the fees currently available for that item will be listed here. To add a new fee select the "Add" button and fill the relevant information.

To remove a fee that was added to an item select the "Remove" button.
[Back](https://github.com/hmislk/hmis/wiki/Manage-Pricing)
Batch-Bill-Payments.md
Billing
Billing Types
1. Direct Billing - Order & Take Payments
2. Billing for Cashier - Order First - Payment Collection at Cashier
Bill Types
1. Batch Bill - COllection of all Department Bills for a single order session
2. Department Bills - One bill per performing department. May have one or more departments bills for a single order session. The total of bill values equal to the batch bill total
Director Billing Creates Following
1. Batch Bill - BilledBill
2. Department Bills - BilledBill
For each Department Bill > List of Bill Items & Bill Fees
Billing for Cashier
1. Batch Bill - Prebill
2. Department Bills - PreBills
For each Department Bill > List of Bill Items & Bill Fees - NOT Used in Performance Analytics. May not make the payment at the cashier. Therefore NOT counted.
Settling at Cashier
1. Batch Bill - Bill
2. Department Bills - Bills
For each Department Bill > List of Bill Items & Bill Fees - Used in Performance Analytics
Cancellation Type
1. Direct Bill Cancelation - Batch Bill
2.
Bill-Cancellation.md
### **Bill Cancellation Process in CareCode HIS**
The bill cancellation process in CareCode HIS follows a structured workflow to ensure accuracy, validation, and proper referencing. Below is a step-by-step description of the process.
---
#### **Selecting the BilledBill for Cancellation**
1. Identify the specific `BilledBill` to cancel.
2. Ensure the following verifications are completed before proceeding:
- **Not Cancelled Previously:** Confirm that the bill hasn’t been cancelled already.
- **No Returns Recorded:** If returns exist, they must be cancelled first before proceeding with the bill cancellation.
- **Drawer Balance Check:** Ensure that for payments made in cash or IOU, the drawer balance is checked. This step is not required for payments made via cards, patient deposits, etc.
- **Preference-Based Criteria:** Validate the cancellation request based on configured criteria, such as the allowed duration after the original billing.
---
#### **Creating a New CancellationBill**
1. **Copy Values from the Original BilledBill:**
- Clone all relevant attributes of the `BilledBill` into the new `CancellationBill`.
2. **Invert Financial Values:**
- Convert values such as:
- Gross Total
- Discount
- Net Total
- Tax
- Sum of Hospital Fees
- Sum of Staff Fees
- Inversion ensures that the cancellation bill reflects negative amounts.
3. **Replace Certain Values:**
- Update creator, creation timestamp (`createdAt`), and any other relevant metadata to reflect the current cancellation action.
4. **Add a Reference to the Original BilledBill:**
- The new `CancellationBill` will maintain a reference back to the cancelled `BilledBill`.
5. **Update References in the Original BilledBill:**
- Save the newly created `CancellationBill` with updated references in the original `BilledBill`.
---
#### **Creating Bill Items for the CancellationBill**
1. For each item listed under the original `BilledBill`, create a corresponding bill item for the `CancellationBill`.
2. Ensure that the cancellation bill items follow the same logic as the parent `CancellationBill`:
- Copy original item values.
- Invert necessary values.
- Replace metadata like creator and timestamps.
- Add appropriate references to the original `BilledBill` and the new `CancellationBill`.
---
#### **Creating Bill Fees for the CancellationBill Items**
1. For each fee associated with the original bill items, create a corresponding fee entry for the cancellation bill items.
2. Apply the same process followed for creating the `CancellationBill`:
- Copy and invert fee values.
- Replace relevant metadata.
- Maintain references between the original `BilledBill`, the new `CancellationBill`, the respective bill items, and their associated fees.
---
#### **Handling Payments for the CancellationBill**
1. **Invert Payments:**
- Reverse the payment values recorded in the original `BilledBill`.
2. **Modify Payment Methods if Required:**
- Use a new payment method if necessary. For instance, if a card payment is being refunded, the patient may receive cash instead.
---
#### **Updating the Drawer Balance**
1. Reflect the cancelled amounts in the drawer to ensure the balance stays accurate.
---
#### **Preparing for Print**
1. Prepare the necessary details for printing the `CancellationBill`, ensuring all references, fees, and payments are correctly reflected.
[Back](https://github.com/hmislk/hmis/wiki/Knowledgebase)
Bill-Fees.md
Setting up / Configuration
Item - Service, Investigation, Medicine, Inward Service, Channelling, etc
ItemFees - Name, Type (Hospital Fee, Staff Fee, Outside Fee, etc), FeeValue, ForeinerFee
No fees for Medicines
During Billing
Create a Bill
Bill Items are added to the Bill > Bill Item has references including Item, Bill
Bill Fees
Bill Fees are created as per the instructions given in the configuration phase.
Bill-Item.md
Bill Item
Define
Attributes
Bill * - 1 BillItem (Bidirectional)
Item * - 1 BillItem - (Unidirectional)
Rate
Qty
Value
Bill.md
### **OOP-Based Design of Orders and Bills in CareCode HIS**
In the CareCode Hospital Information System (HIS), the concept of an **Order, Bill, or Request** is modelled using Object-Oriented Programming (OOP) principles. This design ensures that every order or bill is represented as a well-defined object with attributes and relationships. Below is an overview of the core attributes and class hierarchy.
#### **Attributes of an Order/Bill/Request**
1. **Patient Attributes**
A patient object contains all the necessary details about the patient for whom the order or bill is generated.
2. **Bill Date and Time**
Records the exact date and time when the bill is issued.
3. **Bill Number**
A unique identifier assigned to each bill for reference.
4. **Total Price**
The total amount to be paid, including all bill items and fees.
5. **Referring Doctor**
The doctor who referred the patient for the relevant service or procedure.
6. **Bill Department**
The department where the bill is generated, typically the one responsible for collecting payments (e.g., OPD or Cashier).
7. **Bill Institution**
The healthcare institution responsible for generating the bill.
8. **To Department**
The department that provides the service (e.g., Radiology for X-rays or the Lab for blood tests). Revenue is attributed to this department.
9. **To Institution**
The institution where the service is rendered, which may differ from the billing institution.
10. **Bill Items**
Each bill contains multiple individual requests or services. For example, a single bill might contain requests for tests like FNAC, FBS, and CXR.
11. **Bill Fees**
Each service in a bill includes several associated fees, such as:
- Consultant fee
- Medical Officer fee
- Laboratory Technician (MLT) fee
- Hospital fee
These fees are encapsulated within the `BillFee` object and contribute to the overall bill item total.
12. **Gross Total, Discount, and Net Total**
- **Gross Total:** The sum of all fees before any deductions.
- **Discount:** Any reductions or discounts applied.
- **Net Total:** The final payable amount after discounts.
13. **Tax**
Applicable taxes added to the bill.
14. **Fee Summaries**
- Sum of Staff Fees
- Sum of Hospital Fees
- Sum of Collecting Centre Fees
(If the total is income for the institution, it is positive. If there are refunds or cancellations, it is negative.)
---
#### **Class Hierarchy: OOP Model of the Bill Object**
1. **`Bill` (Parent Class)**
The `Bill` class serves as the parent class, encapsulating all shared attributes and behaviour among its subclasses.
2. **Subclasses of `Bill`**
- **`PreBill`**
Represents a preliminary bill, which may be subject to modification before finalisation.
- **`BilledBill`**
A finalised bill that is issued to the patient. It maintains a reference to any cancelled or returned bills associated with it:
- **Cancellation Reference:** Points to a `CancelledBill` if the bill is voided.
- **Return Bills List:** A list of multiple `ReturnBills` if the patient returns parts of the service.
- **`CancelledBill`**
This object is created when a `BilledBill` is cancelled. It holds a reference back to the original `BilledBill`.
- **`ReturnBill`**
---
This OOP-based design ensures that every bill or order is accurately represented with a well-structured hierarchy. It supports tracking services across departments and institutions, capturing staff and hospital fees, and handling complex scenarios like cancellations and returns. This modular structure also enhances flexibility, allowing the system to cater to various billing workflows.
A concept in CareCOde HIS OOP-based Design
Order or a Bill or a Request
Attributes-
* Patient attributes. And patient object content all the patient details.
* Bill date
* Bill time
* Bill Number
* Total price
* Referring Doctor
* Bill Department - where the Bill is raised, the cash is collected, ex. A patient comes to OPD, taking money for any services given by any other department
* Bill Institution
* To Department - where the service is given. for example. in the above bill, X-Rays will be done by the Radiology Department and Investigations will be done by the Lab. Revenue is generated by this department.
* To Institution
* Bill Items - One bill/request consists of multiple individual requests. One Bill from OPD for Patient A, may have BillItems for FNAC, FBS, CXR
* Bill Fees - Has a reference to Bill Item as well. For Ex. FNAC has the following fees - Staff fee for Cosultant Pathologist, Staff Fee for Medical Officer, Staff Fee for MLT, Hospital Fee, Fees for the medical user, etc. Each is represented by BillFee. Bill Fee total is added to decide Bill Item Totals and then Bill Totals
* Gross Total
* Discount
* Net Total
* Tax
* Sum of Staff Fees
* Sum of Hospital Fees
# Sum of Collecting Centre Fees
(For totals, we the company gets income, they are plus, if cash going out, as in cancellation, refund, totals are Negatives)
Bill - Parent Class
Sub Classes
* PreBill -
* BilledBill - has a reference to cancelleBill as CancelBill, no referance to a single ReturnBill, has a list of returnBills.
* CancelleBill - when a BilledBill is cancelled, a new cancelledBill is created, which has a reference called BilledBill
* ReturnBill - when a BilledBill is returned, multiple times is a possibility, is created. Has a reference to BilledBill
[Back](https://github.com/hmislk/hmis/wiki/Knowledgebase)
Billing-for-Cashier.md
# Introduction
This document provides a detailed guide on how to manage patient orders and process payments within the CareCode Health Management Information System (HMIS). It covers the workflow from logging into the system to completing a transaction at the cashier.
# System Login
* **Access the System:** Open the CareCode HMIS and navigate to the login page.
* **Enter Credentials:** Input your username and password.
* **Select Department:** Choose the department you are working in to access the relevant functionalities.
# Navigation
* **Open Main Menu:** Click on the main menu after logging in.
* **Choose OPD: ** Select 'OPD' to proceed to outpatient services.
Billing for Cashier
* **Access Billing:** Under the 'OPD' menu, find and click on the 'Billing' submenu.
* **Select 'Billing for Cashier':** This option takes you to the billing page specific for cashier operations.
# Creating an Order
* **Patient Search:** Use the patient's phone number to search and bring up their details.
* **Add Services:** Search for and add required services to the patient's order. Example services could include an ESR (Erythrocyte Sedimentation Rate) test and a FBC (Full Blood Count).
Settling the Bill
* **Settle Bill:** Once the services are added, proceed to settle the bill.
* **Token Generation:** A token indicating the amount payable will be generated and printed for the patient.
# Payment at the Cashier
* **Token Scanning:** The cashier scans the barcode on the token provided to the patient.
If unable to scan, navigate through menu > OPD > Cashier > Scan Bills.
* **Manual Search:** Alternatively, search for all pending payments under menu > OPD > Cashier > Accept Payments for OPD Bills.
* **Payment Processing:**
> * Choose a payment method.
> * For cash payments, enter the tendered amount to display change due.
> * Click 'accept payment & settle' to finalize the transaction.
[Back](https://github.com/hmislk/hmis/wiki/OPD)
Bills-Orders-System-OOP-Design.md
## Overview
This section outlines the Object-Oriented Design for the Bills/Orders system component of CareCode Health Management Information System (HMIS). The design focuses on encapsulating entities like bills, items, fees, and services into a structured and modular format, enabling efficient management and scalability.
## Entities and Their Relationships
1. Bill
Attributes: billID, billDate, totalAmount, status, patient, etc.
Methods: calculateTotal(), etc.
2. BillItem
Attributes: item, quantity, price, etc.
Relationships: Linked to Item (Investigation/Service).
Methods: calculateItemTotal(), etc.
3. BillFees
Attributes: fee, type (e.g., institution, facility use), amount, etc.
Methods: getFeeDetails(), etc.
4. BillComponents
This is a composite entity encapsulating different aspects of a bill.
5. BillPayments
paymentID, amount, paymentMethod, date, etc.
6. BillSessions: sessionID, sessionType, duration,
7. BillExpenses: expenseID, description, amount, etc.
8. Item
Attributes: itemID, name, code, category (Investigation/Service), etc.
Subclasses:
Investigation: specificAttributes (e.g., labTestType)
Services: specificAttributes (e.g., serviceType)
InpatientService: additionalAttributes (e.g., roomType)
TheatreService: additionalAttributes (e.g., equipmentUsed)
PharmaceuticalItem: additionalAttributes (e.g., dosageForm)
[Back](https://github.com/hmislk/hmis/wiki/Design-Documentation)
Biological-Specimens-for-Laboratory-Testing.md
* **Blood** – Whole blood or specific components used for various diagnostic tests.
* **Fluid** – Includes various bodily fluids used for analysis.
> * **Cerebrospinal Fluid (CSF)** – Collected via lumbar puncture, used to diagnose infections or neurological conditions.
> * **Peritoneal Fluid** – Found in the abdominal cavity, analyzed for infections or malignancies.
> * **Pleural Fluid** – Surrounds the lungs, tested for infections, cancer, or other diseases.
> * **Synovial Fluid** – Lubricates joints; analyzed for arthritis, infections, or gout.
> * **Amniotic Fluid** – Surrounds a fetus in the womb, tested for genetic and developmental disorders.
> * **Pericardial Fluid** – Surrounds the heart, tested for infections or cardiac issues.
* **Plasma** – The liquid component of blood, separated from cells, often tested for proteins, electrolytes, and hormones.
* **Semen** – Used for fertility testing, sperm analysis, or forensic purposes.
* **Serum** – The fluid portion of blood after clotting, used for various biochemical and immunological tests.
* **Stool (Feces)** – Tested for infections, parasites, digestive disorders, and blood in stool.
* **Swab Samples** – Used for microbiological cultures and viral or bacterial testing.
> * **Throat Swab** – Collected for strep throat, viral infections, or respiratory pathogens.
> * **Nasal Swab** – Used for flu, COVID-19, and other respiratory infections.
> * **Vaginal/Cervical Swab** – Used for Pap smears, STIs, and HPV testing.
> * **Rectal Swab** – Used for certain infections, including STIs and enteric pathogens.
> * **Wound Swab** – Collected from open wounds to identify bacterial infections.
> * **Ear Swab** – Used to diagnose ear infections.
> * **Skin Swab** – Collected to diagnose bacterial, fungal, or viral skin infections.
* **Urine** – Used for kidney function tests, drug screening, and infection detection.
* **Whole Blood** – Used in transfusions and complete blood count (CBC) testing.
* **Bone Marrow** – Collected via aspiration or biopsy to diagnose blood disorders and cancers.
* **Hair** – Used in forensic testing, drug screening, and toxicology tests.
* **Nail Clippings** – Used for fungal infections, heavy metal analysis, and forensic investigations.
* **Sweat** – Used in drug testing and cystic fibrosis screening.
* **Breast Milk** – Tested for infections, nutritional content, and contaminants.
* **Gastric Aspirate** – Stomach fluid collected for tuberculosis and acid-related disorders testing.
* **Saliva** – Used for hormone testing, genetic testing, and drug screening.
* **Tissue Biopsy** – Used for cancer diagnosis, genetic analysis, and histopathology.
* **Meconium (Newborn Stool)** – Tested for prenatal drug exposure and metabolic disorders.
* **Cord Blood** – Collected at birth for genetic and stem cell banking purposes.
[Back](https://github.com/hmislk/hmis/wiki/LIMS-Knowledgebase)
Cancel-GRN.md
Path: Pharmacy > Procurements > Goods Received

1. Find the GRN
2. Select the view button under actions to see the GRN.

3. Select the "Cancel" button

4. Enter a comment and select Cancel.

Then GRN cancellation will be printed.
[Back](https://github.com/hmislk/hmis/wiki/Receive-Goods)
Cancel-orders-requests.md
**Path:** Pharmacy > Disbursement > Issue for Requests > View Request

**1. Select the "Cancel Request" button**

**2. Confirm the cancel request with a comment.**

Now the order is cancelled and is visible in red.

[Back](https://github.com/hmislk/hmis/wiki/Pharmacy-Transactions-between-different-units)
CareCode-HIMS-???.md
# විවෘත මූලාශ්ර රෝහල කළමනාකරණ තොරතුරු පද්ධතිය (CareCode Open-Source Hospital Management Information System) - ආරම්භකයා වෛද්ය එම්. එච්. බී. ආරියරත්න
## විස්තරය
මෙය වර්තමාන රෝහල් සඳහා විවිධ කාර්ය ප්රවාහන මොඩියුල විහිදුනු සමගින් විශාල පරිමාණ රෝහල කළමනාකරණ තොරතුරු පද්ධතියකි. විවිධ රෝහල් අවශ්යතා සඳහා වෙනස්කම් ඉටු කිරීමේ හැකියාව ඇත. පද්ධතිය පරිශීලක ආරක්ෂාව හා වේගය මූලික කරගෙන නිර්මාණය කර ඇත. 2015 සිට නිෂ්පාදනයේ විශාල පරිමාණ පරීක්ෂණයට ලක්කොට ඇත.
මෙම පද්ධතිය Object Oriented Principles අනුගමනය කරමින් නිර්මාණය කර ඇත. එය NHS, UK හී dm+d වැනි පරීක්ෂා කළ සහ ප්රතිචාර ලත් දත්ත ආකෘති අනුගමනය කර ඇත.
Java Enterprise Edition භාවිතා කරමින් වෙබ් අයදුම් හා RESTful සේවාදායකය නිර්මාණය කර ඇත. දත්ත ගබඩා කළමනාකරණ පද්ධතිය කණ්ඩායමගේ ප්රියතමයක් තෝරාගත හැකි නමුත් MySQL හෝ MariaDB නිර්දේශිත වේ. JavaEE සමග යොදා ගත් තාක්ෂණයන් වනුයේ JSF, JPA සහ PrimeFaces. ග්රාමීය මධ්යස්ථානයේ මධ්යසාරය C# භාවිතයෙන් සංවර්ධනය කර ඇත. RESTful සේවාවන් භාවිතා කරන ස්ථානීය යෙදුම් JavaSE භාවිතයෙන් සංවර්ධනය කර ඇත.
## ඉතිහාසය
වෛද්ය එම්. එච්. බී. ආරියරත්න විසින් 2004 දී තම පුද්ගලික සායනය සඳහා Microsoft Visual Basic 6 සහ MS-Access භාවිතයෙන් ඉලෙක්ට්රොනික වෛද්ය වාර්තා පද්ධතියක් (EMR) සංවර්ධනය කරන ලදී. මෙම EMR පද්ධතිය භාවිතා කළ වෛද්යවරුන් නව අවශ්යතා සහිතව පද්ධතිය වෙනස් කිරීමට ඉල්ලා සිටිති. මෙම පද්ධතිය 2012 දී විවෘත මූලාශ්ර පියවරක් ලෙස GitHub හි MIT බලපත්රය යටතේ ආරම්භ කරන ලදී. ශ්රී ලංකා උසස් තාක්ෂණික අධ්යාපන ආයතනයේ (HNDIT) ලාබුදුව, ගාල්ලේ පිරිසක් පියවර පද්ධතියේ සහයෝගයක් ලබා දෙනු ලැබුවේ මාර්ගෝපදේශකයා ලෙස කටයුතු කළ K.M.G.T.R. වයිද්යරත්න මහතා විසිනි. උපාධියෙන් පසු ඔවුන් පද්ධතියට සහයෝගය ලබා දෙන ලදී. වාණිජ සහයෝගය ස්ථාපනය, පරිශීලක පුහුණුව, නඩත්තුව, මেঘ සත්කාරකය සහ ගැටලු විසඳීමට ලබා දෙනු ලැබේ.
## ස්ථාපනය
පරීක්ෂණ සඳහා ස්ථාපනය ඉතා පහසු වේ. Netbeans භාවිතයෙන් ව්යාපෘතිය සම්බන්ධ කර නව දත්ත ගබඩාවක් සැකසිය හැක. ව්යාපෘතිය ක්රියාත්මක කිරීමෙන් ආයතනයක්, අංශයක් සහ පරිශීලකයෙක් එක් කිරීමට පරිපාලක පිටුවකට යොමු වේ. දෘඩාංග, මෙහෙයුම් පද්ධතිය සහ GlassFish සකස් කිරීමේ දී ක්රියාමාර්ග විස්තරවත්වී ඇත.
## භාවිතය
විවිධ පරිශීලක තනතුරු සඳහා ඇති විශේෂාංග User Manual හි විස්තර කර ඇත.
### සහයෝගීත්වය
**වෛද්ය එම්. එච්. බී. ආරියරත්න** - ව්යාපෘතිය ආරම්භකයා, ප්රධාන පද්ධති ශිල්පියා
**කේ. එම්. ජී. ටී. ආර්. වයිද්යරත්න** - ව්යාපෘති කළමනාකරණය
### ප්රධාන දායක ශිල්පීන්
* වෛද්ය එම්. එච්. බී. ආරියරත්න
* වෛද්ය ක්රිශාන්ත විදසිංහ
* වෛද්ය ජගත් සමරසේකර
* වෛද්ය වෙදිත බණ්ඩුවර්ධන
* වෛද්ය ගයාමන් දිසානායක
* වෛද්ය හර්ෂා මීමදූම
* වෛද්ය ඒ. ටී. සී. කුමාර
* වෛද්ය සරණතිලක දන්තනාරාණ
* වෛද්ය බොලෝන්ගේ දයානත්
* වෛද්ය කේ. එම්. පී. කීර්ති
* වෛද්ය අනුරා ක්රිශාන්ත
### ප්රධාන මෘදුකාංග සංවර්ධකයින්
* දුෂාන් මධුරංග
* ලාහිරු මධුශංක
* වෛද්ය එම්. එච්. බී. ආරියරත්න
* එ. සී. එම්. සාෆ්රි
* කේ. පසන් අනුරධ
* රොහාන් ජයසුන්දර
* දිල්ශාන් කනීෂ්ක
* රවිසරනි රණවක
* අනුෂ්කා ද සිල්වා
* ප්රියංක සදරුවන්
* අනුර විජේසිංහ
* රුවන් තාරක
* ගයාන් මල්ෂාන්
* ඉසුරු පතුම්
* එ. ආර්. සී. සංක
* සෙනුල නානායක්කාර
* පවන් තිවංක මධුශන්
* පසින්දු වත්සර
* දමිත් දේශන්
* ලවන් චාමින්දු ජයලත් සමරසේකර
### තත්ත්ව පාලන ප්රතිචාර
* ඩො. ඒ. එන්. ඊ. එම්. ගුණසේකර
* නදීකා දර්ශනී විජේසූරිය
* ජනිත් ලියනගේ
* ඩබ්. ඊ. සී. පියුමිණි
* ඉරානි මධුෂිකා
* දේෂනි පුබුදු
### කෘතජ්ඡතාව
ඔවුන්ගේ දැනුම සහ කාලය වෙනුවෙන් අපගේ දායකයින්ට සහ විවෘත මූලාශ්ර ප්රජාවට ස්තූති කිරීමට අපි කැමතියි. මූල්ය ආධාර සපයන සෞඛ්ය සේවා ආයතන පහත ලැයිස්තුගත කර ඇත.
* ගාල්ල Cooperative රෝහල, ගාල්ල, ශ්රී ලංකා - 2008 - 2018
* රුහුණු රෝහල, කරාපිටිය - 2008 - 2019
* රුහුණු මැඩිහෝස්පිටල්, හම්බන්තොට - 2012 දක්වා
* ආරෝග්ය රෝහල, තංගල්ල - 2014 දක්වා
* ආරෝග්ය වෛද්ය මධ්යස්ථානය, තංගල්ල - 2010 දක්වා
* ආරෝග්ය ඖෂධ ශාලාව, තංගල්ල - 2015 දක්වා
* ශාන්ත ජෝර්ජ් රෝහල, බියගම - 2016 දක්වා
* දිගසිරි රෝහල, පුත්තලම - 2015 දක්වා
* මැට්රෝ ලැබ්, වාද්දුව - 2018 දක්වා
* සුවසරණ රෝහල, රාගම - 2016 දක්වා
* සුවනි රෝහල, ගාල්ල - 2015 දක්වා
* සහන මැඩිකෙයාර්, තිස්සමහාරම - 2012 දක්වා
* මාතර නර්සිං හෝම්, මාතර - 2008 - 2010
* බෙස්ට්ලයිෆ් වෛද්ය මධ්යස්ථානය, කඹුරුපිටිය - 2008 - 2016
* නව ඖෂධ ශාලාව, මාතර - 2014 සිට වර්තමානය දක්වා
* ශ්රී කථා රෝහල, දන්ගෙදර - 2014 සිට වර්තමානය දක්වා
* සුවසහන වෛද්ය මධ්යස්ථානය, කතරගම - 2015 සිට වර්තමානය දක්වා
* සුවන වෛද්ය මධ්යස්ථානය, අකුරැස්ස - 2015 සිට වර්තමානය දක්වා
* නව මල්ටි ඩ්රග්ස්, ගාල්ල - 2015 සිට වර්තමානය දක්වා
* මාතර ඖෂධ ශාලාව, අකුරැස්ස - 2013 සිට වර්තමානය දක්වා
* මාතර ඖෂධ ශාලාව, දෙනියාය - 2013 සිට වර්තමානය දක්වා
* මාතර ඖෂධ ශාලාව, උරුබොක්ක - 2013 - 2015
* මාතර ඖෂධ ශාලාව, ගාල්ල - 2015 සිට වර්තමානය දක්වා
* සුපිපි වෛද්ය මධ්යස්ථානය, කඹුරුපිටිය - 2011 සිට වර්තමානය දක්වා
* අහංගම වෛද්ය මධ්යස්ථානය, අහංගම - 2008 සිට වර්තමානය දක්වා
* වැලිගම වෛද්ය මධ්යස්ථානය, වෙළිගම - 2009 සිට වර්තමානය දක්වා
* ඔසෙත්රා වෛද්ය මධ්යස්ථානය, බෙලිඅත්ත - 2010 සිට වර්තමානය දක්වා
* ඉසුරු මැඩිහවුස්, හම්බන්තොට - 2014 සිට වර්තමානය දක්වා
* රුහුණු මැඩිහවුස්, අම්බලන්තොට - 2014 සිට වර්තමානය දක්වා
* හොරයිසන් වෛද්ය මධ්යස්ථානය, දෙබරවැව - 2013 සිට වර්තමානය දක්වා
* පුබුධු වෛද්ය මධ්යස්ථානය, හක්මන - 2008 - 2014
* සිටි ලැබ්, මාතර - 2013
* රොසෙත් රෝහල, අම්බලංගොඩ - 2014 සිට වර්තමානය දක්වා
* රිච්මන්ඩ් ලැබරටරි සේවාවන්, ගාල්ල - 2010 සිට වර්තමානය දක්වා
* ක්ලිනිකල් ලැබරටරි, බූස්ස - 2010 සිට වර්තමානය දක්වා
* බද්දේගම වෛද්ය සේවාවන්, බද්දේගම - 2014 සිට වර්තමානය දක්වා
* සහන මැඩිකෙයාර්, තිස්සමහාරම - 2014 සිට වර්තමානය දක්වා
* මැඩ්රේ මැඩිකල් ලැබරටරි, මාතර - 2014 සිට වර්තමානය දක්වා
* අගුණකොලපැලැස්ස වෛද්ය මධ්යස්ථානය, අගුණකොලපැලැස්ස - 2014 සිට වර්තමානය දක්වා
* හෝල්ටන් රෝහල, වාලස්මුල්ල - 2015 සිට වර්තමානය දක්වා
* උණවටුන වෛද්ය මධ්යස්ථානය, උණවටුන, ගාල්ල - 2015 සිට වර්තමානය දක්වා
* කෑගලු මැඩි ලැබ්, 2014 සිට වර්තමානය දක්වා
* රලියබල් මැඩි ලැබ්, මොණරාගල - 2016
## බලපත්රය
MIT බලපත්ර විස්තර LICENSE.md ලෙස අමුණා ඇත
CareCode-Radiology-Information-System.md
### CareCode Radiology Information System (RIS)
#### Overview
CareCode Radiology Information System (RIS) is a comprehensive platform designed to streamline and optimise imaging-related workflows across multiple departments, including Radiology, Histopathology, and Cardiology. It efficiently manages the entire lifecycle of medical imaging, encompassing patient registration, procedure scheduling, image acquisition, storage, retrieval, and distribution.
The system integrates seamlessly with Picture Archiving and Communication Systems (PACS) to centralize all medical images and videos, such as X-rays, CT scans, MRIs, ECGs, echocardiograms, angiograms, and procedural videos. CareCode RIS fosters effective collaboration among radiologists, pathologists, cardiologists, technologists, and other healthcare professionals, ensuring improved workflow efficiency and enhanced patient care.
CareCode RIS is loosely coupled with CareCode HMIS, enabling smooth communication by default. It can be customized to integrate with any other Hospital Information Management System (HIMS) that supports HL7 FHIR and dynamic resource bundles via REST FHIR servers.
#### Key Features
1. **Centralized Image and Data Management**
- Unified repository for managing all medical images and videos.
- Seamless integration with PACS for image storage, retrieval, and distribution.
- Comprehensive metadata handling for enhanced search and retrieval.
2. **Advanced Scheduling and Resource Allocation**
- Multi-department scheduling for radiology, pathology, and cardiology procedures.
- Optimized resource allocation for equipment and personnel.
- Automated patient notifications to minimize no-shows.
3. **Order Management and Tracking**
- Electronic order entry for imaging studies with clinical indications.
- Real-time tracking of orders, including priority handling for urgent cases.
4. **Interoperability and Standards Compliance**
- Supports HL7, FHIR, and DICOM standards for seamless data exchange.
- Integrates with Electronic Health Records (EHRs), Laboratory Information Systems (LIS), and other hospital systems.
5. **Enhanced Reporting and Results Management**
- Structured and multimedia reporting capabilities, including voice recognition dictation.
- Secure and efficient distribution of results to clinicians and patients.
6. **Quality Assurance and Compliance**
- Tools for peer reviews, regulatory compliance, and audit trails.
- Ensures adherence to international standards such as HIPAA and DICOM.
7. **Customization and Scalability**
- Configurable workflows, templates, and forms tailored to departmental needs.
- Modular architecture for seamless scalability and integration of new features.
#### Functional Capabilities
1. **Patient Information Management**
- Captures and stores comprehensive demographic and clinical information.
- Integrates patient data seamlessly across hospital systems to ensure consistency and accuracy.
2. **Imaging Procedure Management**
- Streamlines the workflow from patient registration through image acquisition to report delivery.
- Supports standardized imaging protocols across modalities, ensuring quality and consistency.
3. **Modality Worklist Management**
- Automatically populates worklists for imaging modalities, reducing manual data entry and minimizing errors.
- Interfaces directly with imaging equipment, enhancing operational efficiency.
4. **Reporting and Analytics**
- Offers both structured and narrative reporting with multimedia integration.
- Advanced analytics tools provide insights into operational performance and clinical outcomes.
5. **Interdepartmental Collaboration**
- Facilitates multidisciplinary collaboration with shared access to imaging data and reports.
- Secure messaging and consultation features support real-time communication among clinicians.
6. **Patient Engagement**
- Provides patients with access to their imaging results and reports through a secure portal.
- Enhances communication and education for patients regarding their imaging procedures.
#### Customisation Options
1. **Workflow Customisation**
- Allows tailoring of imaging workflows to meet the specific needs of different departments.
- Configurable rules and logic adapt the system to varying clinical requirements and practices.
2. **User Interface and Experience**
- Customizable dashboards and user interfaces cater to the preferences and roles of diverse system users.
- Supports localization and multi-language capabilities to accommodate a global user base.
3. **Data Integration and Interoperability**
- Extensive API support for integration with other hospital systems, including EHRs, LIS, and mobile health applications.
- Compliance with international standards like HL7, DICOM, and FHIR ensures seamless data exchange and interoperability.
4. **Scalability and Security**
- Modular design supports scalable architecture, allowing for expansion as healthcare facilities' needs grow.
- Robust security protocols safeguard sensitive patient data, with role-based access controls and data encryption.
#### Integration Features
1. **Health System Integration**
- Integrates smoothly with existing Hospital Information Systems (HIS), Laboratory Information Systems (LIS), and other healthcare management tools.
- Supports bidirectional data flow, ensuring that all relevant systems are updated with the latest patient and procedural information.
2. **Third-Party Compatibility**
- Provides flexible integration options with third-party software and hardware, avoiding vendor lock-in.
- Compatible with a wide range of imaging devices and diagnostic tools across manufacturers.
3. **Remote Access and Mobile Solutions**
- Enables remote access to RIS functionalities, allowing clinicians to view images and complete reports from any location.
- Mobile applications support on-the-go access to system features, enhancing flexibility for healthcare professionals.
#### Regulatory Standards Adherence
1. **Framework for Compliance**
- Implements FHIR R4 standards to facilitate interoperability and data exchange, ensuring that the system can integrate seamlessly with modern healthcare technologies and platforms.
- Designed to support compliance frameworks that align with international health regulations such as HIPAA, GDPR, and others.
- While the system is developed with these standards in mind, actual certification or compliance for a specific version can be achieved at the customer's request and expense.
- The system architecture is flexible, allowing for regular updates to accommodate changing compliance requirements and keep the system aligned with global standards.
2. **Audit Trails and Security Monitoring**
- Detailed logging of all user actions and data access provides comprehensive audit trails.
- System security measures include data encryption, secure data transmission, and regular security assessments.
3. **Peer Review and Quality Control**
- Facilitates internal reviews and audits of diagnostic reports and images to ensure quality and accuracy.
- Supports discrepancy management workflows to address and rectify any identified issues promptly.
#### Billing and Financial Management
1. **Automated Charge Capture**
- Accurately captures and records all billable procedures and associated costs.
- Automates coding and billing processes to ensure timely and accurate financial reporting.
2. **Insurance and Claims Processing**
- Integrates with insurance providers to streamline pre-authorization processes and claims management.
- Provides tools for handling denials and rejections to reduce revenue loss and improve cash flow.
3. **Financial Analytics**
- Generates detailed financial reports that aid in tracking revenue, expenses, and profitability.
- Offers insights into financial performance, helping to make informed decisions about operational efficiency and cost control.
#### Disaster Recovery and Data Integrity
1. **Data Backup and Recovery**
- Implements comprehensive backup strategies to ensure data is securely stored and readily available for recovery.
- Configurable backup frequencies, including incremental and full backups, to minimize data loss.
2. **System Redundancy and Failover**
- Utilizes redundant hardware and software configurations to maintain system availability and minimize downtime.
- Failover mechanisms ensure continuous operation during hardware failures or other disruptions.
3. **Emergency Management**
- Provides robust emergency management tools to handle unexpected system outages or data integrity issues.
- Quick restoration capabilities ensure that critical imaging services remain available during and after incidents.
[Back](https://github.com/hmislk/hmis/wiki/Functions)
Change-Log.md
# Change Log
Change-password&theme.md
# Managing Preferences > User Preferences
## Password Change:
* **Access:** settings > Change My Password.
* **Process:** Enter the existing password, new password, and re-enter the new password in the appropriate input fields. Then click on the 'Change Password' button to update your password.
## Changing Theme:
* **Access:** settings > Change My Theme.
* **Process:** Select the required theme from the drop-down menu, then click on the 'Save' button to apply the theme changes.
[Back](https://github.com/hmislk/hmis/wiki/Managing-Preferences)
Channel-Booking---By-Date.md
**Path:**
Channelling > Channel Booking - By Date

**1. Select Date Range**
When a date range is selected, all available sessions will be displayed
**2. Search and select required consultant and session**
**3. Enter Patient Information.**
If the patient is already registered, patient information will be filled in automatically. If not, enter the patient information manually.
**4. Enter Payment Details**
Select an appropriate payment method and add a discount scheme(If Applicable).
If the patient is a foreigner, select "Mark Foreigner"
**5. Enter Referral Details.**
You can enter the referring institution, doctor or center. (Optional)
Booking details will be listed at the very bottom.

You have the option to add a normal booking or a reserved booking.
**6. Print Channel Bill**
If the payment was made, then this option will be available. If not, it will be available later after the payment is finalized.

[Back](https://github.com/hmislk/hmis/wiki/Medical-Appointment-Channelling-Moudule)
Channel-Booking---By-Month.md
**Path:**
Channelling > Channel Booking - By Month

**1. Select Date Range**
When a date range is selected, all available sessions will be displayed
**2. Search and select the required consultant and session**
**3. Enter Patient Information.**
If the patient is already registered, patient information will be filled in automatically. If not, enter the patient information manually.
**4. Enter Payment Details**
Select an appropriate payment method and add a discount scheme(If Applicable).
If the patient is a foreigner, select "Mark Foreigner"
**5. Enter Referral Details.**
You can enter the referring institution, doctor or center. (Optional)
Booking details will be listed at the very bottom.
You have the option to add a normal booking or a reserved booking.
**6. Print Channel Bill**
If the payment was made, then this option will be available. If not, it will be available later after the payment is finalized.
[Back](https://github.com/hmislk/hmis/wiki/Medical-Appointment-Channelling-Moudule)
Channel-Booking.md
**Path:**
Channelling > Channel Booking

**1. Select Specialty from the 1st column.**
**2. Select the required Consultant from the second column.**
Upon selecting a consultant, available sessions for the consultant will be displayed in the 3rd column.

**3. Then select "+ To Add Booking"**
You will be redirected to a new page where you can schedule a booking for a patient.

**4. Enter Patient Information.**
If the patient is already registered, patient information will be filled in automatically. If not, enter the patient information manually.
**5. Enter Payment Details**
Select an appropriate payment method, add a discount scheme(If Applicable) and mark if the patient is a foreigner.
Booking details will be listed on the right-hand side.
You have the option to add a normal booking or a reserved booking.
**6. Print Channel Bill**
If the payment was made, then this option will be available. If not, it will be available later after the payment is finalized,

[Back](https://github.com/hmislk/hmis/wiki/Medical-Appointment-Channelling-Moudule)
Channel-Queue.md
Channel Queue displays all of the available sessions for a selected date.

[Back](https://github.com/hmislk/hmis/wiki/Medical-Appointment-Channelling-Moudule)
Channelling---Introduction.md
This module handles the appointment scheduling for consultant visits for outpatients.
The important features are listed below.
* Flexible Appointment Session Creation - By Weekday or Selected Date
* Flexible Fee Creation - Hospital Fees, Doctor Fees, etc.
* Booking Cancellations and Refunds
* Credit Booking and Settling later
* Session charges can be charged for Cash, Card, on-call, Agent
* Different Discounts for Members
* Discount Schemes for Staff Members
* Different charges for Foreigners if required
* Different Bill numbers generation strategies
* Change Patient names on approval from a supervisor
* Flexible Doctor Payments
* Agency Management including Agents can log and book if authorized
* Can be developed to communicate with channelling services if an API is given by the service provider
* Availability of Channelling Details to the general public through the website or Mobile App
* SMS or Email Notifications
[Back to User Manual](https://github.com/hmislk/hmis/wiki/Medical-Appointment-Channelling-Moudule)
CHAR-vs-VARCHAR-in-Relational-Databases.md
# CHAR vs VARCHAR in Relational Databases
This page outlines the key differences between `CHAR` and `VARCHAR` data types used in relational databases like MySQL. These types are commonly used for storing string data but behave differently in terms of storage, performance, and usage.
---
## Overview
`CHAR` and `VARCHAR` are both used to store character strings, but they differ in how the data is stored and handled. Choosing the correct type is important for performance and storage efficiency.
---
## Key Differences
| Feature | CHAR | VARCHAR |
|----------------------|-------------------------------|-------------------------------------|
| **Storage Type** | Fixed-length | Variable-length |
| **Length Padding** | Pads with spaces to full length | No padding |
| **Performance** | Slightly faster for fixed-size fields | More efficient for variable-length text |
| **Storage Efficiency** | Wastes space for short values | More compact for short/variable data |
| **Max Length (MySQL)** | Up to 255 characters (before MySQL 5.0.3) / 255 bytes | Up to 65,535 bytes (row size limit applies) |
| **Trailing Spaces** | Trailing spaces are removed during comparison | Trailing spaces are preserved |
---
## Use Cases
- Use **CHAR** when:
- All values have the same length (e.g., fixed-length codes like country codes, gender).
- You prioritise slightly better performance over storage.
- Use **VARCHAR** when:
- Data length varies significantly (e.g., names, addresses, descriptions).
- You want to minimise storage space.
---
## Example
Creating a table with both types:
```sql
CREATE TABLE employees (
emp_code CHAR(5),
emp_name VARCHAR(100)
);
Check-Entered-Data.md
* Item distributor
* Error detection
* Error detection by Date
* Error detection by report
* Department stock by batch minus
* Correction of issue to unit(Discount to margin)
* Correction of issue to unit(Reset gross net value)
* Correction of issue to unit(Reset gross net value to old only cost issue)
[Back](https://github.com/hmislk/hmis/wiki/Pharmacy-Administration)
Clinical-Queue.md
**Path:**
EMR > Clinical Queue

You can search for OPD visits by selecting a date, speciality, and doctor name and then selecting the "Search" button. Both completed visits and visits that are not completed will be listed for the selected criteria.
[Back](https://github.com/hmislk/hmis/wiki/Electronic-Health-Record-(EHR))
Cloud-Management.md
* [Granting Access to Google Cloud Management](https://github.com/hmislk/hmis/wiki/Granting-Access-in-Google-Cloud-Management)
* [Creating a New VM Instance in Google Compute Engine](https://github.com/hmislk/hmis/wiki/Creating-a-New-VM-Instance-in-Google-Compute-Engine)
* [Creating a New Firewall Policy in Google Cloud's VPC Network Firewall](https://github.com/hmislk/hmis/wiki/Creating-a-New-Firewall-Policy-in-Google-Cloud's-VPC-Network-Firewall)
* [Using Basic SSH Commands in Google Cloud's Browser-Based SSH for VM Instances](https://github.com/hmislk/hmis/wiki/Using-Basic-SSH-Commands-in-Google-Cloud's-Browser%E2%80%90Based-SSH-for-VM-Instances)
Code-Conventions.md
* Full Description need to be used as the name for the method
* Full Description as the name of variables for public and class variables
* Full Description as the name for local variables where methods expand than a single screen
* May use short names for local variables if the full span is visible within a single screen
Follow all Java Code Conventions
[Referance](https://www.oracle.com/technetwork/java/codeconventions-150003.pdf)
Collecting-Centres.md
# Sample Collection Center (SCC)
A place where materials derived from the human body are collected and delivered under specific conditions for clinical examination purposes under an agreement or contract with a medical laboratory.
A Sample Collection Center (SCC) can be an organization that falls into one of the four categories given below:
- **Type A**
- **Description:** A center collecting samples to its own laboratory.
- **Personnel:** Employees are either of the center, the laboratory, or its parent organization.
- **Type B**
- **Description:** A center collecting samples to laboratories, including its own laboratory.
- **Personnel:** Employees are either of the center, its own laboratory, or its parent organization.
- **Type C**
- **Description:** A center collecting samples to a laboratory that is not affiliated with the center or its parent organization.
- **Operations & Personnel Responsibility:** The laboratory or its parent organization is entirely responsible for day-to-day operations and the employees of the center.
### Summary
- SCCs collect and deliver human-derived materials for clinical examination.
- They operate under agreements or contracts with medical laboratories.
- They can be categorized into Type A, B, or C based on their relationships with laboratories and their personnel's affiliations.
[Back](https://github.com/hmislk/hmis/wiki/User-Manual)
combined.md
26-Week-Training-Schedule-for-Software-Trainee-Engineers.md
## **26-Week Training Schedule for Software Trainee Engineers**
### **Phase 1: Foundations of Soft
Contributing-Guidelines.md
Contributing Guidelines
[How to start development](https://github.com/hmislk/hmis/wiki/Development)
Controllers.md
In JavaServer Faces (JSF), controllers play a crucial role in managing the interaction between the user interface and the application's backend. Rather than manually creating objects of controller classes, JSF leverages the @Named annotation to automatically handle these instances.
## Contexts and Dependency Injection (CDI)
CDI is a set of services that allows Java EE components, such as EJBs and JSF managed beans, to interact in a unified way. It provides a framework for dependency injection, lifecycle management, and service lookup, enhancing modularity and making it easier to manage and integrate various components in a Java EE application.
## Creating Controller Objects in JSF
JSF does not require developers to instantiate controller classes manually. Instead, these objects are created and managed by JSF based on the defined context or scope. This approach ensures that the controller is available and properly scoped throughout its lifecycle.
## Examples and Scopes
Default Naming Example:
java
Copy code
@Named
@SessionScoped
public class WebUserController implements Serializable {
}
In this example, the object can be referred to in JSF as #{webUserController}.
## Custom Naming Example:
java
Copy code
@Named(value = "pasinduController")
@SessionScoped
public class WebUserController implements Serializable {
}
Here, the JSF refers to the object as #{pasinduController}.
JSF determines whether to create a new instance of the controller or use an existing one based on the specified scope. If an instance already exists within the required scope, JSF reuses it; otherwise, a new instance is created.
## Understanding Scopes
* ApplicationScope: This scope lasts for the duration of the application. Beans in this scope are created once and shared across all user interactions and sessions.
* SessionScope: Objects in this scope are specific to a user session. They are created at the beginning of a session and last until the session ends.
* ViewScope: In this scope, a bean remains alive as long as the user interacts with the same JSF view (page). It is useful for keeping state across postbacks in the same view.
* RequestScope: Beans in this scope are recreated with every user request. They are short-lived and disposed of once the request is processed.
* DependentScope: This is the default scope if none is specified. Beans in this scope are dependent on the lifecycle of the bean they are injected into.
[Back](https://github.com/hmislk/hmis/wiki/Developer-Manual)
Converting-Tightly-Coupled-Application-into-Loosely-Coupled-and-Pluggable-Modules.md
**Title:**
**Converting Tightly Coupled Application into Loosely Coupled and Pluggable Modules**
**Contents:**
### 1. Introduction
Our current application is tightly coupled, with direct dependencies between modules, making it difficult to modify, extend, or reuse individual components. To improve flexibility, maintainability, and scalability, we plan to refactor the system into loosely coupled, pluggable modules.
### 2. Current Challenges
- Direct dependencies between modules.
- Changes in one module affect others.
- Difficult to replace, upgrade, or remove modules.
- Limited reusability and testability.
### 3. Objectives
- Separate responsibilities into independent modules.
- Ensure modules communicate through well-defined interfaces.
- Enable dynamic loading, replacement, and removal of modules.
- Reduce the impact of changes in one module on others.
### 4. Key Design Principles
- **Separation of Concerns:** Each module handles a specific responsibility.
- **Interface-Based Design:** Define interfaces for communication, not direct class dependencies.
- **Dependency Injection:** Inject required services at runtime rather than hardcoding them.
- **Event-Driven Communication:** Use events or messaging where appropriate to decouple interactions.
- **Service Registration:** Maintain a registry for discovering and loading modules dynamically.
### 5. Implementation Steps
- Identify existing modules and their responsibilities.
- Define clear interfaces (APIs) for each module.
- Extract modules into separate packages or libraries.
- Replace direct calls with interface-based communication.
- Introduce a plugin loader or module manager to handle pluggable modules.
- Ensure proper error handling when a module is unavailable.
- Test modules independently and as part of the whole system.
### 6. Technologies and Patterns
- Java Service Provider Interface (SPI).
- OSGi (for dynamic module loading).
- Dependency Injection frameworks (like CDI or Spring).
- Event buses (such as Guava EventBus).
- Modular build tools (like Maven multi-module projects).
### 7. Expected Benefits
- Easier maintenance and updates.
- Independent development and testing of modules.
- Improved scalability and flexibility.
- Ability to add or remove features without affecting the core system.
- Cleaner, more organised codebase.
### 8. Conclusion
Transitioning to loosely coupled, pluggable modules will future-proof our application by enhancing its adaptability and maintainability. Careful planning and gradual refactoring are essential to achieving a smooth migration.
Let me know if you need this prepared in markdown or another specific format.
Cost-Calculation-in-Procuring-Pharmaceuticals-and-Consumables.md
**Cost Calculation in Procuring Pharmaceuticals and Consumables**
### Purchase Structure
In the procurement of pharmaceuticals and consumables, cost calculation is critical to ensure accuracy and transparency in financial management. The following structure outlines the process:
#### Bill
Each purchase is documented in a bill containing multiple bill items. Each bill item corresponds to an individual item or pack.
##### Bill Items
Each bill item consists of:
- **Item**: The individual item (AMP) or pack (AMPP)
- **Quantity (Qty)**: The total number of units purchased
- **Purchase Rate (PR)**: The rate at which the item is purchased
- **Cost Rate**: The calculated cost per unit
- **Free Quantity**: Additional units provided at no charge
- **Retail Rate (RSR)**: The price at which the item is sold to retail customers
- **Wholesale Rate**: The price for wholesale transactions
- **Purchase Gross Value**: Computed as `PR × Qty`
- **Line Discount**: Discount applicable to the specific line item
- **Bill Discount for Line**: Proportion of the total bill discount applicable to the line item
- **Bill Tax for Line**: Proportion of the bill tax applicable to the line item
- **Line Tax**: Tax applied specifically to the item line
- **Total Discount**: Summation of all applicable discounts
##### Rate Breakdown
- **Line Discount Rate**: Discount applied at the line level
- **Line Tax Rate**: Tax rate for the line item
- **Bill Tax Rate for Line**: Tax rate applied to the total bill that affects the line item
- **Bill Discount Rate for Line**: Proportion of the total bill discount affecting the line item
#### Purchase Net Value
The net value of the purchase is calculated as:
`Purchase Net Value = (PR - (Line Discount Rate + Bill Discount Rate for Line)) × Qty`
### Example Calculation
**AMP: Zaart 50**
- **Quantity**: 1000 units
- **Free Quantity**: 100 units
- **Purchase Rate (PR)**: 10
- **Retail Sale Rate (RSR)**: 12.50
- **Purchase Cost**: `1000 × 10 = 10,000`
- **Cost Rate**: `10,000 / 1100`
### Post-Purchase Considerations
#### Stock Management
- No differentiation is made between purchased and free quantity.
- **Purchase Value Calculation**: `Purchase Rate × Qty`
- **Retail Sale Value Calculation**: `Retail Rate × Qty`
#### Stock Valuation Issue
If stock quantity is **1100**, the purchase value calculated by stock * PR:
`1100 × 10 = 11,000` **(Incorrect Calculation)**
**Ideal Purchase Value Calculation:**
`Stock × Cost Rate`
[Back](https://github.com/hmislk/hmis/wiki/Pharmaceutical-Logistics)
Cost Calculation in Procuring Pharmaceuticals and Consumables
Purchase
Bill
Bill Items
Item (Individual Item - AMP / Pack - AMPP )
Qty
Purchase Rate
Cost Rate
Free Qty
Retail Rate
Wholesale Rate
Purchase Gross Value (PR X qty)
Line Discount
Bill Discount for Line
Bill Tax for Line
Line Tax
Total Discount
Line Discount Rate
Line Tax Rate
Bill Tax Rate for Line
Bill Discount Rate for Line
Purchase Net Value = (PR - (Line Discount Rate + Bill Discount Rate for Line)) * Qty
Ex.
AMP
Zaart 50 > Qty 1000, Free Qty 100, PR - 10, RSR - 12.50 - Purchase Cost - 10,000, Cost Rare (10,000 / 1100)
After Purchase
Stock (No differentiation of qty and free qty)
Purchase Value - Purchase rate * Qty
Retail Sale Value - Retail rate * Qty
Stock - 1100
Purchase Value when calculated by Qtock * PR - 1100 * 10 = 11,000 > Wrong
Ideal Purchase Value - Stock * Cost Rate
Costing-in-Pharmaceuticals.md
## Availability
Currently available for direct purchase, with an option "Manage Costing".
## Costing Scenarios
### Without Costing
Base for costing: Purchase Rate
Stock Value (at Retail Rate or Purchase Rate) ≈ Gross Profit
### With Real Costing
Factors to Consider:
1. Bonus / Free Items:
> Bonus quantity → Cost is reduced → Retail sale value increases → Profit increases
2. Line Discount:
> A discount reduces the cost
> No change in retail sale value → Profit increases
3. Line Tax / Line Expense (available on request):
> Increases cost
> No change in retail sale value → Profit decreases
When adding a line, the following are recorded;
1. Item
2. Qty
3. Fee Qty
4. Purchase Rate
5. Discount Rate
6. Retail Rate
7. Date of Expiry
8. Batch No
Line values entered by the user or calculated before adding are not changed.
Bill values are distributed to each item.
[Back](https://github.com/hmislk/hmis/wiki/Pharmaceutical-Logistics)
Create-Purchase-Orders.md
**Path:** Pharmacy > Procurement > Create Purchase Orders

First, search and select the supplier and payment method. Next, add items to the purchase order. There are a few ways we can add items to the purchase order.
* 1. Add all supplier items
* 2. Add all supplier items below ROL (Re-Order Level)
* 3. Add a single supplier item
* 4. Add any item
After adding items, you can enter the quantity, free quantity, and the purchase rate. Then the total cost will be calculated automatically. For each item, you can also see the history of sales, available stock, expiry, etc., to make a more educated decision on how much to order.
After adding items to the PO, you can save the purchase order or finalise the purchase order. When a PO is saved, you can go back and edit the details of the PO, but the PO can not be approved. When a PO is finalised, it can not be edited and is ready to be approved.
When the PO is finalised, we can print the PO request.

[Back](https://github.com/hmislk/hmis/wiki/Pharmacy-Ordering)
Creating-a-New-Firewall-Policy-in-Google-Cloud's-VPC-Network-Firewall.md
## Introduction
In this guide, we will walk through the process of creating a new firewall policy in Google Cloud's VPC (Virtual Private Cloud) Network Firewall. Firewall policies allow you to control and manage incoming and outgoing traffic to your virtual network.
## Prerequisites
Before you begin, ensure you have the following:
- A Google Cloud account.
- Access to the Google Cloud Console.
- An existing VPC network.
## Step-by-Step Guide
### 1. Accessing Google Cloud Console
- Open a web browser and navigate to [Google Cloud Console](https://console.cloud.google.com/).
- Sign in with your Google Cloud account credentials.
### 2. Navigating to VPC Network
- In the Google Cloud Console, locate and select "VPC Network" from the left-hand menu.
### 3. Creating a New Firewall Policy
- Click the "Firewall" tab to view the list of existing firewall rules.
- Click the "Create Firewall Policy" button to start creating a new policy.
### 4. Configuring Firewall Policy Details
- *Name*: Provide a unique name for your firewall policy.
- *Description*: Optionally, add a description to help identify the purpose of the policy.
- *Target Service Accounts*: Select the target service accounts, as All Instances in Network.
- *Direction of traffic*: Choose whether the policy applies to incoming or outgoing traffic.
- *Action on match*: Specify the action to take when a rule in this policy matches traffic (e.g., allow or deny).
### 5. Adding Firewall Rules
- Click the "Add Rule" button to define specific rules within your policy.
- Configure each rule with criteria such as source IP ranges, destination IP ranges, ports(TCP as 5900,5901,5902), and protocols.
- Define the action for each rule (e.g., allow or deny).
### 6. Review and Create
- Review your firewall policy configuration to ensure it matches your requirements.
- Click the "Create" button to create the firewall policy.
### 7. Applying the Policy
- Once the policy is created, you can apply it to specific VPC networks, subnets, or instances as needed.
### 8. Monitoring and Testing
- Monitor the traffic flow and test the firewall policy to ensure it functions as expected.
## Troubleshooting
If you encounter any issues during the firewall policy creation process, consider the following:
- Check your VPC network configuration and ensure that it's properly set up.
- Verify that your firewall rules are correctly defined.
## Best Practices
To optimize your firewall policies and network security, consider these best practices:
- Regularly review and update your firewall policies to reflect changing requirements.
- Implement logging for firewall rules to track and analyze traffic.
- Create separate policies for different segments of your network to maintain clarity.
## Conclusion
Creating a firewall policy in Google Cloud's VPC Network Firewall is essential for securing your virtual network and controlling traffic flow. By following these steps, you can establish effective network security policies.
Creating-a-New-VM-Instance-in-Google-Compute-Engine.md
## Introduction
In this guide, we will walk through the process of creating a new Virtual Machine (VM) instance in Google Compute Engine. VM instances allow you to run applications and workloads on Google Cloud's scalable infrastructure.
## Prerequisites
Before you begin, ensure you have the following:
- A Google Cloud account.
- Access to the Google Cloud Console.
## Step-by-Step Guide
### 1. Accessing Google Cloud Console
- Open a web browser and navigate to [Google Cloud Console](https://console.cloud.google.com/).
- Sign in with your Google Cloud account credentials.
### 2. Navigating to Compute Engine
- In the Google Cloud Console, locate and select "Compute Engine"->”VM Instances” from the left-hand menu.
### 3. Creating a New VM Instance
- Click the "Create Instances" button to start creating a new VM instance.
### 4. Configuring VM Instance Details
- *Name*: Provide a unique name for your VM instance.
- *Region*: Choose the region where you want to deploy your VM (e.g., us-central1).
- *Zone*: Select a specific zone within the chosen region.
- *Machine configuration*: Choose the desired machine type (e.g., n1,n2).
- *Machine type*: Choose the desired machine type
- *Boot disk*: Specify the boot disk image and size.
- *Firewall*: Configure firewall settings to allow necessary traffic.
### 5. Adding Additional Options (Optional)
- You can configure additional options like labels, metadata, and service accounts as needed.
### 6. Setting Up SSH Key (Optional)
- If you plan to access the VM via SSH, you can add your SSH public key for authentication.
### 7. Review and Create
- Review your VM instance configuration to ensure it matches your requirements.
- Click the "Create" button to create the VM instance.
### 8. Monitoring and Access
- After the VM instance is created, you can monitor its status and access it via SSH or other methods.
- Be sure to keep track of the external IP address or hostname for connecting to your VM.
## Troubleshooting
If you encounter any issues during the VM creation process, consider the following:
- Check your project's quota limits for resources like CPUs, memory, and IP addresses.
- Ensure that your firewall rules allow necessary incoming and outgoing traffic.
## Best Practices
To optimize your VM deployment and management, consider these best practices:
- Use custom machine types for specific workload requirements.
- Regularly monitor and optimize your VMs for performance and cost-efficiency.
- Implement automated backups and snapshots for data protection.
## Conclusion
Creating a VM instance in Google Compute Engine is a fundamental step in building and running applications on Google Cloud. By following these steps, you can deploy and manage VMs effectively.
Credit-Company-Upload.md
Path:
Administration > Manage Institutions > Bulk Transactions > Credit Company Upload

First, download a suitable template or create a new template in Excel.
The columns should have the following information,
* A | Company Name | Company Name. Required
* B | Company Printing Name | Company Printing Name. Optional
* C | Company Contact No | Company Contact No. Optional
* D | Company Email Address | Company Email Address. Optional
* E | Company Address | Company Address. Optional
Then upload the Excel sheet. The credit companies will be added.
[Back](https://github.com/hmislk/hmis/wiki/Manage-Institutions)
Database-Configuration.md
Make sure to have a root superuser privileges.
## Setting up Lower Case Table Names
When the database is running in a Linux environment, MySQL or MariaDB table names are case sensitive by default. The web application access database through JPA, which requires case insensitive table names. Before running the application, need to set the MySQL or MariaDB setting to allow case insensitive table names. If is done as follows.
### MariaDB
The MariaDB has different levels of configuration files. The MariaDB/MySQL tools read configuration files in the following order:
* Edit "/etc/mysql/mariadb.cnf" to set global defaults,
* Edit "/etc/mysql/conf.d/*.cnf" to set global options.
* Edit "/etc/mysql/mariadb.conf.d/*.cnf" to set MariaDB-only options.
* Edit "~/.my.cnf" to set user-specific options.
If the same option is defined multiple times, the last one will apply.
You need to have super user privileges to change the first three files. Open the file with an editor like [nano](https://github.com/hmislk/hmis/wiki/Installing-Nano).
Edit the "/etc/mysql/mariadb.cnf" file
`sudo nano /etc/mysql/my.cnf`
Create the following two lines at the end of the comments of the file.
'[mysqld]'
'lower_case_table_names=1'
Save the file and restart mySQL or MariaDB by
'sudo service mysql restart'
Afterword the table names will be case insensitive.
### MySQL
Edit the configuration file of mySQL as below.
'sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf'
Find out the following section.
'[mysqld]'
Add the following line.
'lower_case_table_names=1'
Restart mySQL service as below.
'sudo service mysql restart'
Database-Schema-DDL-Generation-Guide.md
This page explains how to generate and apply the full database schema for the application, including all missing tables and fields. This is especially useful when setting up a fresh instance of the application or restoring a database structure.
## Steps to Generate the DDL File
1. Locate the `persistence.xml` file in your project you use for development.
2. Replace its contents with the configuration from `persistence_for_database_generation_script.xml`.
3. Adjust the values in that file, especially the location where the DDL file should be generated on your computer.
4. Run the application once. This will generate the full database schema as a DDL script in the specified file location.
5. Open the generated DDL file and copy its contents.
6. In the application where you want to update the database, go to **Menu > Administration > Manage Metadata > Add Missing Fields**, paste the copied DDL content into the provided text area, and click the **Update Database** button.
7. The contents of the latest version of the ddl file is given below so that you need not to generate it yourself.
## Last Update - 2025.06.22 02:12 AM
## Full DDL File Contents
```sql
CREATE TABLE TRIGGERSUBSCRIPTION (ID BIGINT NOT NULL, CREATEDAT DATETIME, EDITEDAT DATETIME, ORDERNUMBER DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TRIGGERTYPE INTEGER, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, WEBUSERROLE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STOCKBILL (ID BIGINT NOT NULL, STOCKVALUEASCOSTRATE DOUBLE, STOCKVALUEASSALERATE DOUBLE, STOCKVALUEATPURCHASERATES DOUBLE, BILL_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE INVESTIGATIONVALIDATOR (ID BIGINT NOT NULL, CREATEDAT DATETIME, EDITEDAT DATETIME, MAXIMUMVALUE DOUBLE, MINIMUMVALUE DOUBLE, NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, EDITOR_ID BIGINT, INVESTIGATIONVALIDATECOMPONENT_ID BIGINT, ITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLFINANCEDETAILS (ID BIGINT NOT NULL, BILLCOSTVALUE DECIMAL(18,4), BILLDISCOUNT DECIMAL(18,4), BILLEXPENSE DECIMAL(18,4), BILLGROSSTOTAL DECIMAL(18,4), BILLNETTOTAL DECIMAL(18,4), BILLTAXVALUE DECIMAL(18,4), CREATEDAT DATETIME, GROSSTOTAL DECIMAL(18,4), ITEMTAXVALUE DECIMAL(18,4), LINECOSTVALUE DECIMAL(18,4), LINEDISCOUNT DECIMAL(18,4), LINEEXPENSE DECIMAL(18,4), LINEGROSSTOTAL DECIMAL(18,4), LINENETTOTAL DECIMAL(18,4), NETTOTAL DECIMAL(18,4), TOTALCOSTVALUE DECIMAL(18,4), TOTALDISCOUNT DECIMAL(18,4), TOTALEXPENSE DECIMAL(18,4), TOTALFREEQUANTITY DECIMAL(18,4), TOTALFREEQUANTITYINATOMICUNITOFMEASUREMENT DECIMAL(18,4), TOTALOFFREEITEMVALUES DECIMAL(18,4), TOTALPURCHASEVALUE DECIMAL(18,4), TOTALQUANTITY DECIMAL(18,4), TOTALQUANTITYINATOMICUNITOFMEASUREMENT DECIMAL(18,4), TOTALRETAILSALEVALUE DECIMAL(18,4), TOTALTAXVALUE DECIMAL(18,4), TOTALWHOLESALEVALUE DECIMAL(18,4), CREATEDBY_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CATEGORY (ID BIGINT AUTO_INCREMENT NOT NULL, DTYPE VARCHAR(31), CATEGORYTYPE VARCHAR(255), CODE VARCHAR(255), CREATEDAT DATETIME, DBLVALUE DOUBLE, DESCRIPTION VARCHAR(255), FILLED TINYINT(1) default 0, LONGVALUE BIGINT, NAME VARCHAR(255), ORDERNO INTEGER, POINTESFORTHOUSAND DOUBLE, PROFITMARGIN DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SALEMARGIN DOUBLE, SYMANTICTYPE INTEGER, WHOLESALEMARGIN DOUBLE, CREATER_ID BIGINT, INSTITUTION_ID BIGINT, PARENTCATEGORY_ID BIGINT, PAYMENTSCHEME_ID BIGINT, RETIRER_ID BIGINT, DURATIONINHOURS DOUBLE, DURATIONUNIT TINYINT(1) default 0, FREQUENCYINHOURS DOUBLE, FREQUENCYUNIT TINYINT(1) default 0, ISSUEUNIT TINYINT(1) default 0, PACKUNIT TINYINT(1) default 0, STRENGTHUNIT TINYINT(1) default 0, SPECIALITY_ID BIGINT, STAFF_ID BIGINT, ADDITIONTOCOUNT INTEGER, ADMISSIONFEE DOUBLE, ADMISSIONTYPEENUM VARCHAR(255), INWARDPACKAGE TINYINT(1) default 0, ROOMCHARGESALLOWED TINYINT(1) default 0, ROOMFACILITYCHARGE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ITEM (ID BIGINT NOT NULL, DTYPE VARCHAR(31), AGENCYNUMBERS VARCHAR(255), ALTERNATIVEREPORTALLOWED TINYINT(1) default 0, BARCODE VARCHAR(255), BASEUNITSPERISSUEUNIT DOUBLE, BILLABLE TINYINT(1) default 0, CANREMOVEITEMFROMPACKAGE TINYINT(1) default 0, CANSECHDULEFOROTHERDAYS TINYINT(1) default 0, CANUPLOADPATINRTREPORT TINYINT(1) default 0, CASHNUMBERS VARCHAR(255), CHARGESVISIBLEFORINWARD TINYINT(1) default 0, CODE VARCHAR(255), CODESYSTEM VARCHAR(255), COMMENTS LONGTEXT, CREATEDAT DATETIME, CREDITNUMBERS VARCHAR(255), DBLVALUE DOUBLE, DEPARTMENTTYPE VARCHAR(255), DESCREPTION LONGTEXT, DISCOUNTALLOWED TINYINT(1) default 0, EDITEDAT DATETIME, EFFECTIVEFROM DATE, EFFECTIVETO DATE, EXPIRYDATE DATETIME, FORBILLTYPE VARCHAR(255), FORGENDER LONGTEXT, FORMATABLE TINYINT(1) default 0, FULLNAME VARCHAR(255), HASMORETHANONECOMPONANT TINYINT(1) default 0, HASREPORTFORMAT TINYINT(1) default 0, INACTIVE TINYINT(1) default 0, INSTRUCTIONS LONGTEXT, INWARDCHARGETYPE VARCHAR(255), ISMASTERITEM TINYINT(1) default 0, ISSUEUNITSPERPACKUNIT DOUBLE, ITEMBARCODEGENERATIONSTRATEGY INTEGER, ITEMID BIGINT, ITEMTYPE VARCHAR(255), LASTBARCODE BIGINT, MARGINNOTALLOWED TINYINT(1) default 0, MAXTABLEROWS INTEGER, MULTIPLEREPORTSALLOWED TINYINT(1) default 0, NAME VARCHAR(255), NUMBEROFDAYSTOMARKASSHORTEXPIARY INTEGER, ORDERNO INTEGER, PATIENTNOTREQUIRED TINYINT(1) default 0, PRICEBYBATCH TINYINT(1) default 0, PRINTFEESFORBILLS TINYINT(1) default 0, PRINTNAME VARCHAR(255), PRINTSESSIONNUMBER TINYINT(1) default 0, PRIORITY VARCHAR(255), PROFITMARGIN DOUBLE, REQUESTFORQUENTITY TINYINT(1) default 0, RESERVENAME VARCHAR(255), RESERVENUMBERS VARCHAR(255), RESERVENUMBERSFORFIRSTVISIT VARCHAR(255), RESERVENUMBERSFORSUBSEQUENTVISITS VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SCANFEE TINYINT(1) default 0, SESSIONNUMBERTYPE INTEGER, SHORTNAME VARCHAR(255), SNAME VARCHAR(255), SYMANTICTYPE VARCHAR(255), TNAME VARCHAR(255), TOTAL DOUBLE, TOTALFORFOREIGNER DOUBLE, USERCHANGABLE TINYINT(1) default 0, VATPERCENTAGE DOUBLE, VATABLE TINYINT(1) default 0, BASEUNIT_ID BIGINT, BILLEDAS_ID BIGINT, CATEGORY_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, FINANCIALCATEGORY_ID BIGINT, FORDEPARTMENT_ID BIGINT, FORINSTITUTION_ID BIGINT, IMPORTER_ID BIGINT, INSTITUTION_ID BIGINT, ISSUEUNIT_ID BIGINT, MACHINE_ID BIGINT, MANUFACTURER_ID BIGINT, MASTERITEMREFERENCE_ID BIGINT, MEASUREMENTUNIT_ID BIGINT, PACKUNIT_ID BIGINT, PARENTITEM_ID BIGINT, REPORTFORMAT_ID BIGINT, REPORTEDAS_ID BIGINT, RETIRER_ID BIGINT, SPECIALITY_ID BIGINT, STAFF_ID BIGINT, STRENGTHUNIT_ID BIGINT, VMP_ID BIGINT, WORKSHEET_ID BIGINT, REPORTITEM_ID BIGINT, VTM_ID BIGINT, ISSUEMULTIPLIESQUANTITY DOUBLE, ISSUETYPE INTEGER, MINIMUMISSUEQUANTITY DOUBLE, STRENGTHOFANISSUEUNIT DOUBLE, DOSAGEFORM_ID BIGINT, ISSUEMULTIPLIESUNIT_ID BIGINT, MINIMUMISSUEQUANTITYUNIT_ID BIGINT, ATM_ID BIGINT, AMP_ID BIGINT, VMPP_ID BIGINT, SAMPLEVOLUME DOUBLE, REPORTTYPE VARCHAR(255), INVESTIGATIONCATEGORY_ID BIGINT, INVESTIGATIONTUBE_ID BIGINT, SAMPLE_ID BIGINT, ACCEPTONLINEBOOKINGS TINYINT(1) default 0, ACTIONS LONGTEXT, ACTIVITIES LONGTEXT, CANCHANGEPATIENT TINYINT(1) default 0, CONTINUENUMBERS TINYINT(1) default 0, DATAENTRYFORMS LONGTEXT, DEACTIVATECOMMENT VARCHAR(255), DEACTIVATED TINYINT(1) default 0, DISPLAYCOUNT INTEGER, DISPLAYPERCENT DOUBLE, DURATION DOUBLE, ENDINGTIME DATETIME, EXCLUDEFROMPATIENTPORTAL TINYINT(1) default 0, MAXNO INTEGER, NOTIFICATIONROLES LONGTEXT, NUMBERINCREMENT INTEGER, NUMBEROFDAYSFORAUTOMATICINSTANCECREATION INTEGER, PAIDAPPOINTMENTSONLY TINYINT(1) default 0, RECERVEDNUMBERS INTEGER, REFUNDABLE TINYINT(1) default 0, ROOMNO INTEGER, SESSIONAT TIME, SESSIONDATE DATE, SESSIONSTARTINGNUMBER VARCHAR(255), SESSIONTIME TIME, SESSIONWEEKDAY INTEGER, SPECIALNOTICE LONGTEXT, STARTINGNO INTEGER, STARTINGTIME DATETIME, ORIGINATINGSESSION_ID BIGINT, SESSIONNUMBERGENERATOR_ID BIGINT, AFTERSESSION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STOCKVARIENTBILLITEM (ID BIGINT NOT NULL, ADJUSTEDSTOCK DOUBLE, CALCULATEDSTOCK DOUBLE, CREATEDAT DATETIME, PHYSICALSTOCK DOUBLE, PURCHASERATE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SYSTEMSTOCK DOUBLE, BILL_ID BIGINT, CREATER_ID BIGINT, ITEM_ID BIGINT, REFERENCESTOCKVARIANTBILLITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTDEPOSIT (ID BIGINT NOT NULL, BALANCE DOUBLE, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, PATIENT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFSALARY (ID BIGINT NOT NULL, ACCOUNTNO VARCHAR(255), ADJUSTMENTTOALLOWANCE DOUBLE, ADJUSTMENTTOBASIC DOUBLE, BASICRATEPERMINUTE DOUBLE, BASICVALUE DOUBLE, BLOCKED TINYINT(1) default 0, BLOCKEDCOMMENT VARCHAR(255), BLOCKEDDATE DATETIME, BRVALUE DOUBLE, CHEQUEDATE DATE, CHEQUENUMBEROVERTIME VARCHAR(255), CHEQUENUMBERSALARY VARCHAR(255), CHEQUENUMBERSALARYANDOVERTIME VARCHAR(255), COMMENTS VARCHAR(255), COMPONENTVALUEADDITION DOUBLE, COMPONENTVALUESUBSTRACTION DOUBLE, CREATEDAT DATETIME, DAYOFFALLOWANCE DOUBLE, DAYOFFCOUNT DOUBLE, EPFBANKACCOUNT VARCHAR(255), EPFCOMPANYVALUE DOUBLE, EPFSTAFFVALUE DOUBLE, ETFCOMPANYVALUE DOUBLE, ETFSATFFVALUE DOUBLE, EXTRADUTYDAYOFFMINUTE DOUBLE, EXTRADUTYDAYOFFVALUE DOUBLE, EXTRADUTYMERCHANTILEMINUTE DOUBLE, EXTRADUTYMERCHANTILEVALUE DOUBLE, EXTRADUTYNORMALMINUTE DOUBLE, EXTRADUTYNORMALVALUE DOUBLE, EXTRADUTYPOYAMINUTE DOUBLE, EXTRADUTYPOYAVALUE DOUBLE, EXTRADUTYSLEEPINGDAYMINUTE DOUBLE, EXTRADUTYSLEEPINGDAYVALUE DOUBLE, HOLD TINYINT(1) default 0, HOLDCOMMENT VARCHAR(255), HOLDDATE DATETIME, HOLDPAID TINYINT(1) default 0, HOLDPAIDAT DATETIME, LATENOPAYALLOVANCEVALUE DOUBLE, LATENOPAYBASICVALUE DOUBLE, LATENOPAYCOUNT DOUBLE, MERCHANTILEALLOWANCEVALUE DOUBLE, MERCHANTILECOUNT DOUBLE, NOPAYCOUNT DOUBLE, NOPAYVALUEALLOWANCE DOUBLE, NOPAYVALUEBASIC DOUBLE, OVERTIMEMINUTE DOUBLE, OVERTIMERATEPERMINUTE DOUBLE, OVERTIMEVALUE DOUBLE, PAYEEVALUE DOUBLE, POYAALLOWANCEVALUE DOUBLE, POYACOUNT DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SLEEPINGDAYALLOWANCE DOUBLE, SLEEPINGDAYCOUNT DOUBLE, TRANSADVANCESALARY DOUBLE, BANKBRANCH_ID BIGINT, BLOCKEDUSER_ID BIGINT, CHEQUEBANK_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EPFBANKBRANCH_ID BIGINT, HOLDPAIDBY_ID BIGINT, HOLDUSER_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, SALARYCYCLE_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PAYMENTHANDOVERITEM (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, CURRENTHOLDER_ID BIGINT, HANDOVERACCEPTBILL_ID BIGINT, HANDOVERACCEPTCOMPONANTBILL_ID BIGINT, HANDOVERCREATEDBILL_ID BIGINT, HANDOVERCREATEDCOMPONANTBILL_ID BIGINT, HANDOVERSHIFTBILL_ID BIGINT, HANDOVERSHIFTCOMPONANTBILL_ID BIGINT, PAYMENT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE APPOINTMENTACTIVITY (ID BIGINT NOT NULL, CODE VARCHAR(255), CREATEDAT DATETIME, DISCRIPTION LONGTEXT, IMAGELINK LONGTEXT, NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PAYMENT (ID BIGINT NOT NULL, CANCELLED TINYINT(1) default 0, CANCELLEDAT DATETIME, CASHBOOKENTRYCOMPLETED TINYINT(1) default 0, CASHBOOKENTRYSTATED TINYINT(1) default 0, CHEQUEDATE DATE, CHEQUEPAID TINYINT(1) default 0, CHEQUEPAIDAT DATETIME, CHEQUEREALIZED TINYINT(1) default 0, CHEQUEREALIZEDAT DATETIME, CHEQUEREFNO VARCHAR(255), COMMENTS LONGTEXT, CREATEDAT DATETIME, CREDITCARDREFNO VARCHAR(255), CREDITDURATIONINDAYS INTEGER, CURRENCYDENOMINATIONSJSON LONGTEXT, DISCOUNTVALUE DECIMAL(18,4), HANDINGOVERCOMPLETED TINYINT(1) default 0, HANDINGOVERSTARTED TINYINT(1) default 0, PAIDVALUE DOUBLE, PAYMENTDATE DATE, PAYMENTMETHOD VARCHAR(255), PAYMENTRECORDCOMPLETED TINYINT(1) default 0, PAYMENTRECORDSTATED TINYINT(1) default 0, POLICYNO VARCHAR(255), REALIZECOMMENTS LONGTEXT, REALIZED TINYINT(1) default 0, REALIZEDAT DATE, REFERENCENO VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SELECTEDFORCASHBOOKENTRY TINYINT(1) default 0, SELECTEDFORHANDOVER TINYINT(1) default 0, SELECTEDFORRECORDING TINYINT(1) default 0, SELECTEDFORRECORDINGCONFIRMATION TINYINT(1) default 0, TOREALIZEAT DATE, WRITTENAT DATE, BANK_ID BIGINT, BILL_ID BIGINT, CANCELLEDBILL_ID BIGINT, CANCELLEDBY_ID BIGINT, CANCELLEDPAYMENT_ID BIGINT, CASHBOOK_ID BIGINT, CASHBOOKENTRY_ID BIGINT, CHEQUEPAIDBILL_ID BIGINT, CHEQUEPAYER_ID BIGINT, CHEQUEREALIZEDBILL_ID BIGINT, CHEQUEREALIZER_ID BIGINT, CREATER_ID BIGINT, CREDITCOMPANY_ID BIGINT, CURRENTHOLDER_ID BIGINT, DEPARTMENT_ID BIGINT, FROMINSTITUTION_ID BIGINT, INSTITUTION_ID BIGINT, PAYMENTRECORDCOMPLETEBILL_ID BIGINT, PAYMENTRECORDCOMPLETECOMPONANTBILL_ID BIGINT, PAYMENTRECORDCREATEBILL_ID BIGINT, PAYMENTRECORDCREATECOMPONANTBILL_ID BIGINT, REALIZER_ID BIGINT, REFERANCEPAYMENT_ID BIGINT, RETIRER_ID BIGINT, TOINSTITUTION_ID BIGINT, TOSTAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FEECHANGE (ID BIGINT NOT NULL, CREATEDAT DATETIME, DONE TINYINT(1) default 0, DONEAT DATETIME, FEECHANGETYPE VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, VALIDFROM DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, FEE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE REPORTITEM (ID BIGINT NOT NULL, DTYPE VARCHAR(31), ABOVEABSOLUTEWARNING VARCHAR(255), ABSOLUTEHIGHVALUE DOUBLE, ABSOLUTELOWVALUE DOUBLE, AUTOMATED TINYINT(1) default 0, BELOWABSOLUTEWARNING VARCHAR(255), CANNOTAPPROVEIFVALUEISABOVEABSOLUTEHIGHVALUE TINYINT(1) default 0, CANNOTAPPROVEIFVALUEISBELOWABSOLUTELOWVALUE TINYINT(1) default 0, CANNOTAPPROVEIFVALUEISEMPTY TINYINT(1) default 0, CODE VARCHAR(255), CREATEDAT DATETIME, CSSBACKCOLOR VARCHAR(255), CSSBORDER VARCHAR(255), CSSBORDERRADIUS VARCHAR(255), CSSCLIP VARCHAR(255), CSSCOLOR VARCHAR(255), CSSFONTFAMILY VARCHAR(255), CSSFONTSIZE VARCHAR(255), CSSFONTSTYLE VARCHAR(255), CSSFONTVARIANT VARCHAR(255), CSSFONTWEIGHT VARCHAR(255), CSSHEIGHT VARCHAR(255), CSSLEFT VARCHAR(255), CSSLINEHEIGHT VARCHAR(255), CSSMARGIN VARCHAR(255), CSSOVERFLOW VARCHAR(255), CSSPADDING VARCHAR(255), CSSPOSITION VARCHAR(255), CSSTEXTALIGN VARCHAR(255), CSSTEXTDECORATION VARCHAR(255), CSSTOP VARCHAR(255), CSSVERTICALALIGN VARCHAR(255), CSSWIDTH VARCHAR(255), CSSZORDER VARCHAR(255), CUSTOMCSS LONGTEXT, DATAENTRYMETHOD VARCHAR(255), DESCRIPTION LONGTEXT, EMPTYVALUEWARNING VARCHAR(255), FORMATPREFIX VARCHAR(255), FORMATSTRING VARCHAR(255), FORMATSUFFIX VARCHAR(255), HTPIX DOUBLE, HTMLTEXT LONGTEXT, IXITEMTYPE VARCHAR(255), IXITEMVALUETYPE VARCHAR(255), NAME VARCHAR(255), ORDERNO INTEGER, PAGENO INTEGER, REPORTITEMTYPE VARCHAR(255), RESULTCODE VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, RIFONTSIZE DOUBLE, RIHEIGHT DOUBLE, RILEFT DOUBLE, RITOP DOUBLE, RIWIDTH DOUBLE, VALUECODE VARCHAR(255), VALUECODESYSTEM VARCHAR(255), VALUEUNITCODE VARCHAR(255), VALUEUNITCODESYSTEM VARCHAR(255), WTPIX DOUBLE, CATEGORY_ID BIGINT, COMMENTLABEL_ID BIGINT, CREATER_ID BIGINT, FLAGVALUE_ID BIGINT, INVESTIGATIONCOMPONENT_ID BIGINT, ITEM_ID BIGINT, MACHINE_ID BIGINT, REFERRINGCATEGORY_ID BIGINT, REFERRINGITEM_ID BIGINT, RETIRER_ID BIGINT, SAMPLE_ID BIGINT, SAMPLECOMPONENT_ID BIGINT, TEST_ID BIGINT, TUBE_ID BIGINT, VALUEVALUE_ID BIGINT, REFERENCEHEADER_ID BIGINT, REFERENCELABEL_ID BIGINT, TESTHEADER_ID BIGINT, TESTLABEL_ID BIGINT, UNITHEADER_ID BIGINT, UNITLABEL_ID BIGINT, VALUEHEADER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE USERPREFERENCE (ID BIGINT NOT NULL, ABBREVIATIONFOREXAMINATION VARCHAR(255), ABBREVIATIONFORHISTORY VARCHAR(255), ABBREVIATIONFORINVESTIGATIONS VARCHAR(255), ABBREVIATIONFORMANAGEMENT VARCHAR(255), ABBREVIATIONFORTREATMENTS VARCHAR(255), ALLOWTOCHANGEPAYMENTMETHODDURINGPAYMENT TINYINT(1) default 0, APPLICATIONINSTITUTION VARCHAR(255), AUTODISPLAYMENU TINYINT(1) default 0, BHTNUMBERWITHOUTADMISSIONTYPE TINYINT(1) default 0, BHTNUMBERWITHYEAR TINYINT(1) default 0, CANSETTLEOPDBILLWITHINVESTIGATIONSWITHOUTREFERRINGDOCTOR TINYINT(1) default 0, CCITEMLISTINGSTRATEGY VARCHAR(255), CHANGETEXTCASESPATIENTNAME VARCHAR(255), CHANNELBILLDOUBLE TINYINT(1) default 0, CHANNELBILLPAPERTYPE VARCHAR(255), CHANNELDOCTORARIVALMSGSEND TINYINT(1) default 0, CHANNELSETTLEWITHOUTPATIENTPHONENUMBER TINYINT(1) default 0, CHANNELWITHOUTREFERENCENUMBER TINYINT(1) default 0, CHANNELINGBILLHEADERTEMPLATE VARCHAR(255), CHANNELINGDOCTORPAYMENTBILLTEMPLATE LONGTEXT, CHANNELLINGBILLTEMPLATE LONGTEXT, CHANNELLINGCANCELLATIONBILLTEMPLATE LONGTEXT, CHANNELLINGPAYMENTMETHOD VARCHAR(255), CHECKPAYMENTSCHEMEVALIDATION TINYINT(1) default 0, DEPNUMGENFROMTODEPARTMENT TINYINT(1) default 0, EMAILREGEX VARCHAR(255), ENCRPTIONKEY VARCHAR(255), FAMILYMEMBERSHIP TINYINT(1) default 0, FIVEFIVEPAPERWITHHEADINGS TINYINT(1) default 0, GENARATEOPDTOKENNUMBERSTOCOUNTERWISE TINYINT(1) default 0, GRNBILLDETAILED TINYINT(1) default 0, HASAWEBSITEASFRONTEND TINYINT(1) default 0, INPATIENTFINALBILLPRINTHEADER LONGTEXT, INSTITUTIONRESTRICTEDBILLING TINYINT(1) default 0, INSTITUTIONSPECIFICITEMS TINYINT(1) default 0, INWARDADDSERVICEBILLTIMECHECK TINYINT(1) default 0, INWARDADDMISSIONSTATEMENETENGLISH LONGTEXT, INWARDADDMISSIONSTATEMENETSINHALA LONGTEXT, INWARDCHANGEADMISSIONFEE TINYINT(1) default 0, INWARDDEPOSITBILLTEMPLATE LONGTEXT, INWARDDEPOSITCANCELBILLTEMPLATE LONGTEXT, INWARDDEPOSITPAYMENTBILLPAPER VARCHAR(255), INWARDITEMLISTINGSTRATEGY VARCHAR(255), INWARDMOCHARGECALCULATEINITIALTIME TINYINT(1) default 0, INWARDSERVICEBILLPAPERTYPE VARCHAR(255), LENGTHOFOTPINDEXES VARCHAR(255), LOGGINGHEADER VARCHAR(255), LOGGINGTEXT LONGTEXT, LOGONAME VARCHAR(255), LOGOURL VARCHAR(255), LONGDATEFORMAT VARCHAR(255), LONGDATETIMEFORMAT VARCHAR(255), LONGTIMEFORMAT VARCHAR(255), MEMBERSHIPEXPIRES TINYINT(1) default 0, MICROBIOLOGYFONT VARCHAR(255), MOBILEREGEX VARCHAR(255), NAMEREGEX VARCHAR(255), NEEDAREAFORPATIENTREGISTRATION TINYINT(1) default 0, NEEDNICFORPATIENTREGISTRATION TINYINT(1) default 0, NEEDPHONENUMBERFORPATIENTREGISTRATION TINYINT(1) default 0, NICREGEX VARCHAR(255), NUMBEROFCCBILLCOPIES INTEGER, NUMBEROFCHANNELLINGBILLCOPIES INTEGER, NUMBEROFOPDBILLCOPIES INTEGER, OPDBILLFORCASHIERTEMPLATE LONGTEXT, OPDBILLPAPERTYPE VARCHAR(255), OPDBILLTEMPLATE LONGTEXT, OPDBILLINGAFTERSHIFTSTART TINYINT(1) default 0, OPDBILLINGSTRATEGY VARCHAR(255), OPDITEMLISTINGSTRATEGY VARCHAR(255), OPDSETTLEWITHOUTCASHTENDERED TINYINT(1) default 0, OPDSETTLEWITHOUTPATIENTAREA TINYINT(1) default 0, OPDSETTLEWITHOUTPATIENTPHONENUMBER TINYINT(1) default 0, OPDSETTLEWITHOUTREFERRALDETAILS TINYINT(1) default 0, OPDTOKENNUMBERGENERATIONSTRATEGY VARCHAR(255), PARTIALPAYMENTOFOPDBILLSALLOWED TINYINT(1) default 0, PARTIALPAYMENTOFOPDPREBILLSALLOWED TINYINT(1) default 0, PARTIALPAYMENTOFPHARMACYBILLSALLOWED TINYINT(1) default 0, PAYMENTMETHODALLOWEDININWARDMATRIX TINYINT(1) default 0, PHARMACYBILLFOOTER VARCHAR(255), PHARMACYBILLHEADER VARCHAR(255), PHARMACYBILLPAPERTYPE VARCHAR(255), PHARMACYBILLPRABODHA TINYINT(1) default 0, PHARMACYBILLWITHOUTITEM TINYINT(1) default 0, PHARMACYRETAILBILLTEMPLATE LONGTEXT, PHARMACYWHOLESALEBILLTEMPLATE LONGTEXT, PHARMAYPURCHASEWITHLASTRATE TINYINT(1) default 0, PRINTBARCODEINOPDBILL TINYINT(1) default 0, PRINTOPDTOKENNUMBER TINYINT(1) default 0, SENDBULKSMS TINYINT(1) default 0, SENDSMSONCHANNELBOOKING TINYINT(1) default 0, SENDSMSONCHANNELBOOKINGCANCELLATION TINYINT(1) default 0, SENDSMSONCHANNELBOOKINGCOMPLETION TINYINT(1) default 0, SENDSMSONCHANNELBOOKINGDOCTERPAYMENT TINYINT(1) default 0, SENDSMSONCHANNELBOOKINGNOSHOW TINYINT(1) default 0, SENDSMSONCHANNELDOCTORARRIVAL TINYINT(1) default 0, SENTDAILYSMSSUMMERYFORREFERRINGDOCTORS TINYINT(1) default 0, SENTEMAILWITHINVESTIGATIONREPORTAPPROVAL TINYINT(1) default 0, SENTSMSWITHINVESTIGATIONREQUESTAPPROVAL TINYINT(1) default 0, SHORTDATEFORMAT VARCHAR(255), SHORTDATETIMEFORMAT VARCHAR(255), SHORTTIMEFORMAT VARCHAR(255), SHOWBARCODEINCHANNELBOOKINGBILL TINYINT(1) default 0, SHOWBILLWISEDETAILS TINYINT(1) default 0, SHOWONLYMARKEDDOCTORS TINYINT(1) default 0, SMSAUTHENTICATIONTYPE INTEGER, SMSMESSAGEPARAMETERNAME VARCHAR(100), SMSPASSWORD VARCHAR(100), SMSPASSWORDPARAMETERNAME VARCHAR(100), SMSPHONENUMBERPARAMETERNAME VARCHAR(100), SMSTEMPLATEFORCHANNELBOOKING LONGTEXT, SMSTEMPLATEFORCHANNELBOOKINGCANCELLATION LONGTEXT, SMSTEMPLATEFORCHANNELBOOKINGCOMPLETION LONGTEXT, SMSTEMPLATEFORCHANNELBOOKINGDOCTORPAYMENT LONGTEXT, SMSTEMPLATEFORCHANNELBOOKINGNOSHOW LONGTEXT, SMSTEMPLATEFORCHANNELDOCTORARRIVAL LONGTEXT, SMSTEMPLATEFOROPDBILLSETTING LONGTEXT, SMSURL VARCHAR(255), SMSUSERALIAS VARCHAR(100), SMSUSERALIASPARAMETERNAME VARCHAR(100), SMSUSERNAME VARCHAR(100), SMSUSERNAMEPARAMETERNAME VARCHAR(100), THEMENAME VARCHAR(255), TRANFERNETTOTALBYRETAILRATE TINYINT(1) default 0, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PACKAGEITEM (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, PACKEGE_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFEMPLOYEESTATUS (ID BIGINT NOT NULL, CREATEDAT DATETIME, EMPLOYEESTATUS VARCHAR(255), FROMDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFFEMPLOYMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BANKACCOUNT (ID BIGINT NOT NULL, ACCOUNTNAME VARCHAR(255), ACCOUNTNO VARCHAR(255), BANKACCOUNTTYPE VARCHAR(255), CREATEDAT DATETIME, DESCRIPTION LONGTEXT, EDITEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, BANK_ID BIGINT, BANKBRANCH_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBUSERDEPARTMENT (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ENCOUNTERCOMPONENT (ID BIGINT NOT NULL, CREATEDAT DATETIME, DESCRIPTION LONGTEXT, NAME VARCHAR(255), ORDERNO INTEGER, PATIENTENCOUNTERCOMPONENTTYPE INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, BILLFEE_ID BIGINT, BILLITEM_ID BIGINT, CATEGORY_ID BIGINT, CHILDENCOUNTER_ID BIGINT, CREATER_ID BIGINT, ITEM_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE VIRTUALPRODUCTINGREDIENT (ID BIGINT NOT NULL, BASISOFPHARMACEUTICALSTRENGTH INTEGER, RETIRED TINYINT(1) default 0, STRENGTH DOUBLE, BASISOFSTRENGTHSUBSTANCE_ID BIGINT, INGREDIENTSUBSTANCE_ID BIGINT, PHARMACEUTICALITEMCATEGORY_ID BIGINT, STRENGTHUNIT_ID BIGINT, VMP_ID BIGINT, VTM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PRESCRIPTION (ID BIGINT NOT NULL, COMMENT VARCHAR(255), CREATEDAT DATETIME, DOSE DOUBLE, DURATION DOUBLE, EDITEDAT DATETIME, INDOOR TINYINT(1) default 0, ISSUE DOUBLE, ORDERNO DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CATEGORY_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, DOSEUNIT_ID BIGINT, DURATIONUNIT_ID BIGINT, EDITER_ID BIGINT, ENCOUNTER_ID BIGINT, FREQUENCYUNIT_ID BIGINT, INSTITUTION_ID BIGINT, ISSUEUNIT_ID BIGINT, ITEM_ID BIGINT, PARENT_ID BIGINT, PATIENT_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PRICEMATRIX (ID BIGINT NOT NULL, DTYPE VARCHAR(31), BILLTYPE INTEGER, CREATEDAT DATETIME, DISCOUNTPERCENT DOUBLE, FROMPRICE DOUBLE, INWARDCHARGETYPE VARCHAR(255), MARGIN DOUBLE, PAYMENTMETHOD VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TOPRICE DOUBLE, ADMISSIONTYPE_ID BIGINT, CATEGORY_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, MEMBERSHIPSCHEME_ID BIGINT, PAYMENTSCHEME_ID BIGINT, RETIRER_ID BIGINT, ROOMCATEGORY_ID BIGINT, ROOMLOCATION_ID BIGINT, TOINSTITUTION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE RESERVATION (ID BIGINT NOT NULL, CREATEDAT DATETIME, RESERVEDFROM DATETIME, RESERVEDTO DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, ROOM_ID BIGINT, APPOINTMENT_ID BIGINT, CREATER_ID BIGINT, PATIENT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PAYEETAXRANGE (ID BIGINT NOT NULL, FROMSALARY DOUBLE, TAXRATE DOUBLE, TOSALARY DOUBLE, HRMVARIABLES_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTREPORTITEMVALUE (ID BIGINT NOT NULL, BAIMAGE LONGBLOB, CODESYSTEM VARCHAR(255), CODESYSTEMCODE VARCHAR(255), DOUBLEVALUE DOUBLE, FILENAME VARCHAR(255), FILETYPE VARCHAR(255), LOBVALUE LONGTEXT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, STRVALUE VARCHAR(255), INVESTIGATIONITEM_ID BIGINT, PATIENT_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, PATIENTREPORT_ID BIGINT, PATIENTREPORTGROUP_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PRESCRIPTIONTEMPLATE (ID BIGINT NOT NULL, AGEINMONTHSFROM BIGINT, AGEINMONTHSTO BIGINT, CREATEDAT DATETIME, DOSE DOUBLE, DURATION DOUBLE, FAVOURITETYPE INTEGER, FROMDAYS DOUBLE, FROMKG DOUBLE, ISSUE DOUBLE, ORDERNO DOUBLE, RETIRED TINYINT(1) default 0, SEX VARCHAR(255), TEMPLATEFROM DOUBLE, TEMPLATETO DOUBLE, TODAYS DOUBLE, TOKG DOUBLE, TYPE VARCHAR(255), CATEGORY_ID BIGINT, CREATER_ID BIGINT, DOSEUNIT_ID BIGINT, DURATIONUNIT_ID BIGINT, FORDEPARTMENT_ID BIGINT, FORINSTITUTION_ID BIGINT, FORITEM_ID BIGINT, FORWEBUSER_ID BIGINT, FREQUENCYUNIT_ID BIGINT, ISSUEUNIT_ID BIGINT, ITEM_ID BIGINT, PARENT_ID BIGINT, PATIENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ANALYZERMESSAGE (ID BIGINT NOT NULL, MESSAGE LONGTEXT, MESSAGEID VARCHAR(255), MESSAGETYPE VARCHAR(255), DEPARTMENT_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE AGENTSFEES (ID BIGINT NOT NULL, AGENT_ID BIGINT, FEE_ID BIGINT, SERVICESESSION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE INVESTIGATIONVALIDATERCOMPONENT (ID BIGINT NOT NULL, CREATEDAT DATETIME, EDITEDAT DATETIME, NEWVALIDATOR VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, EDITOR_ID BIGINT, INVESTIGATIONITEM_ID BIGINT, INVESTIGATIONVALIDATOR_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILL (ID BIGINT NOT NULL, DTYPE VARCHAR(31), ACCEPTEDAT DATETIME, AGENTREFNO VARCHAR(255), APPOINTMENTAT DATETIME, APPROVEAT DATETIME, BALANCE DOUBLE, BILLCLASSTYPE VARCHAR(255), BILLCLOSED TINYINT(1) default 0, BILLDATE DATE, BILLPAYMENTCOMPLETELYSETTLED TINYINT(1) default 0, BILLTIME DATETIME, BILLTOTAL DOUBLE, BILLTYPE VARCHAR(255), BILLTYPEATOMIC VARCHAR(255), BILLERFEE DOUBLE, BOOKINGID VARCHAR(255), CANCELLED TINYINT(1) default 0, CASHBALANCE DOUBLE, CASHPAID DOUBLE, CATID VARCHAR(255), CHECKEAT DATETIME, CHEQUEDATE DATE, CHEQUEREFNO VARCHAR(255), CLAIMABLETOTAL DOUBLE, COLLCTINGCENTREFEE DOUBLE, COMMENTS LONGTEXT, COMPLETED TINYINT(1) default 0, COMPLETEDAT DATETIME, CREATEDAT DATETIME, CREDITBILL TINYINT(1) default 0, CREDITCARDREFNO VARCHAR(255), CREDITDURATION INTEGER, DEPTID VARCHAR(255), DISCOUNT DOUBLE, DISCOUNTPERCENT DOUBLE, DUPLICATEPRINTEDAT DATETIME, DUPLICATEDPRINTED TINYINT(1) default 0, EDITEDAT DATETIME, EXPENSETOTAL DOUBLE, EXTERNALDOCTOR VARCHAR(255), FREEVALUE DOUBLE, FROMDATE DATETIME, GRANTTOTAL DOUBLE, GRNNETTOTAL DOUBLE, HOSPITALFEE DOUBLE, INDICATION LONGTEXT, INSID VARCHAR(255), INVOICEDATE DATE, INVOICENUMBER VARCHAR(255), IPOPORCC VARCHAR(255), LOCALNUMBER VARCHAR(255), MARGIN DOUBLE, NETTOTAL DOUBLE, PAID TINYINT(1) default 0, PAIDAMOUNT DOUBLE, PAIDAT DATETIME, PAYMENTAPPROVALCOMMENTS LONGTEXT, PAYMENTAPPROVED TINYINT(1) default 0, PAYMENTAPPROVEDAT DATETIME, PAYMENTCOMPLETED TINYINT(1) default 0, PAYMENTCOMPLETEDAT DATETIME, PAYMENTCOMPLETIONCOMMENTS LONGTEXT, PAYMENTGENERATED TINYINT(1) default 0, PAYMENTGENERATEDAT DATETIME, PAYMENTGENERATIONCOMMENTS LONGTEXT, PAYMENTMETHOD VARCHAR(255), PERFORMINSTITUTIONFEE DOUBLE, PRINTED TINYINT(1) default 0, PRINTEDAT DATETIME, PROFESSIONALFEE DOUBLE, QTY DOUBLE, QUTATIONNUMBER VARCHAR(255), REACTIVATED TINYINT(1) default 0, REFERENCENUMBER VARCHAR(255), REFUNDAMOUNT DOUBLE, REFUNDED TINYINT(1) default 0, RELEASEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SALEVALUE DOUBLE, SERVICECHARGE DOUBLE, SESSIONID VARCHAR(255), SETTLEDAMOUNTBYPATIENT DOUBLE, SETTLEDAMOUNTBYSPONSOR DOUBLE, SMSED TINYINT(1) default 0, SMSEDAT DATETIME, STAFFFEE DOUBLE, STATUS INTEGER, SURGERYBILLTYPE VARCHAR(255), TAX DOUBLE, TENDEREDAMOUNT DOUBLE, TODATE DATETIME, TOTAL DOUBLE, TOTALCENTERFEE DOUBLE, TOTALHOSPITALFEE DOUBLE, TOTALSTAFFFEE DOUBLE, VAT DOUBLE, VATPLUSNETTOTAL DOUBLE, APPROVEUSER_ID BIGINT, BACKWARDREFERENCEBILL_ID BIGINT, BANK_ID BIGINT, BILLPACKEGE_ID BIGINT, BILLEDBILL_ID BIGINT, CANCELLEDBILL_ID BIGINT, CATEGORY_ID BIGINT, CHECKEDBY_ID BIGINT, COLLECTINGCENTRE_ID BIGINT, COMPLETEDBY_ID BIGINT, CREATER_ID BIGINT, CREDITCOMPANY_ID BIGINT, DEPARTMENT_ID BIGINT, DUPLICATEPRINTEDUSER_ID BIGINT, EDITOR_ID BIGINT, FORWARDREFERENCEBILL_ID BIGINT, FROMDEPARTMENT_ID BIGINT, FROMINSTITUTION_ID BIGINT, FROMSTAFF_ID BIGINT, FROMWEBUSER_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, MEMBERSHIPSCHEME_ID BIGINT, PAIDBILL_ID BIGINT, PATIENT_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, PAYMENTAPPROVEDBY_ID BIGINT, PAYMENTCOMPLETEDBY_ID BIGINT, PAYMENTGENERATEDBY_ID BIGINT, PAYMENTSCHEME_ID BIGINT, PAYMENTSCHEMEINSTITUTION_ID BIGINT, PERSON_ID BIGINT, PRINTEDUSER_ID BIGINT, PROCEDURE_ID BIGINT, REACTIVATEDBILL_ID BIGINT, REFERENCEBILL_ID BIGINT, REFERENCEINSTITUTION_ID BIGINT, REFERREDBY_ID BIGINT, REFERREDBYINSTITUTION_ID BIGINT, REFERRINGDEPARTMENT_ID BIGINT, REFUNDEDBILL_ID BIGINT, RETIRER_ID BIGINT, SINGLEBILLITEM_ID BIGINT, SINGLEBILLSESSION_ID BIGINT, SMSEDUSER_ID BIGINT, STAFF_ID BIGINT, TODEPARTMENT_ID BIGINT, TOINSTITUTION_ID BIGINT, TOSTAFF_ID BIGINT, TOWEBUSER_ID BIGINT, WEBUSER_ID BIGINT, BANKACCOUNT_ID BIGINT, BILLFINANCEDETAILS_ID BIGINT, CASHTRANSACTION_ID BIGINT, ONLINEBOOKING_ID BIGINT, PHARMACYBILL_ID BIGINT, STOCKBILL_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FEEVALUE (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TOTALVALUEFORFOREIGNERS DOUBLE, TOTALVALUEFORLOCALS DOUBLE, CATEGORY_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PHARMACEUTICALBILLITEM (ID BIGINT NOT NULL, AFTERADJUSTMENTEXPIRY DATE, AFTERADJUSTMENTVALUE DOUBLE, BARCODE VARCHAR(255), BEFOREADJUSTMENTEXPIRY DATE, BEFOREADJUSTMENTVALUE DOUBLE, CHASSISNO VARCHAR(255), CODE VARCHAR(255), COLOUR VARCHAR(255), CREATEDAT DATETIME, DEPRECITIONRATE DOUBLE, DESCRIPTION LONGTEXT, DOE DATE, ENGINENO VARCHAR(255), FREEQTY DOUBLE, FREEQTYPACKS DOUBLE, LASTPURCHASERATE DOUBLE, LASTPURCHASERATEPACK DOUBLE, MODEL VARCHAR(255), NUMBEROFACCESSORIES INTEGER, OTHERNOTES LONGTEXT, PURCHASERATE DOUBLE, PURCHASERATEPACK DOUBLE, PURCHASERATEPACKVALUE DOUBLE, PURCHASEVALUE DOUBLE, QTY DOUBLE, QTYPACKS DOUBLE, REGISTRATIONNO VARCHAR(255), REMAININGFREEQTY DOUBLE, REMAININGFREEQTYPACK DOUBLE, RETAILPACKVALUE DOUBLE, RETAILRATE DOUBLE, RETAILRATEPACK DOUBLE, RETAILVALUE DOUBLE, RETIRECOMMENTS LONGTEXT, RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SERIALNO VARCHAR(255), STRINGVALUE VARCHAR(255), TOTALACQUICITIONCOST DOUBLE, WARRENTYCERTIFICATENUMBER VARCHAR(255), WARRENTYDURATION BIGINT, WHOLESALERATE DOUBLE, WHOLESALERATEPACK DOUBLE, CREATER_ID BIGINT, ITEMBATCH_ID BIGINT, MAKE_ID BIGINT, MANUFACTURER_ID BIGINT, RETIRER_ID BIGINT, STAFFSTOCK_ID BIGINT, STOCK_ID BIGINT, BILLITEM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DEPARTMENT (ID BIGINT NOT NULL, DTYPE VARCHAR(31), ACTIVE TINYINT(1) default 0, ADDRESS VARCHAR(255), CODE VARCHAR(255), CREATEDAT DATETIME, DEPARTMENTCODE VARCHAR(255), DEPARTMENTTYPE VARCHAR(255), DESCRIPTION LONGTEXT, EMAIL VARCHAR(255), FAX VARCHAR(255), MARGIN DOUBLE, NAME VARCHAR(255), PHARMACYMARGINFROMPURCHASERATE DOUBLE, PRINTINGNAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TELEPHONE1 VARCHAR(255), TELEPHONE2 VARCHAR(255), CREATER_ID BIGINT, INSTITUTION_ID BIGINT, LABDEPARTMENT_ID BIGINT, LABINSTITUTION_ID BIGINT, RETIRER_ID BIGINT, SAMPLEDEPARTMENT_ID BIGINT, SAMPLEINSTITUTION_ID BIGINT, SITE_ID BIGINT, SUPERDEPARTMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PRICE (ID BIGINT NOT NULL, DTYPE VARCHAR(31), PRICE DOUBLE, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEMBATCH_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SHIFT (ID BIGINT NOT NULL, CREATEDAT DATETIME, DAYOFF TINYINT(1) default 0, DAYTYPE VARCHAR(255), ENDINGTIME TIME, FIRSTSHIFT TINYINT(1) default 0, GROUPED TINYINT(1) default 0, HALFSHIFT TINYINT(1) default 0, HIDESHIFT TINYINT(1) default 0, LASTSHIFT TINYINT(1) default 0, LEAVEHOURFULL DOUBLE, LEAVEHOURHALF DOUBLE, NAME VARCHAR(255), REPEATEDDAY INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SHIFTDURATION DOUBLE, SHIFTORDER INTEGER, STARTINGTIME TIME, CREATER_ID BIGINT, NEXTSHIFT_ID BIGINT, PREVIOUSSHIFT_ID BIGINT, RETIRER_ID BIGINT, ROSTER_ID BIGINT, SHIFT_ID BIGINT, SHIFTPREFERENCE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SHIFTAMENDMENT (ID BIGINT NOT NULL, COMMENTS VARCHAR(255), CREATEDAT DATETIME, FROMDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, APPROVED_ID BIGINT, CREATER_ID BIGINT, FROMSHIFT_ID BIGINT, REFERENCESHIFTAMENDMENT_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, TOSHIFT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE HISTORICALRECORD (ID BIGINT NOT NULL, CREATEDAT DATETIME, HISTORICALRECORDTYPE VARCHAR(255), RECORDDATE DATE, RECORDDATETIME DATETIME, RECORDVALUE DOUBLE, RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, VARIABLENAME VARCHAR(255), COLLECTIONCENTRE_ID BIGINT, CREATEDBY_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, RETIREDBY_ID BIGINT, SITE_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFF (ID BIGINT NOT NULL, DTYPE VARCHAR(31), ACNO VARCHAR(255), ACCOUNTNO VARCHAR(255), ALLOWEDEARLYOUTLEAVE TINYINT(1) default 0, ALLOWEDLATEINLEAVE TINYINT(1) default 0, ANNUALWELFAREQUALIFIED DOUBLE, ANNUALWELFAREUTILIZED DOUBLE, BAIMAGE LONGBLOB, CHARGE DOUBLE, CODE VARCHAR(255), CODEINTERGER INTEGER, CREATEDAT DATETIME, CREDITLIMITQUALIFIED DOUBLE, CURRENTCREDITVALUE DOUBLE, DATEJOINED DATE, DATELEFT DATE, DATERETIRED DATE, DATEWITHOUTNOTICE DATE, DESCRIPTION LONGTEXT, EMPLOYEELEAVINGSTATUS VARCHAR(255), EMPLOYEESTATUS VARCHAR(255), EPFACCOUNTNO VARCHAR(255), EPFNO VARCHAR(255), FILENAME VARCHAR(255), FILETYPE VARCHAR(255), ORDERNO INTEGER, PAYINGMETHOD VARCHAR(255), QUALIFICATION LONGTEXT, REGISTRATION VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SALARYPAYMENTMETHOD VARCHAR(255), SIGNATUREURL LONGTEXT, STAFFCODE VARCHAR(255), STAFFWELFAREPERIOD INTEGER, WITHOUTNOTICE TINYINT(1) default 0, WORKINGTIMEFORNOPAYPERWEEK DOUBLE, WORKINGTIMEFOROVERTIMEPERWEEK DOUBLE, BANKBRANCH_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, DESIGNATION_ID BIGINT, EPFBANKBRANCH_ID BIGINT, GRADE_ID BIGINT, INSTITUTION_ID BIGINT, PERSON_ID BIGINT, RETIRER_ID BIGINT, ROSTER_ID BIGINT, SPECIALITY_ID BIGINT, STAFFCATEGORY_ID BIGINT, WORKINGDEPARTMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FORM (ID BIGINT NOT NULL, DTYPE VARCHAR(31), CODE VARCHAR(255), COMMENTS VARCHAR(255), CREATEDAT DATETIME, EDITEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, EDITOR_ID BIGINT, RETIRER_ID BIGINT, APPROVEDAT DATETIME, FROMTIME DATETIME, TIMES VARCHAR(255), TOTIME DATETIME, APPROVEDSTAFF_ID BIGINT, DEPARTMENT_ID BIGINT, FROMROSTER_ID BIGINT, STAFF_ID BIGINT, TOROSTER_ID BIGINT, STAFFSHIFT_ID BIGINT, FROMDATE DATETIME, LEAVETYPE VARCHAR(255), NUMBEROFLEAVE DOUBLE, REQUESTEDDATE DATETIME, TODATE DATETIME, SHIFT_ID BIGINT, FROMSTAFF_ID BIGINT, FROMSTAFFSHIFT_ID BIGINT, FROMSTAFFSHIFTSECOND_ID BIGINT, TOSHIFT_ID BIGINT, TOSHIFTSECOND_ID BIGINT, TOSTAFF_ID BIGINT, TOSTAFFSHIFT_ID BIGINT, TOSTAFFSHIFTSECOND_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBUSERROLEPRIVILEGE (ID BIGINT NOT NULL, CREATEDAT DATETIME, DESCRIPTION VARCHAR(255), NAME VARCHAR(255), PRIVILEGE VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SNAME VARCHAR(255), TNAME VARCHAR(255), CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, RETIRER_ID BIGINT, WEBUSERROLE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CASHBOOKENTRY (ID BIGINT NOT NULL, AGENTVALUE DOUBLE, CARDVALUE DOUBLE, CASHVALUE DOUBLE, CASHBOOKDATE DATE, CHEQUEVALUE DOUBLE, CREATEDAT DATETIME, CREDITVALUE DOUBLE, EDITEDAT DATETIME, ENTRYVALUE DOUBLE, EWALLETVALUE DOUBLE, FROMDEPARTMENTAGENTBALANCEAFTER DOUBLE, FROMDEPARTMENTAGENTBALANCEBEFORE DOUBLE, FROMDEPARTMENTBALANCEAFTER DOUBLE, FROMDEPARTMENTBALANCEBEFORE DOUBLE, FROMDEPARTMENTCARDBALANCEAFTER DOUBLE, FROMDEPARTMENTCARDBALANCEBEFORE DOUBLE, FROMDEPARTMENTCASHBALANCEAFTER DOUBLE, FROMDEPARTMENTCASHBALANCEBEFORE DOUBLE, FROMDEPARTMENTCHEQUEBALANCEAFTER DOUBLE, FROMDEPARTMENTCHEQUEBALANCEBEFORE DOUBLE, FROMDEPARTMENTCREDITBALANCEAFTER DOUBLE, FROMDEPARTMENTCREDITBALANCEBEFORE DOUBLE, FROMDEPARTMENTEWALLETBALANCEAFTER DOUBLE, FROMDEPARTMENTEWALLETBALANCEBEFORE DOUBLE, FROMDEPARTMENTIOUBALANCEAFTER DOUBLE, FROMDEPARTMENTIOUBALANCEBEFORE DOUBLE, FROMDEPARTMENTMULTIPLEPAYMENTMETHODSBALANCEAFTER DOUBLE, FROMDEPARTMENTMULTIPLEPAYMENTMETHODSBALANCEBEFORE DOUBLE, FROMDEPARTMENTONCALLBALANCEAFTER DOUBLE, FROMDEPARTMENTONCALLBALANCEBEFORE DOUBLE, FROMDEPARTMENTONLINESETTLEMENTBALANCEAFTER DOUBLE, FROMDEPARTMENTONLINESETTLEMENTBALANCEBEFORE DOUBLE, FROMDEPARTMENTPATIENTDEPOSITBALANCEAFTER DOUBLE, FROMDEPARTMENTPATIENTDEPOSITBALANCEBEFORE DOUBLE, FROMDEPARTMENTPATIENTPOINTSBALANCEAFTER DOUBLE, FROMDEPARTMENTPATIENTPOINTSBALANCEBEFORE DOUBLE, FROMDEPARTMENTSLIPBALANCEAFTER DOUBLE, FROMDEPARTMENTSLIPBALANCEBEFORE DOUBLE, FROMDEPARTMENTSTAFFBALANCEAFTER DOUBLE, FROMDEPARTMENTSTAFFBALANCEBEFORE DOUBLE, FROMDEPARTMENTSTAFFWELFAREBALANCEAFTER DOUBLE, FROMDEPARTMENTSTAFFWELFAREBALANCEBEFORE DOUBLE, FROMDEPARTMENTVOUCHERBALANCEAFTER DOUBLE, FROMDEPARTMENTVOUCHERBALANCEBEFORE DOUBLE, FROMINSTITUTIONAGENTBALANCEAFTER DOUBLE, FROMINSTITUTIONAGENTBALANCEBEFORE DOUBLE, FROMINSTITUTIONBALANCEAFTER DOUBLE, FROMINSTITUTIONBALANCEBEFORE DOUBLE, FROMINSTITUTIONCARDBALANCEAFTER DOUBLE, FROMINSTITUTIONCARDBALANCEBEFORE DOUBLE, FROMINSTITUTIONCASHBALANCEAFTER DOUBLE, FROMINSTITUTIONCASHBALANCEBEFORE DOUBLE, FROMINSTITUTIONCHEQUEBALANCEAFTER DOUBLE, FROMINSTITUTIONCHEQUEBALANCEBEFORE DOUBLE, FROMINSTITUTIONCREDITBALANCEAFTER DOUBLE, FROMINSTITUTIONCREDITBALANCEBEFORE DOUBLE, FROMINSTITUTIONEWALLETBALANCEAFTER DOUBLE, FROMINSTITUTIONEWALLETBALANCEBEFORE DOUBLE, FROMINSTITUTIONIOUBALANCEAFTER DOUBLE, FROMINSTITUTIONIOUBALANCEBEFORE DOUBLE, FROMINSTITUTIONMULTIPLEPAYMENTMETHODSBALANCEAFTER DOUBLE, FROMINSTITUTIONMULTIPLEPAYMENTMETHODSBALANCEBEFORE DOUBLE, FROMINSTITUTIONONCALLBALANCEAFTER DOUBLE, FROMINSTITUTIONONCALLBALANCEBEFORE DOUBLE, FROMINSTITUTIONONLINESETTLEMENTBALANCEAFTER DOUBLE, FROMINSTITUTIONONLINESETTLEMENTBALANCEBEFORE DOUBLE, FROMINSTITUTIONPATIENTDEPOSITBALANCEAFTER DOUBLE, FROMINSTITUTIONPATIENTDEPOSITBALANCEBEFORE DOUBLE, FROMINSTITUTIONPATIENTPOINTSBALANCEAFTER DOUBLE, FROMINSTITUTIONPATIENTPOINTSBALANCEBEFORE DOUBLE, FROMINSTITUTIONSLIPBALANCEAFTER DOUBLE, FROMINSTITUTIONSLIPBALANCEBEFORE DOUBLE, FROMINSTITUTIONSTAFFBALANCEAFTER DOUBLE, FROMINSTITUTIONSTAFFBALANCEBEFORE DOUBLE, FROMINSTITUTIONSTAFFWELFAREBALANCEAFTER DOUBLE, FROMINSTITUTIONSTAFFWELFAREBALANCEBEFORE DOUBLE, FROMINSTITUTIONVOUCHERBALANCEAFTER DOUBLE, FROMINSTITUTIONVOUCHERBALANCEBEFORE DOUBLE, FROMSITEAGENTBALANCEAFTER DOUBLE, FROMSITEAGENTBALANCEBEFORE DOUBLE, FROMSITEBALANCEAFTER DOUBLE, FROMSITEBALANCEBEFORE DOUBLE, FROMSITECARDBALANCEAFTER DOUBLE, FROMSITECARDBALANCEBEFORE DOUBLE, FROMSITECASHBALANCEAFTER DOUBLE, FROMSITECASHBALANCEBEFORE DOUBLE, FROMSITECHEQUEBALANCEAFTER DOUBLE, FROMSITECHEQUEBALANCEBEFORE DOUBLE, FROMSITECREDITBALANCEAFTER DOUBLE, FROMSITECREDITBALANCEBEFORE DOUBLE, FROMSITEEWALLETBALANCEAFTER DOUBLE, FROMSITEEWALLETBALANCEBEFORE DOUBLE, FROMSITEIOUBALANCEAFTER DOUBLE, FROMSITEIOUBALANCEBEFORE DOUBLE, FROMSITEMULTIPLEPAYMENTMETHODSBALANCEAFTER DOUBLE, FROMSITEMULTIPLEPAYMENTMETHODSBALANCEBEFORE DOUBLE, FROMSITEONCALLBALANCEAFTER DOUBLE, FROMSITEONCALLBALANCEBEFORE DOUBLE, FROMSITEONLINESETTLEMENTBALANCEAFTER DOUBLE, FROMSITEONLINESETTLEMENTBALANCEBEFORE DOUBLE, FROMSITEPATIENTDEPOSITBALANCEAFTER DOUBLE, FROMSITEPATIENTDEPOSITBALANCEBEFORE DOUBLE, FROMSITEPATIENTPOINTSBALANCEAFTER DOUBLE, FROMSITEPATIENTPOINTSBALANCEBEFORE DOUBLE, FROMSITESLIPBALANCEAFTER DOUBLE, FROMSITESLIPBALANCEBEFORE DOUBLE, FROMSITESTAFFBALANCEAFTER DOUBLE, FROMSITESTAFFBALANCEBEFORE DOUBLE, FROMSITESTAFFWELFAREBALANCEAFTER DOUBLE, FROMSITESTAFFWELFAREBALANCEBEFORE DOUBLE, FROMSITEVOUCHERBALANCEAFTER DOUBLE, FROMSITEVOUCHERBALANCEBEFORE DOUBLE, IOUVALUE DOUBLE, MULTIPLEPAYMENTMETHODSVALUE DOUBLE, NAME VARCHAR(255), ONCALLVALUE DOUBLE, ONLINESETTLEMENTVALUE DOUBLE, PATIENTDEPOSITVALUE DOUBLE, PATIENTPOINTSVALUE DOUBLE, PAYMENTMETHOD INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SLIPVALUE DOUBLE, STAFFVALUE DOUBLE, STAFFWELFAREVALUE DOUBLE, TODEPARTMENTAGENTBALANCEAFTER DOUBLE, TODEPARTMENTAGENTBALANCEBEFORE DOUBLE, TODEPARTMENTBALANCEAFTER DOUBLE, TODEPARTMENTBALANCEBEFORE DOUBLE, TODEPARTMENTCARDBALANCEAFTER DOUBLE, TODEPARTMENTCARDBALANCEBEFORE DOUBLE, TODEPARTMENTCASHBALANCEAFTER DOUBLE, TODEPARTMENTCASHBALANCEBEFORE DOUBLE, TODEPARTMENTCHEQUEBALANCEAFTER DOUBLE, TODEPARTMENTCHEQUEBALANCEBEFORE DOUBLE, TODEPARTMENTCREDITBALANCEAFTER DOUBLE, TODEPARTMENTCREDITBALANCEBEFORE DOUBLE, TODEPARTMENTEWALLETBALANCEAFTER DOUBLE, TODEPARTMENTEWALLETBALANCEBEFORE DOUBLE, TODEPARTMENTIOUBALANCEAFTER DOUBLE, TODEPARTMENTIOUBALANCEBEFORE DOUBLE, TODEPARTMENTMULTIPLEPAYMENTMETHODSBALANCEAFTER DOUBLE, TODEPARTMENTMULTIPLEPAYMENTMETHODSBALANCEBEFORE DOUBLE, TODEPARTMENTONCALLBALANCEAFTER DOUBLE, TODEPARTMENTONCALLBALANCEBEFORE DOUBLE, TODEPARTMENTONLINESETTLEMENTBALANCEAFTER DOUBLE, TODEPARTMENTONLINESETTLEMENTBALANCEBEFORE DOUBLE, TODEPARTMENTPATIENTDEPOSITBALANCEAFTER DOUBLE, TODEPARTMENTPATIENTDEPOSITBALANCEBEFORE DOUBLE, TODEPARTMENTPATIENTPOINTSBALANCEAFTER DOUBLE, TODEPARTMENTPATIENTPOINTSBALANCEBEFORE DOUBLE, TODEPARTMENTSLIPBALANCEAFTER DOUBLE, TODEPARTMENTSLIPBALANCEBEFORE DOUBLE, TODEPARTMENTSTAFFBALANCEAFTER DOUBLE, TODEPARTMENTSTAFFBALANCEBEFORE DOUBLE, TODEPARTMENTSTAFFWELFAREBALANCEAFTER DOUBLE, TODEPARTMENTSTAFFWELFAREBALANCEBEFORE DOUBLE, TODEPARTMENTVOUCHERBALANCEAFTER DOUBLE, TODEPARTMENTVOUCHERBALANCEBEFORE DOUBLE, TOINSTITUTIONAGENTBALANCEAFTER DOUBLE, TOINSTITUTIONAGENTBALANCEBEFORE DOUBLE, TOINSTITUTIONBALANCEAFTER DOUBLE, TOINSTITUTIONBALANCEBEFORE DOUBLE, TOINSTITUTIONCARDBALANCEAFTER DOUBLE, TOINSTITUTIONCARDBALANCEBEFORE DOUBLE, TOINSTITUTIONCASHBALANCEAFTER DOUBLE, TOINSTITUTIONCASHBALANCEBEFORE DOUBLE, TOINSTITUTIONCHEQUEBALANCEAFTER DOUBLE, TOINSTITUTIONCHEQUEBALANCEBEFORE DOUBLE, TOINSTITUTIONCREDITBALANCEAFTER DOUBLE, TOINSTITUTIONCREDITBALANCEBEFORE DOUBLE, TOINSTITUTIONEWALLETBALANCEAFTER DOUBLE, TOINSTITUTIONEWALLETBALANCEBEFORE DOUBLE, TOINSTITUTIONIOUBALANCEAFTER DOUBLE, TOINSTITUTIONIOUBALANCEBEFORE DOUBLE, TOINSTITUTIONMULTIPLEPAYMENTMETHODSBALANCEAFTER DOUBLE, TOINSTITUTIONMULTIPLEPAYMENTMETHODSBALANCEBEFORE DOUBLE, TOINSTITUTIONONCALLBALANCEAFTER DOUBLE, TOINSTITUTIONONCALLBALANCEBEFORE DOUBLE, TOINSTITUTIONONLINESETTLEMENTBALANCEAFTER DOUBLE, TOINSTITUTIONONLINESETTLEMENTBALANCEBEFORE DOUBLE, TOINSTITUTIONPATIENTDEPOSITBALANCEAFTER DOUBLE, TOINSTITUTIONPATIENTDEPOSITBALANCEBEFORE DOUBLE, TOINSTITUTIONPATIENTPOINTSBALANCEAFTER DOUBLE, TOINSTITUTIONPATIENTPOINTSBALANCEBEFORE DOUBLE, TOINSTITUTIONSLIPBALANCEAFTER DOUBLE, TOINSTITUTIONSLIPBALANCEBEFORE DOUBLE, TOINSTITUTIONSTAFFBALANCEAFTER DOUBLE, TOINSTITUTIONSTAFFBALANCEBEFORE DOUBLE, TOINSTITUTIONSTAFFWELFAREBALANCEAFTER DOUBLE, TOINSTITUTIONSTAFFWELFAREBALANCEBEFORE DOUBLE, TOINSTITUTIONVOUCHERBALANCEAFTER DOUBLE, TOINSTITUTIONVOUCHERBALANCEBEFORE DOUBLE, TOSITEAGENTBALANCEAFTER DOUBLE, TOSITEAGENTBALANCEBEFORE DOUBLE, TOSITEBALANCEAFTER DOUBLE, TOSITEBALANCEBEFORE DOUBLE, TOSITECARDBALANCEAFTER DOUBLE, TOSITECARDBALANCEBEFORE DOUBLE, TOSITECASHBALANCEAFTER DOUBLE, TOSITECASHBALANCEBEFORE DOUBLE, TOSITECHEQUEBALANCEAFTER DOUBLE, TOSITECHEQUEBALANCEBEFORE DOUBLE, TOSITECREDITBALANCEAFTER DOUBLE, TOSITECREDITBALANCEBEFORE DOUBLE, TOSITEEWALLETBALANCEAFTER DOUBLE, TOSITEEWALLETBALANCEBEFORE DOUBLE, TOSITEIOUBALANCEAFTER DOUBLE, TOSITEIOUBALANCEBEFORE DOUBLE, TOSITEMULTIPLEPAYMENTMETHODSBALANCEAFTER DOUBLE, TOSITEMULTIPLEPAYMENTMETHODSBALANCEBEFORE DOUBLE, TOSITEONCALLBALANCEAFTER DOUBLE, TOSITEONCALLBALANCEBEFORE DOUBLE, TOSITEONLINESETTLEMENTBALANCEAFTER DOUBLE, TOSITEONLINESETTLEMENTBALANCEBEFORE DOUBLE, TOSITEPATIENTDEPOSITBALANCEAFTER DOUBLE, TOSITEPATIENTDEPOSITBALANCEBEFORE DOUBLE, TOSITEPATIENTPOINTSBALANCEAFTER DOUBLE, TOSITEPATIENTPOINTSBALANCEBEFORE DOUBLE, TOSITESLIPBALANCEAFTER DOUBLE, TOSITESLIPBALANCEBEFORE DOUBLE, TOSITESTAFFBALANCEAFTER DOUBLE, TOSITESTAFFBALANCEBEFORE DOUBLE, TOSITESTAFFWELFAREBALANCEAFTER DOUBLE, TOSITESTAFFWELFAREBALANCEBEFORE DOUBLE, TOSITEVOUCHERBALANCEAFTER DOUBLE, TOSITEVOUCHERBALANCEBEFORE DOUBLE, VOUCHERVALUE DOUBLE, BILL_ID BIGINT, CASHBOOK_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, FROMDEPARTMENT_ID BIGINT, FROMINSTITUTION_ID BIGINT, FROMSITE_ID BIGINT, INSTITUTION_ID BIGINT, PAYMENT_ID BIGINT, RETIRER_ID BIGINT, SITE_ID BIGINT, TODEPARTMENT_ID BIGINT, TOINSTITUTION_ID BIGINT, TOSITE_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBUSERPRIVILEGE (ID BIGINT NOT NULL, CREATEDAT DATETIME, DESCRIPTION VARCHAR(255), NAME VARCHAR(255), PRIVILEGE VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SNAME VARCHAR(255), TNAME VARCHAR(255), CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, WEBUSERROLE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE AUDITEVENT (ID BIGINT NOT NULL, AFTERJSON LONGTEXT, BEFOREJSON LONGTEXT, DEPARTMENTID BIGINT, ENTITYTYPE VARCHAR(255), EVENTDATATIME DATETIME, EVENTDURATION BIGINT, EVENTENDTIME DATETIME, EVENTSTATUS VARCHAR(255), EVENTTRIGGER VARCHAR(255), HOST VARCHAR(255), INSTITUTIONID BIGINT, IPADDRESS VARCHAR(255), OBJECTID BIGINT, URL LONGTEXT, UUID CHAR(36), WEBUSERID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PHDATE (ID BIGINT NOT NULL, CREATEDAT DATETIME, NAME VARCHAR(255), PHDATE DATE, PHTYPE VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFSHIFT (ID BIGINT NOT NULL, DTYPE VARCHAR(31), AUTOLEAVE TINYINT(1) default 0, CONSIDERFOREARLYOUT TINYINT(1) default 0, CONSIDERFORLATEIN TINYINT(1) default 0, CONSIDEREDFORSALARY TINYINT(1) default 0, CREATEDAT DATETIME, DAYOFWEEK INTEGER, DAYOFF TINYINT(1) default 0, DAYTYPE VARCHAR(255), EARLYINLOGGED DOUBLE, EARLYINVARIFIED DOUBLE, EARLYOUTLOGGED DOUBLE, EARLYOUTVARIFIED DOUBLE, overTimeCompleteRecordLogged DOUBLE, overTimeCompleteRecordVarified DOUBLE, overTimeFromEndRecordLogged DOUBLE, overTimeFromEndRecordVarified DOUBLE, overTimeFromStartRecordLogged DOUBLE, overTimeFromStartRecordVarified DOUBLE, LATEINLOGGED DOUBLE, LATEINVARIFIED DOUBLE, LATEOUTLOGGED DOUBLE, LATEOUTVARIFIED DOUBLE, LEAVETYPE VARCHAR(255), LEAVEDTIME DOUBLE, LEAVEDTIMENOPAY DOUBLE, LEAVEDTIMEOTHER DOUBLE, LIEUALLOWED TINYINT(1) default 0, LIEUPAID TINYINT(1) default 0, LIEUPAYMENTALLOWED TINYINT(1) default 0, LIEUQTY DOUBLE, LIEUQTYUTILIZED DOUBLE, MULTIPLYINGFACTOROVERTIME DOUBLE, multiplyingFactor DOUBLE, basicPerSecond DOUBLE, QTY DOUBLE, REPEATEDCOUNT INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SHIFTDATE DATETIME, SHIFTENDTIME DATETIME, SHIFTSTARTTIME DATETIME, SLEEPINGDAY TINYINT(1) default 0, WORKEDOUTSIDETIMEFRAMELOGGED DOUBLE, WORKEDOUTSIDETIMEFRAMEVARIFIED DOUBLE, WORKEDTIMELOGGED DOUBLE, WORKEDTIMEVARIFIED DOUBLE, WORKEDWITHINTIMEFRAMELOGGED DOUBLE, WORKEDWITHINTIMEFRAMEVARIFIED DOUBLE, WORKINGTYPE VARCHAR(255), ADDITIONALFORM_ID BIGINT, AMENDMENTFORM_ID BIGINT, CREATER_ID BIGINT, ENDRECORD_ID BIGINT, LEAVEFORM_ID BIGINT, NEXTSTAFFSHIFT_ID BIGINT, PREVIOUSSTAFFSHIFT_ID BIGINT, REFERENCESTAFFSHIFT_ID BIGINT, REFERENCESTAFFSHIFTEARLYOUT_ID BIGINT, REFERENCESTAFFSHIFTLATEIN_ID BIGINT, RETIRER_ID BIGINT, ROSTER_ID BIGINT, SHIFT_ID BIGINT, STAFFSALARY_ID BIGINT, STARTRECORD_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PROCESSINSTANCE (ID BIGINT NOT NULL, CANCELLED TINYINT(1) default 0 NOT NULL, CANCELLEDAT DATETIME, COMPLETED TINYINT(1) default 0 NOT NULL, COMPLETEDAT DATETIME, CREATEDAT DATETIME, PAUSED TINYINT(1) default 0 NOT NULL, PAUSEDAT DATETIME, REJECTED TINYINT(1) default 0 NOT NULL, REJECTEDAT DATETIME, RETIRED TINYINT(1) default 0 NOT NULL, RETIREDAT DATETIME, STATUS VARCHAR(255), CANCELLEDBY_ID BIGINT, COMPLETEDBY_ID BIGINT, CREATOR_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, PAUSEDBY_ID BIGINT, PROCESSDEFINITION_ID BIGINT, REJECTEDBY_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE REPORTTEMPLATE (ID BIGINT NOT NULL, BILLTYPES LONGTEXT, CODE VARCHAR(255), COLUMNS LONGTEXT, CREATEDAT DATETIME, DESCRIPTION LONGTEXT, FILTERS LONGTEXT, KEYWORDS VARCHAR(255), NAME VARCHAR(255), ORDERNO INTEGER, REPORTTEMPLATETYPE INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, ROWS LONGTEXT, TOTALS LONGTEXT, CATEGORY_ID BIGINT, CREATER_ID BIGINT, RETIRER_ID BIGINT, PARENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PROCESSSTEPACTIONDEFINITION (ID BIGINT NOT NULL, ACTIONTYPE VARCHAR(255) NOT NULL, ACTIVE TINYINT(1) default 0 NOT NULL, ALLOWSMULTIPLEACTIONS TINYINT(1) default 0 NOT NULL, CREATEDAT DATETIME, DESCRIPTION VARCHAR(500), NAME VARCHAR(100) NOT NULL, RETIRED TINYINT(1) default 0 NOT NULL, RETIREDAT DATETIME, SEQUENCEORDER DOUBLE, VERSION VARCHAR(20) NOT NULL, CREATOR_ID BIGINT, DIRECTEDPROCESSSTEPDEFINITION_ID BIGINT, PARENT_ID BIGINT, PROCESSSTEPDEFINITION_ID BIGINT NOT NULL, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLITEM (ID BIGINT NOT NULL, RATE DOUBLE, ADJUSTEDVALUE DOUBLE, AGENTREFNO VARCHAR(255), BILLITEMREFUNDED TINYINT(1) default 0, BILLITEMSTATUS INTEGER, BILLTIME DATETIME, CATID VARCHAR(255), COLLECTINGCENTREFEE DOUBLE, CREATEDAT DATETIME, DEPTID VARCHAR(255), DESCREPTION LONGTEXT, DISCOUNT DOUBLE, DISCOUNTRATE DOUBLE, EDITEDAT DATETIME, FEEVALUE DOUBLE, FROMTIME DATETIME, GROSSVALUE DOUBLE, HOSPITALFEE DOUBLE, INSID VARCHAR(255), INSTRUCTIONS LONGTEXT, INWARDCHARGETYPE VARCHAR(255), ITEMID VARCHAR(255), MARGINRATE DOUBLE, MARGINVALUE DOUBLE, NETRATE DOUBLE, NETVALUE DOUBLE, OTHERFEE DOUBLE, PRIORITY VARCHAR(255), QTY DOUBLE, REAGENTFEE DOUBLE, REFUNDED TINYINT(1) default 0, REMAININGQTY DOUBLE, RETIRECOMMENTS LONGTEXT, RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SEARIALNO INTEGER, SESSIONDATE DATE, SESSIONID VARCHAR(255), STAFFFEE DOUBLE, TOTIME DATETIME, VAT DOUBLE, VATPLUSNETVALUE DOUBLE, BILL_ID BIGINT, CREATER_ID BIGINT, EDITOR_ID BIGINT, EXPENSEBILL_ID BIGINT, ITEM_ID BIGINT, PARENTBILLITEM_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, PEFORMEDDEPARTMENT_ID BIGINT, PRICEMATRIX_ID BIGINT, REFERENCEBILL_ID BIGINT, REQUESTEDFROMDEPARTMENT_ID BIGINT, REQUESTEDTODEPARTMENT_ID BIGINT, RETIRER_ID BIGINT, BILLITEMFINANCEDETAILS_ID BIGINT, PAIDFORBILLFEE_ID BIGINT, PRESCRIPTION_ID BIGINT, REFERANCEBILLITEM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLFEE (ID BIGINT NOT NULL, FEEAT DATETIME, COMPLETEDPAYMENT TINYINT(1) default 0, CREATEDAT DATETIME, EDITEDAT DATETIME, FEEADJUSTED DOUBLE, FEEDISCOUNT DOUBLE, FEEGROSSVALUE DOUBLE, FEEMARGIN DOUBLE, FEEVALUE DOUBLE, FEEVAT DOUBLE, FEEVATPLUSVALUE DOUBLE, FULLYSETTLED TINYINT(1) default 0, ORDERNO INTEGER, PAIDVALUE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, RETURNED TINYINT(1) default 0, SETTLEVALUE DOUBLE, BILL_ID BIGINT, BILLITEM_ID BIGINT, CHILDENCOUNTER_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITOR_ID BIGINT, FEE_ID BIGINT, INSTITUTION_ID BIGINT, PATIENENCOUNTER_ID BIGINT, PATIENT_ID BIGINT, PATIENTITEM_ID BIGINT, PRICEMATRIX_ID BIGINT, REFERENCEBILLFEE_ID BIGINT, REFERENCEBILLITEM_ID BIGINT, REFERENCEPATIENTROOM_ID BIGINT, RETIRER_ID BIGINT, SPECIALITY_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTSAMPLECOMPONANT (ID BIGINT NOT NULL, CANCELLCOMMENTS VARCHAR(255), CANCELLED TINYINT(1) default 0, CANCELLEDAT DATETIME, COLLECTED TINYINT(1) default 0, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SAMPLECOMMENTS VARCHAR(255), SAMPLEOUTSIDE TINYINT(1) default 0, SAMPLEDAT DATETIME, BILL_ID BIGINT, CANCELLDEPARTMENT_ID BIGINT, CANCELLINSTITUTION_ID BIGINT, CANCELLEDUSER_ID BIGINT, CREATER_ID BIGINT, INVESTIGATIONCOMPONANT_ID BIGINT, MACHINE_ID BIGINT, PATIENT_ID BIGINT, PATIENTINVESTIGATION_ID BIGINT, PATIENTSAMPLE_ID BIGINT, RETIRER_ID BIGINT, SAMPLE_ID BIGINT, SAMPLECOLLECTER_ID BIGINT, SAMPLEDEPARTMENT_ID BIGINT, SAMPLEINSTITUTION_ID BIGINT, TEST_ID BIGINT, TUBE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FEE (ID BIGINT NOT NULL, DTYPE VARCHAR(31), BOOLEANVALUE TINYINT(1) default 0, CCFEE DOUBLE, CODE VARCHAR(255), CREATEDAT DATETIME, DESCRIPTION LONGTEXT, DISCOUNTALLOWED TINYINT(1) default 0, EDITEDAT DATETIME, FEE DOUBLE, FEETYPE VARCHAR(255), FFEE DOUBLE, NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, FORCATEGORY_ID BIGINT, FORINSTITUTION_ID BIGINT, FROMDEPARTMENT_ID BIGINT, FROMINSTITUTION_ID BIGINT, FROMSPECIALITY_ID BIGINT, FROMSTAFF_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, PACKEGE_ID BIGINT, RETIRER_ID BIGINT, SERVICESESSION_ID BIGINT, SPECIALITY_ID BIGINT, STAFF_ID BIGINT, TODEPARTMENT_ID BIGINT, TOINSTITUTION_ID BIGINT, TOSPACIALITY_ID BIGINT, TOSTAFF_ID BIGINT, DURATIONDAYSFORMOCHARGE BIGINT, DURATIONHOURS DOUBLE, OVERSHOOTHOURS DOUBLE, SESSION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE AGGREGATEDRECORD (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATE, KEY VARCHAR(255), RECORDDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, VALUE DOUBLE, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, FROMDEPARTMENT_ID BIGINT, FROMINSTITUTION_ID BIGINT, FROMSTAFF_ID BIGINT, FROMWEBUSER_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, TODEPARTMENT_ID BIGINT, TOINSTITUTION_ID BIGINT, TOSTAFF_ID BIGINT, TOWEBUSER_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SESSIONINSTANCEACTIVITY (ID BIGINT NOT NULL, ACTIVITYCOMPLETED TINYINT(1) default 0, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, APPOINTMENTACTIVITY_ID BIGINT, CREATER_ID BIGINT, RETIRER_ID BIGINT, SESSIONINSTANCE_ID BIGINT, BILLSESSION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CAPTURECOMPONENT (ID BIGINT NOT NULL, BOOLEANVALUE TINYINT(1) default 0, BYTEARRAYVALUE LONGBLOB, COMPONENTDATATYPE VARCHAR(255), COMPONENTPRESENTATIONTYPE VARCHAR(255), DATEVALUE DATETIME, DESCRIPTION LONGTEXT, DOUBLEVALUE DOUBLE, INTVALUE INTEGER, LONGTEXTVALUE LONGTEXT, LONGVALUE BIGINT, NAME VARCHAR(255), RATINGINTVALUE INTEGER, SHORTTEXTVALUE VARCHAR(255), TYPE VARCHAR(255), DESIGNCOMPONENT_ID BIGINT, ITEMVALUE_ID BIGINT, PARENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFWORKDAY (ID BIGINT NOT NULL, FROMDATE DATE, HOLIDAY INTEGER, SATURDAY INTEGER, SUNDAY INTEGER, TODATE DATE, WEEKDAYS INTEGER, WORKHOUR DOUBLE, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE USERSTOCKCONTAINER (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFSALARYCOMPONANT (ID BIGINT NOT NULL, COMMENTS VARCHAR(255), COMPONANTVALUE DOUBLE, CREATEDAT DATETIME, EPFCOMPANYVALUE DOUBLE, EPFVALUE DOUBLE, ETFCOMPANYVALUE DOUBLE, ETFVALUE DOUBLE, LASTEDITEDAT DATE, PAID TINYINT(1) default 0, PAIDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, LASTEDITOR_ID BIGINT, PAIDBY_ID BIGINT, RETIRER_ID BIGINT, SALARYCYCLE_ID BIGINT, STAFF_ID BIGINT, STAFFPAYSHEETCOMPONENT_ID BIGINT, STAFFPAYSHEETCOMPONENTPERCENTAGE_ID BIGINT, STAFFSALARY_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PAYMENTGATEWAYTRANSACTION (ID BIGINT NOT NULL, CREATEDAT DATETIME, ORDERAMOUNT DOUBLE, ORDERID VARCHAR(255), ORDERSTATUS VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SESSIONID VARCHAR(255), TRANSACTIONID VARCHAR(255), BILL_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, SESSIONINSTANCE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE USERNOTIFICATION (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SEEN TINYINT(1) default 0, CREATER_ID BIGINT, NOTIFICATION_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, TODEPARTMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTREPORT (ID BIGINT NOT NULL, APPROVEAT DATETIME, APPROVECOMMENTS VARCHAR(255), APPROVED TINYINT(1) default 0, AUTOMATED TINYINT(1) default 0, AUTOMATEDAT DATETIME, CANCELLCOMMENTS VARCHAR(255), CANCELLED TINYINT(1) default 0, CANCELLEDAT DATETIME, CREATEDAT DATETIME, DATAENTERED TINYINT(1) default 0, DATAENTRYAT DATETIME, DATAENTRYCOMMENTS VARCHAR(255), PRINTED TINYINT(1) default 0, PRINTINGAT DATETIME, PRINTINGCOMMENTS VARCHAR(255), QRCODECONTENTSDETAILED LONGTEXT, QRCODECONTENTSLINK LONGTEXT, REPORTTYPE VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, RETURNCOMMENTS VARCHAR(255), RETURNED TINYINT(1) default 0, RETURNEDAT DATETIME, SAMPLEIDS VARCHAR(255), STATUS INTEGER, APPROVEDEPARTMENT_ID BIGINT, APPROVEINSTITUTION_ID BIGINT, APPROVEUSER_ID BIGINT, AUTOMATEDANALYZER_ID BIGINT, AUTOMATEDDEPARTMENT_ID BIGINT, AUTOMATEDDEPARTMENTANALYZER_ID BIGINT, AUTOMATEDINSTITUTION_ID BIGINT, AUTOMATEDUSER_ID BIGINT, CANCELLDEPARTMENT_ID BIGINT, CANCELLINSTITUTION_ID BIGINT, CANCELLEDUSER_ID BIGINT, CREATER_ID BIGINT, DATAENTRYDEPARTMENT_ID BIGINT, DATAENTRYINSTITUTION_ID BIGINT, DATAENTRYUSER_ID BIGINT, ITEM_ID BIGINT, PATIENTINVESTIGATION_ID BIGINT, PRINTINGDEPARTMENT_ID BIGINT, PRINTINGINSTITUTION_ID BIGINT, PRINTINGUSER_ID BIGINT, REPORTFORMAT_ID BIGINT, RETIRER_ID BIGINT, RETURNDEPARTMENT_ID BIGINT, RETURNINSTITUTION_ID BIGINT, RETURNEDUSER_ID BIGINT, UPLOADEDREPORT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTSAMPLE (ID BIGINT NOT NULL, BARCODEGENERATED TINYINT(1) default 0, BARCODEGENERATEDAT DATETIME, CANCELLCOMMENTS VARCHAR(255), CANCELLED TINYINT(1) default 0, CANCELLEDAT DATETIME, CREATEDAT DATETIME, OUTSOURCED TINYINT(1) default 0, OUTSOURCEDAT DATETIME, PRIORITY INTEGER, READYTOSENTTOANALYZER TINYINT(1) default 0, RECEIVEDFROMANALYZER TINYINT(1) default 0, RECEIVEDFROMANALYZERAT DATETIME, RECEIVEDFROMANALYZERCOMMENTS LONGTEXT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SAMPLECOLLECTED TINYINT(1) default 0, SAMPLECOLLECTEDAT DATETIME, SAMPLECOLLECTEDOUTSIDE TINYINT(1) default 0, SAMPLECOLLECTIONCOMMENTS VARCHAR(255), SAMPLEID BIGINT, SAMPLERECEIVEDATLAB TINYINT(1) default 0, SAMPLERECEIVEDATLABAT DATETIME, SAMPLERECEIVEDATLABCOMMENTS VARCHAR(255), SAMPLEREJECTED TINYINT(1) default 0, SAMPLEREJECTEDAT DATETIME, SAMPLEREJECTIONCOMMENT VARCHAR(255), SAMPLEREQUESTTYPE VARCHAR(255), SAMPLESENT TINYINT(1) default 0, SAMPLESENTAT DATETIME, SENTTOANALYZER TINYINT(1) default 0, SENTTOANALYZERAT DATETIME, SENTTOANALYZERCOMMENTS LONGTEXT, STATUS INTEGER, BARCODEGENERATEDDEPARTMENT_ID BIGINT, BARCODEGENERATEDINSTITUTION_ID BIGINT, BARCODEGENERATOR_ID BIGINT, BILL_ID BIGINT, CANCELLDEPARTMENT_ID BIGINT, CANCELLINSTITUTION_ID BIGINT, CANCELLEDUSER_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, DIVERTEDFROM_ID BIGINT, DIVERTEDTO_ID BIGINT, DUPLICATEDFROM_ID BIGINT, DUPLICATEDTO_ID BIGINT, INSTITUTION_ID BIGINT, INVESTIGATIONCOMPONANT_ID BIGINT, MACHINE_ID BIGINT, OUTSOURCEDEPARTMENT_ID BIGINT, OUTSOURCEINSTITUTION_ID BIGINT, OUTSOURCESAMPLETRANSPORTER_ID BIGINT, OUTSOURCESENTUSER_ID BIGINT, PATIENT_ID BIGINT, PATIENTINVESTIGATION_ID BIGINT, RECEIVEDFROMANALYZERBY_ID BIGINT, RECEIVEDFROMANALYZERDEPARTMENT_ID BIGINT, RECEIVEDFROMANALYZERINSTITUTION_ID BIGINT, RETIRER_ID BIGINT, SAMPLE_ID BIGINT, SAMPLECOLLECTEDDEPARTMENT_ID BIGINT, SAMPLECOLLECTEDINSTITUTION_ID BIGINT, SAMPLECOLLECTER_ID BIGINT, SAMPLERECEIVEDATLABDEPARTMENT_ID BIGINT, SAMPLERECEIVEDATLABINSTITUTION_ID BIGINT, SAMPLERECEIVERATLAB_ID BIGINT, SAMPLEREJECTEDBY_ID BIGINT, SAMPLESENTBY_ID BIGINT, SAMPLETRANSPORTEDTOLABBYSTAFF_ID BIGINT, SENTTOANALYZERBY_ID BIGINT, SENTTOANALYZERDEPARTMENT_ID BIGINT, SENTTOANALYZERINSTITUTION_ID BIGINT, TEST_ID BIGINT, TUBE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ITEMMAPPING (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE AREA (ID BIGINT NOT NULL, CREATEDAT DATETIME, DESCRIPTION VARCHAR(255), NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SNAME VARCHAR(255), TNAME VARCHAR(255), CREATER_ID BIGINT, RETIRER_ID BIGINT, SUPERAREA_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTREPORTGROUP (ID BIGINT NOT NULL, CREATEDAT DATETIME, GROUPNAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, PATIENTREPORT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ALLOWEDPAYMENTMETHOD (ID BIGINT NOT NULL, CREATEDAT DATETIME, PAYMENTMETHOD INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, MEMBERSHIPSCHEME_ID BIGINT, PAYMENTSCHEME_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE INVESTIGATIONCOMPONENT (ID BIGINT NOT NULL, COMPONENTNAME VARCHAR(255), INVESTIGATION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTENCOUNTER (ID BIGINT NOT NULL, DTYPE VARCHAR(31), ADJUSTEDTOTAL DOUBLE, BHTLONG BIGINT, BHTNO VARCHAR(255), BMI DOUBLE, CLAIMABLE TINYINT(1) default 0, COMMENTS LONGTEXT, CONVERTEDTOANOTHERENCOUNTER TINYINT(1) default 0, CREATEDAT DATETIME, CREDITLIMIT DOUBLE, CREDITPAIDAMOUNT DOUBLE, CREDITUSEDAMOUNT DOUBLE, DATEOFADMISSION DATETIME, DATEOFDISCHARGE DATETIME, DBP BIGINT, DISCHARGED TINYINT(1) default 0, DISCOUNT DOUBLE, ENCOUNTERDATE DATE, ENCOUNTERDATETIME DATETIME, ENCOUNTERID BIGINT, ENCOUNTERTYPE INTEGER, FORIEGNER TINYINT(1) default 0, FROMTIME DATETIME, GRANTTOTAL DOUBLE, HEIGHT DOUBLE, NAME VARCHAR(255), NETTOTAL DOUBLE, PATIENTENCOUNTERTYPE VARCHAR(255), PAYMENTFINALIZED TINYINT(1) default 0, PAYMENTMETHOD VARCHAR(255), PFR INTEGER, POLICYNO VARCHAR(255), PR BIGINT, PRINTINGADMISSIONTIME DATETIME, PRINTINGDISCHARGETIME DATETIME, REFERANCENO VARCHAR(255), REFERRALID VARCHAR(255), REFERRINGMETHOD VARCHAR(255), RESPIRATORYRATE INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SATURATION DOUBLE, SBP BIGINT, TIMEOFADMISSION DATETIME, TIMEOFDISCHARGE DATETIME, TOTIME DATETIME, VISITWEIGHT DOUBLE, WEIGHT DOUBLE, ADMISSIONTYPE_ID BIGINT, BILLSESSION_ID BIGINT, CREATER_ID BIGINT, CREDITCOMPANY_ID BIGINT, CURRENTPATIENTROOM_ID BIGINT, DEPARTMENT_ID BIGINT, FINALBILL_ID BIGINT, GUARDIAN_ID BIGINT, GUARDIANRELATIONSHIPTOPATIENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, OPDDOCTOR_ID BIGINT, PARENTENCOUNTER_ID BIGINT, PATIENT_ID BIGINT, PRIMARYREASON_ID BIGINT, REFERREDBYINSTITUTION_ID BIGINT, REFERRINGCONSULTANT_ID BIGINT, REFERRINGDOCTOR_ID BIGINT, REFERRINGPERSON_ID BIGINT, REFERRINGSTAFF_ID BIGINT, RETIRER_ID BIGINT, WORKPLACE_ID BIGINT, APPOINTMENTDATE DATETIME, APPOINTMENTTIMEFROM DATETIME, APPOINTMENTTIMETO TIME, BILL_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE INVESTIGATIONITEMVALUE (ID BIGINT NOT NULL, DTYPE VARCHAR(31), CODE VARCHAR(255), CREATEDAT DATETIME, NAME VARCHAR(255), ORDERNO INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, INVESTIGATIONITEM_ID BIGINT, RETIRER_ID BIGINT, DISPLAYFLAGMESSAGE TINYINT(1) default 0, DISPLAYHIGHMESSAGE TINYINT(1) default 0, DISPLAYLOWMESSAGE TINYINT(1) default 0, DISPLAYNORMALMESSAGE TINYINT(1) default 0, FLAGMESSAGE LONGTEXT, FROMAGE BIGINT, FROMVAL DOUBLE, HIGHMESSAGE LONGTEXT, LOWMESSAGE LONGTEXT, NORMALMESSAGE LONGTEXT, SEX VARCHAR(255), TOAGE BIGINT, TOVAL DOUBLE, INVESTIGATIONITEMOFFLAGTYPE_ID BIGINT, INVESTIGATIONITEMOFLABELTYPE_ID BIGINT, INVESTIGATIONITEMOFVALUETYPE_ID BIGINT, ITEM_ID BIGINT, INVESTIGATIONITEMVALUECATEGORY_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE REORDER (ID BIGINT NOT NULL, BUFFERSTOCKS DOUBLE, DEMANDINUNITSPERDAY DOUBLE, GENERICORDERING TINYINT(1) default 0, LEADTIMEINDAYS INTEGER, MONTHSCONSIDEREDFORSHORTTERMANALYSIS INTEGER, PURCHASECYCLEDURATIONINDAYS INTEGER, ROL DOUBLE, ROQ DOUBLE, SERVICELEVEL DOUBLE, YEARSCONSIDEREDFORLOGNTERMANALYSIS INTEGER, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, PERSON_ID BIGINT, SUPPLIER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE INSTITUTION (ID BIGINT NOT NULL, COLLECTINGCENTREPAYMENTMETHOD VARCHAR(255), ACCOUNTNO VARCHAR(255), ADDRESS VARCHAR(255), AGENTBALANCE DOUBLE, ALLOWEDCREDIT DOUBLE, ALLOWEDCREDITLIMIT DOUBLE, BALLANCE DOUBLE, CASHIERBILLHEADING LONGTEXT, CHEQUEPRINTINGNAME VARCHAR(255), CODE VARCHAR(255), COMPANYBALANCE DOUBLE, CREATEDAT DATETIME, DESCREPTION LONGTEXT, EMAIL VARCHAR(255), EMAILSENDINGPASSWORD VARCHAR(255), EMAILSENDINGUSERNAME VARCHAR(255), FAX VARCHAR(255), INACTIVE TINYINT(1) default 0, INSTITUTIONCODE VARCHAR(255), INSTITUTIONTYPE VARCHAR(255), INWARDDISCOUNT DOUBLE, LABBILLDISCOUNT DOUBLE, LABBILLHEADING LONGTEXT, MAXCREDITLIMIT DOUBLE, MOBILE VARCHAR(255), NAME VARCHAR(255), OPDBILLDISCOUNT DOUBLE, OPDBILLHEADING LONGTEXT, OWNEREMAIL VARCHAR(255), OWNERNAME VARCHAR(255), PERCENTAGE DOUBLE, PHARMACYBILLHEADING LONGTEXT, PHARMACYDISCOUNT DOUBLE, PHONE VARCHAR(255), POINTOFISSUENO VARCHAR(255), RADIOLOGYBILLHEADING LONGTEXT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SMSSENDINGALIAS VARCHAR(255), SMSSENDINGPASSWORD VARCHAR(255), SMSSENDINGUSERNAME VARCHAR(255), STANDARDCREDITLIMIT DOUBLE, WEB VARCHAR(255), BANKBRANCH_ID BIGINT, CONTACTPERSON_ID BIGINT, CREATER_ID BIGINT, FEELISTTYPE_ID BIGINT, INSTITUTION_ID BIGINT, LABDEPARTMENT_ID BIGINT, LABINSTITUTION_ID BIGINT, PARENTINSTITUTION_ID BIGINT, RETIRER_ID BIGINT, ROUTE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBUSERPAYMENTSCHEME (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, PAYMENTSCHEME_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE LABTESTHISTORY (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, STATUS VARCHAR(255), TESTHISTORYTYPE VARCHAR(255), ANALYZER_ID BIGINT, CREATEDBY_ID BIGINT, DEPARTMENT_ID BIGINT, EMAIL_ID BIGINT, FROMDEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, PATIENTINVESTIGATION_ID BIGINT, PATIENTREPORT_ID BIGINT, PATIENTSAMPLE_ID BIGINT, RETIREDBY_ID BIGINT, SAMPLECOMPONENT_ID BIGINT, SMS_ID BIGINT, STAFF_ID BIGINT, TODEPARTMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DETAILEDFINANCIALBILL (ID BIGINT NOT NULL, AGENTDIFFERENCE DOUBLE, AGENTHANDOVERVALUE DOUBLE, AGENTVALUE DOUBLE, CARDDIFFERENCE DOUBLE, CARDHANDOVERVALUE DOUBLE, CARDVALUE DOUBLE, CASHDIFFERENCE DOUBLE, CASHHANDOVERVALUE DOUBLE, CASHVALUE DOUBLE, CHEQUEDIFFERENCE DOUBLE, CHEQUEHANDOVERVALUE DOUBLE, CHEQUEVALUE DOUBLE, CREATEDAT DATETIME, CREDITDIFFERENCE DOUBLE, CREDITHANDOVERVALUE DOUBLE, CREDITVALUE DOUBLE, EWALLETDIFFERENCE DOUBLE, EWALLETHANDOVERVALUE DOUBLE, EWALLETVALUE DOUBLE, FLOATBALANCEVALUE DOUBLE, FLOATINVALUE DOUBLE, FLOATOUTVALUE DOUBLE, IOUDIFFERENCE DOUBLE, IOUHANDOVERVALUE DOUBLE, IOUVALUE DOUBLE, MULTIPLEPAYMENTMETHODSDIFFERENCE DOUBLE, MULTIPLEPAYMENTMETHODSHANDOVERVALUE DOUBLE, MULTIPLEPAYMENTMETHODSVALUE DOUBLE, NONEDIFFERENCE DOUBLE, NONEHANDOVERVALUE DOUBLE, NONEVALUE DOUBLE, ONCALLDIFFERENCE DOUBLE, ONCALLHANDOVERVALUE DOUBLE, ONCALLVALUE DOUBLE, ONLINESETTLEMENTDIFFERENCE DOUBLE, ONLINESETTLEMENTHANDOVERVALUE DOUBLE, ONLINESETTLEMENTVALUE DOUBLE, PATIENTDEPOSITDIFFERENCE DOUBLE, PATIENTDEPOSITHANDOVERVALUE DOUBLE, PATIENTDEPOSITVALUE DOUBLE, PATIENTPOINTSDIFFERENCE DOUBLE, PATIENTPOINTSHANDOVERVALUE DOUBLE, PATIENTPOINTSVALUE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SLIPDIFFERENCE DOUBLE, SLIPHANDOVERVALUE DOUBLE, SLIPVALUE DOUBLE, STAFFDIFFERENCE DOUBLE, STAFFHANDOVERVALUE DOUBLE, STAFFVALUE DOUBLE, STAFFWELFAREDIFFERENCE DOUBLE, STAFFWELFAREHANDOVERVALUE DOUBLE, STAFFWELFAREVALUE DOUBLE, VOUCHERDIFFERENCE DOUBLE, VOUCHERHANDOVERVALUE DOUBLE, VOUCHERVALUE DOUBLE, YOUOWEMEDIFFERENCE DOUBLE, YOUOWEMEHANDOVERVALUE DOUBLE, YOUOWEMEVALUE DOUBLE, CREATER_ID BIGINT, RETIRER_ID BIGINT, BILL_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBUSERROUTE (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, ROUTE_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FAMILYMEMBER (ID BIGINT NOT NULL, CREATEDAT DATETIME, EDITEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, EDITER_ID BIGINT, FAMILY_ID BIGINT, PATIENT_ID BIGINT, RELATIONTOCHH_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PERSONINSTITUTION (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TYPE VARCHAR(255), CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, PERSON_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SCHEDULEDPROCESSCONFIGURATION (ID BIGINT NOT NULL, CREATEDAT DATETIME, LASTPROCESSCOMPLETED TINYINT(1) default 0, LASTRUNENDED DATETIME, LASTRUNSTARTED DATETIME, LASTSUPPOSEDAT DATETIME, NEXTSUPPOSEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SCHEDULEDFREQUENCY VARCHAR(255), SCHEDULEDPROCESS VARCHAR(255), CREATEDBY_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, RETIREDBY_ID BIGINT, SITE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PROCESSSTEPDEFINITION (ID BIGINT NOT NULL, ACTIVE TINYINT(1) default 0 NOT NULL, CREATEDAT DATETIME, DESCRIPTION VARCHAR(500), NAME VARCHAR(100) NOT NULL, RETIRED TINYINT(1) default 0 NOT NULL, RETIREDAT DATETIME, SEQUENCEORDER DOUBLE, VERSION VARCHAR(20) NOT NULL, CREATOR_ID BIGINT, PARENT_ID BIGINT, PROCESSDEFINITION_ID BIGINT NOT NULL, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DOCUMENTTEMPLATE (ID BIGINT NOT NULL, AUTOGENERATE TINYINT(1) default 0, CONTENTS LONGTEXT, CREATEDAT DATETIME, DEFAULTTEMPLATE TINYINT(1) default 0, NAME VARCHAR(255), RETIRED TINYINT(1) default 0, TYPE INTEGER, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ADJUSTMENTBILLITEM (ID BIGINT NOT NULL, AFTERQTY DOUBLE, AFTEREXPIRYDATE DATE, AFTERPURCHASERATE DOUBLE, AFTERRETAILRATE DOUBLE, AFTERWHOLESALERATE DOUBLE, CREATEDAT DATETIME, EDITEDAT DATETIME, EXPIRYDATE DATE, PURCHASERATE DOUBLE, QTY DOUBLE, RETAILRATE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, WHOLESALERATE DOUBLE, CREATER_ID BIGINT, EDITER_ID BIGINT, RETIRER_ID BIGINT, BILLITEM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFSHIFTHISTORY (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, ROSTER_ID BIGINT, SHIFT_ID BIGINT, STAFF_ID BIGINT, STAFFSHIFT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CASHBOOK (ID BIGINT NOT NULL, NAME VARCHAR(255), AGENTBALANCE DOUBLE, CARDBALANCE DOUBLE, CASHBALANCE DOUBLE, CHEQUEBALANCE DOUBLE, CREATEDAT DATETIME, CREDITBALANCE DOUBLE, EDITEDAT DATETIME, EWALLETBALANCE DOUBLE, IOUBALANCE DOUBLE, MULTIPLEPAYMENTMETHODSBALANCE DOUBLE, NONEBALANCE DOUBLE, ONCALLBALANCE DOUBLE, ONLINESETTLEMENTBALANCE DOUBLE, PATIENTDEPOSITBALANCE DOUBLE, PATIENTPOINTSBALANCE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SLIPBALANCE DOUBLE, STAFFBALANCE DOUBLE, STAFFWELFAREBALANCE DOUBLE, VOUCHERBALANCE DOUBLE, YOUOWEMEBALANCE DOUBLE, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, SITE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE MEDICALPACKAGEITEM (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, ITEM_ID BIGINT, PACKEGE_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTDEPOSITHISTORY (ID BIGINT NOT NULL, BALANCEAFTERTRANSACTION DOUBLE, BALANCEBEFORETRANSACTION DOUBLE, COMMENT VARCHAR(255), CREATEDAT DATETIME, HISTORYTYPE INTEGER, REFERENCENUMBER VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TRANSACTIONVALUE DOUBLE, BILL_ID BIGINT, BILLITEM_ID BIGINT, BILLSESSION_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, PATIENTDEPOSIT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLNUMBER (ID BIGINT NOT NULL, BILLCLASSTYPE VARCHAR(255), BILLTYPE VARCHAR(255), BILLTYPEATOMIC VARCHAR(255), BILLYEAR INTEGER, LASTBILLNUMBER BIGINT, PAYMENTMETHOD VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, TODEPARTMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CONFIGOPTION (ID BIGINT NOT NULL, CREATEDAT DATETIME, ENUMTYPE VARCHAR(255), ENUMVALUE VARCHAR(255), OPTIONKEY VARCHAR(255), OPTIONVALUE LONGTEXT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SCOPE VARCHAR(255), VALUETYPE VARCHAR(255), CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE AGENTREFERENCEBOOK (ID BIGINT NOT NULL, ACTIVE TINYINT(1) default 0, BOOKNUMBER DOUBLE, CHECKEAT DATETIME, CREATEDAT DATETIME, DEACTIVATE TINYINT(1) default 0, EDITEDAT DATETIME, ENDINGREFERENCENUMBER DOUBLE, FULLYUTILIZED TINYINT(1) default 0, REFERENCEBOOKENUM VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, STARTINGREFERENCENUMBER DOUBLE, STRBOOKNUMBER VARCHAR(255), CHECKEDBY_ID BIGINT, CREATER_ID BIGINT, EDITOR_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DENOMINATION (ID BIGINT NOT NULL, CODE VARCHAR(255), CREATEDAT DATETIME, DENOMINATIONVALUE DOUBLE, DISPLAYNAME VARCHAR(255), NAME VARCHAR(255), ORDERNUMBER DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFSTAFFCATEGORY (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFFEMPLOYMENT_ID BIGINT, STAFFCATEGORY_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FINGERPRINTRECORD (ID BIGINT NOT NULL, DTYPE VARCHAR(31), allowedOverTime TINYINT(1) default 0, APPROVECOMMENTS VARCHAR(255), APPROVED TINYINT(1) default 0, APPROVEDAT DATETIME, COMMENTS VARCHAR(255), CREATEDAT DATETIME, DAYTYPE VARCHAR(255), FINGERPRINTRECORDTYPE VARCHAR(255), RECORDTIMESTAMP DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TIMES VARCHAR(255), APPROVER_ID BIGINT, CREATER_ID BIGINT, RETIRER_ID BIGINT, ROSTER_ID BIGINT, STAFF_ID BIGINT, STAFFSHIFT_ID BIGINT, LOGGEDRECORD_ID BIGINT, SESSIONDATE DATE, SERVICESESSION_ID BIGINT, SESSIONINSTANCE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE NOTIFICATION (ID BIGINT NOT NULL, COMPLETED TINYINT(1) default 0, CREATEDAT DATETIME, MESSAGE LONGTEXT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TRIGGERTYPE INTEGER, BILL_ID BIGINT, CREATER_ID BIGINT, PATIENTROOM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DENOMINATIONTRANSACTION (ID BIGINT NOT NULL, CANCELLED TINYINT(1) default 0, CANCELLEDAT DATETIME, CREATEDAT DATETIME, DENOMINATIONQTY BIGINT, DENOMINATIONVALUE DOUBLE, PAYMENTMETHOD VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, BILL_ID BIGINT, CANCELLEDBY_ID BIGINT, CREATER_ID BIGINT, DENOMINATION_ID BIGINT, DETAILEDFINANCIALBILL_ID BIGINT, PAYMENT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ROOMFACILITYCHARGE (ID BIGINT NOT NULL, ADMINSTRATIONCHARGE DOUBLE, CREATEDAT DATETIME, DESCRIPTION VARCHAR(255), LINENCHARGE DOUBLE, MAINTANANCECHARGE DOUBLE, MEDICALCARECHARGE DOUBLE, MOCHARGE DOUBLE, MOCHARGEFORAFTERDURATION DOUBLE, NAME VARCHAR(255), NURSINGCHARGE DOUBLE, ORDERNO INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, ROOMCHARGE DOUBLE, SNAME VARCHAR(255), TNAME VARCHAR(255), COMPANY_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, PAYMENTSCHEME_ID BIGINT, RETIRER_ID BIGINT, ROOM_ID BIGINT, ROOMCATEGORY_ID BIGINT, TIMEDITEMFEE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ISSUERATEMARGINS (ID BIGINT NOT NULL, ATPURCHASERATE TINYINT(1) default 0, CREATEDAT DATETIME, NAME VARCHAR(255), RATEFORCONSUMABLES DOUBLE, RATEFORINVENTORY DOUBLE, RATEFORPHARMACEUTICALS DOUBLE, RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SHOWRATES TINYINT(1) default 0, CREATER_ID BIGINT, FROMDEPARTMENT_ID BIGINT, FROMINSTITUTION_ID BIGINT, RETIRER_ID BIGINT, TODEPARTMENT_ID BIGINT, TOINSTITUTION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ITEMSCATEGORIES (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CATEGORY_ID BIGINT, CREATER_ID BIGINT, ITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ONLINEBOOKING (ID BIGINT NOT NULL, ABSENT TINYINT(1) default 0, ADDRESS VARCHAR(255), APPOINMENTTOTALAMOUNT DOUBLE, CANCELED TINYINT(1) default 0, CANCELLEDBY VARCHAR(255), COMMENT VARCHAR(255), CREATEDAT DATETIME, DOCTORFEE DOUBLE, EDITED TINYINT(1) default 0, EDITEDAT DATETIME, EMAIL VARCHAR(255), FOREIGNSTATUS TINYINT(1) default 0, HOSPITALFEE DOUBLE, NEEDSMS TINYINT(1) default 0, NETTOTALFORONLINEBOOKING DOUBLE, NIC VARCHAR(255), NSR TINYINT(1) default 0, ONLINEBOOKINGPAYMENT DOUBLE, ONLINEBOOKINGSTATUS VARCHAR(255), PAID TINYINT(1) default 0, PAIDTOHOSPITAL TINYINT(1) default 0, PAIDTOHOSPITALBILLCANCELLEDAT DATETIME, PAIDTOHOSPITALDATE DATETIME, PATIENTNAME VARCHAR(255), PHONENO VARCHAR(255), REFERENCENO VARCHAR(255), REQUESTIP VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TITLE VARCHAR(255), AGENCY_ID BIGINT, DEPARTMENT_ID BIGINT, HOSPITAL_ID BIGINT, RETIRER_ID BIGINT, PAIDTOHOSPITALBILL_ID BIGINT, PAIDTOHOSPITALBILLCANCELLEDBY_ID BIGINT, PAIDTOHOSPITALCANCELLEDBILL_ID BIGINT, PAIDTOHOSPITALPROCESSEDBY_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FORMITEMVALUE (ID BIGINT NOT NULL, BAIMAGE LONGBLOB, DOUBLEVALUE DOUBLE, FILENAME VARCHAR(255), FILETYPE VARCHAR(255), LOBVALUE LONGTEXT, LONGVALUE BIGINT, STRVALUE VARCHAR(255), CATEGORY_ID BIGINT, ITEM_ID BIGINT, PATIENT_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, PATIENTREPORT_ID BIGINT, PERSON_ID BIGINT, REFERRINGPERSON_ID BIGINT, REPORTITEM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PHARMACYBILL (ID BIGINT NOT NULL, FREEVALUEPURCHASE DOUBLE, FREEVALUESALE DOUBLE, PURCHASEVALUE DOUBLE, SALEVALUE DOUBLE, PRIMARY KEY (ID))
CREATE TABLE SALARYHOLD (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMCOMMENT LONGTEXT, FROMDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TOCOMMENTS LONGTEXT, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFLEAVE (ID BIGINT NOT NULL, DTYPE VARCHAR(31), CREATEDAT DATETIME, LEAVEDATE DATE, LEAVETYPE VARCHAR(255), QTY DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, FORM_ID BIGINT, RETIRER_ID BIGINT, ROSTER_ID BIGINT, STAFFSHIFT_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PROCESSSTEPINSTANCE (ID BIGINT NOT NULL, COMPLETED TINYINT(1) default 0 NOT NULL, COMPLETEDAT DATETIME, CREATEDAT DATETIME, RETIRED TINYINT(1) default 0 NOT NULL, RETIREDAT DATETIME, STATUS VARCHAR(255), COMPLETEDBY_ID BIGINT, CREATOR_ID BIGINT, NEXTSTEPINSTANCE_ID BIGINT, PRECEDINGSTEPINSTANCE_ID BIGINT, PROCESSINSTANCE_ID BIGINT NOT NULL, PROCESSSTEPACTIONDEFINITION_ID BIGINT, PROCESSSTEPDEFINITION_ID BIGINT NOT NULL, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBTHEME (ID BIGINT NOT NULL, CREATEDAT DATETIME, DESCRIPTION VARCHAR(255), NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBUSERROLEUSER (ID BIGINT NOT NULL, CREATEDAT DATETIME, EDITEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, EDITER_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, WEBUSERROLE_ID BIGINT, DEPARTMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBTEMPLATE (ID BIGINT NOT NULL, CACHED TINYINT(1) default 0, CSS LONGTEXT, DEFAULTTEMPLATE TINYINT(1) default 0, DESCRIPTION LONGTEXT, JS LONGTEXT, NAME VARCHAR(255), PRIMARY KEY (ID))
CREATE TABLE PATIENTFLAG (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, INVESTIGATIONFLAG_ID BIGINT, PATIENT_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PROCESSDEFINITION (ID BIGINT AUTO_INCREMENT NOT NULL, ACTIVE TINYINT(1) default 0 NOT NULL, CREATEDAT DATETIME, DESCRIPTION VARCHAR(500), NAME VARCHAR(100) NOT NULL, RETIRED TINYINT(1) default 0 NOT NULL, RETIREDAT DATETIME, VERSION VARCHAR(20) NOT NULL, CREATOR_ID BIGINT, PARENT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBUSER (ID BIGINT NOT NULL, ACTIVATECOMMENTS VARCHAR(255), ACTIVATED TINYINT(1) default 0, ACTIVATEDAT DATETIME, CODE VARCHAR(255), CREATEDAT DATETIME, DEFLOCALE VARCHAR(255), DESCRIPTION VARCHAR(255), EMAIL VARCHAR(255), LASTPASSWORDRESETAT DATETIME, LOGINPAGE VARCHAR(255), NAME VARCHAR(255) NOT NULL UNIQUE, NEEDTORESETPASSWORD TINYINT(1) default 0, PRIMETHEME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TELNO VARCHAR(255), WEBUSERPASSWORD VARCHAR(255), ACTIVATOR_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, ROLE_ID BIGINT, SITE_ID BIGINT, STAFF_ID BIGINT, USERWEBTHEME_ID BIGINT, WEBUSERPERSON_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ITEMUSAGE (ID BIGINT NOT NULL, AGEINMONTHSFROM BIGINT, AGEINMONTHSTO BIGINT, CREATEDAT DATETIME, DBLVALUE1 DOUBLE, DBLVALUE2 DOUBLE, EDITEDAT DATETIME, INTVALUE1 INTEGER, INTVALUE2 INTEGER, ORDERNO INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SEX VARCHAR(255), TYPE VARCHAR(255), CATEGORY_ID BIGINT, CREATER_ID BIGINT, EDITER_ID BIGINT, FORDEPARTMENT_ID BIGINT, FORINSTITUTION_ID BIGINT, FORITEM_ID BIGINT, FORWEBUSER_ID BIGINT, ITEM_ID BIGINT, MEASUREMENTUNIT1_ID BIGINT, MEASUREMENTUNIT2_ID BIGINT, PARENT_ID BIGINT, PATIENT_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFGRADE (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFFEMPLOYMENT_ID BIGINT, GRADE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTROOM (ID BIGINT NOT NULL, DTYPE VARCHAR(31), ADDEDADMINISTRATIONCHARGE DOUBLE, ADDEDLINENCHARGE DOUBLE, ADDEDMAINTAINCHARGE DOUBLE, ADDEDMEDICALCARECHARGE DOUBLE, ADDEDMOCHARGE DOUBLE, ADDEDNURSINGCHARGE DOUBLE, ADDEDROOMCHARGE DOUBLE, ADJUSTEDMAINTAINCHARGE DOUBLE, ADJUSTEDMOCHARGE DOUBLE, ADJUSTEDROOMCHARGE DOUBLE, ADMITTEDAT DATETIME, AJDUSTEDADMINISTRATIONCHARGE DOUBLE, AJDUSTEDLINENCHARGE DOUBLE, AJDUSTEDMEDICALCARECHARGE DOUBLE, AJDUSTEDNURSINGCHARGE DOUBLE, CALCULATEDADMINISTRATIONCHARGE DOUBLE, CALCULATEDLINENCHARGE DOUBLE, CALCULATEDMAINTAINCHARGE DOUBLE, CALCULATEDMEDICALCARECHARGE DOUBLE, CALCULATEDMOCHARGE DOUBLE, CALCULATEDNURSINGCHARGE DOUBLE, CALCULATEDROOMCHARGE DOUBLE, CREATEDAT DATETIME, CURRENTADMINISTRATIONCHARGE DOUBLE, CURRENTLINENCHARGE DOUBLE, CURRENTMAINTANANCECHARGE DOUBLE, CURRENTMEDICALCARECHARGE DOUBLE, CURRENTMOCHARGE DOUBLE, CURRENTMOCHARGEFORAFTERDURATION DOUBLE, CURRENTNURSINGCHARGE DOUBLE, CURRENTROOMCHARGE DOUBLE, DESCRIPTION VARCHAR(255), DISCHARGED TINYINT(1) default 0, DISCHARGEDAT DATETIME, DISCOUNTADMINISTRATIONCHARGE DOUBLE, DISCOUNTLINENCHARGE DOUBLE, DISCOUNTMAINTAINCHARGE DOUBLE, DISCOUNTMEDICALCARECHARGE DOUBLE, DISCOUNTMOCHARGE DOUBLE, DISCOUNTNURSINGCHARGE DOUBLE, DISCOUNTROOMCHARGE DOUBLE, NAME VARCHAR(255), ORDERNO INTEGER, PRINTADMITTEDAT DATETIME, PRINTDISCHARGEAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SNAME VARCHAR(255), TNAME VARCHAR(255), ADDMITTEDBY_ID BIGINT, CREATER_ID BIGINT, DISCHARGEDBY_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, PRINTROOMFACILITYCHARGE_ID BIGINT, RETIRER_ID BIGINT, ROOMFACILITYCHARGE_ID BIGINT, PREVIOUSROOM_ID BIGINT, REFERENCEPATIENTROOM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DEPARTMENTMACHINE (ID BIGINT NOT NULL, ACTIVE TINYINT(1) default 0, CALIBRATIONDATE DATE, CODE VARCHAR(255), CREATEDAT DATETIME, DESCRIPTION LONGTEXT, INSTALLATIONDATE DATE, LOCATION VARCHAR(255), MAINTENANCESCHEDULE VARCHAR(255), MANUFACTUREDATE DATE, NAME VARCHAR(255), NETWORKSETTINGS VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SERIALNUMBER VARCHAR(255), STATUS VARCHAR(255), CREATER_ID BIGINT, RETIRER_ID BIGINT, SUPPLIER_ID BIGINT, DEPARTMENT_ID BIGINT, MACHINE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CASHTRANSACTION (ID BIGINT NOT NULL, BALLANCEAMOUNT DOUBLE, CASHVALUE DOUBLE, CHEQUEVALUE DOUBLE, CREATEDAT DATETIME, CREDITCARDVALUE DOUBLE, INOUTTYPE VARCHAR(255), QTY1 DOUBLE, QTY10 DOUBLE, QTY100 DOUBLE, QTY1000 DOUBLE, QTY10000 DOUBLE, QTY2 DOUBLE, QTY20 DOUBLE, QTY200 DOUBLE, QTY2000 DOUBLE, QTY5 DOUBLE, QTY50 DOUBLE, QTY500 DOUBLE, QTY5000 DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SLIPVALUE DOUBLE, TENDEREDAMOUNT DOUBLE, CREATER_ID BIGINT, DRAWER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE TOKEN (ID BIGINT NOT NULL, CALLED TINYINT(1) default 0, CALLEDAT DATETIME, COMPLETED TINYINT(1) default 0, COMPLETEDAT DATETIME, CREATEDAT DATETIME, DISPLAYTOKEN TINYINT(1) default 0, INPROGRESS TINYINT(1) default 0, ISSUEDAT DATETIME, RESTARTTOKENSERVICES TINYINT(1) default 0, RETIRED TINYINT(1) default 0, STARTEDAT DATETIME, TOKENAT DATETIME, TOKENDATE DATE, TOKENID VARCHAR(255), TOKENNUMBER VARCHAR(255), TOKENTYPE INTEGER, BILL_ID BIGINT, CATERORY_ID BIGINT, COUNTER_ID BIGINT, CREATEDBY_ID BIGINT, DEPARTMENT_ID BIGINT, DOCTOR_ID BIGINT, FROMDEPARTMENT_ID BIGINT, FROMINSTITUTION_ID BIGINT, FROMSTAFF_ID BIGINT, INSTITUTION_ID BIGINT, PATIENT_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, REFERATOKEN_ID BIGINT, RETIREDBY_ID BIGINT, SERVICECOUNTER_ID BIGINT, STAFF_ID BIGINT, TODEPARTMENT_ID BIGINT, TOINSTITUTION_ID BIGINT, TOSTAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLSESSION (ID BIGINT NOT NULL, ABSENT TINYINT(1) default 0, ABSENTMARKEDAT DATETIME, ABSENTUNMARKEDAT DATETIME, COMPLETED TINYINT(1) default 0, COMPLETEDAT DATETIME, CREATEDAT DATETIME, CURRENTLYCONSULTED TINYINT(1) default 0, FIRSTVISIT TINYINT(1) default 0, MARKEDTOCANCEL TINYINT(1) default 0, MARKEDTOCANCELAT DATETIME, MARKEDTOREFUND TINYINT(1) default 0, MARKEDTOREFUNDAT DATETIME, NAME VARCHAR(255), NEXTINLINE TINYINT(1) default 0, RECHEDULEDSESSION TINYINT(1) default 0, RESERVEDBOOKING TINYINT(1) default 0, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SERIALNO INTEGER, SESSIONDATE DATE, SESSIONTIME TIME, ABSENTMARKEDUSER_ID BIGINT, ABSENTUNMARKEDUSER_ID BIGINT, BILL_ID BIGINT, CATEGORY_ID BIGINT, COMPLETEDBY_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, MARKEDTOCANCELBY_ID BIGINT, MARKEDTOREFUNDBY_ID BIGINT, PACKEGE_ID BIGINT, PAIDBILLSESSION_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, REFERENCEBILLSESSION_ID BIGINT, RETIRER_ID BIGINT, SERVICESESSION_ID BIGINT, SERVICESESSIONINSTANCE_ID BIGINT, SESSIONINSTANCE_ID BIGINT, STAFF_ID BIGINT, BILLITEM_ID BIGINT, RESCHEDULEDFROMBILLSESSION_ID BIGINT, RESCHEDULEDTOBILLSESSION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ITEMSDISTRIBUTORS (ID BIGINT NOT NULL, CREATEDAT DATETIME, ORDERNO INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE MAPPING (ID BIGINT NOT NULL, DESCREPTION LONGTEXT, ITEM1_ID BIGINT, ITEM2_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ITEMPACKAGE (ID BIGINT NOT NULL, PRIMARY KEY (ID))
CREATE TABLE WEBLANGUAGE (ID BIGINT NOT NULL, CODE VARCHAR(255), DEFAULTLANGUAGE TINYINT(1) default 0, NAME VARCHAR(255), ORDERNO DOUBLE, RETIRED TINYINT(1) default 0, PRIMARY KEY (ID))
CREATE TABLE WEBUSERROLE (ID BIGINT NOT NULL, ACTIVATECOMMENTS VARCHAR(255), ACTIVATED TINYINT(1) default 0, ACTIVATEDAT DATETIME, CREATEDAT DATETIME, DESCRIPTION VARCHAR(255), NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, ACTIVATOR_ID BIGINT, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FINGERPRINTRECORDHISTORY (ID BIGINT NOT NULL, AFTERCHANGE DATETIME, BEFORECHANGE DATETIME, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, FINGERPRINTRECORD_ID BIGINT, RETIRER_ID BIGINT, ROSTER_ID BIGINT, SHIFT_ID BIGINT, STAFF_ID BIGINT, STAFFSHIFT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PERSON (ID BIGINT AUTO_INCREMENT NOT NULL, ADDRESS VARCHAR(255), CREATEDAT DATETIME, DESCRIPTION VARCHAR(255), DOB DATETIME, EDITEDAT DATETIME, EMAIL VARCHAR(255), FAX VARCHAR(255), FOREIGNER TINYINT(1) default 0, TNAME VARCHAR(255), INITIALS VARCHAR(255), LASTNAME VARCHAR(255), MOBILE VARCHAR(255), NAME VARCHAR(255), SNAME VARCHAR(255), NIC VARCHAR(255), PHONE VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SEX VARCHAR(255), SURNAME VARCHAR(255), TITLE VARCHAR(255), WEBSITE VARCHAR(255), ZONECODE VARCHAR(255), AREA_ID BIGINT, BLOODGROUP_ID BIGINT, CIVILSTATUS_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, INSTITUTION_ID BIGINT, MEMBERSHIPSCHEME_ID BIGINT, OCCUPATION_ID BIGINT, RACE_ID BIGINT, RELIGION_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CLINICALFINDINGVALUE (ID BIGINT NOT NULL, CLINICALFINDINGVALUETYPE VARCHAR(255), DOUBLEVALUE DOUBLE, IMAGENAME VARCHAR(255), IMAGETYPE VARCHAR(255), IMAGEVALUE LONGBLOB, LOBVALUE LONGTEXT, LONGVALUE BIGINT, ORDERNO DOUBLE, RETIRED TINYINT(1) default 0, STRINGVALUE VARCHAR(255), CATEGORYVALUE_ID BIGINT, CLINICALFINDINGITEM_ID BIGINT, DOCUMENTTEMPLATE_ID BIGINT, ENCOUNTER_ID BIGINT, ITEMVALUE_ID BIGINT, PATIENT_ID BIGINT, PATIENTINVESTIGATION_ID BIGINT, PATIENTREPORT_ID BIGINT, PERSON_ID BIGINT, PRESCRIPTION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE HRMVARIABLES (ID BIGINT NOT NULL, CREATEDAT DATETIME, EPFCOMPANYRATE DOUBLE, EPFRATE DOUBLE, ETFCOMPANYRATE DOUBLE, ETFRATE DOUBLE, NAME VARCHAR(255), PAYEECOMPANYRATE DOUBLE, PAYEELIMIT DOUBLE, PAYEERATE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SMS (ID BIGINT NOT NULL, CREATEDAT DATETIME, OTP VARCHAR(255), PASSWORD VARCHAR(255), PENDING TINYINT(1) default 0, RECEIPIENTNUMBER VARCHAR(255), RECEIVEDMESSAGE LONGTEXT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SENDINGMESSAGE LONGTEXT, SENDINGURL VARCHAR(255), SENTAT DATE, SENTSUCCESSFULLY TINYINT(1) default 0, SMSTYPE VARCHAR(255), USERID VARCHAR(255), BILL_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, PATIENTINVESTIGATION_ID BIGINT, PATIENTREPORT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE APIKEY (ID BIGINT NOT NULL, CREATEDAT DATETIME, DATEOFEXPIARY DATE, KEYTYPE INTEGER, KEYVALUE VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ENCOUNTERCREDITCOMPANY (ID BIGINT NOT NULL, CREATEDAT DATETIME, CREDITLIMIT DOUBLE, DESCREPTION VARCHAR(255), POLICYNO VARCHAR(255), REFERANCENO VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, INSTITUTION_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DESIGNCOMPONENTASSIGNMENT (ID BIGINT NOT NULL, ASSIGNEDENTITYTYPE VARCHAR(255), DESIGNCOMPONENT_ID BIGINT, PROCESSDEFINITION_ID BIGINT, PROCESSSTEPACTIONDEFINITION_ID BIGINT, PROCESSSTEPDEFINITION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFBASICS (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFFEMPLOYMENT_ID BIGINT, BASIC_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CATEGORYITEM (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CATEGORY_ID BIGINT, CREATER_ID BIGINT, ITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DESIGNCOMPONENT (ID BIGINT NOT NULL, CODE VARCHAR(255), CODESYSTEM VARCHAR(255), COMPONENTDATATYPE VARCHAR(255), COMPONENTMAPPINGTYPE VARCHAR(255), COMPONENTPRESENTATIONTYPE VARCHAR(255), DESCRIPTION LONGTEXT, EDITHTML LONGTEXT, NAME VARCHAR(255), TYPE VARCHAR(255), VIEWHTML LONGTEXT, DATAENTRYFORM_ID BIGINT, PARENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENT (ID BIGINT NOT NULL, BAIMAGE LONGBLOB, CARDISSUEDDATE DATE, CARDISSUES TINYINT(1) default 0, CODE VARCHAR(255), COMMENTS LONGTEXT, CREATEDAT DATETIME, CREDITLIMIT DOUBLE, EDITEDAT DATETIME, FILENAME VARCHAR(255), FILETYPE VARCHAR(255), FROMDATE DATETIME, HASANACCOUNT TINYINT(1) default 0, HINNO INTEGER, PATIENTID BIGINT, PATIENTMOBILENUMBER BIGINT, PATIENTPHONENUMBER BIGINT, PHN VARCHAR(255), PINNO INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, RUNNINGBALANCE DOUBLE, TODATE DATETIME, CREATEDINSTITUTION_ID BIGINT, CREATER_ID BIGINT, EDITER_ID BIGINT, PERSON_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PAYMENTSCHEME (ID BIGINT NOT NULL, CLIANTTYPE VARCHAR(255), CREATEDAT DATETIME, MEMBERORFAMILYREQUIRED TINYINT(1) default 0, MEMBERREQUIRED TINYINT(1) default 0, MEMBERSHIPREQUIRED TINYINT(1) default 0, NAME VARCHAR(255), ORDERNO INTEGER, PREGNANTMOTHERREQUIRED TINYINT(1) default 0, PRINTINGNAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SENIORCITIZENREQUIRED TINYINT(1) default 0, STAFFMEMBERREQUIRED TINYINT(1) default 0, STAFFORFAMILYREQUIRED TINYINT(1) default 0, STAFFREQUIRED TINYINT(1) default 0, VALIDFORBILLEDBILLS TINYINT(1) default 0, VALIDFORCHANNELING TINYINT(1) default 0, VALIDFORINPATIENTBILLS TINYINT(1) default 0, validForPayments TINYINT(1) default 0, CREATER_ID BIGINT, INSTITUTION_ID BIGINT, PERSON_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFWORKINGDEPARTMENT (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFFEMPLOYMENT_ID BIGINT, DEPARTMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE USERSTOCK (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, UPDATIONQTY DOUBLE, CREATER_ID BIGINT, RETIRER_ID BIGINT, USERSTOCKCONTAINER_ID BIGINT, STOCK_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SESSIONINSTANCE (ID BIGINT NOT NULL, ACCEPTONLINEBOOKINGS TINYINT(1) default 0, ADVANCEAPPOINTMENTPERIODUNIT INTEGER, ADVANCEAPPOINTMENTPERIOD BIGINT, AGENCYNUMBERS VARCHAR(255), ARRIVED TINYINT(1) default 0, BARCODE VARCHAR(255), BOOKEDPATIENTCOUNT BIGINT, BOOKEDPATIENTCOUNTFORFIRSTVISITS BIGINT, BOOKEDPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, CANCELONCALLPATIENTCOUNT BIGINT, CANCELONCALLPATIENTCOUNTFORFIRSTVISITS BIGINT, CANCELONCALLPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, CANCELPAIDPATIENTCOUNT BIGINT, CANCELPAIDPATIENTCOUNTFORFIRSTVISITS BIGINT, CANCELPAIDPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, CANCELPATIENTCOUNT BIGINT, CANCELPATIENTCOUNTFORFIRSTVISITS BIGINT, CANCELPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, CANCELLED TINYINT(1) default 0, CANCELLEDAT DATETIME, CASHNUMBERS VARCHAR(255), CODE VARCHAR(255), COMMENTS LONGTEXT, COMPLETED TINYINT(1) default 0, COMPLETEDAT DATETIME, COMPLETEDPATIENTCOUNT BIGINT, COMPLETEDPATIENTCOUNTFORFIRSTVISITS BIGINT, COMPLETEDPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, CONTINUENUMBERS TINYINT(1) default 0, CREATEDAT DATETIME, CREDITNUMBERS VARCHAR(255), DBLVALUE DOUBLE, DEACTIVATECOMMENT VARCHAR(255), DEACTIVATED TINYINT(1) default 0, DESCREPTION LONGTEXT, DISCOUNTALLOWED TINYINT(1) default 0, DISPLAYCOUNT INTEGER, DISPLAYPERCENT DOUBLE, DOCTORHOLIDAY TINYINT(1) default 0, DURATION DOUBLE, DURATIONINCREMENTCOUNT INTEGER, EDITEDAT DATETIME, EFFECTIVEFROM DATE, EFFECTIVETO DATE, ENDINGTIME DATETIME, FULLNAME VARCHAR(255), ITEMTYPE VARCHAR(255), MAXNO INTEGER, MAXNOFORFIRSTVISITS INTEGER, MAXNOFORSUBSEQUENTVISITS INTEGER, MAXTABLEROWS INTEGER, NAME VARCHAR(255), NEXTAVAILABLEAPPOINTMENTNUMBER BIGINT, NEXTAVAILABLEAPPOINTMENTNUMBERFORFIRSTVISITS BIGINT, NEXTAVAILABLEAPPOINTMENTNUMBERFORSUBSEQUENTVISITS BIGINT, NUMBERINCREMENT INTEGER, ONCALLPATIENTCOUNT BIGINT, ONCALLPATIENTCOUNTFORFIRSTVISITS BIGINT, ONCALLPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, ONCALLBOOKINGSALLOWED TINYINT(1) default 0, PAIDPATIENTCOUNT BIGINT, PAIDPATIENTCOUNTFORFIRSTVISITS BIGINT, PAIDPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, PAIDTODOCTORPATIENTCOUNT BIGINT, PAIDTODOCTORPATIENTCOUNTFORFIRSTVISITS BIGINT, PAIDTODOCTORPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, PRINTFEESFORBILLS TINYINT(1) default 0, PRINTNAME VARCHAR(255), PRIORITY VARCHAR(255), PROFITMARGIN DOUBLE, REFUNDABLE TINYINT(1) default 0, REFUNDEDPATIENTCOUNT BIGINT, REFUNDEDPATIENTCOUNTFORFIRSTVISITS BIGINT, REFUNDEDPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, REMAININGPATIENTCOUNT BIGINT, REMAININGPATIENTCOUNTFORFIRSTVISITS BIGINT, REMAININGPATIENTCOUNTFORSUBSEQUENTVISITS BIGINT, REPORTPATIENTS INTEGER, RESERVENAME VARCHAR(255), RESERVENUMBERS VARCHAR(255), RESERVENUMBERSFORFIRSTVISIT VARCHAR(255), RESERVENUMBERSFORSUBSEQUENTVISITS VARCHAR(255), RESERVEDBOOKINGCOUNT BIGINT, RESERVEDBOOKINGCOUNTFORFIRSTVISITS BIGINT, RESERVEDBOOKINGCOUNTFORSUBSEQUENTVISITS BIGINT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, ROOMNO INTEGER, SCANFEE TINYINT(1) default 0, SESSIONAT TIME, SESSIONDATE DATE, SESSIONNUMBERTYPE INTEGER, SESSIONTIME TIME, SESSIONWEEKDAY INTEGER, SHORTNAME VARCHAR(255), SHOWAPPOINTMENTCOUNT TINYINT(1) default 0, SHOWAPPOINTMENTTIME TINYINT(1) default 0, SNAME VARCHAR(255), SPECIALNOTICESESSIONINSTANCE LONGTEXT, STARTED TINYINT(1) default 0, STARTEDAT DATETIME, STARTINGNO INTEGER, STARTINGTIME DATETIME, TNAME VARCHAR(255), TOTAL DOUBLE, TOTALFORFOREIGNER DOUBLE, ARRIVALRECORD_ID BIGINT, CANCELLEDBY_ID BIGINT, COMPLETEDBY_ID BIGINT, CREATER_ID BIGINT, CURRENTLYCONSULTINGBILLSESSION_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, FORDEPARTMENT_ID BIGINT, FORINSTITUTION_ID BIGINT, INSTITUTION_ID BIGINT, LASTCOMPLETEDBILLSESSION_ID BIGINT, NEXTINLINEBILLSESSION_ID BIGINT, ORIGINATINGSESSION_ID BIGINT, RETIRER_ID BIGINT, SESSIONNUMBERGENERATOR_ID BIGINT, SPECIALITY_ID BIGINT, STAFF_ID BIGINT, STARTEDBY_ID BIGINT, AFTERSESSION_ID BIGINT, DOCTORHOLIDAYMARKEDBY_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFLEAVEENTITLE (ID BIGINT NOT NULL, COUNT DOUBLE, CREATEDAT DATETIME, FROMDATE DATE, LEAVETYPE VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SEX (ID BIGINT NOT NULL, CODE VARCHAR(255), CREATEDAT DATETIME, NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SNAME VARCHAR(255), TNAME VARCHAR(255), CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE AGENTHISTORY (ID BIGINT NOT NULL, ADJUSTMENTTOAGENCYBALANCE DOUBLE, AGENTBALANCEAFTER DOUBLE, AGENTBALANCEBEFORE DOUBLE, AGENTTRANSACTIONVALUE DOUBLE, BALANCEAFTERTRANSACTION DOUBLE, BALANCEBEFORETRANSACTION DOUBLE, COLLECTINGCENTERTRANSACTIONVALUE DOUBLE, COMMENT LONGTEXT, COMPANYBALANCEAFTER DOUBLE, COMPANYBALANCEBEFORE DOUBLE, COMPANYTRANSACTIONVALUE DOUBLE, CREATEDAT DATETIME, HISTORYTYPE VARCHAR(255), PAIDAMOUNTBYAGENCY DOUBLE, PAIDAMOUNTTOAGENCY DOUBLE, REFERENCENUMBER VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, STAFFTRASNACTIONVALUE DOUBLE, TRANSACTIONVALUE DOUBLE, AGENCY_ID BIGINT, BILL_ID BIGINT, BILLITEM_ID BIGINT, BILLSESSION_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PAYSHEETCOMPONENT (ID BIGINT NOT NULL, DTYPE VARCHAR(31), COMPONENTTYPE VARCHAR(255), COMPONENTVALUE DOUBLE, CREATEDAT DATETIME, INCLUDEFORALLOWANCE TINYINT(1) default 0, INCLUDEDFOREPF TINYINT(1) default 0, INCLUDEDFORETF TINYINT(1) default 0, INCLUDEDFORNOPAY TINYINT(1) default 0, INCLUDEDFOROT TINYINT(1) default 0, INCLUDEDFORPAYTAX TINYINT(1) default 0, INCLUDEDFORPH TINYINT(1) default 0, NAME VARCHAR(255), ORDERNO INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, SENDINGINSTITUTION_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLCOMPONENT (ID BIGINT NOT NULL, CATID VARCHAR(255), COMPONENTVALUE DOUBLE, CREATEDAT DATETIME, DEPTID VARCHAR(255), INSID VARCHAR(255), NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SESSIONID VARCHAR(255), BILL_ID BIGINT, BILLITEM_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, PACKEGE_ID BIGINT, RETIRER_ID BIGINT, SPECIALITY_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DEFAULTSERVICEDEPARTMENT (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, BILLINGDEPARTMENT_ID BIGINT, CATEGORY_ID BIGINT, CREATEDBY_ID BIGINT, ITEM_ID BIGINT, PERFORMINGDEPARTMENT_ID BIGINT, RETIREDBY_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLITEMFINANCEDETAILS (ID BIGINT NOT NULL, BILLCOST DECIMAL(18,4), BILLCOSTRATE DECIMAL(18,4), BILLDISCOUNT DECIMAL(18,4), BILLDISCOUNTRATE DECIMAL(18,4), BILLEXPENSE DECIMAL(18,4), BILLEXPENSERATE DECIMAL(18,4), BILLGROSSRATE DECIMAL(18,4), BILLGROSSTOTAL DECIMAL(18,4), BILLNETRATE DECIMAL(18,4), BILLNETTOTAL DECIMAL(18,4), BILLTAX DECIMAL(18,4), BILLTAXRATE DECIMAL(18,4), CREATEDAT DATETIME, FREEQUANTITY DECIMAL(18,4), FREEQUANTITYBYUNITS DECIMAL(18,4), GROSSRATE DECIMAL(18,4), GROSSTOTAL DECIMAL(18,4), LINECOST DECIMAL(18,4), LINECOSTRATE DECIMAL(18,4), LINEDISCOUNT DECIMAL(18,4), LINEDISCOUNTRATE DECIMAL(18,4), LINEEXPENSE DECIMAL(18,4), LINEEXPENSERATE DECIMAL(18,4), LINEGROSSRATE DECIMAL(18,4), LINEGROSSTOTAL DECIMAL(18,4), LINENETRATE DECIMAL(18,4), LINENETTOTAL DECIMAL(18,4), LINETAX DECIMAL(18,4), LINETAXRATE DECIMAL(18,4), NETRATE DECIMAL(18,4), NETTOTAL DECIMAL(18,4), PROFITMARGIN DECIMAL(18,4), QUANTITY DECIMAL(18,4), QUANTITYBYUNITS DECIMAL(18,4), RETAILSALERATE DECIMAL(18,4), RETAILSALERATEPERUNIT DECIMAL(18,4), RETURNFREEQUANTITY DECIMAL(18,4), RETURNFREEQUANTITYTOTAL DECIMAL(18,4), RETURNGROSSTOTAL DECIMAL(18,4), RETURNNETTOTAL DECIMAL(18,4), RETURNQUANTITY DECIMAL(18,4), RETURNQUANTITYTOTAL DECIMAL(18,4), TOTALCOST DECIMAL(18,4), TOTALCOSTRATE DECIMAL(18,4), TOTALDISCOUNT DECIMAL(18,4), TOTALDISCOUNTRATE DECIMAL(18,4), TOTALEXPENSE DECIMAL(18,4), TOTALEXPENSERATE DECIMAL(18,4), TOTALQUANTITY DECIMAL(18,4), TOTALQUANTITYBYUNITS DECIMAL(18,4), TOTALRETURNQUANTITY DECIMAL(18,4), TOTALTAX DECIMAL(18,4), TOTALTAXRATE DECIMAL(18,4), UNITSPERPACK DECIMAL(18,4), WHOLESALERATE DECIMAL(18,4), WHOLESALERATEPERUNIT DECIMAL(18,4), CREATEDBY_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SERVICESESSIONINSTANCE (ID BIGINT NOT NULL, AGENCYNUMBERS VARCHAR(255), BARCODE VARCHAR(255), BILLABLE TINYINT(1) default 0, CASHNUMBERS VARCHAR(255), CHARGESVISIBLEFORINWARD TINYINT(1) default 0, CODE VARCHAR(255), CONTINUENUMBERS TINYINT(1) default 0, CREATEDAT DATETIME, CREDITNUMBERS VARCHAR(255), DBLVALUE DOUBLE, DEACTIVATECOMMENT VARCHAR(255), DEACTIVATED TINYINT(1) default 0, DISCOUNTALLOWED TINYINT(1) default 0, DISPLAYCOUNT INTEGER, DISPLAYPERCENT DOUBLE, DURATION DOUBLE, EDITEDAT DATETIME, ENDINGTIME DATETIME, FORBILLTYPE VARCHAR(255), FORMATABLE TINYINT(1) default 0, FULLNAME VARCHAR(255), INWARDCHARGETYPE VARCHAR(255), MARGINNOTALLOWED TINYINT(1) default 0, MAXNO INTEGER, MAXTABLEROWS INTEGER, NAME VARCHAR(255), NUMBERINCREMENT INTEGER, PATIENTNOTREQUIRED TINYINT(1) default 0, PRICEBYBATCH TINYINT(1) default 0, PRINTNAME VARCHAR(255), PROFITMARGIN DOUBLE, REFUNDABLE TINYINT(1) default 0, REQUESTFORQUENTITY TINYINT(1) default 0, RESERVENAME VARCHAR(255), RESERVENUMBERS VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, ROOMNO INTEGER, SCANFEE TINYINT(1) default 0, SESSIONAT TIME, SESSIONDATE DATE, SESSIONNUMBERTYPE INTEGER, SESSIONTIME TIME, SESSIONWEEKDAY INTEGER, SHORTNAME VARCHAR(255), SNAME VARCHAR(255), STARTINGNO INTEGER, STARTINGTIME DATETIME, TNAME VARCHAR(255), TOTAL DOUBLE, TOTALFORFOREIGNER DOUBLE, VATPERCENTAGE DOUBLE, VATABLE TINYINT(1) default 0, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, EDITER_ID BIGINT, FORDEPARTMENT_ID BIGINT, FORINSTITUTION_ID BIGINT, INSTITUTION_ID BIGINT, ORIGINATINGSESSION_ID BIGINT, RETIRER_ID BIGINT, SESSIONNUMBERGENERATOR_ID BIGINT, SPECIALITY_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTSESSIONINSTANCEACTIVITY (ID BIGINT NOT NULL, COMPLETED TINYINT(1) default 0, APPOINTMENTACTIVITY_ID BIGINT, PATIENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE LOAN (ID BIGINT NOT NULL, CREATEDAT DATETIME, FIXEDDEDUCTION DOUBLE, INTERESTCALCULATIONTYPE VARCHAR(255), INTERESTRATE DOUBLE, LOANVALUE DOUBLE, MAXAMOUNT DOUBLE, MINAMOUNT DOUBLE, NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE REPORTLOG (ID BIGINT NOT NULL, CREATEDAT DATETIME NOT NULL, ENDTIME DATETIME, EXECUTIONTIMEINMILLIS BIGINT, GENERATEDBYID BIGINT NOT NULL, REPORTNAME VARCHAR(255) NOT NULL, REPORTTYPE VARCHAR(255) NOT NULL, STARTTIME DATETIME NOT NULL, PRIMARY KEY (ID))
CREATE TABLE SHIFTPREFERENCE (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATE, LEAVEDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE IXCAL (ID BIGINT NOT NULL, CALCULATIONTYPE VARCHAR(255), CONSTANTVALUE DOUBLE, FEMALECONSTANTVALUE DOUBLE, JAVASCRIPT LONGTEXT, MALECONSTANTVALUE DOUBLE, ORDERNO INTEGER, RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CALIXITEM_ID BIGINT, RETIRER_ID BIGINT, VALIXITEM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBUSERDASHBOARD (ID BIGINT NOT NULL, CREATEDAT DATETIME, DASHBOARD INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ITEMBATCH (ID BIGINT NOT NULL, BARCODE VARCHAR(255), BATCHNO VARCHAR(255), CHASSISNO VARCHAR(255), COLOUR VARCHAR(255), COSTRATE DOUBLE, DATEOFEXPIRE DATETIME, DATEOFMANUFACTURE DATETIME, DEPRECITIONRATE DOUBLE, DESCRIPTION LONGTEXT, ENGINENO VARCHAR(255), MODAL VARCHAR(255), NUMBEROFACCESSORIES INTEGER, OTHERNOTES LONGTEXT, PURCAHSERATE DOUBLE, REGISTRATIONNO VARCHAR(255), RETAILSALERATE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SERIALNO VARCHAR(255), TOTALACQUICITIONCOST DOUBLE, WARRENTYCERTIFICATENUMBER VARCHAR(255), WARRENTYDURATION BIGINT, WHOLESALERATE DOUBLE, ITEM_ID BIGINT, LASTPURCHASEBILLITEM_ID BIGINT, MAKE_ID BIGINT, MANUFACTURER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE UPLOAD (ID BIGINT NOT NULL, BAIMAGE LONGBLOB, COMMENTS LONGTEXT, CREATEDAT DATETIME, FILENAME VARCHAR(255), FILETYPE VARCHAR(255), FILEURL VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, UPLOADTYPE VARCHAR(255), BILL_ID BIGINT, CATEGORY_ID BIGINT, CREATER_ID BIGINT, INSTITUTION_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, PATIENTINVESTIGATION_ID BIGINT, PATIENTREPORT_ID BIGINT, RETIRER_ID BIGINT, WEBCONTENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTITEM (ID BIGINT NOT NULL, ADJUSTEDVALUE DOUBLE, CREATEDAT DATETIME, DISCOUNT DOUBLE, FROMTIME DATETIME, NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SERVICEVALUE DOUBLE, TOTIME DATETIME, BILL_ID BIGINT, BILLITEM_ID BIGINT, CREATER_ID BIGINT, ITEM_ID BIGINT, PACKEGE_ID BIGINT, PATIENT_ID BIGINT, PATIENTENCOUNTER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE FAMILY (ID BIGINT NOT NULL, COMMENTS LONGTEXT, CREATEDAT DATETIME, EDITEDAT DATETIME, MEMBERSHIPCARDNO BIGINT, PHONENO VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CHIEFHOUSEHOLDER_ID BIGINT, CREATEDDEPARTMENT_ID BIGINT, CREATEDINSTITUTION_ID BIGINT, CREATER_ID BIGINT, EDITER_ID BIGINT, MEMBERSHIPSCHEME_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WORKINGTIME (ID BIGINT NOT NULL, ADDEDTOSALARY TINYINT(1) default 0, CREATEDAT DATETIME, DURATIONINMINUTES BIGINT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, WORKINGTYPE VARCHAR(255), CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, ENDRECORD_ID BIGINT, INSTITUTION_ID BIGINT, PROFESSINOALPAYMENTBILL_ID BIGINT, RETIRER_ID BIGINT, STAFFSHIFT_ID BIGINT, STARTRECORD_ID BIGINT, CONTINUEDTO_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLENTRY (ID BIGINT NOT NULL, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TOTCASH DOUBLE, TOTCREDIT DOUBLE, TOTCREDITCARD DOUBLE, TOTDISCOUNT DOUBLE, TOTVAT DOUBLE, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DRAWER (ID BIGINT NOT NULL, AGENTBALANCE DOUBLE, AGENTINHANDVALUE DOUBLE, AGENTSHORTAGEOREXCESS DOUBLE, CARDBALANCE DOUBLE, CARDINHANDVALUE DOUBLE, CARDSHORTAGEOREXCESS DOUBLE, CASHBALANCE DOUBLE, CASHINHANDVALUE DOUBLE, CASHSHORTAGEOREXCESS DOUBLE, CHEQUEBALANCE DOUBLE, CHEQUEINHANDVALUE DOUBLE, CHEQUESHORTAGEOREXCESS DOUBLE, CREATEDAT DATETIME, CREDITBALANCE DOUBLE, CREDITINHANDVALUE DOUBLE, CREDITSHORTAGEOREXCESS DOUBLE, EWALLETBALANCE DOUBLE, EWALLETINHANDVALUE DOUBLE, EWALLETSHORTAGEOREXCESS DOUBLE, IOUBALANCE DOUBLE, IOUINHANDVALUE DOUBLE, IOUSHORTAGEOREXCESS DOUBLE, MULTIPLEPAYMENTMETHODSBALANCE DOUBLE, MULTIPLEPAYMENTMETHODSINHANDVALUE DOUBLE, MULTIPLEPAYMENTMETHODSSHORTAGEOREXCESS DOUBLE, NAME VARCHAR(255), NONEBALANCE DOUBLE, NONEINHANDVALUE DOUBLE, NONESHORTAGEOREXCESS DOUBLE, ONCALLBALANCE DOUBLE, ONCALLINHANDVALUE DOUBLE, ONCALLSHORTAGEOREXCESS DOUBLE, ONLINESETTLEMENTBALANCE DOUBLE, ONLINESETTLEMENTINHANDVALUE DOUBLE, ONLINESETTLEMENTSHORTAGEOREXCESS DOUBLE, PATIENTDEPOSITBALANCE DOUBLE, PATIENTDEPOSITINHANDVALUE DOUBLE, PATIENTDEPOSITSHORTAGEOREXCESS DOUBLE, PATIENTPOINTSBALANCE DOUBLE, PATIENTPOINTSINHANDVALUE DOUBLE, PATIENTPOINTSSHORTAGEOREXCESS DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SLIPBALANCE DOUBLE, SLIPINHANDVALUE DOUBLE, SLIPSHORTAGEOREXCESS DOUBLE, STAFFBALANCE DOUBLE, STAFFINHANDVALUE DOUBLE, STAFFSHORTAGEOREXCESS DOUBLE, STAFFWELFAREBALANCE DOUBLE, STAFFWELFAREINHANDVALUE DOUBLE, STAFFWELFARESHORTAGEOREXCESS DOUBLE, VOUCHERBALANCE DOUBLE, VOUCHERINHANDVALUE DOUBLE, VOUCHERSHORTAGEOREXCESS DOUBLE, YOUOWEMEBALANCE DOUBLE, YOUOWEMEINHANDVALUE DOUBLE, YOUOWEMESHORTAGEOREXCESS DOUBLE, CREATER_ID BIGINT, RETIRER_ID BIGINT, DRAWERUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFDESIGNATION (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATE, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFFEMPLOYMENT_ID BIGINT, DESIGNATION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PAYMENTMETHODVALUE (ID BIGINT NOT NULL, AMOUNT DOUBLE, CREATEDAT DATETIME, PAYMENTMETHOD INTEGER, RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE BILLFEEPAYMENT (ID BIGINT NOT NULL, AMOUNT DOUBLE, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, BILLFEE_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, PAYMENT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE COMPONENTASIGNMENT (ID BIGINT NOT NULL, NAME VARCHAR(255), DESCRIPTION VARCHAR(255), PRIMARY KEY (ID))
CREATE TABLE USERICON (ID BIGINT NOT NULL, ICON INTEGER, ORDERNUMBER DOUBLE, RETIRED TINYINT(1) default 0, DEPARTMENT_ID BIGINT, WEBUSER_ID BIGINT, WEBUSERROLE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE SALARYCYCLE (ID BIGINT NOT NULL, CREATEDAT DATETIME, DAYOFFPHFROMDATE DATETIME, DAYOFFPHTODATE DATETIME, EXTRADUTYFROMDATE DATETIME, EXTRADUTYTODATE DATETIME, NAME VARCHAR(255), OVERTIMEFROMDATE DATETIME, OVERTIMETODATE DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SALARYADVANCEFROMDATE DATE, SALARYADVANCETODATE DATE, SALARYDATE INTEGER, SALARYFROMDATE DATETIME, SALARYMONTH INTEGER, SALARYTODATE DATETIME, SALARYYEAR INTEGER, WORKEDFROMDATE DATETIME, WORKEDTODATE DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PATIENTINVESTIGATION (ID BIGINT NOT NULL, APPROVEAT DATETIME, APPROVECOMMENTS VARCHAR(255), APPROVED TINYINT(1) default 0, BARCODEGENERATED TINYINT(1) default 0, BARCODEGENERATEDAT DATETIME, CANCELLCOMMENTS VARCHAR(255), CANCELLED TINYINT(1) default 0, CANCELLEDAT DATETIME, COLLECTED TINYINT(1) default 0, CREATEDAT DATETIME, DATAENTERED TINYINT(1) default 0, DATAENTRYAT DATETIME, DATAENTRYCOMMENTS VARCHAR(255), ORDERED TINYINT(1) default 0, ORDEREDAT DATETIME, OUTSOURCED TINYINT(1) default 0, OUTSOURCEDAT DATETIME, OUTSOURCEDCOMMENTS VARCHAR(255), OUTSOURCEDVALUE DOUBLE, PERFORMCOMMENTS VARCHAR(255), PERFORMED TINYINT(1) default 0, PERFORMEDAT DATETIME, PRINTED TINYINT(1) default 0, PRINTINGAT DATETIME, PRINTINGCOMMENTS VARCHAR(255), RECEIVECOMMENTS VARCHAR(255), RECEIVED TINYINT(1) default 0, RECEIVEDAT DATETIME, REPORTDISTRIBUTED TINYINT(1) default 0, REPORTDISTRIBUTEDAT DATETIME, REPORTHANDEDOVER TINYINT(1) default 0, REPORTHANDEDOVERAT DATETIME, REPORTPRINTED TINYINT(1) default 0, REPORTPRINTEDAT DATETIME, REPORTREACHEDCOLLECTINGCENTRE TINYINT(1) default 0, REPORTREACHEDCOLLECTINGCENTREAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, RETURNCOMMENTS VARCHAR(255), RETURNED TINYINT(1) default 0, RETURNEDAT DATETIME, SAMPLEACCEPTED TINYINT(1) default 0, SAMPLEACCEPTEDAT DATETIME, SAMPLEAPPROVED TINYINT(1) default 0, SAMPLEAPPROVEDANDREPEATED TINYINT(1) default 0, SAMPLEAPPROVEDANDREPEATEDAT DATETIME, SAMPLEAPPROVEDAT DATETIME, SAMPLECOLLECTED TINYINT(1) default 0, SAMPLECOLLECTEDAT DATETIME, SAMPLECOMMENTS VARCHAR(255), SAMPLEGENERATED TINYINT(1) default 0, SAMPLEGENERATEDAT DATETIME, SAMPLEIDS VARCHAR(255), SAMPLEINTERFACED TINYINT(1) default 0, SAMPLEINTERFACEDAT DATETIME, SAMPLEOUTSIDE TINYINT(1) default 0, SAMPLERECOLLECTED TINYINT(1) default 0, SAMPLERECOLLECTEDAT DATETIME, SAMPLEREJECTED TINYINT(1) default 0, SAMPLEREJECTEDAT DATETIME, SAMPLEREPEATED TINYINT(1) default 0, SAMPLEREPEATEDAT DATETIME, SAMPLERESENT TINYINT(1) default 0, SAMPLERESENTAT DATETIME, SAMPLEREVERTED TINYINT(1) default 0, SAMPLEREVERTEDAT DATETIME, SAMPLESENT TINYINT(1) default 0, SAMPLESENTAT DATETIME, SAMPLESENTCOMMENTS VARCHAR(255), SAMPLEDAT DATETIME, STATUS INTEGER, APPROVEDEPARTMENT_ID BIGINT, APPROVEINSTITUTION_ID BIGINT, APPROVEUSER_ID BIGINT, BARCODEGENERATEDBY_ID BIGINT, BILLCOMPONENT_ID BIGINT, CANCELLDEPARTMENT_ID BIGINT, CANCELLINSTITUTION_ID BIGINT, CANCELLEDUSER_ID BIGINT, CREATER_ID BIGINT, DATAENTRYDEPARTMENT_ID BIGINT, DATAENTRYINSTITUTION_ID BIGINT, DATAENTRYUSER_ID BIGINT, ENCOUNTER_ID BIGINT, INVESTIGATION_ID BIGINT, ORDEREDBY_ID BIGINT, ORDEREDDEPARTMENT_ID BIGINT, OUTSOURCEINSTITUTION_ID BIGINT, OUTSOURCEDDEPARTMENT_ID BIGINT, OUTSOURCEDINSTITUTION_ID BIGINT, OUTSOURCEDUSER_ID BIGINT, PACKEGE_ID BIGINT, PATIENT_ID BIGINT, PERFORMDEPARTMENT_ID BIGINT, PERFORMINSTITUTION_ID BIGINT, PERFORMEDUSER_ID BIGINT, PRINTINGDEPARTMENT_ID BIGINT, PRINTINGINSTITUTION_ID BIGINT, PRINTINGUSER_ID BIGINT, RECEIVEDEPARTMENT_ID BIGINT, RECEIVEINSTITUTION_ID BIGINT, RECEIVEDCOLLECTER_ID BIGINT, REPORTDISTRIBUTEDBY_ID BIGINT, REPORTHANDEDOVERBY_ID BIGINT, REPORTPRINTEDBY_ID BIGINT, REPORTREACHEDCOLLECTINGCENTREBY_ID BIGINT, RETIRER_ID BIGINT, RETURNDEPARTMENT_ID BIGINT, RETURNINSTITUTION_ID BIGINT, RETURNEDUSER_ID BIGINT, SAMPLEACCEPTEDBY_ID BIGINT, SAMPLEAPPROVEDANDREPEATEDBY_ID BIGINT, SAMPLEAPPROVEDBY_ID BIGINT, SAMPLECOLLECTEDBY_ID BIGINT, SAMPLECOLLECTER_ID BIGINT, SAMPLEDEPARTMENT_ID BIGINT, SAMPLEGENERATEDBY_ID BIGINT, SAMPLEINSTITUTION_ID BIGINT, SAMPLEINTERFACEDBY_ID BIGINT, SAMPLERECOLLECTEDBY_ID BIGINT, SAMPLEREJECTEDBY_ID BIGINT, SAMPLEREPEATEDBY_ID BIGINT, SAMPLERESENTBY_ID BIGINT, SAMPLEREVERTEDBY_ID BIGINT, SAMPLESENTBY_ID BIGINT, SAMPLETRANSPORTEDTOLABBYSTAFF_ID BIGINT, BILLITEM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE TEMPLATECOMPONENT (ID BIGINT NOT NULL, DESCRIPTION LONGTEXT, NAME VARCHAR(255), TYPE VARCHAR(255), PARENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE APPEMAIL (ID BIGINT NOT NULL, ATTACHMENT1 VARCHAR(255), ATTACHMENT2 VARCHAR(255), ATTACHMENT3 VARCHAR(255), ATTACHMENT4 VARCHAR(255), CREATEDAT DATETIME, MESSAGEBODY LONGTEXT, MESSAGESUBJECT VARCHAR(255), MESSAGETYPE VARCHAR(255), PENDING TINYINT(1) default 0, RECEIPIENTEMAIL VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SENDEREMAIL VARCHAR(255), SENDERPASSWORD VARCHAR(255), SENDERUSERNAME VARCHAR(255), SENTAT DATE, SENTSUCCESSFULLY TINYINT(1) default 0, SMSTYPE VARCHAR(255), BILL_ID BIGINT, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, PATIENTINVESTIGATION_ID BIGINT, PATIENTREPORT_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE LOGINS (ID BIGINT NOT NULL, BROWSER VARCHAR(255), COMPUTERNAME VARCHAR(255), IPADDRESS VARCHAR(255), LOGEDAT DATETIME, LOGOUTAT DATETIME, OPERATINGSYSTEM VARCHAR(255), SCREENRESOLUTION VARCHAR(255), DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DRAWERENTRY (ID BIGINT NOT NULL, AFTERBALANCE DOUBLE, AFTERINHANDVALUE DOUBLE, AFTERSHORTAGEEXCESS DOUBLE, BEFOREBALANCE DOUBLE, BEFOREINHANDVALUE DOUBLE, BEFORESHORTAGEEXCESS DOUBLE, CREATEDAT DATETIME, PAYMENTMETHOD VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TRANSACTIONVALUE DOUBLE, BILL_ID BIGINT, CREATER_ID BIGINT, DRAWER_ID BIGINT, PAYMENT_ID BIGINT, RETIRER_ID BIGINT, WEBUSER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STOCK (ID BIGINT NOT NULL, BARCODE VARCHAR(255), CODE VARCHAR(255), DATEOFEXPIRE DATE, ENDBARCODE BIGINT, ITEMNAME VARCHAR(255), LONGCODE BIGINT, RETAILSALERATE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, STARTBARCODE BIGINT, STOCK DOUBLE, STOCKLOCATOR VARCHAR(255), DEPARTMENT_ID BIGINT, ITEMBATCH_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STOCKHISTORY (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATETIME, HISTORYTYPE VARCHAR(255), HXDATE INTEGER, HXMONTH INTEGER, HXWEEK INTEGER, HXYEAR BIGINT, INSTITUTIONITEMSTOCK DOUBLE, INSTITUTIONITEMSTOCKVALUEATPURCHASERATE DOUBLE, INSTITUTIONITEMSTOCKVALUEATSALERATE DOUBLE, ITEMSTOCK DOUBLE, ITEMSTOCKVALUEATPURCHASERATE DOUBLE, ITEMSTOCKVALUEATSALERATE DOUBLE, PURCHASERATE DOUBLE, RETAILRATE DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, STOCKAT DATE, STOCKPURCHASEVALUE DOUBLE, STOCKQTY DOUBLE, STOCKSALEVALUE DOUBLE, TODATE DATETIME, TOTALITEMSTOCK DOUBLE, TOTALITEMSTOCKVALUEATPURCHASERATE DOUBLE, TOTALITEMSTOCKVALUEATSALERATE DOUBLE, WHOLESALERATE DOUBLE, CREATER_ID BIGINT, DEPARTMENT_ID BIGINT, INSTITUTION_ID BIGINT, ITEM_ID BIGINT, ITEMBATCH_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PBITEM_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE WEBCONTENT (ID BIGINT NOT NULL, ENGLISH LONGTEXT, LONGCONTEXT LONGTEXT, NAME VARCHAR(255), ORDERNO DOUBLE, RETIRED TINYINT(1) default 0, SHORTCONTEXT VARCHAR(255), SINHALA LONGTEXT, TAMIL LONGTEXT, TYPE INTEGER, PARENT_ID BIGINT, WEBLANGUAGE_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ITEMFORITEM (ID BIGINT NOT NULL, CREATEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CHILDITEM_ID BIGINT, CREATER_ID BIGINT, PARENTITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFPAYSHEETCOMPONENT (ID BIGINT NOT NULL, ACCOUNTNO VARCHAR(255), CHEQUEDATE DATETIME, CHEQUENUMBER VARCHAR(255), CHEQUEPAIDDATE DATETIME, COMMENT VARCHAR(255), COMPLETED TINYINT(1) default 0, COMPLETEDAT DATETIME, CREATEDAT DATETIME, CREATEDVALUE DOUBLE, DATEAFFECTFROM DATE, DBLVALUE DOUBLE, FROMDATE DATE, LASTEDITEDAT DATETIME, LOANFULLAMOUNT DOUBLE, LOANNO VARCHAR(255), MODIFIEDVALUE DOUBLE, NUMBEROFINSTALLMENT DOUBLE, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SHEDULEFORPAID TINYINT(1) default 0, STAFFPAYSHEETCOMPONENTVALUE DOUBLE, STARTINGBALANCE DOUBLE, TODATE DATE, BANKBRANCH_ID BIGINT, CHEQUEBANK_ID BIGINT, CHEQUEPAIDBY_ID BIGINT, COMPLETER_ID BIGINT, CREATER_ID BIGINT, LASTEDITOR_ID BIGINT, PAYSHEETCOMPONENT_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE DOCTORINSTITUTION (ID BIGINT NOT NULL, BOOLEANVALUE TINYINT(1) default 0, CREATEDAT DATETIME, EDITEDAT DATETIME, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, DOCTOR_ID BIGINT, EDITER_ID BIGINT, INSTITUTION_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PERSONRELATIONSHIP (ID BIGINT NOT NULL, APTOBPRELATIONSHIP VARCHAR(255), CREATEDAT DATETIME, ORDERNO INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, APERSON_ID BIGINT, BPERSON_ID BIGINT, CREATER_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE INVESTIGATIONREPORTITEMVALUE (ID BIGINT NOT NULL, CREATEDAT DATETIME, NAME VARCHAR(255), ORDERNO INTEGER, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, CREATER_ID BIGINT, INVESTIGATIONITEM_ID BIGINT, RETIRER_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE ROSTER (ID BIGINT NOT NULL, CREATEDAT DATETIME, NAME VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SHIFTPERDAY INTEGER, STARTINGTIME TIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, DEPARTMENT_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE STAFFEMPLOYMENT (ID BIGINT NOT NULL, CREATEDAT DATETIME, FROMDATE DATETIME, LEAVINGCOMMENTS LONGTEXT, LEAVINGSTATUS VARCHAR(255), RECRUITCOMMENTS LONGTEXT, RECRUITSTATUS VARCHAR(255), RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, TODATE DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, STAFF_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE CASHTRANSACTIONHISTORY (ID BIGINT NOT NULL, CASHAT DATE, CASHBALLANCE DOUBLE, CHEQUEBALLANCE DOUBLE, CREATEDAT DATETIME, CREDITCARDBALLANCE DOUBLE, FROMDATE DATETIME, HISTORYTYPE VARCHAR(255), HXDATE INTEGER, HXMONTH INTEGER, HXWEEK INTEGER, HXYEAR BIGINT, RETIRECOMMENTS VARCHAR(255), RETIRED TINYINT(1) default 0, RETIREDAT DATETIME, SLIPBALLANCE DOUBLE, TODATE DATETIME, CREATER_ID BIGINT, RETIRER_ID BIGINT, CASHTRANSACTION_ID BIGINT, PRIMARY KEY (ID))
CREATE TABLE PRESCRIPTIONTEMPLATE_PRESCRIPTIONTEMPLATE (PrescriptionTemplate_ID BIGINT NOT NULL, items_ID BIGINT NOT NULL, PRIMARY KEY (PrescriptionTemplate_ID, items_ID))
ALTER TABLE TRIGGERSUBSCRIPTION ADD CONSTRAINT FK_TRIGGERSUBSCRIPTION_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE TRIGGERSUBSCRIPTION ADD CONSTRAINT FK_TRIGGERSUBSCRIPTION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE TRIGGERSUBSCRIPTION ADD CONSTRAINT FK_TRIGGERSUBSCRIPTION_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE TRIGGERSUBSCRIPTION ADD CONSTRAINT FK_TRIGGERSUBSCRIPTION_WEBUSERROLE_ID FOREIGN KEY (WEBUSERROLE_ID) REFERENCES WEBUSERROLE (ID)
ALTER TABLE TRIGGERSUBSCRIPTION ADD CONSTRAINT FK_TRIGGERSUBSCRIPTION_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE TRIGGERSUBSCRIPTION ADD CONSTRAINT FK_TRIGGERSUBSCRIPTION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STOCKBILL ADD CONSTRAINT FK_STOCKBILL_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE INVESTIGATIONVALIDATOR ADD CONSTRAINT FK_INVESTIGATIONVALIDATOR_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE INVESTIGATIONVALIDATOR ADD CONSTRAINT FK_INVESTIGATIONVALIDATOR_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE INVESTIGATIONVALIDATOR ADD CONSTRAINT FK_INVESTIGATIONVALIDATOR_EDITOR_ID FOREIGN KEY (EDITOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE INVESTIGATIONVALIDATOR ADD CONSTRAINT NVSTIGATIONVALIDATORNVSTIGATIONVALIDATECOMPONENTID FOREIGN KEY (INVESTIGATIONVALIDATECOMPONENT_ID) REFERENCES INVESTIGATIONVALIDATERCOMPONENT (ID)
ALTER TABLE INVESTIGATIONVALIDATOR ADD CONSTRAINT FK_INVESTIGATIONVALIDATOR_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLFINANCEDETAILS ADD CONSTRAINT FK_BILLFINANCEDETAILS_CREATEDBY_ID FOREIGN KEY (CREATEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CATEGORY ADD CONSTRAINT FK_CATEGORY_SPECIALITY_ID FOREIGN KEY (SPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE CATEGORY ADD CONSTRAINT FK_CATEGORY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CATEGORY ADD CONSTRAINT FK_CATEGORY_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CATEGORY ADD CONSTRAINT FK_CATEGORY_PAYMENTSCHEME_ID FOREIGN KEY (PAYMENTSCHEME_ID) REFERENCES PAYMENTSCHEME (ID)
ALTER TABLE CATEGORY ADD CONSTRAINT FK_CATEGORY_PARENTCATEGORY_ID FOREIGN KEY (PARENTCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE CATEGORY ADD CONSTRAINT FK_CATEGORY_ROOMFACILITYCHARGE_ID FOREIGN KEY (ROOMFACILITYCHARGE_ID) REFERENCES ROOMFACILITYCHARGE (ID)
ALTER TABLE CATEGORY ADD CONSTRAINT FK_CATEGORY_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE CATEGORY ADD CONSTRAINT FK_CATEGORY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_DOSAGEFORM_ID FOREIGN KEY (DOSAGEFORM_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_AFTERSESSION_ID FOREIGN KEY (AFTERSESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_FORDEPARTMENT_ID FOREIGN KEY (FORDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_REPORTITEM_ID FOREIGN KEY (REPORTITEM_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_BILLEDAS_ID FOREIGN KEY (BILLEDAS_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_MACHINE_ID FOREIGN KEY (MACHINE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_STRENGTHUNIT_ID FOREIGN KEY (STRENGTHUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_MANUFACTURER_ID FOREIGN KEY (MANUFACTURER_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_PACKUNIT_ID FOREIGN KEY (PACKUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_INVESTIGATIONTUBE_ID FOREIGN KEY (INVESTIGATIONTUBE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_ORIGINATINGSESSION_ID FOREIGN KEY (ORIGINATINGSESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_FINANCIALCATEGORY_ID FOREIGN KEY (FINANCIALCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_WORKSHEET_ID FOREIGN KEY (WORKSHEET_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_INVESTIGATIONCATEGORY_ID FOREIGN KEY (INVESTIGATIONCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_BASEUNIT_ID FOREIGN KEY (BASEUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_VMP_ID FOREIGN KEY (VMP_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_VTM_ID FOREIGN KEY (VTM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_PARENTITEM_ID FOREIGN KEY (PARENTITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_ISSUEUNIT_ID FOREIGN KEY (ISSUEUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_MINIMUMISSUEQUANTITYUNIT_ID FOREIGN KEY (MINIMUMISSUEQUANTITYUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_MEASUREMENTUNIT_ID FOREIGN KEY (MEASUREMENTUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_ATM_ID FOREIGN KEY (ATM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_REPORTEDAS_ID FOREIGN KEY (REPORTEDAS_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_ISSUEMULTIPLIESUNIT_ID FOREIGN KEY (ISSUEMULTIPLIESUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_AMP_ID FOREIGN KEY (AMP_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_REPORTFORMAT_ID FOREIGN KEY (REPORTFORMAT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_SAMPLE_ID FOREIGN KEY (SAMPLE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_FORINSTITUTION_ID FOREIGN KEY (FORINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_SESSIONNUMBERGENERATOR_ID FOREIGN KEY (SESSIONNUMBERGENERATOR_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_IMPORTER_ID FOREIGN KEY (IMPORTER_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_MASTERITEMREFERENCE_ID FOREIGN KEY (MASTERITEMREFERENCE_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_VMPP_ID FOREIGN KEY (VMPP_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEM ADD CONSTRAINT FK_ITEM_SPECIALITY_ID FOREIGN KEY (SPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE STOCKVARIENTBILLITEM ADD CONSTRAINT FK_STOCKVARIENTBILLITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STOCKVARIENTBILLITEM ADD CONSTRAINT STOCKVARIENTBILLITEMRFERENCESTOCKVARIANTBILLITEMID FOREIGN KEY (REFERENCESTOCKVARIANTBILLITEM_ID) REFERENCES STOCKVARIENTBILLITEM (ID)
ALTER TABLE STOCKVARIENTBILLITEM ADD CONSTRAINT FK_STOCKVARIENTBILLITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STOCKVARIENTBILLITEM ADD CONSTRAINT FK_STOCKVARIENTBILLITEM_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE STOCKVARIENTBILLITEM ADD CONSTRAINT FK_STOCKVARIENTBILLITEM_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE PATIENTDEPOSIT ADD CONSTRAINT FK_PATIENTDEPOSIT_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PATIENTDEPOSIT ADD CONSTRAINT FK_PATIENTDEPOSIT_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTDEPOSIT ADD CONSTRAINT FK_PATIENTDEPOSIT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTDEPOSIT ADD CONSTRAINT FK_PATIENTDEPOSIT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTDEPOSIT ADD CONSTRAINT FK_PATIENTDEPOSIT_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_EPFBANKBRANCH_ID FOREIGN KEY (EPFBANKBRANCH_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_HOLDUSER_ID FOREIGN KEY (HOLDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_BANKBRANCH_ID FOREIGN KEY (BANKBRANCH_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_HOLDPAIDBY_ID FOREIGN KEY (HOLDPAIDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_SALARYCYCLE_ID FOREIGN KEY (SALARYCYCLE_ID) REFERENCES SALARYCYCLE (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_BLOCKEDUSER_ID FOREIGN KEY (BLOCKEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARY ADD CONSTRAINT FK_STAFFSALARY_CHEQUEBANK_ID FOREIGN KEY (CHEQUEBANK_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT PAYMENTHANDOVERITEMHANDOVERCREATEDCOMPONANTBILL_ID FOREIGN KEY (HANDOVERCREATEDCOMPONANTBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT FK_PAYMENTHANDOVERITEM_HANDOVERSHIFTBILL_ID FOREIGN KEY (HANDOVERSHIFTBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT FK_PAYMENTHANDOVERITEM_HANDOVERACCEPTBILL_ID FOREIGN KEY (HANDOVERACCEPTBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT FK_PAYMENTHANDOVERITEM_PAYMENT_ID FOREIGN KEY (PAYMENT_ID) REFERENCES PAYMENT (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT FK_PAYMENTHANDOVERITEM_HANDOVERCREATEDBILL_ID FOREIGN KEY (HANDOVERCREATEDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT FK_PAYMENTHANDOVERITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT FK_PAYMENTHANDOVERITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT PAYMENTHANDOVERITEM_HANDOVERACCEPTCOMPONANTBILL_ID FOREIGN KEY (HANDOVERACCEPTCOMPONANTBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT PAYMENTHANDOVERITEM_HANDOVERSHIFTCOMPONANTBILL_ID FOREIGN KEY (HANDOVERSHIFTCOMPONANTBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENTHANDOVERITEM ADD CONSTRAINT FK_PAYMENTHANDOVERITEM_CURRENTHOLDER_ID FOREIGN KEY (CURRENTHOLDER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE APPOINTMENTACTIVITY ADD CONSTRAINT FK_APPOINTMENTACTIVITY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE APPOINTMENTACTIVITY ADD CONSTRAINT FK_APPOINTMENTACTIVITY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CANCELLEDPAYMENT_ID FOREIGN KEY (CANCELLEDPAYMENT_ID) REFERENCES PAYMENT (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_PAYMENTRECORDCOMPLETECOMPONANTBILL_ID FOREIGN KEY (PAYMENTRECORDCOMPLETECOMPONANTBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_TOSTAFF_ID FOREIGN KEY (TOSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CURRENTHOLDER_ID FOREIGN KEY (CURRENTHOLDER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CHEQUEPAIDBILL_ID FOREIGN KEY (CHEQUEPAIDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_PAYMENTRECORDCOMPLETEBILL_ID FOREIGN KEY (PAYMENTRECORDCOMPLETEBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_PAYMENTRECORDCREATEBILL_ID FOREIGN KEY (PAYMENTRECORDCREATEBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CREDITCOMPANY_ID FOREIGN KEY (CREDITCOMPANY_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_BANK_ID FOREIGN KEY (BANK_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CHEQUEREALIZER_ID FOREIGN KEY (CHEQUEREALIZER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_PAYMENTRECORDCREATECOMPONANTBILL_ID FOREIGN KEY (PAYMENTRECORDCREATECOMPONANTBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CANCELLEDBY_ID FOREIGN KEY (CANCELLEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_FROMINSTITUTION_ID FOREIGN KEY (FROMINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CHEQUEPAYER_ID FOREIGN KEY (CHEQUEPAYER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_REALIZER_ID FOREIGN KEY (REALIZER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_REFERANCEPAYMENT_ID FOREIGN KEY (REFERANCEPAYMENT_ID) REFERENCES PAYMENT (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CASHBOOKENTRY_ID FOREIGN KEY (CASHBOOKENTRY_ID) REFERENCES CASHBOOKENTRY (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CANCELLEDBILL_ID FOREIGN KEY (CANCELLEDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CASHBOOK_ID FOREIGN KEY (CASHBOOK_ID) REFERENCES CASHBOOK (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_CHEQUEREALIZEDBILL_ID FOREIGN KEY (CHEQUEREALIZEDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PAYMENT ADD CONSTRAINT FK_PAYMENT_TOINSTITUTION_ID FOREIGN KEY (TOINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE FEECHANGE ADD CONSTRAINT FK_FEECHANGE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FEECHANGE ADD CONSTRAINT FK_FEECHANGE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FEECHANGE ADD CONSTRAINT FK_FEECHANGE_FEE_ID FOREIGN KEY (FEE_ID) REFERENCES FEE (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_VALUEHEADER_ID FOREIGN KEY (VALUEHEADER_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_COMMENTLABEL_ID FOREIGN KEY (COMMENTLABEL_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_MACHINE_ID FOREIGN KEY (MACHINE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_SAMPLE_ID FOREIGN KEY (SAMPLE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_TESTLABEL_ID FOREIGN KEY (TESTLABEL_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_FLAGVALUE_ID FOREIGN KEY (FLAGVALUE_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_REFERRINGCATEGORY_ID FOREIGN KEY (REFERRINGCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_TESTHEADER_ID FOREIGN KEY (TESTHEADER_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_UNITHEADER_ID FOREIGN KEY (UNITHEADER_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_INVESTIGATIONCOMPONENT_ID FOREIGN KEY (INVESTIGATIONCOMPONENT_ID) REFERENCES INVESTIGATIONCOMPONENT (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_SAMPLECOMPONENT_ID FOREIGN KEY (SAMPLECOMPONENT_ID) REFERENCES ITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_UNITLABEL_ID FOREIGN KEY (UNITLABEL_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_TUBE_ID FOREIGN KEY (TUBE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_REFERENCEHEADER_ID FOREIGN KEY (REFERENCEHEADER_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_TEST_ID FOREIGN KEY (TEST_ID) REFERENCES ITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_REFERENCELABEL_ID FOREIGN KEY (REFERENCELABEL_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_REFERRINGITEM_ID FOREIGN KEY (REFERRINGITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE REPORTITEM ADD CONSTRAINT FK_REPORTITEM_VALUEVALUE_ID FOREIGN KEY (VALUEVALUE_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE USERPREFERENCE ADD CONSTRAINT FK_USERPREFERENCE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE USERPREFERENCE ADD CONSTRAINT FK_USERPREFERENCE_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERPREFERENCE ADD CONSTRAINT FK_USERPREFERENCE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PACKAGEITEM ADD CONSTRAINT FK_PACKAGEITEM_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PACKAGEITEM ADD CONSTRAINT FK_PACKAGEITEM_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PACKAGEITEM ADD CONSTRAINT FK_PACKAGEITEM_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PACKAGEITEM ADD CONSTRAINT FK_PACKAGEITEM_PACKEGE_ID FOREIGN KEY (PACKEGE_ID) REFERENCES ITEM (ID)
ALTER TABLE PACKAGEITEM ADD CONSTRAINT FK_PACKAGEITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PACKAGEITEM ADD CONSTRAINT FK_PACKAGEITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFEMPLOYEESTATUS ADD CONSTRAINT FK_STAFFEMPLOYEESTATUS_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFEMPLOYEESTATUS ADD CONSTRAINT FK_STAFFEMPLOYEESTATUS_STAFFEMPLOYMENT_ID FOREIGN KEY (STAFFEMPLOYMENT_ID) REFERENCES STAFFEMPLOYMENT (ID)
ALTER TABLE STAFFEMPLOYEESTATUS ADD CONSTRAINT FK_STAFFEMPLOYEESTATUS_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_BANK_ID FOREIGN KEY (BANK_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BANKACCOUNT ADD CONSTRAINT FK_BANKACCOUNT_BANKBRANCH_ID FOREIGN KEY (BANKBRANCH_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE WEBUSERDEPARTMENT ADD CONSTRAINT FK_WEBUSERDEPARTMENT_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE WEBUSERDEPARTMENT ADD CONSTRAINT FK_WEBUSERDEPARTMENT_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERDEPARTMENT ADD CONSTRAINT FK_WEBUSERDEPARTMENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERDEPARTMENT ADD CONSTRAINT FK_WEBUSERDEPARTMENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_CHILDENCOUNTER_ID FOREIGN KEY (CHILDENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_BILLFEE_ID FOREIGN KEY (BILLFEE_ID) REFERENCES BILLFEE (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE ENCOUNTERCOMPONENT ADD CONSTRAINT FK_ENCOUNTERCOMPONENT_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE VIRTUALPRODUCTINGREDIENT ADD CONSTRAINT FK_VIRTUALPRODUCTINGREDIENT_VTM_ID FOREIGN KEY (VTM_ID) REFERENCES ITEM (ID)
ALTER TABLE VIRTUALPRODUCTINGREDIENT ADD CONSTRAINT FK_VIRTUALPRODUCTINGREDIENT_STRENGTHUNIT_ID FOREIGN KEY (STRENGTHUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE VIRTUALPRODUCTINGREDIENT ADD CONSTRAINT FK_VIRTUALPRODUCTINGREDIENT_VMP_ID FOREIGN KEY (VMP_ID) REFERENCES ITEM (ID)
ALTER TABLE VIRTUALPRODUCTINGREDIENT ADD CONSTRAINT VRTUALPRODUCTINGREDIENTPHRMACEUTICALITEMCATEGORYID FOREIGN KEY (PHARMACEUTICALITEMCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE VIRTUALPRODUCTINGREDIENT ADD CONSTRAINT VIRTUALPRODUCTINGREDIENTBASISOFSTRENGTHSUBSTANCEID FOREIGN KEY (BASISOFSTRENGTHSUBSTANCE_ID) REFERENCES ITEM (ID)
ALTER TABLE VIRTUALPRODUCTINGREDIENT ADD CONSTRAINT FK_VIRTUALPRODUCTINGREDIENT_INGREDIENTSUBSTANCE_ID FOREIGN KEY (INGREDIENTSUBSTANCE_ID) REFERENCES ITEM (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_ISSUEUNIT_ID FOREIGN KEY (ISSUEUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_ENCOUNTER_ID FOREIGN KEY (ENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_DOSEUNIT_ID FOREIGN KEY (DOSEUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_FREQUENCYUNIT_ID FOREIGN KEY (FREQUENCYUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES PRESCRIPTION (ID)
ALTER TABLE PRESCRIPTION ADD CONSTRAINT FK_PRESCRIPTION_DURATIONUNIT_ID FOREIGN KEY (DURATIONUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_MEMBERSHIPSCHEME_ID FOREIGN KEY (MEMBERSHIPSCHEME_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_ADMISSIONTYPE_ID FOREIGN KEY (ADMISSIONTYPE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_ROOMLOCATION_ID FOREIGN KEY (ROOMLOCATION_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_TOINSTITUTION_ID FOREIGN KEY (TOINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_PAYMENTSCHEME_ID FOREIGN KEY (PAYMENTSCHEME_ID) REFERENCES PAYMENTSCHEME (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PRICEMATRIX ADD CONSTRAINT FK_PRICEMATRIX_ROOMCATEGORY_ID FOREIGN KEY (ROOMCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE RESERVATION ADD CONSTRAINT FK_RESERVATION_ROOM_ID FOREIGN KEY (ROOM_ID) REFERENCES ROOMFACILITYCHARGE (ID)
ALTER TABLE RESERVATION ADD CONSTRAINT FK_RESERVATION_APPOINTMENT_ID FOREIGN KEY (APPOINTMENT_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE RESERVATION ADD CONSTRAINT FK_RESERVATION_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE RESERVATION ADD CONSTRAINT FK_RESERVATION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE RESERVATION ADD CONSTRAINT FK_RESERVATION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYEETAXRANGE ADD CONSTRAINT FK_PAYEETAXRANGE_HRMVARIABLES_ID FOREIGN KEY (HRMVARIABLES_ID) REFERENCES HRMVARIABLES (ID)
ALTER TABLE PATIENTREPORTITEMVALUE ADD CONSTRAINT FK_PATIENTREPORTITEMVALUE_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PATIENTREPORTITEMVALUE ADD CONSTRAINT FK_PATIENTREPORTITEMVALUE_PATIENTREPORTGROUP_ID FOREIGN KEY (PATIENTREPORTGROUP_ID) REFERENCES PATIENTREPORTGROUP (ID)
ALTER TABLE PATIENTREPORTITEMVALUE ADD CONSTRAINT FK_PATIENTREPORTITEMVALUE_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE PATIENTREPORTITEMVALUE ADD CONSTRAINT FK_PATIENTREPORTITEMVALUE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORTITEMVALUE ADD CONSTRAINT FK_PATIENTREPORTITEMVALUE_INVESTIGATIONITEM_ID FOREIGN KEY (INVESTIGATIONITEM_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE PATIENTREPORTITEMVALUE ADD CONSTRAINT FK_PATIENTREPORTITEMVALUE_PATIENTREPORT_ID FOREIGN KEY (PATIENTREPORT_ID) REFERENCES PATIENTREPORT (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_FREQUENCYUNIT_ID FOREIGN KEY (FREQUENCYUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_ISSUEUNIT_ID FOREIGN KEY (ISSUEUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES PRESCRIPTIONTEMPLATE (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_DOSEUNIT_ID FOREIGN KEY (DOSEUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_FORINSTITUTION_ID FOREIGN KEY (FORINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_FORITEM_ID FOREIGN KEY (FORITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_DURATIONUNIT_ID FOREIGN KEY (DURATIONUNIT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_FORDEPARTMENT_ID FOREIGN KEY (FORDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PRESCRIPTIONTEMPLATE ADD CONSTRAINT FK_PRESCRIPTIONTEMPLATE_FORWEBUSER_ID FOREIGN KEY (FORWEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ANALYZERMESSAGE ADD CONSTRAINT FK_ANALYZERMESSAGE_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ANALYZERMESSAGE ADD CONSTRAINT FK_ANALYZERMESSAGE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE AGENTSFEES ADD CONSTRAINT FK_AGENTSFEES_FEE_ID FOREIGN KEY (FEE_ID) REFERENCES FEE (ID)
ALTER TABLE AGENTSFEES ADD CONSTRAINT FK_AGENTSFEES_SERVICESESSION_ID FOREIGN KEY (SERVICESESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE AGENTSFEES ADD CONSTRAINT FK_AGENTSFEES_AGENT_ID FOREIGN KEY (AGENT_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE INVESTIGATIONVALIDATERCOMPONENT ADD CONSTRAINT FK_INVESTIGATIONVALIDATERCOMPONENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE INVESTIGATIONVALIDATERCOMPONENT ADD CONSTRAINT INVESTIGATIONVALIDATERCOMPONENTINVESTIGATIONITEMID FOREIGN KEY (INVESTIGATIONITEM_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE INVESTIGATIONVALIDATERCOMPONENT ADD CONSTRAINT FK_INVESTIGATIONVALIDATERCOMPONENT_EDITOR_ID FOREIGN KEY (EDITOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE INVESTIGATIONVALIDATERCOMPONENT ADD CONSTRAINT NVSTGATIONVALIDATERCOMPONENTNVSTIGATIONVALIDATORID FOREIGN KEY (INVESTIGATIONVALIDATOR_ID) REFERENCES INVESTIGATIONVALIDATOR (ID)
ALTER TABLE INVESTIGATIONVALIDATERCOMPONENT ADD CONSTRAINT FK_INVESTIGATIONVALIDATERCOMPONENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PAYMENTSCHEME_ID FOREIGN KEY (PAYMENTSCHEME_ID) REFERENCES PAYMENTSCHEME (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_APPROVEUSER_ID FOREIGN KEY (APPROVEUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_SINGLEBILLSESSION_ID FOREIGN KEY (SINGLEBILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_CREDITCOMPANY_ID FOREIGN KEY (CREDITCOMPANY_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_FROMWEBUSER_ID FOREIGN KEY (FROMWEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PAYMENTGENERATEDBY_ID FOREIGN KEY (PAYMENTGENERATEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_BILLPACKEGE_ID FOREIGN KEY (BILLPACKEGE_ID) REFERENCES ITEM (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_REFERREDBYINSTITUTION_ID FOREIGN KEY (REFERREDBYINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_TOINSTITUTION_ID FOREIGN KEY (TOINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_SINGLEBILLITEM_ID FOREIGN KEY (SINGLEBILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_FROMINSTITUTION_ID FOREIGN KEY (FROMINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_CANCELLEDBILL_ID FOREIGN KEY (CANCELLEDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_FROMSTAFF_ID FOREIGN KEY (FROMSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_REFERENCEINSTITUTION_ID FOREIGN KEY (REFERENCEINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_FORWARDREFERENCEBILL_ID FOREIGN KEY (FORWARDREFERENCEBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_REFERENCEBILL_ID FOREIGN KEY (REFERENCEBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_CHECKEDBY_ID FOREIGN KEY (CHECKEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PERSON_ID FOREIGN KEY (PERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_BANKACCOUNT_ID FOREIGN KEY (BANKACCOUNT_ID) REFERENCES BANKACCOUNT (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_CASHTRANSACTION_ID FOREIGN KEY (CASHTRANSACTION_ID) REFERENCES CASHTRANSACTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_BILLEDBILL_ID FOREIGN KEY (BILLEDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PROCEDURE_ID FOREIGN KEY (PROCEDURE_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PAYMENTCOMPLETEDBY_ID FOREIGN KEY (PAYMENTCOMPLETEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_REACTIVATEDBILL_ID FOREIGN KEY (REACTIVATEDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_FROMDEPARTMENT_ID FOREIGN KEY (FROMDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_BILLFINANCEDETAILS_ID FOREIGN KEY (BILLFINANCEDETAILS_ID) REFERENCES BILLFINANCEDETAILS (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_BACKWARDREFERENCEBILL_ID FOREIGN KEY (BACKWARDREFERENCEBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_ONLINEBOOKING_ID FOREIGN KEY (ONLINEBOOKING_ID) REFERENCES ONLINEBOOKING (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_REFUNDEDBILL_ID FOREIGN KEY (REFUNDEDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_STOCKBILL_ID FOREIGN KEY (STOCKBILL_ID) REFERENCES STOCKBILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_MEMBERSHIPSCHEME_ID FOREIGN KEY (MEMBERSHIPSCHEME_ID) REFERENCES CATEGORY (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PAYMENTAPPROVEDBY_ID FOREIGN KEY (PAYMENTAPPROVEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PAYMENTSCHEMEINSTITUTION_ID FOREIGN KEY (PAYMENTSCHEMEINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_COLLECTINGCENTRE_ID FOREIGN KEY (COLLECTINGCENTRE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_EDITOR_ID FOREIGN KEY (EDITOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PAIDBILL_ID FOREIGN KEY (PAIDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PHARMACYBILL_ID FOREIGN KEY (PHARMACYBILL_ID) REFERENCES PHARMACYBILL (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_REFERRINGDEPARTMENT_ID FOREIGN KEY (REFERRINGDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_TOWEBUSER_ID FOREIGN KEY (TOWEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_SMSEDUSER_ID FOREIGN KEY (SMSEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_COMPLETEDBY_ID FOREIGN KEY (COMPLETEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_REFERREDBY_ID FOREIGN KEY (REFERREDBY_ID) REFERENCES STAFF (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_DUPLICATEPRINTEDUSER_ID FOREIGN KEY (DUPLICATEPRINTEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_TOSTAFF_ID FOREIGN KEY (TOSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_BANK_ID FOREIGN KEY (BANK_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILL ADD CONSTRAINT FK_BILL_PRINTEDUSER_ID FOREIGN KEY (PRINTEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FEEVALUE ADD CONSTRAINT FK_FEEVALUE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE FEEVALUE ADD CONSTRAINT FK_FEEVALUE_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE FEEVALUE ADD CONSTRAINT FK_FEEVALUE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FEEVALUE ADD CONSTRAINT FK_FEEVALUE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE FEEVALUE ADD CONSTRAINT FK_FEEVALUE_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE FEEVALUE ADD CONSTRAINT FK_FEEVALUE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PHARMACEUTICALBILLITEM ADD CONSTRAINT FK_PHARMACEUTICALBILLITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PHARMACEUTICALBILLITEM ADD CONSTRAINT FK_PHARMACEUTICALBILLITEM_MANUFACTURER_ID FOREIGN KEY (MANUFACTURER_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PHARMACEUTICALBILLITEM ADD CONSTRAINT FK_PHARMACEUTICALBILLITEM_ITEMBATCH_ID FOREIGN KEY (ITEMBATCH_ID) REFERENCES ITEMBATCH (ID)
ALTER TABLE PHARMACEUTICALBILLITEM ADD CONSTRAINT FK_PHARMACEUTICALBILLITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PHARMACEUTICALBILLITEM ADD CONSTRAINT FK_PHARMACEUTICALBILLITEM_STOCK_ID FOREIGN KEY (STOCK_ID) REFERENCES STOCK (ID)
ALTER TABLE PHARMACEUTICALBILLITEM ADD CONSTRAINT FK_PHARMACEUTICALBILLITEM_MAKE_ID FOREIGN KEY (MAKE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PHARMACEUTICALBILLITEM ADD CONSTRAINT FK_PHARMACEUTICALBILLITEM_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE PHARMACEUTICALBILLITEM ADD CONSTRAINT FK_PHARMACEUTICALBILLITEM_STAFFSTOCK_ID FOREIGN KEY (STAFFSTOCK_ID) REFERENCES STOCK (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_LABDEPARTMENT_ID FOREIGN KEY (LABDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_LABINSTITUTION_ID FOREIGN KEY (LABINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_SITE_ID FOREIGN KEY (SITE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_SAMPLEINSTITUTION_ID FOREIGN KEY (SAMPLEINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_SAMPLEDEPARTMENT_ID FOREIGN KEY (SAMPLEDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE DEPARTMENT ADD CONSTRAINT FK_DEPARTMENT_SUPERDEPARTMENT_ID FOREIGN KEY (SUPERDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PRICE ADD CONSTRAINT FK_PRICE_ITEMBATCH_ID FOREIGN KEY (ITEMBATCH_ID) REFERENCES ITEMBATCH (ID)
ALTER TABLE PRICE ADD CONSTRAINT FK_PRICE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PRICE ADD CONSTRAINT FK_PRICE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE SHIFT ADD CONSTRAINT FK_SHIFT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SHIFT ADD CONSTRAINT FK_SHIFT_PREVIOUSSHIFT_ID FOREIGN KEY (PREVIOUSSHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE SHIFT ADD CONSTRAINT FK_SHIFT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SHIFT ADD CONSTRAINT FK_SHIFT_NEXTSHIFT_ID FOREIGN KEY (NEXTSHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE SHIFT ADD CONSTRAINT FK_SHIFT_ROSTER_ID FOREIGN KEY (ROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE SHIFT ADD CONSTRAINT FK_SHIFT_SHIFTPREFERENCE_ID FOREIGN KEY (SHIFTPREFERENCE_ID) REFERENCES SHIFTPREFERENCE (ID)
ALTER TABLE SHIFT ADD CONSTRAINT FK_SHIFT_SHIFT_ID FOREIGN KEY (SHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE SHIFTAMENDMENT ADD CONSTRAINT FK_SHIFTAMENDMENT_TOSHIFT_ID FOREIGN KEY (TOSHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE SHIFTAMENDMENT ADD CONSTRAINT FK_SHIFTAMENDMENT_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE SHIFTAMENDMENT ADD CONSTRAINT FK_SHIFTAMENDMENT_APPROVED_ID FOREIGN KEY (APPROVED_ID) REFERENCES STAFF (ID)
ALTER TABLE SHIFTAMENDMENT ADD CONSTRAINT FK_SHIFTAMENDMENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SHIFTAMENDMENT ADD CONSTRAINT FK_SHIFTAMENDMENT_REFERENCESHIFTAMENDMENT_ID FOREIGN KEY (REFERENCESHIFTAMENDMENT_ID) REFERENCES SHIFTAMENDMENT (ID)
ALTER TABLE SHIFTAMENDMENT ADD CONSTRAINT FK_SHIFTAMENDMENT_FROMSHIFT_ID FOREIGN KEY (FROMSHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE SHIFTAMENDMENT ADD CONSTRAINT FK_SHIFTAMENDMENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE HISTORICALRECORD ADD CONSTRAINT FK_HISTORICALRECORD_SITE_ID FOREIGN KEY (SITE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE HISTORICALRECORD ADD CONSTRAINT FK_HISTORICALRECORD_COLLECTIONCENTRE_ID FOREIGN KEY (COLLECTIONCENTRE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE HISTORICALRECORD ADD CONSTRAINT FK_HISTORICALRECORD_CREATEDBY_ID FOREIGN KEY (CREATEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE HISTORICALRECORD ADD CONSTRAINT FK_HISTORICALRECORD_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE HISTORICALRECORD ADD CONSTRAINT FK_HISTORICALRECORD_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE HISTORICALRECORD ADD CONSTRAINT FK_HISTORICALRECORD_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE HISTORICALRECORD ADD CONSTRAINT FK_HISTORICALRECORD_RETIREDBY_ID FOREIGN KEY (RETIREDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_GRADE_ID FOREIGN KEY (GRADE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_EPFBANKBRANCH_ID FOREIGN KEY (EPFBANKBRANCH_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_STAFFCATEGORY_ID FOREIGN KEY (STAFFCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_WORKINGDEPARTMENT_ID FOREIGN KEY (WORKINGDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_DESIGNATION_ID FOREIGN KEY (DESIGNATION_ID) REFERENCES CATEGORY (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_PERSON_ID FOREIGN KEY (PERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_SPECIALITY_ID FOREIGN KEY (SPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_BANKBRANCH_ID FOREIGN KEY (BANKBRANCH_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_ROSTER_ID FOREIGN KEY (ROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE STAFF ADD CONSTRAINT FK_STAFF_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_SHIFT_ID FOREIGN KEY (SHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_EDITOR_ID FOREIGN KEY (EDITOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_FROMSTAFF_ID FOREIGN KEY (FROMSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_TOSTAFFSHIFT_ID FOREIGN KEY (TOSTAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_FROMROSTER_ID FOREIGN KEY (FROMROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_FROMSTAFFSHIFTSECOND_ID FOREIGN KEY (FROMSTAFFSHIFTSECOND_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_TOROSTER_ID FOREIGN KEY (TOROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_FROMSTAFFSHIFT_ID FOREIGN KEY (FROMSTAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_TOSHIFTSECOND_ID FOREIGN KEY (TOSHIFTSECOND_ID) REFERENCES SHIFT (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_STAFFSHIFT_ID FOREIGN KEY (STAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_TOSHIFT_ID FOREIGN KEY (TOSHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_APPROVEDSTAFF_ID FOREIGN KEY (APPROVEDSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_TOSTAFFSHIFTSECOND_ID FOREIGN KEY (TOSTAFFSHIFTSECOND_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_TOSTAFF_ID FOREIGN KEY (TOSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FORM ADD CONSTRAINT FK_FORM_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE WEBUSERROLEPRIVILEGE ADD CONSTRAINT FK_WEBUSERROLEPRIVILEGE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROLEPRIVILEGE ADD CONSTRAINT FK_WEBUSERROLEPRIVILEGE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE WEBUSERROLEPRIVILEGE ADD CONSTRAINT FK_WEBUSERROLEPRIVILEGE_WEBUSERROLE_ID FOREIGN KEY (WEBUSERROLE_ID) REFERENCES WEBUSERROLE (ID)
ALTER TABLE WEBUSERROLEPRIVILEGE ADD CONSTRAINT FK_WEBUSERROLEPRIVILEGE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_FROMDEPARTMENT_ID FOREIGN KEY (FROMDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_TOSITE_ID FOREIGN KEY (TOSITE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_PAYMENT_ID FOREIGN KEY (PAYMENT_ID) REFERENCES PAYMENT (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_FROMSITE_ID FOREIGN KEY (FROMSITE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_FROMINSTITUTION_ID FOREIGN KEY (FROMINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_CASHBOOK_ID FOREIGN KEY (CASHBOOK_ID) REFERENCES CASHBOOK (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_TOINSTITUTION_ID FOREIGN KEY (TOINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_SITE_ID FOREIGN KEY (SITE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHBOOKENTRY ADD CONSTRAINT FK_CASHBOOKENTRY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERPRIVILEGE ADD CONSTRAINT FK_WEBUSERPRIVILEGE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERPRIVILEGE ADD CONSTRAINT FK_WEBUSERPRIVILEGE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERPRIVILEGE ADD CONSTRAINT FK_WEBUSERPRIVILEGE_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERPRIVILEGE ADD CONSTRAINT FK_WEBUSERPRIVILEGE_WEBUSERROLE_ID FOREIGN KEY (WEBUSERROLE_ID) REFERENCES WEBUSERROLE (ID)
ALTER TABLE WEBUSERPRIVILEGE ADD CONSTRAINT FK_WEBUSERPRIVILEGE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PHDATE ADD CONSTRAINT FK_PHDATE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PHDATE ADD CONSTRAINT FK_PHDATE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_NEXTSTAFFSHIFT_ID FOREIGN KEY (NEXTSTAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_ENDRECORD_ID FOREIGN KEY (ENDRECORD_ID) REFERENCES FINGERPRINTRECORD (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_SHIFT_ID FOREIGN KEY (SHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_STAFFSALARY_ID FOREIGN KEY (STAFFSALARY_ID) REFERENCES STAFFSALARY (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_STARTRECORD_ID FOREIGN KEY (STARTRECORD_ID) REFERENCES FINGERPRINTRECORD (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_ROSTER_ID FOREIGN KEY (ROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_REFERENCESTAFFSHIFTEARLYOUT_ID FOREIGN KEY (REFERENCESTAFFSHIFTEARLYOUT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_LEAVEFORM_ID FOREIGN KEY (LEAVEFORM_ID) REFERENCES FORM (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_AMENDMENTFORM_ID FOREIGN KEY (AMENDMENTFORM_ID) REFERENCES FORM (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_REFERENCESTAFFSHIFT_ID FOREIGN KEY (REFERENCESTAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_ADDITIONALFORM_ID FOREIGN KEY (ADDITIONALFORM_ID) REFERENCES FORM (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_REFERENCESTAFFSHIFTLATEIN_ID FOREIGN KEY (REFERENCESTAFFSHIFTLATEIN_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE STAFFSHIFT ADD CONSTRAINT FK_STAFFSHIFT_PREVIOUSSTAFFSHIFT_ID FOREIGN KEY (PREVIOUSSTAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_CANCELLEDBY_ID FOREIGN KEY (CANCELLEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_PROCESSDEFINITION_ID FOREIGN KEY (PROCESSDEFINITION_ID) REFERENCES PROCESSDEFINITION (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_PAUSEDBY_ID FOREIGN KEY (PAUSEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_COMPLETEDBY_ID FOREIGN KEY (COMPLETEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_REJECTEDBY_ID FOREIGN KEY (REJECTEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSINSTANCE ADD CONSTRAINT FK_PROCESSINSTANCE_CREATOR_ID FOREIGN KEY (CREATOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE REPORTTEMPLATE ADD CONSTRAINT FK_REPORTTEMPLATE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE REPORTTEMPLATE ADD CONSTRAINT FK_REPORTTEMPLATE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE REPORTTEMPLATE ADD CONSTRAINT FK_REPORTTEMPLATE_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES REPORTTEMPLATE (ID)
ALTER TABLE REPORTTEMPLATE ADD CONSTRAINT FK_REPORTTEMPLATE_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PROCESSSTEPACTIONDEFINITION ADD CONSTRAINT FK_PROCESSSTEPACTIONDEFINITION_CREATOR_ID FOREIGN KEY (CREATOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSSTEPACTIONDEFINITION ADD CONSTRAINT PRCSSSTPCTIONDEFINITIONDRCTDPRCESSSTEPDEFINITIONID FOREIGN KEY (DIRECTEDPROCESSSTEPDEFINITION_ID) REFERENCES PROCESSSTEPDEFINITION (ID)
ALTER TABLE PROCESSSTEPACTIONDEFINITION ADD CONSTRAINT PROCESSSTEPACTIONDEFINITIONPROCESSSTEPDEFINITIONID FOREIGN KEY (PROCESSSTEPDEFINITION_ID) REFERENCES PROCESSSTEPDEFINITION (ID)
ALTER TABLE PROCESSSTEPACTIONDEFINITION ADD CONSTRAINT FK_PROCESSSTEPACTIONDEFINITION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSSTEPACTIONDEFINITION ADD CONSTRAINT FK_PROCESSSTEPACTIONDEFINITION_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES PROCESSSTEPACTIONDEFINITION (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_REQUESTEDTODEPARTMENT_ID FOREIGN KEY (REQUESTEDTODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_PEFORMEDDEPARTMENT_ID FOREIGN KEY (PEFORMEDDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_REQUESTEDFROMDEPARTMENT_ID FOREIGN KEY (REQUESTEDFROMDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_PARENTBILLITEM_ID FOREIGN KEY (PARENTBILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_EXPENSEBILL_ID FOREIGN KEY (EXPENSEBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_PAIDFORBILLFEE_ID FOREIGN KEY (PAIDFORBILLFEE_ID) REFERENCES BILLFEE (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_BILLITEMFINANCEDETAILS_ID FOREIGN KEY (BILLITEMFINANCEDETAILS_ID) REFERENCES BILLITEMFINANCEDETAILS (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_PRESCRIPTION_ID FOREIGN KEY (PRESCRIPTION_ID) REFERENCES PRESCRIPTION (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_REFERENCEBILL_ID FOREIGN KEY (REFERENCEBILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_PRICEMATRIX_ID FOREIGN KEY (PRICEMATRIX_ID) REFERENCES PRICEMATRIX (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_EDITOR_ID FOREIGN KEY (EDITOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLITEM ADD CONSTRAINT FK_BILLITEM_REFERANCEBILLITEM_ID FOREIGN KEY (REFERANCEBILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_REFERENCEBILLFEE_ID FOREIGN KEY (REFERENCEBILLFEE_ID) REFERENCES BILLFEE (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_REFERENCEPATIENTROOM_ID FOREIGN KEY (REFERENCEPATIENTROOM_ID) REFERENCES PATIENTROOM (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_CHILDENCOUNTER_ID FOREIGN KEY (CHILDENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_REFERENCEBILLITEM_ID FOREIGN KEY (REFERENCEBILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_SPECIALITY_ID FOREIGN KEY (SPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_PATIENENCOUNTER_ID FOREIGN KEY (PATIENENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_EDITOR_ID FOREIGN KEY (EDITOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_PRICEMATRIX_ID FOREIGN KEY (PRICEMATRIX_ID) REFERENCES PRICEMATRIX (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_PATIENTITEM_ID FOREIGN KEY (PATIENTITEM_ID) REFERENCES PATIENTITEM (ID)
ALTER TABLE BILLFEE ADD CONSTRAINT FK_BILLFEE_FEE_ID FOREIGN KEY (FEE_ID) REFERENCES FEE (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_SAMPLEINSTITUTION_ID FOREIGN KEY (SAMPLEINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_SAMPLECOLLECTER_ID FOREIGN KEY (SAMPLECOLLECTER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_SAMPLE_ID FOREIGN KEY (SAMPLE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_PATIENTSAMPLE_ID FOREIGN KEY (PATIENTSAMPLE_ID) REFERENCES PATIENTSAMPLE (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_CANCELLEDUSER_ID FOREIGN KEY (CANCELLEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT PATIENTSAMPLECOMPONANT_INVESTIGATIONCOMPONANT_ID FOREIGN KEY (INVESTIGATIONCOMPONANT_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_MACHINE_ID FOREIGN KEY (MACHINE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_TUBE_ID FOREIGN KEY (TUBE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_CANCELLINSTITUTION_ID FOREIGN KEY (CANCELLINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_PATIENTINVESTIGATION_ID FOREIGN KEY (PATIENTINVESTIGATION_ID) REFERENCES PATIENTINVESTIGATION (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_SAMPLEDEPARTMENT_ID FOREIGN KEY (SAMPLEDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_TEST_ID FOREIGN KEY (TEST_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTSAMPLECOMPONANT ADD CONSTRAINT FK_PATIENTSAMPLECOMPONANT_CANCELLDEPARTMENT_ID FOREIGN KEY (CANCELLDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_FROMSPECIALITY_ID FOREIGN KEY (FROMSPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_FROMSTAFF_ID FOREIGN KEY (FROMSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_FROMINSTITUTION_ID FOREIGN KEY (FROMINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_PACKEGE_ID FOREIGN KEY (PACKEGE_ID) REFERENCES ITEM (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_SPECIALITY_ID FOREIGN KEY (SPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_FROMDEPARTMENT_ID FOREIGN KEY (FROMDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_TOSPACIALITY_ID FOREIGN KEY (TOSPACIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_TOSTAFF_ID FOREIGN KEY (TOSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_SERVICESESSION_ID FOREIGN KEY (SERVICESESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_FORCATEGORY_ID FOREIGN KEY (FORCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_TOINSTITUTION_ID FOREIGN KEY (TOINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_SESSION_ID FOREIGN KEY (SESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE FEE ADD CONSTRAINT FK_FEE_FORINSTITUTION_ID FOREIGN KEY (FORINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_FROMWEBUSER_ID FOREIGN KEY (FROMWEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_FROMDEPARTMENT_ID FOREIGN KEY (FROMDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_TOSTAFF_ID FOREIGN KEY (TOSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_FROMINSTITUTION_ID FOREIGN KEY (FROMINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_TOINSTITUTION_ID FOREIGN KEY (TOINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_TOWEBUSER_ID FOREIGN KEY (TOWEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGGREGATEDRECORD ADD CONSTRAINT FK_AGGREGATEDRECORD_FROMSTAFF_ID FOREIGN KEY (FROMSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE SESSIONINSTANCEACTIVITY ADD CONSTRAINT FK_SESSIONINSTANCEACTIVITY_SESSIONINSTANCE_ID FOREIGN KEY (SESSIONINSTANCE_ID) REFERENCES SESSIONINSTANCE (ID)
ALTER TABLE SESSIONINSTANCEACTIVITY ADD CONSTRAINT FK_SESSIONINSTANCEACTIVITY_APPOINTMENTACTIVITY_ID FOREIGN KEY (APPOINTMENTACTIVITY_ID) REFERENCES APPOINTMENTACTIVITY (ID)
ALTER TABLE SESSIONINSTANCEACTIVITY ADD CONSTRAINT FK_SESSIONINSTANCEACTIVITY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SESSIONINSTANCEACTIVITY ADD CONSTRAINT FK_SESSIONINSTANCEACTIVITY_BILLSESSION_ID FOREIGN KEY (BILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE SESSIONINSTANCEACTIVITY ADD CONSTRAINT FK_SESSIONINSTANCEACTIVITY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CAPTURECOMPONENT ADD CONSTRAINT FK_CAPTURECOMPONENT_DESIGNCOMPONENT_ID FOREIGN KEY (DESIGNCOMPONENT_ID) REFERENCES DESIGNCOMPONENT (ID)
ALTER TABLE CAPTURECOMPONENT ADD CONSTRAINT FK_CAPTURECOMPONENT_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES CAPTURECOMPONENT (ID)
ALTER TABLE CAPTURECOMPONENT ADD CONSTRAINT FK_CAPTURECOMPONENT_ITEMVALUE_ID FOREIGN KEY (ITEMVALUE_ID) REFERENCES ITEM (ID)
ALTER TABLE STAFFWORKDAY ADD CONSTRAINT FK_STAFFWORKDAY_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE USERSTOCKCONTAINER ADD CONSTRAINT FK_USERSTOCKCONTAINER_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERSTOCKCONTAINER ADD CONSTRAINT FK_USERSTOCKCONTAINER_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT STFFSLARYCOMPONANTSTFFPYSHEETCOMPONENTPERCENTAGEID FOREIGN KEY (STAFFPAYSHEETCOMPONENTPERCENTAGE_ID) REFERENCES STAFFPAYSHEETCOMPONENT (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT FK_STAFFSALARYCOMPONANT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT FK_STAFFSALARYCOMPONANT_STAFFSALARY_ID FOREIGN KEY (STAFFSALARY_ID) REFERENCES STAFFSALARY (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT FK_STAFFSALARYCOMPONANT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT FK_STAFFSALARYCOMPONANT_LASTEDITOR_ID FOREIGN KEY (LASTEDITOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT FK_STAFFSALARYCOMPONANT_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT FK_STAFFSALARYCOMPONANT_STAFFPAYSHEETCOMPONENT_ID FOREIGN KEY (STAFFPAYSHEETCOMPONENT_ID) REFERENCES STAFFPAYSHEETCOMPONENT (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT FK_STAFFSALARYCOMPONANT_SALARYCYCLE_ID FOREIGN KEY (SALARYCYCLE_ID) REFERENCES SALARYCYCLE (ID)
ALTER TABLE STAFFSALARYCOMPONANT ADD CONSTRAINT FK_STAFFSALARYCOMPONANT_PAIDBY_ID FOREIGN KEY (PAIDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENTGATEWAYTRANSACTION ADD CONSTRAINT FK_PAYMENTGATEWAYTRANSACTION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENTGATEWAYTRANSACTION ADD CONSTRAINT FK_PAYMENTGATEWAYTRANSACTION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENTGATEWAYTRANSACTION ADD CONSTRAINT FK_PAYMENTGATEWAYTRANSACTION_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE PAYMENTGATEWAYTRANSACTION ADD CONSTRAINT FK_PAYMENTGATEWAYTRANSACTION_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PAYMENTGATEWAYTRANSACTION ADD CONSTRAINT FK_PAYMENTGATEWAYTRANSACTION_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYMENTGATEWAYTRANSACTION ADD CONSTRAINT FK_PAYMENTGATEWAYTRANSACTION_SESSIONINSTANCE_ID FOREIGN KEY (SESSIONINSTANCE_ID) REFERENCES SESSIONINSTANCE (ID)
ALTER TABLE USERNOTIFICATION ADD CONSTRAINT FK_USERNOTIFICATION_NOTIFICATION_ID FOREIGN KEY (NOTIFICATION_ID) REFERENCES NOTIFICATION (ID)
ALTER TABLE USERNOTIFICATION ADD CONSTRAINT FK_USERNOTIFICATION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERNOTIFICATION ADD CONSTRAINT FK_USERNOTIFICATION_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERNOTIFICATION ADD CONSTRAINT FK_USERNOTIFICATION_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE USERNOTIFICATION ADD CONSTRAINT FK_USERNOTIFICATION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_AUTOMATEDINSTITUTION_ID FOREIGN KEY (AUTOMATEDINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_DATAENTRYDEPARTMENT_ID FOREIGN KEY (DATAENTRYDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_PRINTINGDEPARTMENT_ID FOREIGN KEY (PRINTINGDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_APPROVEINSTITUTION_ID FOREIGN KEY (APPROVEINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_CANCELLDEPARTMENT_ID FOREIGN KEY (CANCELLDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_AUTOMATEDANALYZER_ID FOREIGN KEY (AUTOMATEDANALYZER_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_DATAENTRYUSER_ID FOREIGN KEY (DATAENTRYUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_AUTOMATEDDEPARTMENTANALYZER_ID FOREIGN KEY (AUTOMATEDDEPARTMENTANALYZER_ID) REFERENCES DEPARTMENTMACHINE (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_AUTOMATEDDEPARTMENT_ID FOREIGN KEY (AUTOMATEDDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_CANCELLEDUSER_ID FOREIGN KEY (CANCELLEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_UPLOADEDREPORT_ID FOREIGN KEY (UPLOADEDREPORT_ID) REFERENCES UPLOAD (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_PRINTINGINSTITUTION_ID FOREIGN KEY (PRINTINGINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_RETURNEDUSER_ID FOREIGN KEY (RETURNEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_PATIENTINVESTIGATION_ID FOREIGN KEY (PATIENTINVESTIGATION_ID) REFERENCES PATIENTINVESTIGATION (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_APPROVEUSER_ID FOREIGN KEY (APPROVEUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_REPORTFORMAT_ID FOREIGN KEY (REPORTFORMAT_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_PRINTINGUSER_ID FOREIGN KEY (PRINTINGUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_RETURNDEPARTMENT_ID FOREIGN KEY (RETURNDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_DATAENTRYINSTITUTION_ID FOREIGN KEY (DATAENTRYINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_CANCELLINSTITUTION_ID FOREIGN KEY (CANCELLINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_APPROVEDEPARTMENT_ID FOREIGN KEY (APPROVEDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_AUTOMATEDUSER_ID FOREIGN KEY (AUTOMATEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORT ADD CONSTRAINT FK_PATIENTREPORT_RETURNINSTITUTION_ID FOREIGN KEY (RETURNINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_OUTSOURCESENTUSER_ID FOREIGN KEY (OUTSOURCESENTUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLERECEIVEDATLABDEPARTMENT_ID FOREIGN KEY (SAMPLERECEIVEDATLABDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SENTTOANALYZERDEPARTMENT_ID FOREIGN KEY (SENTTOANALYZERDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_DUPLICATEDTO_ID FOREIGN KEY (DUPLICATEDTO_ID) REFERENCES PATIENTSAMPLE (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_CANCELLEDUSER_ID FOREIGN KEY (CANCELLEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_OUTSOURCEINSTITUTION_ID FOREIGN KEY (OUTSOURCEINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLETRANSPORTEDTOLABBYSTAFF_ID FOREIGN KEY (SAMPLETRANSPORTEDTOLABBYSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLECOLLECTEDINSTITUTION_ID FOREIGN KEY (SAMPLECOLLECTEDINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_BARCODEGENERATEDINSTITUTION_ID FOREIGN KEY (BARCODEGENERATEDINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLERECEIVEDATLABINSTITUTION_ID FOREIGN KEY (SAMPLERECEIVEDATLABINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_CANCELLDEPARTMENT_ID FOREIGN KEY (CANCELLDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLERECEIVERATLAB_ID FOREIGN KEY (SAMPLERECEIVERATLAB_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLEREJECTEDBY_ID FOREIGN KEY (SAMPLEREJECTEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_RECEIVEDFROMANALYZERBY_ID FOREIGN KEY (RECEIVEDFROMANALYZERBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_BARCODEGENERATOR_ID FOREIGN KEY (BARCODEGENERATOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_CANCELLINSTITUTION_ID FOREIGN KEY (CANCELLINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_OUTSOURCEDEPARTMENT_ID FOREIGN KEY (OUTSOURCEDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLECOLLECTER_ID FOREIGN KEY (SAMPLECOLLECTER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_TEST_ID FOREIGN KEY (TEST_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLECOLLECTEDDEPARTMENT_ID FOREIGN KEY (SAMPLECOLLECTEDDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_DIVERTEDFROM_ID FOREIGN KEY (DIVERTEDFROM_ID) REFERENCES PATIENTSAMPLE (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_MACHINE_ID FOREIGN KEY (MACHINE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_RECEIVEDFROMANALYZERDEPARTMENT_ID FOREIGN KEY (RECEIVEDFROMANALYZERDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLE_ID FOREIGN KEY (SAMPLE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_INVESTIGATIONCOMPONANT_ID FOREIGN KEY (INVESTIGATIONCOMPONANT_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_PATIENTINVESTIGATION_ID FOREIGN KEY (PATIENTINVESTIGATION_ID) REFERENCES PATIENTINVESTIGATION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_BARCODEGENERATEDDEPARTMENT_ID FOREIGN KEY (BARCODEGENERATEDDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_DUPLICATEDFROM_ID FOREIGN KEY (DUPLICATEDFROM_ID) REFERENCES PATIENTSAMPLE (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SENTTOANALYZERBY_ID FOREIGN KEY (SENTTOANALYZERBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_OUTSOURCESAMPLETRANSPORTER_ID FOREIGN KEY (OUTSOURCESAMPLETRANSPORTER_ID) REFERENCES STAFF (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SAMPLESENTBY_ID FOREIGN KEY (SAMPLESENTBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_DIVERTEDTO_ID FOREIGN KEY (DIVERTEDTO_ID) REFERENCES PATIENTSAMPLE (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_TUBE_ID FOREIGN KEY (TUBE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT FK_PATIENTSAMPLE_SENTTOANALYZERINSTITUTION_ID FOREIGN KEY (SENTTOANALYZERINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTSAMPLE ADD CONSTRAINT PATIENTSAMPLE_RECEIVEDFROMANALYZERINSTITUTION_ID FOREIGN KEY (RECEIVEDFROMANALYZERINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEMMAPPING ADD CONSTRAINT FK_ITEMMAPPING_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEMMAPPING ADD CONSTRAINT FK_ITEMMAPPING_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ITEMMAPPING ADD CONSTRAINT FK_ITEMMAPPING_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEMMAPPING ADD CONSTRAINT FK_ITEMMAPPING_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMMAPPING ADD CONSTRAINT FK_ITEMMAPPING_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AREA ADD CONSTRAINT FK_AREA_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AREA ADD CONSTRAINT FK_AREA_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AREA ADD CONSTRAINT FK_AREA_SUPERAREA_ID FOREIGN KEY (SUPERAREA_ID) REFERENCES AREA (ID)
ALTER TABLE PATIENTREPORTGROUP ADD CONSTRAINT FK_PATIENTREPORTGROUP_PATIENTREPORT_ID FOREIGN KEY (PATIENTREPORT_ID) REFERENCES PATIENTREPORT (ID)
ALTER TABLE PATIENTREPORTGROUP ADD CONSTRAINT FK_PATIENTREPORTGROUP_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTREPORTGROUP ADD CONSTRAINT FK_PATIENTREPORTGROUP_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ALLOWEDPAYMENTMETHOD ADD CONSTRAINT FK_ALLOWEDPAYMENTMETHOD_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ALLOWEDPAYMENTMETHOD ADD CONSTRAINT FK_ALLOWEDPAYMENTMETHOD_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ALLOWEDPAYMENTMETHOD ADD CONSTRAINT FK_ALLOWEDPAYMENTMETHOD_MEMBERSHIPSCHEME_ID FOREIGN KEY (MEMBERSHIPSCHEME_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ALLOWEDPAYMENTMETHOD ADD CONSTRAINT FK_ALLOWEDPAYMENTMETHOD_PAYMENTSCHEME_ID FOREIGN KEY (PAYMENTSCHEME_ID) REFERENCES PAYMENTSCHEME (ID)
ALTER TABLE INVESTIGATIONCOMPONENT ADD CONSTRAINT FK_INVESTIGATIONCOMPONENT_INVESTIGATION_ID FOREIGN KEY (INVESTIGATION_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_REFERREDBYINSTITUTION_ID FOREIGN KEY (REFERREDBYINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_GUARDIAN_ID FOREIGN KEY (GUARDIAN_ID) REFERENCES PERSON (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_REFERRINGCONSULTANT_ID FOREIGN KEY (REFERRINGCONSULTANT_ID) REFERENCES STAFF (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_REFERRINGDOCTOR_ID FOREIGN KEY (REFERRINGDOCTOR_ID) REFERENCES STAFF (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT PATIENTENCOUNTER_GUARDIANRELATIONSHIPTOPATIENT_ID FOREIGN KEY (GUARDIANRELATIONSHIPTOPATIENT_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_PARENTENCOUNTER_ID FOREIGN KEY (PARENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_ADMISSIONTYPE_ID FOREIGN KEY (ADMISSIONTYPE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_BILLSESSION_ID FOREIGN KEY (BILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_CREDITCOMPANY_ID FOREIGN KEY (CREDITCOMPANY_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_PRIMARYREASON_ID FOREIGN KEY (PRIMARYREASON_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_CURRENTPATIENTROOM_ID FOREIGN KEY (CURRENTPATIENTROOM_ID) REFERENCES PATIENTROOM (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_OPDDOCTOR_ID FOREIGN KEY (OPDDOCTOR_ID) REFERENCES STAFF (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_WORKPLACE_ID FOREIGN KEY (WORKPLACE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_FINALBILL_ID FOREIGN KEY (FINALBILL_ID) REFERENCES BILL (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_REFERRINGPERSON_ID FOREIGN KEY (REFERRINGPERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTENCOUNTER ADD CONSTRAINT FK_PATIENTENCOUNTER_REFERRINGSTAFF_ID FOREIGN KEY (REFERRINGSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE INVESTIGATIONITEMVALUE ADD CONSTRAINT FK_INVESTIGATIONITEMVALUE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE INVESTIGATIONITEMVALUE ADD CONSTRAINT FK_INVESTIGATIONITEMVALUE_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE INVESTIGATIONITEMVALUE ADD CONSTRAINT NVESTIGATIONITEMVALUENVESTIGATIONITEMOFLABELTYPEID FOREIGN KEY (INVESTIGATIONITEMOFLABELTYPE_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE INVESTIGATIONITEMVALUE ADD CONSTRAINT NVESTIGATIONITEMVALUENVESTIGATIONITEMOFVALUETYPEID FOREIGN KEY (INVESTIGATIONITEMOFVALUETYPE_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE INVESTIGATIONITEMVALUE ADD CONSTRAINT FK_INVESTIGATIONITEMVALUE_INVESTIGATIONITEM_ID FOREIGN KEY (INVESTIGATIONITEM_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE INVESTIGATIONITEMVALUE ADD CONSTRAINT NVESTIGATIONITEMVALUEINVESTIGATIONITEMOFFLAGTYPEID FOREIGN KEY (INVESTIGATIONITEMOFFLAGTYPE_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE INVESTIGATIONITEMVALUE ADD CONSTRAINT NVSTIGATIONITEMVALUENVSTIGATIONITEMVALUECATEGORYID FOREIGN KEY (INVESTIGATIONITEMVALUECATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE INVESTIGATIONITEMVALUE ADD CONSTRAINT FK_INVESTIGATIONITEMVALUE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE REORDER ADD CONSTRAINT FK_REORDER_SUPPLIER_ID FOREIGN KEY (SUPPLIER_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE REORDER ADD CONSTRAINT FK_REORDER_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE REORDER ADD CONSTRAINT FK_REORDER_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE REORDER ADD CONSTRAINT FK_REORDER_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE REORDER ADD CONSTRAINT FK_REORDER_PERSON_ID FOREIGN KEY (PERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_PARENTINSTITUTION_ID FOREIGN KEY (PARENTINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_BANKBRANCH_ID FOREIGN KEY (BANKBRANCH_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_LABDEPARTMENT_ID FOREIGN KEY (LABDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_CONTACTPERSON_ID FOREIGN KEY (CONTACTPERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_FEELISTTYPE_ID FOREIGN KEY (FEELISTTYPE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_LABINSTITUTION_ID FOREIGN KEY (LABINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE INSTITUTION ADD CONSTRAINT FK_INSTITUTION_ROUTE_ID FOREIGN KEY (ROUTE_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE WEBUSERPAYMENTSCHEME ADD CONSTRAINT FK_WEBUSERPAYMENTSCHEME_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERPAYMENTSCHEME ADD CONSTRAINT FK_WEBUSERPAYMENTSCHEME_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERPAYMENTSCHEME ADD CONSTRAINT FK_WEBUSERPAYMENTSCHEME_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERPAYMENTSCHEME ADD CONSTRAINT FK_WEBUSERPAYMENTSCHEME_PAYMENTSCHEME_ID FOREIGN KEY (PAYMENTSCHEME_ID) REFERENCES PAYMENTSCHEME (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_CREATEDBY_ID FOREIGN KEY (CREATEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_PATIENTINVESTIGATION_ID FOREIGN KEY (PATIENTINVESTIGATION_ID) REFERENCES PATIENTINVESTIGATION (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_PATIENTREPORT_ID FOREIGN KEY (PATIENTREPORT_ID) REFERENCES PATIENTREPORT (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_ANALYZER_ID FOREIGN KEY (ANALYZER_ID) REFERENCES CATEGORY (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_FROMDEPARTMENT_ID FOREIGN KEY (FROMDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_RETIREDBY_ID FOREIGN KEY (RETIREDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_SAMPLECOMPONENT_ID FOREIGN KEY (SAMPLECOMPONENT_ID) REFERENCES PATIENTSAMPLECOMPONANT (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_EMAIL_ID FOREIGN KEY (EMAIL_ID) REFERENCES APPEMAIL (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_SMS_ID FOREIGN KEY (SMS_ID) REFERENCES SMS (ID)
ALTER TABLE LABTESTHISTORY ADD CONSTRAINT FK_LABTESTHISTORY_PATIENTSAMPLE_ID FOREIGN KEY (PATIENTSAMPLE_ID) REFERENCES PATIENTSAMPLE (ID)
ALTER TABLE DETAILEDFINANCIALBILL ADD CONSTRAINT FK_DETAILEDFINANCIALBILL_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DETAILEDFINANCIALBILL ADD CONSTRAINT FK_DETAILEDFINANCIALBILL_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE DETAILEDFINANCIALBILL ADD CONSTRAINT FK_DETAILEDFINANCIALBILL_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROUTE ADD CONSTRAINT FK_WEBUSERROUTE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROUTE ADD CONSTRAINT FK_WEBUSERROUTE_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROUTE ADD CONSTRAINT FK_WEBUSERROUTE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROUTE ADD CONSTRAINT FK_WEBUSERROUTE_ROUTE_ID FOREIGN KEY (ROUTE_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE FAMILYMEMBER ADD CONSTRAINT FK_FAMILYMEMBER_FAMILY_ID FOREIGN KEY (FAMILY_ID) REFERENCES FAMILY (ID)
ALTER TABLE FAMILYMEMBER ADD CONSTRAINT FK_FAMILYMEMBER_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE FAMILYMEMBER ADD CONSTRAINT FK_FAMILYMEMBER_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FAMILYMEMBER ADD CONSTRAINT FK_FAMILYMEMBER_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FAMILYMEMBER ADD CONSTRAINT FK_FAMILYMEMBER_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FAMILYMEMBER ADD CONSTRAINT FK_FAMILYMEMBER_RELATIONTOCHH_ID FOREIGN KEY (RELATIONTOCHH_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PERSONINSTITUTION ADD CONSTRAINT FK_PERSONINSTITUTION_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PERSONINSTITUTION ADD CONSTRAINT FK_PERSONINSTITUTION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PERSONINSTITUTION ADD CONSTRAINT FK_PERSONINSTITUTION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PERSONINSTITUTION ADD CONSTRAINT FK_PERSONINSTITUTION_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE PERSONINSTITUTION ADD CONSTRAINT FK_PERSONINSTITUTION_PERSON_ID FOREIGN KEY (PERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE PERSONINSTITUTION ADD CONSTRAINT FK_PERSONINSTITUTION_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE SCHEDULEDPROCESSCONFIGURATION ADD CONSTRAINT FK_SCHEDULEDPROCESSCONFIGURATION_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE SCHEDULEDPROCESSCONFIGURATION ADD CONSTRAINT FK_SCHEDULEDPROCESSCONFIGURATION_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE SCHEDULEDPROCESSCONFIGURATION ADD CONSTRAINT FK_SCHEDULEDPROCESSCONFIGURATION_SITE_ID FOREIGN KEY (SITE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE SCHEDULEDPROCESSCONFIGURATION ADD CONSTRAINT FK_SCHEDULEDPROCESSCONFIGURATION_CREATEDBY_ID FOREIGN KEY (CREATEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SCHEDULEDPROCESSCONFIGURATION ADD CONSTRAINT FK_SCHEDULEDPROCESSCONFIGURATION_RETIREDBY_ID FOREIGN KEY (RETIREDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSSTEPDEFINITION ADD CONSTRAINT FK_PROCESSSTEPDEFINITION_PROCESSDEFINITION_ID FOREIGN KEY (PROCESSDEFINITION_ID) REFERENCES PROCESSDEFINITION (ID)
ALTER TABLE PROCESSSTEPDEFINITION ADD CONSTRAINT FK_PROCESSSTEPDEFINITION_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES PROCESSDEFINITION (ID)
ALTER TABLE PROCESSSTEPDEFINITION ADD CONSTRAINT FK_PROCESSSTEPDEFINITION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSSTEPDEFINITION ADD CONSTRAINT FK_PROCESSSTEPDEFINITION_CREATOR_ID FOREIGN KEY (CREATOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DOCUMENTTEMPLATE ADD CONSTRAINT FK_DOCUMENTTEMPLATE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE DOCUMENTTEMPLATE ADD CONSTRAINT FK_DOCUMENTTEMPLATE_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DOCUMENTTEMPLATE ADD CONSTRAINT FK_DOCUMENTTEMPLATE_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE DOCUMENTTEMPLATE ADD CONSTRAINT FK_DOCUMENTTEMPLATE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE DOCUMENTTEMPLATE ADD CONSTRAINT FK_DOCUMENTTEMPLATE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ADJUSTMENTBILLITEM ADD CONSTRAINT FK_ADJUSTMENTBILLITEM_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ADJUSTMENTBILLITEM ADD CONSTRAINT FK_ADJUSTMENTBILLITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ADJUSTMENTBILLITEM ADD CONSTRAINT FK_ADJUSTMENTBILLITEM_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE ADJUSTMENTBILLITEM ADD CONSTRAINT FK_ADJUSTMENTBILLITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSHIFTHISTORY ADD CONSTRAINT FK_STAFFSHIFTHISTORY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSHIFTHISTORY ADD CONSTRAINT FK_STAFFSHIFTHISTORY_STAFFSHIFT_ID FOREIGN KEY (STAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE STAFFSHIFTHISTORY ADD CONSTRAINT FK_STAFFSHIFTHISTORY_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE STAFFSHIFTHISTORY ADD CONSTRAINT FK_STAFFSHIFTHISTORY_ROSTER_ID FOREIGN KEY (ROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE STAFFSHIFTHISTORY ADD CONSTRAINT FK_STAFFSHIFTHISTORY_SHIFT_ID FOREIGN KEY (SHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE STAFFSHIFTHISTORY ADD CONSTRAINT FK_STAFFSHIFTHISTORY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHBOOK ADD CONSTRAINT FK_CASHBOOK_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHBOOK ADD CONSTRAINT FK_CASHBOOK_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CASHBOOK ADD CONSTRAINT FK_CASHBOOK_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHBOOK ADD CONSTRAINT FK_CASHBOOK_SITE_ID FOREIGN KEY (SITE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CASHBOOK ADD CONSTRAINT FK_CASHBOOK_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE CASHBOOK ADD CONSTRAINT FK_CASHBOOK_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE MEDICALPACKAGEITEM ADD CONSTRAINT FK_MEDICALPACKAGEITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE MEDICALPACKAGEITEM ADD CONSTRAINT FK_MEDICALPACKAGEITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE MEDICALPACKAGEITEM ADD CONSTRAINT FK_MEDICALPACKAGEITEM_PACKEGE_ID FOREIGN KEY (PACKEGE_ID) REFERENCES ITEM (ID)
ALTER TABLE MEDICALPACKAGEITEM ADD CONSTRAINT FK_MEDICALPACKAGEITEM_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTDEPOSITHISTORY ADD CONSTRAINT FK_PATIENTDEPOSITHISTORY_BILLSESSION_ID FOREIGN KEY (BILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE PATIENTDEPOSITHISTORY ADD CONSTRAINT FK_PATIENTDEPOSITHISTORY_PATIENTDEPOSIT_ID FOREIGN KEY (PATIENTDEPOSIT_ID) REFERENCES PATIENTDEPOSIT (ID)
ALTER TABLE PATIENTDEPOSITHISTORY ADD CONSTRAINT FK_PATIENTDEPOSITHISTORY_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE PATIENTDEPOSITHISTORY ADD CONSTRAINT FK_PATIENTDEPOSITHISTORY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTDEPOSITHISTORY ADD CONSTRAINT FK_PATIENTDEPOSITHISTORY_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENTDEPOSITHISTORY ADD CONSTRAINT FK_PATIENTDEPOSITHISTORY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTDEPOSITHISTORY ADD CONSTRAINT FK_PATIENTDEPOSITHISTORY_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTDEPOSITHISTORY ADD CONSTRAINT FK_PATIENTDEPOSITHISTORY_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE BILLNUMBER ADD CONSTRAINT FK_BILLNUMBER_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILLNUMBER ADD CONSTRAINT FK_BILLNUMBER_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLNUMBER ADD CONSTRAINT FK_BILLNUMBER_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLNUMBER ADD CONSTRAINT FK_BILLNUMBER_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CONFIGOPTION ADD CONSTRAINT FK_CONFIGOPTION_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE CONFIGOPTION ADD CONSTRAINT FK_CONFIGOPTION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CONFIGOPTION ADD CONSTRAINT FK_CONFIGOPTION_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CONFIGOPTION ADD CONSTRAINT FK_CONFIGOPTION_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE CONFIGOPTION ADD CONSTRAINT FK_CONFIGOPTION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGENTREFERENCEBOOK ADD CONSTRAINT FK_AGENTREFERENCEBOOK_EDITOR_ID FOREIGN KEY (EDITOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGENTREFERENCEBOOK ADD CONSTRAINT FK_AGENTREFERENCEBOOK_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE AGENTREFERENCEBOOK ADD CONSTRAINT FK_AGENTREFERENCEBOOK_CHECKEDBY_ID FOREIGN KEY (CHECKEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGENTREFERENCEBOOK ADD CONSTRAINT FK_AGENTREFERENCEBOOK_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGENTREFERENCEBOOK ADD CONSTRAINT FK_AGENTREFERENCEBOOK_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DENOMINATION ADD CONSTRAINT FK_DENOMINATION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DENOMINATION ADD CONSTRAINT FK_DENOMINATION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSTAFFCATEGORY ADD CONSTRAINT FK_STAFFSTAFFCATEGORY_STAFFCATEGORY_ID FOREIGN KEY (STAFFCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE STAFFSTAFFCATEGORY ADD CONSTRAINT FK_STAFFSTAFFCATEGORY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFSTAFFCATEGORY ADD CONSTRAINT FK_STAFFSTAFFCATEGORY_STAFFEMPLOYMENT_ID FOREIGN KEY (STAFFEMPLOYMENT_ID) REFERENCES STAFFEMPLOYMENT (ID)
ALTER TABLE STAFFSTAFFCATEGORY ADD CONSTRAINT FK_STAFFSTAFFCATEGORY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_STAFFSHIFT_ID FOREIGN KEY (STAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_SERVICESESSION_ID FOREIGN KEY (SERVICESESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_ROSTER_ID FOREIGN KEY (ROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_APPROVER_ID FOREIGN KEY (APPROVER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_SESSIONINSTANCE_ID FOREIGN KEY (SESSIONINSTANCE_ID) REFERENCES SESSIONINSTANCE (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_LOGGEDRECORD_ID FOREIGN KEY (LOGGEDRECORD_ID) REFERENCES FINGERPRINTRECORD (ID)
ALTER TABLE FINGERPRINTRECORD ADD CONSTRAINT FK_FINGERPRINTRECORD_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE NOTIFICATION ADD CONSTRAINT FK_NOTIFICATION_PATIENTROOM_ID FOREIGN KEY (PATIENTROOM_ID) REFERENCES PATIENTROOM (ID)
ALTER TABLE NOTIFICATION ADD CONSTRAINT FK_NOTIFICATION_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE NOTIFICATION ADD CONSTRAINT FK_NOTIFICATION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE NOTIFICATION ADD CONSTRAINT FK_NOTIFICATION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DENOMINATIONTRANSACTION ADD CONSTRAINT FK_DENOMINATIONTRANSACTION_PAYMENT_ID FOREIGN KEY (PAYMENT_ID) REFERENCES PAYMENT (ID)
ALTER TABLE DENOMINATIONTRANSACTION ADD CONSTRAINT DENOMINATIONTRANSACTION_DETAILEDFINANCIALBILL_ID FOREIGN KEY (DETAILEDFINANCIALBILL_ID) REFERENCES DETAILEDFINANCIALBILL (ID)
ALTER TABLE DENOMINATIONTRANSACTION ADD CONSTRAINT FK_DENOMINATIONTRANSACTION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DENOMINATIONTRANSACTION ADD CONSTRAINT FK_DENOMINATIONTRANSACTION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DENOMINATIONTRANSACTION ADD CONSTRAINT FK_DENOMINATIONTRANSACTION_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE DENOMINATIONTRANSACTION ADD CONSTRAINT FK_DENOMINATIONTRANSACTION_DENOMINATION_ID FOREIGN KEY (DENOMINATION_ID) REFERENCES DENOMINATION (ID)
ALTER TABLE DENOMINATIONTRANSACTION ADD CONSTRAINT FK_DENOMINATIONTRANSACTION_CANCELLEDBY_ID FOREIGN KEY (CANCELLEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ROOMFACILITYCHARGE ADD CONSTRAINT FK_ROOMFACILITYCHARGE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ROOMFACILITYCHARGE ADD CONSTRAINT FK_ROOMFACILITYCHARGE_ROOM_ID FOREIGN KEY (ROOM_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ROOMFACILITYCHARGE ADD CONSTRAINT FK_ROOMFACILITYCHARGE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ROOMFACILITYCHARGE ADD CONSTRAINT FK_ROOMFACILITYCHARGE_TIMEDITEMFEE_ID FOREIGN KEY (TIMEDITEMFEE_ID) REFERENCES FEE (ID)
ALTER TABLE ROOMFACILITYCHARGE ADD CONSTRAINT FK_ROOMFACILITYCHARGE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ROOMFACILITYCHARGE ADD CONSTRAINT FK_ROOMFACILITYCHARGE_COMPANY_ID FOREIGN KEY (COMPANY_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ROOMFACILITYCHARGE ADD CONSTRAINT FK_ROOMFACILITYCHARGE_PAYMENTSCHEME_ID FOREIGN KEY (PAYMENTSCHEME_ID) REFERENCES PAYMENTSCHEME (ID)
ALTER TABLE ROOMFACILITYCHARGE ADD CONSTRAINT FK_ROOMFACILITYCHARGE_ROOMCATEGORY_ID FOREIGN KEY (ROOMCATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ISSUERATEMARGINS ADD CONSTRAINT FK_ISSUERATEMARGINS_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ISSUERATEMARGINS ADD CONSTRAINT FK_ISSUERATEMARGINS_FROMINSTITUTION_ID FOREIGN KEY (FROMINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ISSUERATEMARGINS ADD CONSTRAINT FK_ISSUERATEMARGINS_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ISSUERATEMARGINS ADD CONSTRAINT FK_ISSUERATEMARGINS_FROMDEPARTMENT_ID FOREIGN KEY (FROMDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ISSUERATEMARGINS ADD CONSTRAINT FK_ISSUERATEMARGINS_TOINSTITUTION_ID FOREIGN KEY (TOINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ISSUERATEMARGINS ADD CONSTRAINT FK_ISSUERATEMARGINS_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ITEMSCATEGORIES ADD CONSTRAINT FK_ITEMSCATEGORIES_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEMSCATEGORIES ADD CONSTRAINT FK_ITEMSCATEGORIES_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMSCATEGORIES ADD CONSTRAINT FK_ITEMSCATEGORIES_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMSCATEGORIES ADD CONSTRAINT FK_ITEMSCATEGORIES_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ONLINEBOOKING ADD CONSTRAINT FK_ONLINEBOOKING_PAIDTOHOSPITALPROCESSEDBY_ID FOREIGN KEY (PAIDTOHOSPITALPROCESSEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ONLINEBOOKING ADD CONSTRAINT FK_ONLINEBOOKING_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ONLINEBOOKING ADD CONSTRAINT FK_ONLINEBOOKING_HOSPITAL_ID FOREIGN KEY (HOSPITAL_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ONLINEBOOKING ADD CONSTRAINT FK_ONLINEBOOKING_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ONLINEBOOKING ADD CONSTRAINT FK_ONLINEBOOKING_AGENCY_ID FOREIGN KEY (AGENCY_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ONLINEBOOKING ADD CONSTRAINT FK_ONLINEBOOKING_PAIDTOHOSPITALBILL_ID FOREIGN KEY (PAIDTOHOSPITALBILL_ID) REFERENCES BILL (ID)
ALTER TABLE ONLINEBOOKING ADD CONSTRAINT FK_ONLINEBOOKING_PAIDTOHOSPITALCANCELLEDBILL_ID FOREIGN KEY (PAIDTOHOSPITALCANCELLEDBILL_ID) REFERENCES BILL (ID)
ALTER TABLE ONLINEBOOKING ADD CONSTRAINT FK_ONLINEBOOKING_PAIDTOHOSPITALBILLCANCELLEDBY_ID FOREIGN KEY (PAIDTOHOSPITALBILLCANCELLEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FORMITEMVALUE ADD CONSTRAINT FK_FORMITEMVALUE_PERSON_ID FOREIGN KEY (PERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE FORMITEMVALUE ADD CONSTRAINT FK_FORMITEMVALUE_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE FORMITEMVALUE ADD CONSTRAINT FK_FORMITEMVALUE_REFERRINGPERSON_ID FOREIGN KEY (REFERRINGPERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE FORMITEMVALUE ADD CONSTRAINT FK_FORMITEMVALUE_REPORTITEM_ID FOREIGN KEY (REPORTITEM_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE FORMITEMVALUE ADD CONSTRAINT FK_FORMITEMVALUE_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE FORMITEMVALUE ADD CONSTRAINT FK_FORMITEMVALUE_PATIENTREPORT_ID FOREIGN KEY (PATIENTREPORT_ID) REFERENCES PATIENTREPORT (ID)
ALTER TABLE FORMITEMVALUE ADD CONSTRAINT FK_FORMITEMVALUE_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE FORMITEMVALUE ADD CONSTRAINT FK_FORMITEMVALUE_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE SALARYHOLD ADD CONSTRAINT FK_SALARYHOLD_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SALARYHOLD ADD CONSTRAINT FK_SALARYHOLD_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE SALARYHOLD ADD CONSTRAINT FK_SALARYHOLD_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFLEAVE ADD CONSTRAINT FK_STAFFLEAVE_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE STAFFLEAVE ADD CONSTRAINT FK_STAFFLEAVE_FORM_ID FOREIGN KEY (FORM_ID) REFERENCES FORM (ID)
ALTER TABLE STAFFLEAVE ADD CONSTRAINT FK_STAFFLEAVE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFLEAVE ADD CONSTRAINT FK_STAFFLEAVE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFLEAVE ADD CONSTRAINT FK_STAFFLEAVE_ROSTER_ID FOREIGN KEY (ROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE STAFFLEAVE ADD CONSTRAINT FK_STAFFLEAVE_STAFFSHIFT_ID FOREIGN KEY (STAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE PROCESSSTEPINSTANCE ADD CONSTRAINT FK_PROCESSSTEPINSTANCE_CREATOR_ID FOREIGN KEY (CREATOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSSTEPINSTANCE ADD CONSTRAINT FK_PROCESSSTEPINSTANCE_PROCESSSTEPDEFINITION_ID FOREIGN KEY (PROCESSSTEPDEFINITION_ID) REFERENCES PROCESSSTEPDEFINITION (ID)
ALTER TABLE PROCESSSTEPINSTANCE ADD CONSTRAINT FK_PROCESSSTEPINSTANCE_PROCESSINSTANCE_ID FOREIGN KEY (PROCESSINSTANCE_ID) REFERENCES PROCESSINSTANCE (ID)
ALTER TABLE PROCESSSTEPINSTANCE ADD CONSTRAINT FK_PROCESSSTEPINSTANCE_NEXTSTEPINSTANCE_ID FOREIGN KEY (NEXTSTEPINSTANCE_ID) REFERENCES PROCESSSTEPINSTANCE (ID)
ALTER TABLE PROCESSSTEPINSTANCE ADD CONSTRAINT FK_PROCESSSTEPINSTANCE_COMPLETEDBY_ID FOREIGN KEY (COMPLETEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSSTEPINSTANCE ADD CONSTRAINT PROCESSSTEPINSTANCE_PROCESSSTEPACTIONDEFINITION_ID FOREIGN KEY (PROCESSSTEPACTIONDEFINITION_ID) REFERENCES PROCESSSTEPACTIONDEFINITION (ID)
ALTER TABLE PROCESSSTEPINSTANCE ADD CONSTRAINT FK_PROCESSSTEPINSTANCE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSSTEPINSTANCE ADD CONSTRAINT FK_PROCESSSTEPINSTANCE_PRECEDINGSTEPINSTANCE_ID FOREIGN KEY (PRECEDINGSTEPINSTANCE_ID) REFERENCES PROCESSSTEPINSTANCE (ID)
ALTER TABLE WEBTHEME ADD CONSTRAINT FK_WEBTHEME_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBTHEME ADD CONSTRAINT FK_WEBTHEME_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROLEUSER ADD CONSTRAINT FK_WEBUSERROLEUSER_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROLEUSER ADD CONSTRAINT FK_WEBUSERROLEUSER_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROLEUSER ADD CONSTRAINT FK_WEBUSERROLEUSER_WEBUSERROLE_ID FOREIGN KEY (WEBUSERROLE_ID) REFERENCES WEBUSERROLE (ID)
ALTER TABLE WEBUSERROLEUSER ADD CONSTRAINT FK_WEBUSERROLEUSER_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROLEUSER ADD CONSTRAINT FK_WEBUSERROLEUSER_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROLEUSER ADD CONSTRAINT FK_WEBUSERROLEUSER_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTFLAG ADD CONSTRAINT FK_PATIENTFLAG_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE PATIENTFLAG ADD CONSTRAINT FK_PATIENTFLAG_INVESTIGATIONFLAG_ID FOREIGN KEY (INVESTIGATIONFLAG_ID) REFERENCES INVESTIGATIONITEMVALUE (ID)
ALTER TABLE PATIENTFLAG ADD CONSTRAINT FK_PATIENTFLAG_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTFLAG ADD CONSTRAINT FK_PATIENTFLAG_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PATIENTFLAG ADD CONSTRAINT FK_PATIENTFLAG_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSDEFINITION ADD CONSTRAINT FK_PROCESSDEFINITION_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES PROCESSDEFINITION (ID)
ALTER TABLE PROCESSDEFINITION ADD CONSTRAINT FK_PROCESSDEFINITION_CREATOR_ID FOREIGN KEY (CREATOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PROCESSDEFINITION ADD CONSTRAINT FK_PROCESSDEFINITION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_SITE_ID FOREIGN KEY (SITE_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_WEBUSERPERSON_ID FOREIGN KEY (WEBUSERPERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_ACTIVATOR_ID FOREIGN KEY (ACTIVATOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_ROLE_ID FOREIGN KEY (ROLE_ID) REFERENCES WEBUSERROLE (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_USERWEBTHEME_ID FOREIGN KEY (USERWEBTHEME_ID) REFERENCES WEBTHEME (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE WEBUSER ADD CONSTRAINT FK_WEBUSER_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_MEASUREMENTUNIT1_ID FOREIGN KEY (MEASUREMENTUNIT1_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_MEASUREMENTUNIT2_ID FOREIGN KEY (MEASUREMENTUNIT2_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_FORWEBUSER_ID FOREIGN KEY (FORWEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_FORINSTITUTION_ID FOREIGN KEY (FORINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES ITEMUSAGE (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_FORITEM_ID FOREIGN KEY (FORITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_FORDEPARTMENT_ID FOREIGN KEY (FORDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE ITEMUSAGE ADD CONSTRAINT FK_ITEMUSAGE_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE STAFFGRADE ADD CONSTRAINT FK_STAFFGRADE_GRADE_ID FOREIGN KEY (GRADE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE STAFFGRADE ADD CONSTRAINT FK_STAFFGRADE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFGRADE ADD CONSTRAINT FK_STAFFGRADE_STAFFEMPLOYMENT_ID FOREIGN KEY (STAFFEMPLOYMENT_ID) REFERENCES STAFFEMPLOYMENT (ID)
ALTER TABLE STAFFGRADE ADD CONSTRAINT FK_STAFFGRADE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_PRINTROOMFACILITYCHARGE_ID FOREIGN KEY (PRINTROOMFACILITYCHARGE_ID) REFERENCES ROOMFACILITYCHARGE (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_ADDMITTEDBY_ID FOREIGN KEY (ADDMITTEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_DISCHARGEDBY_ID FOREIGN KEY (DISCHARGEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_PREVIOUSROOM_ID FOREIGN KEY (PREVIOUSROOM_ID) REFERENCES PATIENTROOM (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_REFERENCEPATIENTROOM_ID FOREIGN KEY (REFERENCEPATIENTROOM_ID) REFERENCES PATIENTROOM (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE PATIENTROOM ADD CONSTRAINT FK_PATIENTROOM_ROOMFACILITYCHARGE_ID FOREIGN KEY (ROOMFACILITYCHARGE_ID) REFERENCES ROOMFACILITYCHARGE (ID)
ALTER TABLE DEPARTMENTMACHINE ADD CONSTRAINT FK_DEPARTMENTMACHINE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE DEPARTMENTMACHINE ADD CONSTRAINT FK_DEPARTMENTMACHINE_MACHINE_ID FOREIGN KEY (MACHINE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE DEPARTMENTMACHINE ADD CONSTRAINT FK_DEPARTMENTMACHINE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DEPARTMENTMACHINE ADD CONSTRAINT FK_DEPARTMENTMACHINE_SUPPLIER_ID FOREIGN KEY (SUPPLIER_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE DEPARTMENTMACHINE ADD CONSTRAINT FK_DEPARTMENTMACHINE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHTRANSACTION ADD CONSTRAINT FK_CASHTRANSACTION_DRAWER_ID FOREIGN KEY (DRAWER_ID) REFERENCES DRAWER (ID)
ALTER TABLE CASHTRANSACTION ADD CONSTRAINT FK_CASHTRANSACTION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CASHTRANSACTION ADD CONSTRAINT FK_CASHTRANSACTION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_TOINSTITUTION_ID FOREIGN KEY (TOINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_RETIREDBY_ID FOREIGN KEY (RETIREDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_REFERATOKEN_ID FOREIGN KEY (REFERATOKEN_ID) REFERENCES TOKEN (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_DOCTOR_ID FOREIGN KEY (DOCTOR_ID) REFERENCES STAFF (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_FROMINSTITUTION_ID FOREIGN KEY (FROMINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_FROMDEPARTMENT_ID FOREIGN KEY (FROMDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_CATERORY_ID FOREIGN KEY (CATERORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_TOSTAFF_ID FOREIGN KEY (TOSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_SERVICECOUNTER_ID FOREIGN KEY (SERVICECOUNTER_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_COUNTER_ID FOREIGN KEY (COUNTER_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_FROMSTAFF_ID FOREIGN KEY (FROMSTAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_CREATEDBY_ID FOREIGN KEY (CREATEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE TOKEN ADD CONSTRAINT FK_TOKEN_TODEPARTMENT_ID FOREIGN KEY (TODEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_ABSENTMARKEDUSER_ID FOREIGN KEY (ABSENTMARKEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_SESSIONINSTANCE_ID FOREIGN KEY (SESSIONINSTANCE_ID) REFERENCES SESSIONINSTANCE (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_REFERENCEBILLSESSION_ID FOREIGN KEY (REFERENCEBILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_MARKEDTOREFUNDBY_ID FOREIGN KEY (MARKEDTOREFUNDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_RESCHEDULEDTOBILLSESSION_ID FOREIGN KEY (RESCHEDULEDTOBILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_SERVICESESSION_ID FOREIGN KEY (SERVICESESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_ABSENTUNMARKEDUSER_ID FOREIGN KEY (ABSENTUNMARKEDUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_PACKEGE_ID FOREIGN KEY (PACKEGE_ID) REFERENCES ITEM (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_MARKEDTOCANCELBY_ID FOREIGN KEY (MARKEDTOCANCELBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_SERVICESESSIONINSTANCE_ID FOREIGN KEY (SERVICESESSIONINSTANCE_ID) REFERENCES SERVICESESSIONINSTANCE (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_RESCHEDULEDFROMBILLSESSION_ID FOREIGN KEY (RESCHEDULEDFROMBILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_COMPLETEDBY_ID FOREIGN KEY (COMPLETEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_PAIDBILLSESSION_ID FOREIGN KEY (PAIDBILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE BILLSESSION ADD CONSTRAINT FK_BILLSESSION_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE ITEMSDISTRIBUTORS ADD CONSTRAINT FK_ITEMSDISTRIBUTORS_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEMSDISTRIBUTORS ADD CONSTRAINT FK_ITEMSDISTRIBUTORS_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEMSDISTRIBUTORS ADD CONSTRAINT FK_ITEMSDISTRIBUTORS_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMSDISTRIBUTORS ADD CONSTRAINT FK_ITEMSDISTRIBUTORS_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE MAPPING ADD CONSTRAINT FK_MAPPING_ITEM1_ID FOREIGN KEY (ITEM1_ID) REFERENCES ITEM (ID)
ALTER TABLE MAPPING ADD CONSTRAINT FK_MAPPING_ITEM2_ID FOREIGN KEY (ITEM2_ID) REFERENCES ITEM (ID)
ALTER TABLE WEBUSERROLE ADD CONSTRAINT FK_WEBUSERROLE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROLE ADD CONSTRAINT FK_WEBUSERROLE_ACTIVATOR_ID FOREIGN KEY (ACTIVATOR_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERROLE ADD CONSTRAINT FK_WEBUSERROLE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FINGERPRINTRECORDHISTORY ADD CONSTRAINT FK_FINGERPRINTRECORDHISTORY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FINGERPRINTRECORDHISTORY ADD CONSTRAINT FK_FINGERPRINTRECORDHISTORY_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE FINGERPRINTRECORDHISTORY ADD CONSTRAINT FK_FINGERPRINTRECORDHISTORY_STAFFSHIFT_ID FOREIGN KEY (STAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE FINGERPRINTRECORDHISTORY ADD CONSTRAINT FK_FINGERPRINTRECORDHISTORY_FINGERPRINTRECORD_ID FOREIGN KEY (FINGERPRINTRECORD_ID) REFERENCES FINGERPRINTRECORD (ID)
ALTER TABLE FINGERPRINTRECORDHISTORY ADD CONSTRAINT FK_FINGERPRINTRECORDHISTORY_ROSTER_ID FOREIGN KEY (ROSTER_ID) REFERENCES ROSTER (ID)
ALTER TABLE FINGERPRINTRECORDHISTORY ADD CONSTRAINT FK_FINGERPRINTRECORDHISTORY_SHIFT_ID FOREIGN KEY (SHIFT_ID) REFERENCES SHIFT (ID)
ALTER TABLE FINGERPRINTRECORDHISTORY ADD CONSTRAINT FK_FINGERPRINTRECORDHISTORY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_OCCUPATION_ID FOREIGN KEY (OCCUPATION_ID) REFERENCES ITEM (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_RELIGION_ID FOREIGN KEY (RELIGION_ID) REFERENCES ITEM (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_AREA_ID FOREIGN KEY (AREA_ID) REFERENCES AREA (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_BLOODGROUP_ID FOREIGN KEY (BLOODGROUP_ID) REFERENCES ITEM (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_MEMBERSHIPSCHEME_ID FOREIGN KEY (MEMBERSHIPSCHEME_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_CIVILSTATUS_ID FOREIGN KEY (CIVILSTATUS_ID) REFERENCES ITEM (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PERSON ADD CONSTRAINT FK_PERSON_RACE_ID FOREIGN KEY (RACE_ID) REFERENCES ITEM (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_CLINICALFINDINGITEM_ID FOREIGN KEY (CLINICALFINDINGITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_ITEMVALUE_ID FOREIGN KEY (ITEMVALUE_ID) REFERENCES ITEM (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_ENCOUNTER_ID FOREIGN KEY (ENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_PATIENTINVESTIGATION_ID FOREIGN KEY (PATIENTINVESTIGATION_ID) REFERENCES PATIENTINVESTIGATION (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_PATIENTREPORT_ID FOREIGN KEY (PATIENTREPORT_ID) REFERENCES PATIENTREPORT (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_DOCUMENTTEMPLATE_ID FOREIGN KEY (DOCUMENTTEMPLATE_ID) REFERENCES DOCUMENTTEMPLATE (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_PRESCRIPTION_ID FOREIGN KEY (PRESCRIPTION_ID) REFERENCES PRESCRIPTION (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_CATEGORYVALUE_ID FOREIGN KEY (CATEGORYVALUE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE CLINICALFINDINGVALUE ADD CONSTRAINT FK_CLINICALFINDINGVALUE_PERSON_ID FOREIGN KEY (PERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE HRMVARIABLES ADD CONSTRAINT FK_HRMVARIABLES_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE HRMVARIABLES ADD CONSTRAINT FK_HRMVARIABLES_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SMS ADD CONSTRAINT FK_SMS_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE SMS ADD CONSTRAINT FK_SMS_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SMS ADD CONSTRAINT FK_SMS_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE SMS ADD CONSTRAINT FK_SMS_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SMS ADD CONSTRAINT FK_SMS_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE SMS ADD CONSTRAINT FK_SMS_PATIENTINVESTIGATION_ID FOREIGN KEY (PATIENTINVESTIGATION_ID) REFERENCES PATIENTINVESTIGATION (ID)
ALTER TABLE SMS ADD CONSTRAINT FK_SMS_PATIENTREPORT_ID FOREIGN KEY (PATIENTREPORT_ID) REFERENCES PATIENTREPORT (ID)
ALTER TABLE APIKEY ADD CONSTRAINT FK_APIKEY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE APIKEY ADD CONSTRAINT FK_APIKEY_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE APIKEY ADD CONSTRAINT FK_APIKEY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE APIKEY ADD CONSTRAINT FK_APIKEY_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ENCOUNTERCREDITCOMPANY ADD CONSTRAINT FK_ENCOUNTERCREDITCOMPANY_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE ENCOUNTERCREDITCOMPANY ADD CONSTRAINT FK_ENCOUNTERCREDITCOMPANY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ENCOUNTERCREDITCOMPANY ADD CONSTRAINT FK_ENCOUNTERCREDITCOMPANY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ENCOUNTERCREDITCOMPANY ADD CONSTRAINT FK_ENCOUNTERCREDITCOMPANY_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE DESIGNCOMPONENTASSIGNMENT ADD CONSTRAINT FK_DESIGNCOMPONENTASSIGNMENT_DESIGNCOMPONENT_ID FOREIGN KEY (DESIGNCOMPONENT_ID) REFERENCES DESIGNCOMPONENT (ID)
ALTER TABLE DESIGNCOMPONENTASSIGNMENT ADD CONSTRAINT DESIGNCOMPONENTASSIGNMENT_PROCESSSTEPDEFINITION_ID FOREIGN KEY (PROCESSSTEPDEFINITION_ID) REFERENCES PROCESSSTEPDEFINITION (ID)
ALTER TABLE DESIGNCOMPONENTASSIGNMENT ADD CONSTRAINT FK_DESIGNCOMPONENTASSIGNMENT_PROCESSDEFINITION_ID FOREIGN KEY (PROCESSDEFINITION_ID) REFERENCES PROCESSDEFINITION (ID)
ALTER TABLE DESIGNCOMPONENTASSIGNMENT ADD CONSTRAINT DSGNCOMPONENTASSIGNMENTPRCSSSTEPACTIONDEFINITIONID FOREIGN KEY (PROCESSSTEPACTIONDEFINITION_ID) REFERENCES PROCESSSTEPACTIONDEFINITION (ID)
ALTER TABLE STAFFBASICS ADD CONSTRAINT FK_STAFFBASICS_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFBASICS ADD CONSTRAINT FK_STAFFBASICS_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFBASICS ADD CONSTRAINT FK_STAFFBASICS_BASIC_ID FOREIGN KEY (BASIC_ID) REFERENCES STAFFPAYSHEETCOMPONENT (ID)
ALTER TABLE STAFFBASICS ADD CONSTRAINT FK_STAFFBASICS_STAFFEMPLOYMENT_ID FOREIGN KEY (STAFFEMPLOYMENT_ID) REFERENCES STAFFEMPLOYMENT (ID)
ALTER TABLE CATEGORYITEM ADD CONSTRAINT FK_CATEGORYITEM_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE CATEGORYITEM ADD CONSTRAINT FK_CATEGORYITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE CATEGORYITEM ADD CONSTRAINT FK_CATEGORYITEM_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE CATEGORYITEM ADD CONSTRAINT FK_CATEGORYITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DESIGNCOMPONENT ADD CONSTRAINT FK_DESIGNCOMPONENT_DATAENTRYFORM_ID FOREIGN KEY (DATAENTRYFORM_ID) REFERENCES DESIGNCOMPONENT (ID)
ALTER TABLE DESIGNCOMPONENT ADD CONSTRAINT FK_DESIGNCOMPONENT_PARENT_ID FOREIGN KEY (PARENT_ID) REFERENCES DESIGNCOMPONENT (ID)
ALTER TABLE PATIENT ADD CONSTRAINT FK_PATIENT_CREATEDINSTITUTION_ID FOREIGN KEY (CREATEDINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PATIENT ADD CONSTRAINT FK_PATIENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENT ADD CONSTRAINT FK_PATIENT_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENT ADD CONSTRAINT FK_PATIENT_PERSON_ID FOREIGN KEY (PERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE PATIENT ADD CONSTRAINT FK_PATIENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENTSCHEME ADD CONSTRAINT FK_PAYMENTSCHEME_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYMENTSCHEME ADD CONSTRAINT FK_PAYMENTSCHEME_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENTSCHEME ADD CONSTRAINT FK_PAYMENTSCHEME_PERSON_ID FOREIGN KEY (PERSON_ID) REFERENCES PERSON (ID)
ALTER TABLE PAYMENTSCHEME ADD CONSTRAINT FK_PAYMENTSCHEME_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFWORKINGDEPARTMENT ADD CONSTRAINT FK_STAFFWORKINGDEPARTMENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFWORKINGDEPARTMENT ADD CONSTRAINT FK_STAFFWORKINGDEPARTMENT_STAFFEMPLOYMENT_ID FOREIGN KEY (STAFFEMPLOYMENT_ID) REFERENCES STAFFEMPLOYMENT (ID)
ALTER TABLE STAFFWORKINGDEPARTMENT ADD CONSTRAINT FK_STAFFWORKINGDEPARTMENT_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE STAFFWORKINGDEPARTMENT ADD CONSTRAINT FK_STAFFWORKINGDEPARTMENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERSTOCK ADD CONSTRAINT FK_USERSTOCK_USERSTOCKCONTAINER_ID FOREIGN KEY (USERSTOCKCONTAINER_ID) REFERENCES USERSTOCKCONTAINER (ID)
ALTER TABLE USERSTOCK ADD CONSTRAINT FK_USERSTOCK_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERSTOCK ADD CONSTRAINT FK_USERSTOCK_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERSTOCK ADD CONSTRAINT FK_USERSTOCK_STOCK_ID FOREIGN KEY (STOCK_ID) REFERENCES STOCK (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_DOCTORHOLIDAYMARKEDBY_ID FOREIGN KEY (DOCTORHOLIDAYMARKEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_FORINSTITUTION_ID FOREIGN KEY (FORINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT SESSIONINSTANCE_CURRENTLYCONSULTINGBILLSESSION_ID FOREIGN KEY (CURRENTLYCONSULTINGBILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_ORIGINATINGSESSION_ID FOREIGN KEY (ORIGINATINGSESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_SPECIALITY_ID FOREIGN KEY (SPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_CANCELLEDBY_ID FOREIGN KEY (CANCELLEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_NEXTINLINEBILLSESSION_ID FOREIGN KEY (NEXTINLINEBILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_COMPLETEDBY_ID FOREIGN KEY (COMPLETEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_FORDEPARTMENT_ID FOREIGN KEY (FORDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_STARTEDBY_ID FOREIGN KEY (STARTEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_SESSIONNUMBERGENERATOR_ID FOREIGN KEY (SESSIONNUMBERGENERATOR_ID) REFERENCES CATEGORY (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_AFTERSESSION_ID FOREIGN KEY (AFTERSESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_LASTCOMPLETEDBILLSESSION_ID FOREIGN KEY (LASTCOMPLETEDBILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SESSIONINSTANCE ADD CONSTRAINT FK_SESSIONINSTANCE_ARRIVALRECORD_ID FOREIGN KEY (ARRIVALRECORD_ID) REFERENCES FINGERPRINTRECORD (ID)
ALTER TABLE STAFFLEAVEENTITLE ADD CONSTRAINT FK_STAFFLEAVEENTITLE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFLEAVEENTITLE ADD CONSTRAINT FK_STAFFLEAVEENTITLE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFLEAVEENTITLE ADD CONSTRAINT FK_STAFFLEAVEENTITLE_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE SEX ADD CONSTRAINT FK_SEX_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SEX ADD CONSTRAINT FK_SEX_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGENTHISTORY ADD CONSTRAINT FK_AGENTHISTORY_BILLSESSION_ID FOREIGN KEY (BILLSESSION_ID) REFERENCES BILLSESSION (ID)
ALTER TABLE AGENTHISTORY ADD CONSTRAINT FK_AGENTHISTORY_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE AGENTHISTORY ADD CONSTRAINT FK_AGENTHISTORY_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE AGENTHISTORY ADD CONSTRAINT FK_AGENTHISTORY_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE AGENTHISTORY ADD CONSTRAINT FK_AGENTHISTORY_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE AGENTHISTORY ADD CONSTRAINT FK_AGENTHISTORY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGENTHISTORY ADD CONSTRAINT FK_AGENTHISTORY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE AGENTHISTORY ADD CONSTRAINT FK_AGENTHISTORY_AGENCY_ID FOREIGN KEY (AGENCY_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYSHEETCOMPONENT ADD CONSTRAINT FK_PAYSHEETCOMPONENT_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE PAYSHEETCOMPONENT ADD CONSTRAINT FK_PAYSHEETCOMPONENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYSHEETCOMPONENT ADD CONSTRAINT FK_PAYSHEETCOMPONENT_SENDINGINSTITUTION_ID FOREIGN KEY (SENDINGINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE PAYSHEETCOMPONENT ADD CONSTRAINT FK_PAYSHEETCOMPONENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_SPECIALITY_ID FOREIGN KEY (SPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_PACKEGE_ID FOREIGN KEY (PACKEGE_ID) REFERENCES ITEM (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLCOMPONENT ADD CONSTRAINT FK_BILLCOMPONENT_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE DEFAULTSERVICEDEPARTMENT ADD CONSTRAINT DEFAULTSERVICEDEPARTMENT_PERFORMINGDEPARTMENT_ID FOREIGN KEY (PERFORMINGDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE DEFAULTSERVICEDEPARTMENT ADD CONSTRAINT FK_DEFAULTSERVICEDEPARTMENT_RETIREDBY_ID FOREIGN KEY (RETIREDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DEFAULTSERVICEDEPARTMENT ADD CONSTRAINT FK_DEFAULTSERVICEDEPARTMENT_CREATEDBY_ID FOREIGN KEY (CREATEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DEFAULTSERVICEDEPARTMENT ADD CONSTRAINT FK_DEFAULTSERVICEDEPARTMENT_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE DEFAULTSERVICEDEPARTMENT ADD CONSTRAINT FK_DEFAULTSERVICEDEPARTMENT_BILLINGDEPARTMENT_ID FOREIGN KEY (BILLINGDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE DEFAULTSERVICEDEPARTMENT ADD CONSTRAINT FK_DEFAULTSERVICEDEPARTMENT_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE BILLITEMFINANCEDETAILS ADD CONSTRAINT FK_BILLITEMFINANCEDETAILS_CREATEDBY_ID FOREIGN KEY (CREATEDBY_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_ORIGINATINGSESSION_ID FOREIGN KEY (ORIGINATINGSESSION_ID) REFERENCES ITEM (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_FORDEPARTMENT_ID FOREIGN KEY (FORDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT SERVICESESSIONINSTANCE_SESSIONNUMBERGENERATOR_ID FOREIGN KEY (SESSIONNUMBERGENERATOR_ID) REFERENCES CATEGORY (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_FORINSTITUTION_ID FOREIGN KEY (FORINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_SPECIALITY_ID FOREIGN KEY (SPECIALITY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE SERVICESESSIONINSTANCE ADD CONSTRAINT FK_SERVICESESSIONINSTANCE_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE PATIENTSESSIONINSTANCEACTIVITY ADD CONSTRAINT PATIENTSESSIONINSTANCEACTIVITYPPOINTMENTACTIVITYID FOREIGN KEY (APPOINTMENTACTIVITY_ID) REFERENCES APPOINTMENTACTIVITY (ID)
ALTER TABLE PATIENTSESSIONINSTANCEACTIVITY ADD CONSTRAINT FK_PATIENTSESSIONINSTANCEACTIVITY_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE LOAN ADD CONSTRAINT FK_LOAN_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE LOAN ADD CONSTRAINT FK_LOAN_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SHIFTPREFERENCE ADD CONSTRAINT FK_SHIFTPREFERENCE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SHIFTPREFERENCE ADD CONSTRAINT FK_SHIFTPREFERENCE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SHIFTPREFERENCE ADD CONSTRAINT FK_SHIFTPREFERENCE_STAFF_ID FOREIGN KEY (STAFF_ID) REFERENCES STAFF (ID)
ALTER TABLE IXCAL ADD CONSTRAINT FK_IXCAL_CALIXITEM_ID FOREIGN KEY (CALIXITEM_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE IXCAL ADD CONSTRAINT FK_IXCAL_VALIXITEM_ID FOREIGN KEY (VALIXITEM_ID) REFERENCES REPORTITEM (ID)
ALTER TABLE IXCAL ADD CONSTRAINT FK_IXCAL_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERDASHBOARD ADD CONSTRAINT FK_WEBUSERDASHBOARD_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERDASHBOARD ADD CONSTRAINT FK_WEBUSERDASHBOARD_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WEBUSERDASHBOARD ADD CONSTRAINT FK_WEBUSERDASHBOARD_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMBATCH ADD CONSTRAINT FK_ITEMBATCH_MANUFACTURER_ID FOREIGN KEY (MANUFACTURER_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE ITEMBATCH ADD CONSTRAINT FK_ITEMBATCH_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE ITEMBATCH ADD CONSTRAINT FK_ITEMBATCH_LASTPURCHASEBILLITEM_ID FOREIGN KEY (LASTPURCHASEBILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE ITEMBATCH ADD CONSTRAINT FK_ITEMBATCH_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE ITEMBATCH ADD CONSTRAINT FK_ITEMBATCH_MAKE_ID FOREIGN KEY (MAKE_ID) REFERENCES CATEGORY (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_WEBCONTENT_ID FOREIGN KEY (WEBCONTENT_ID) REFERENCES WEBCONTENT (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_PATIENTINVESTIGATION_ID FOREIGN KEY (PATIENTINVESTIGATION_ID) REFERENCES PATIENTINVESTIGATION (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_PATIENTREPORT_ID FOREIGN KEY (PATIENTREPORT_ID) REFERENCES PATIENTREPORT (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE UPLOAD ADD CONSTRAINT FK_UPLOAD_CATEGORY_ID FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PATIENTITEM ADD CONSTRAINT FK_PATIENTITEM_PATIENT_ID FOREIGN KEY (PATIENT_ID) REFERENCES PATIENT (ID)
ALTER TABLE PATIENTITEM ADD CONSTRAINT FK_PATIENTITEM_ITEM_ID FOREIGN KEY (ITEM_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTITEM ADD CONSTRAINT FK_PATIENTITEM_BILL_ID FOREIGN KEY (BILL_ID) REFERENCES BILL (ID)
ALTER TABLE PATIENTITEM ADD CONSTRAINT FK_PATIENTITEM_PACKEGE_ID FOREIGN KEY (PACKEGE_ID) REFERENCES ITEM (ID)
ALTER TABLE PATIENTITEM ADD CONSTRAINT FK_PATIENTITEM_PATIENTENCOUNTER_ID FOREIGN KEY (PATIENTENCOUNTER_ID) REFERENCES PATIENTENCOUNTER (ID)
ALTER TABLE PATIENTITEM ADD CONSTRAINT FK_PATIENTITEM_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PATIENTITEM ADD CONSTRAINT FK_PATIENTITEM_BILLITEM_ID FOREIGN KEY (BILLITEM_ID) REFERENCES BILLITEM (ID)
ALTER TABLE PATIENTITEM ADD CONSTRAINT FK_PATIENTITEM_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FAMILY ADD CONSTRAINT FK_FAMILY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FAMILY ADD CONSTRAINT FK_FAMILY_CREATEDDEPARTMENT_ID FOREIGN KEY (CREATEDDEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE FAMILY ADD CONSTRAINT FK_FAMILY_CHIEFHOUSEHOLDER_ID FOREIGN KEY (CHIEFHOUSEHOLDER_ID) REFERENCES PATIENT (ID)
ALTER TABLE FAMILY ADD CONSTRAINT FK_FAMILY_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FAMILY ADD CONSTRAINT FK_FAMILY_EDITER_ID FOREIGN KEY (EDITER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE FAMILY ADD CONSTRAINT FK_FAMILY_CREATEDINSTITUTION_ID FOREIGN KEY (CREATEDINSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE FAMILY ADD CONSTRAINT FK_FAMILY_MEMBERSHIPSCHEME_ID FOREIGN KEY (MEMBERSHIPSCHEME_ID) REFERENCES CATEGORY (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_CONTINUEDTO_ID FOREIGN KEY (CONTINUEDTO_ID) REFERENCES WORKINGTIME (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_STAFFSHIFT_ID FOREIGN KEY (STAFFSHIFT_ID) REFERENCES STAFFSHIFT (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_ENDRECORD_ID FOREIGN KEY (ENDRECORD_ID) REFERENCES FINGERPRINTRECORD (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_PROFESSINOALPAYMENTBILL_ID FOREIGN KEY (PROFESSINOALPAYMENTBILL_ID) REFERENCES BILL (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_STARTRECORD_ID FOREIGN KEY (STARTRECORD_ID) REFERENCES FINGERPRINTRECORD (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE WORKINGTIME ADD CONSTRAINT FK_WORKINGTIME_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLENTRY ADD CONSTRAINT FK_BILLENTRY_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DRAWER ADD CONSTRAINT FK_DRAWER_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DRAWER ADD CONSTRAINT FK_DRAWER_DRAWERUSER_ID FOREIGN KEY (DRAWERUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE DRAWER ADD CONSTRAINT FK_DRAWER_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFDESIGNATION ADD CONSTRAINT FK_STAFFDESIGNATION_STAFFEMPLOYMENT_ID FOREIGN KEY (STAFFEMPLOYMENT_ID) REFERENCES STAFFEMPLOYMENT (ID)
ALTER TABLE STAFFDESIGNATION ADD CONSTRAINT FK_STAFFDESIGNATION_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFDESIGNATION ADD CONSTRAINT FK_STAFFDESIGNATION_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE STAFFDESIGNATION ADD CONSTRAINT FK_STAFFDESIGNATION_DESIGNATION_ID FOREIGN KEY (DESIGNATION_ID) REFERENCES CATEGORY (ID)
ALTER TABLE PAYMENTMETHODVALUE ADD CONSTRAINT FK_PAYMENTMETHODVALUE_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE PAYMENTMETHODVALUE ADD CONSTRAINT FK_PAYMENTMETHODVALUE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLFEEPAYMENT ADD CONSTRAINT FK_BILLFEEPAYMENT_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE BILLFEEPAYMENT ADD CONSTRAINT FK_BILLFEEPAYMENT_INSTITUTION_ID FOREIGN KEY (INSTITUTION_ID) REFERENCES INSTITUTION (ID)
ALTER TABLE BILLFEEPAYMENT ADD CONSTRAINT FK_BILLFEEPAYMENT_BILLFEE_ID FOREIGN KEY (BILLFEE_ID) REFERENCES BILLFEE (ID)
ALTER TABLE BILLFEEPAYMENT ADD CONSTRAINT FK_BILLFEEPAYMENT_PAYMENT_ID FOREIGN KEY (PAYMENT_ID) REFERENCES PAYMENT (ID)
ALTER TABLE BILLFEEPAYMENT ADD CONSTRAINT FK_BILLFEEPAYMENT_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE BILLFEEPAYMENT ADD CONSTRAINT FK_BILLFEEPAYMENT_CREATER_ID FOREIGN KEY (CREATER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERICON ADD CONSTRAINT FK_USERICON_WEBUSERROLE_ID FOREIGN KEY (WEBUSERROLE_ID) REFERENCES WEBUSERROLE (ID)
ALTER TABLE USERICON ADD CONSTRAINT FK_USERICON_WEBUSER_ID FOREIGN KEY (WEBUSER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE USERICON ADD CONSTRAINT FK_USERICON_DEPARTMENT_ID FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID)
ALTER TABLE SALARYCYCLE ADD CONSTRAINT FK_SALARYCYCLE_RETIRER_ID FOREIGN KEY (RETIRER_ID) REFERENCES WEBUSER (ID)
ALTER TABLE SALARYCYCLE ADD CONSTRAIN