Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 163 Next »

A workflow management and medical assessment tool used to support the entire life-cycle of a medical report for licensed aviation personnel.

Key functionality includes:
• A secure Internet-based application;
• Online access to current and previous medical history of applicants;
• Electronic submission of medical reports of licensed aviation personnel; and
• Online assessments of the reports and secure storage of medical documentation and
assessment results.

System Profile

System Full Name

Civil Aviation Medical Information System

System Full Name (French)

Systeme d'information medicine de l'Aviation civile

Subject Matter Expert

Michelle Coelho

Web Team Expert

Michaud, Marcel

Division

Medicine

NTARS Code

CA09

Source Code Location (Archived)

http://tfsprod:8080/tfs/CivAv/CAMIS-SIMAC/

Source Code Location

https://dev.azure.com/transport-canada/DSD-CIVAV%20Support/_git/CAMIS-SIMAC

Technology Assessment

Platform Type

Web (Internal/Secure)

Database Platform and Version

Oracle 18C

Development Language and Framework

ASP.NET + VB.NET

Operating System and Version

Windows Server 2016

Additional Dependencies

Authentication

Entrust True Pass

Environment Access Information

ENV

UNC

WWWFILES

URL

DB

DEV

\\tcwebscripts\tpwwwroot\eigdev\CAMIS-SIMAC

https://eigdev.tc.gc.ca/camis-simac/

CAMISD

PREACC

PREACC_CA

ACC

\\tcwebscripts\tpwwwroot\eigacc\CAMIS-SIMAC

https://eigacc.tc.gc.ca/camis-simac/

CAMISA

TRAINING

CAMIST

PROD

https://eig.tc.gc.ca/camis-simac/

CAMISP

System Overview

To provide a secure method for the submission of electronic Medical Examination Reports (MERs) for licensed aviation personnel and supporting medical documentation to Civil Aviation Medicine (CAM). Its purpose was to keep track of these medical reports, provide automated approval or specialized scrutiny by CAM medical resources, and store tombstone information on Civil Aviation Medical Examiners (CAMEs).

CAMIS Version 3.0 has been developed as a secure, thin-client, web-based, multi-tiered
application. Version 3.0 integrates CAMIS with the Distributed Air Personnel Licensing System
(DAPLS) ensuring synchronization of tombstone, address, and medical assessment information;
including medical license category and any medical licensing restrictions pertaining to the
issuance of the license (e.g. glasses must be worn).

The Civil Aviation Medical Information System (CAMIS) is a web based application used by the Civil Aviation Medicine (CAM) Group to track and assess medical reports of licensed aviation personnel.

CAMIS is tightly linked with eMER - eREM (share a database).

Entrust True Pass is used to authenticate users' MyKey before they are able to access the website.

 User Authentication

User Authentication in CAMIS is done through Entrust TruePass. Once the credentials for TruePass are entered, the application extracts some data from the request header passed from Entrust TruePass to CAMIS. Currently, CAMIS gets the users full name (not the user name) from the request header and through a select query, finds the user. If the user is found in the CAMIS database, the authentication process is complete.

More details:
LoginCheck method, which is a member of class clsCAMISUI, is called:

The following 2 lines get the user full name (last name , first name) from Entrust TruePass, passing to CAMIS through the request header:

entrust_client_id = Request.Headers.Get("Entrust-Client")
entrust_client_id = encoding.GetString(System.Convert.FromBase64String(entrust_client_id))

And then through the following query, CAMIS finds the user (please note entrust_client_id is used in the where clause of the query):

SELECT TC_USER_ID, PERSON_ID, FIRST_NAME_NM, LAST_NAME_NM, REGION_ETXT, REGION_FTXT EMAIL_TXT, ENTRUST_ID_TXT, REGION_CD, DESIGNATOR_TXT, USER_STATUS_CD, ROLE_CODES_E, ROLES_ETXT, ROLE_CODES_F, ROLES_FTXT 
from V_USER 
where USER_STATUS_CD = 1 
  and DATE_DELETED_DTE is null 
  and upper(ENTRUST_ID_TXT)='" & UCase(entrust_client_id) & "'"
;

If the above query returns a record, the user is found.

Future Improvement for CAMIS authentication process:
It is a more reliable approach to use username instead of actual user name. We have both username and actual user name (last name, first name) in CAMIS database, so instead of getting actual user name from Truepass request header, we can get username (header request is a key/value collection contaning information passed from Truepass to the application) and then modify above query (where clause) to get the user record in CAMIS database based on his/her username not the actual name, this way we can avoid the situations in which we enter the user’s full name with typo issue when creating a user in CAMIS, so even the user’s names has some typo, the application can still authenticate the user since it is based on the username not the user’s full name.

The pilot records are maintained in DAPLS. A certified pilot needs to be certified medically. DAPLS updates license numbers to CAMIS but I think CAMIS will update licenses' medical information to DAPLS (we will review it later).

Good To Know

The first version of CAMIS was put in production in 2004 in Java and updated in 2010 as a .net wersion.

CAM: Civil Aviation Medicine - the CAMIS Client, CAM will process the applications from eMERS in the internal CAMIS application

CAME: Doctors working at Apple Tree doing medicals on behalf of TC. Doctors make applications on behalf of the pilots. They will do these through eMER

Medical Examination Date has to be before or equal submitted eMER date, otherwise CAM can not process the record. Both of the dates are inside the table UA006_MEDICAL_EXAMINATION. Errors are sometime happening because eMER allows to submit to CAMIS the future examination date!!!

 Length of time that eMERs stay in "Draft" status

On eMER, the page is showing that all draft eMERs will be expired after 30 days

However, this info is not correct because the draft eMERs will not be expired until 400 days

This value is set inside the table WA007_SETTING


Files for testing attachment types:

see Files for testing attachment types

How-To and Fixes

Suggested credential for any fix: CAMIS_DATA_ADMIN@CAMISP

The file number on the front-end of the application that the clients refer to, is actually the LICENCE_NUM in the database.

This license number must exist in DAPLS first, and is automatically pushed into CAMIS every hour. You can check if it is in CAMIS by searching in CAMIS → Applicant → Applicant Search. Alternatively, you can check the database itself in MV002_DAPLS_AAPLICANT which is the materialized view into DAPLS and in YA003_APPLICANT which is the CAMIS copy once the push is done.


Account access issues:


CAME Accounts:

Checklist for the business users to check first:

Account Access: CAME cannot access/login to eMER - preliminary troubleshooting for business


Developer troubleshooting (queries)

Account Access: CAME cannot access/login to eMER (developer troubleshooting)

Account Creation on eMER:



Process for giving CAMES and CAME Associate Admins access to eMER on production.

These two process can be used by developers for creating test accounts on development and acceptance but not Production as the names of developers are not supposed to appear in the list of CAMES in the existing CAME dropdown.

This is the process that developers should use to create a test CAME troubleshooting account on production: Developer access to eMER on PROD

We should not submit data to production without collaborating with the business first.


Create 2FA admin account for CAMIS

Creating a CAME Associate Admin Profile


 Reassign a file (an eMER) to correct person/applicant

From time to time, the maintenance team receives requests to transfer an eMER from the file of an applicant, that it was incorrectly assigned to, by mistake, to the file corresponding to the correct applicant.

In order to perform such a file transfer request, you need to have a clear understanding of

  1. the incorrect_file_no = the file (licence) number of the incorrect applicant that the eMER is assigned to (provided by the requester in the ticket)

  2. correct_file_no the file number of the applicant the eMER has to be assigned to. (provided by the requester in the ticket)

IMPORTANT NOTE:
The file number that the requesters refer to corresponds to the LICENCE_NUM field in the following tables:

The table that you will be updating is UA006_MEDICAL_EXAMINATION. However, some of the queries used in obtaining the information to update the data are also referred to in the queries, so I have provided the names of all the tables (views etc. are not listed) in these listings.

(UA006_MEDICAL_EXAM39QE1437003 is what appears to be a backup table that pre-dates my experience with CAMIS and should be disregarded for the purpose of these transfers).


and FILE_NUMBER in these tables.

For example, LICENCE_NUM = 1234567 in table YA003_APPLICANT refers to the same value in the other tables having the COLUMN_NAME of LICENCE_NUM.

LICENCE_NUMBER=1234567 also refers to the equivalent of FILE_NUMBER = 1234567 in table MV002_DAPLS_APPLICANT (and the other tables having the COLUMN_NAME of FILE_NUMBER).

Some examples of previously completed file transfer tasks:

183798 Request to transfer eMER to correct file number - see also the subtask

194685 Update the incorrect assignment of eMer file number.

Performing the file transfer:

A note on the scripts: I have enclosed values to be replaced in { and }. For example {licence_num}.
They are indicated in the actual scripts with comment. This is a friendly reminder to replace the brackets as well as the placeholder text, where indicated.

Retrieving the applicant information.

  1. Find the applicant information for the incorrect and correct file numbers by running the attached script (embedded below) in an TOAD editor tab (or other SQL editor

    • Confirm that the file numbers, applicant name(s) and, if provided, date of birth, correspond with what the requester provided in the task. the same as the info given from the client.

    • Take note of the MEDICAL_EXAMINATION_ID as you will need it when updating the data.

      IMPORTANT: Reach out to the author of the task if you find unexplained discrepancies in the data at any point.

      Script to retrieve the applicant data for the correct and incorrect files.

      --This script is for retrieving information that is needed when transferring an eMER from an incorrect file (licence) 
      --to a correct licence. 
      
      select UA006_MEDICAL_EXAMINATION.MEDICAL_EXAMINATION_ID, UA006_MEDICAL_EXAMINATION.APPLICANT_PERSON_ID, UA006_MEDICAL_EXAMINATION.LICENCE_NUM, 
       UA006_MEDICAL_EXAMINATION.FIRST_NAME_NM, UA006_MEDICAL_EXAMINATION.FAMILY_NAME_NM, UA006_MEDICAL_EXAMINATION.DATE_BIRTH_DTE, UA006_MEDICAL_EXAMINATION.STAMP_NUMBER_TXT,
        UA006_MEDICAL_EXAMINATION.DATE_EMER_SUBMITTED_DTE
        
      from UA006_MEDICAL_EXAMINATION
       inner join YA003_APPLICANT on UA006_MEDICAL_EXAMINATION.LICENCE_NUM = YA003_APPLICANT.LICENCE_NUM
      where UA006_MEDICAL_EXAMINATION.LICENCE_NUM = {incorrect_file_no} -- replace {incorrect_file_no} with the file (licence) # of incorrect applicant. Remember to remove the { and }.
      OR UA006_MEDICAL_EXAMINATION.LICENCE_NUM = {correct_file_no} -- replace {correct_file_no} with the file (licence) # of correct applicant Remember to remove the { and }


Backup Production data prior to making changes:

IMPORTANT: Before updating any data, backup the result set, returned by the script, to your local drive. Once the change is approved and moved to 'Done” you can also delete the backup.

  1. To backup the data from TOAD:

    • right click anywhere in the result set (rows that were returned).

    • Select export data from the “pop-up” menu”.
      Settings highlights:

      • Export format: Excel file.

      • Output: set the path and filename for the file you will be saving.

      • In the Date format section, I recommend enabling the the checkbox “Hide time portion if zero
        Example settings (TOAD).


Performing the file transfer


You will require the following information, for the “correct” file from the earlier section ”Retrieving the Applicant information”

1) the correct LICENCE_NUM (aka “correct” file number provided by the requester).

2) the MEDICAL_EXAMINATION_ID corresponding with the correct LICENCE_NUM.


You will also require the APPLICANT_PERSON_ID corresponding with the correct LICENCE_NUM.

The following script:

  • retrieves the APPLICANT_PERSON_ID

  • allows you to verify that it corresponds with the applicant the data is being transferred to.

    You will need to replace {licence_num}, including { and } with the correct LICENCE_NUM

    Script to retrieve the APPLICANT_PERSON_ID

    select YA003_APPLICANT.APPLICANT_PERSON_ID, YA003_APPLICANT.LICENCE_NUM, MV002_DAPLS_APPLICANT.FILE_NUMBER, MV002_DAPLS_APPLICANT.GIVEN_NAMES, MV002_DAPLS_APPLICANT.SURNAME, MV002_DAPLS_APPLICANT.DATE_OF_BIRTH
    from YA003_APPLICANT
    left join MV002_DAPLS_APPLICANT
    on YA003_APPLICANT.LICENCE_NUM   = MV002_DAPLS_APPLICANT.FILE_NUMBER
    where LICENCE_NUM = {licence_num} --replace licence_num with the correct licence_number of the applicant. Remember to remove the { and }.



In a new/separate editor tab, run the following script to transfer the file from the incorrect applicant to the correct one:

--script to transfer data to the correct file number
--don't forget to replace the placeholders, including { and } with the correct values.
update UA006_MEDICAL_EXAMINATION 
set LICENCE_NUM = {license_no}, APPLICANT_PERSON_ID = {person_id} 
where MEDICAL_EXAMINATION_ID = {medical_examination_id}

Prior to committing the change:

  • Go back to the editor tab where the script to obtain the applicant information was run

    1. rerun the script.

    2. verify that the LICENCE_NUM and APPLICANT_PERSON_ID are correctly updated for the applicant the eMER information is being transferred to.

    3. COMMIT the change that was made (go back to the editor tab having the update script and click commit on the toolbar or type “commit” (and run) in an empty editor tab.

  • Document what you did - just in case we need to come back to it at a later date for any reason. Someone, maybe even you, will be grateful you did this should such a case arise, as it can help save time especially in reconstructing the scenario.

    • Create a related task and include the actual script you ran.

Verifying the change in CAMIS PROD

  • IMPORTANT: Verify in the application if the changes were successful, you can search the correct file no. and look in the Tests & Docs. and MERs tabs to verify if the files are there.

    Note: if the files listed under the Tests and Docs and / or MERS tabs are incorrect double check that you have used the correct APPLICANT_PERSON_ID in the update script.

    In CAMIS (prod):
    Select “Applicant search” from “Applicant” in the left hand menu:

Enter the file number in the resulting form:


Look in the Tests & Docs and the MER tabs in the resulting profile.

  1. Set the task to “Committed” and ask the requester to review that the new file has the correct information

 Fix incorrect eMER data in database and associated eMER HTML/PDF attachments

Overview

The support team occasionally receives requests to fix data that was been incorrectly submitted to CAMIS via an eMER.

There are two parts to fixing this issue:
1) correct the data in the database.
2) correct the html and pdf files that are automatically attached when an eMER is submitted. These files are not automatically regenerated. It is necessary to make the correction manually and replace the incorrect documents stored in the database with the corrected files.

Once the correction is completed, the updated information should be verified in CAMIS.

Pre-requisite:

The person who requests the task needs to provide the information (such as file number and applicant name/initials) in order to proceed. For some requests, additional information may be needed. This will have to be determined on a case by case basis based on each individual request.

The requestor will usually send a “file” number. That file number corresponds with LICENCE_NUM in UA006_MEDICAL_EXAMINATION.


Reproduce the issue

Use the information provided by the requestor to retrieve and view the data.

For the bug provided in the example, the requestor sent the file number and initials of the applicants provided in the example.



Queries to retrieve the record(s)

a) check which tables contain the column(s) with the value that needs to be changed).

select distinct OWNER, TABLE_NAME, COLUMN_NAME
from all_tab_columns
where column_name = {'COLUMN_NAME'} --replace 'COLUMN_NAME' with actual column names and remember to remove the { and }
order by TABLE_NAME asc;

Example:

select distinct OWNER, TABLE_NAME, COLUMN_NAME
from all_tab_columns
where column_name = 'ESOPHORIA_NBR'
order by TABLE_NAME asc;

Returns the names of the tables containing the column ESOPHORIA_NBR

The only table we need to be concerned with, in this result set, is UA006_MEDICAL_EXAMINATION



Obtain the MEDICAL_EXAMINATION_D from UA006_MEDICAL_EXAMINATION

select MEDICAL_EXAMINATION_ID, MEDICAL_EXAMINATION_DTE, LICENCE_NUM, FIRST_NAME_NM, FAMILY_NAME_NM, STAMP_NUMBER_TXT, ESOPHORIA_NBR from UA006_MEDICAL_EXAMINATION
where LICENCE_NUM in {replace with file numbers from requestor};

Example: the LICENCE_NUM values provided are samples only, not real values in a database, replace them with the “file numbers” from the requestor.

select MEDICAL_EXAMINATION_ID, MEDICAL_EXAMINATION_DTE, LICENCE_NUM, FIRST_NAME_NM, FAMILY_NAME_NM, STAMP_NUMBER_TXT, ESOPHORIA_NBR from UA006_MEDICAL_EXAMINATION
where LICENCE_NUM in (1, 2, 3, 4);

Since there were multiple records associated with each file number, it was best to work with the MEDICAL_EXAMINATION_ID for the record(s).

select MEDICAL_EXAMINATION_ID, MEDICAL_EXAMINATION_DTE, LICENCE_NUM, FIRST_NAME_NM, FAMILY_NAME_NM, STAMP_NUMBER_TXT, ESOPHORIA_NBR from UA006_MEDICAL_EXAMINATION
where LICENCE_NUM in ( 336002, 855969, 63424, 855523, 812436, 200546, 851754, 856404 )
and STAMP_NUMBER_TXT = {'STAMP_NUMBER'}
and ESOPHORIA_NBR=1  -- 1 represents Esophoria = Yes.

Example:

select MEDICAL_EXAMINATION_ID, MEDICAL_EXAMINATION_DTE, LICENCE_NUM, FIRST_NAME_NM, FAMILY_NAME_NM, STAMP_NUMBER_TXT, ESOPHORIA_NBR from UA006_MEDICAL_EXAMINATION
where LICENCE_NUM in ( 1, 2, 3, 4 )
and STAMP_NUMBER_TXT = {'A123'}
and ESOPHORIA_NBR=1 -- 1 represents Esophoria = Yes.


Query to obtain document ids:

select UA006_MEDICAL_EXAMINATION.MEDICAL_EXAMINATION_ID, UA035_MEDICAL_EXAMINATION_DOC.MEDICAL_EXAMINATION_ID, UA006_MEDICAL_EXAMINATION.LICENCE_NUM,
UA006_MEDICAL_EXAMINATION.FIRST_NAME_NM, UA006_MEDICAL_EXAMINATION. FAMILY_NAME_NM, UA006_MEDICAL_EXAMINATION.STAMP_NUMBER_TXT,   UA035_MEDICAL_EXAMINATION_DOC.DOCUMENT_NBR,
UA018_DOCUMENT.DOCUMENT_NBR, UA018_DOCUMENT.DOCUMENT_UPLOAD_DTE, UA018_DOCUMENT.FILENAME_TXT, UA018_DOCUMENT.FILE_CONTENT_TXT, UA018_DOCUMENT.RDIMS_NUM, UA018_DOCUMENT.DOCUMENT_TYPE_CD
from UA006_MEDICAL_EXAMINATION, UA035_MEDICAL_EXAMINATION_DOC, UA018_DOCUMENT
where UA006_MEDICAL_EXAMINATION.MEDICAL_EXAMINATION_ID in {(medical examination ids)}
and UA006_MEDICAL_EXAMINATION.MEDICAL_EXAMINATION_ID = UA035_MEDICAL_EXAMINATION_DOC.MEDICAL_EXAMINATION_ID
and UA035_MEDICAL_EXAMINATION_DOC.DOCUMENT_NBR = UA018_DOCUMENT.DOCUMENT_NBR
and FILENAME_TXT like '%mer%';

Example (note: the numbers in the where clause are samples, not actual values in any db).

UA006_MEDICAL_EXAMINATION.FIRST_NAME_NM, UA006_MEDICAL_EXAMINATION. FAMILY_NAME_NM, UA006_MEDICAL_EXAMINATION.STAMP_NUMBER_TXT, UA035_MEDICAL_EXAMINATION_DOC.DOCUMENT_NBR,

UA018_DOCUMENT.DOCUMENT_NBR, UA018_DOCUMENT.DOCUMENT_UPLOAD_DTE, UA018_DOCUMENT.FILENAME_TXT, UA018_DOCUMENT.FILE_CONTENT_TXT, UA018_DOCUMENT.RDIMS_NUM, UA018_DOCUMENT.DOCUMENT_TYPE_CD

from UA006_MEDICAL_EXAMINATION, UA035_MEDICAL_EXAMINATION_DOC, UA018_DOCUMENT

where UA006_MEDICAL_EXAMINATION.MEDICAL_EXAMINATION_ID in (1234567, 2234567, 3234567)

and UA006_MEDICAL_EXAMINATION.MEDICAL_EXAMINATION_ID = UA035_MEDICAL_EXAMINATION_DOC.MEDICAL_EXAMINATION_ID

and UA035_MEDICAL_EXAMINATION_DOC.DOCUMENT_NBR = UA018_DOCUMENT.DOCUMENT_NBR

and FILENAME_TXT like '%mer%';


Backing up the tables:

see also Production - Backup the database data, HTML and PDF files related to the incorrect value entries

1) Query to back up affected record(s) in UA006_MEDICAL_EXAMINATION:

select *
from UA006_MEDICAL_EXAMINATION
where MEDICAL_EXAMINATION_ID in {(medical examination id(s)};


2) Query to backup affected records in UA035_MEDICAL_EXAMINATION_DOC

Example (note: the numbers in the where clause are samples, not actual values in any db).
select *
from UA006_MEDICAL_EXAMINATIONwhere MEDICAL_EXAMINATION_ID in (1234567, 2234567, 3234567);

select *
from UA035_MEDICAL_EXAMINATION_DOC
where MEDICAL_EXAMINATION_ID in {(medical examination id(s)}


3) Query to backup affected records in UA018_DOCUMENT

select * from UA018_DOCUMENT
where DOCUMENT_NBR in (document number)

Example:
select *
from UA018_DOCUMENTwhere DOCUMENT_NBR in (123456, 23456)


Backup the original HTML and PDFs from the database:

see also Child task 208272: Production - Backup the database data, HTML and PDF files related to the incorrect value entries

  • create a subdirectory, with a name like “original” in your backup location.
    Example:

  • In UA018_DOCUMENT, double-click on "HUGEBLOB" in the FILENAME_CONTENT_TXT column.
    for the records returned by the “Query to backup affected records in UA018_DOCUMENT

  • A pop-up will appear.
    Select “Save to file”.

  • Save the file with the original name from the FILENAME_TXT column (do this for all the relevant HTML Files.

Update the database data:


Update the appropriate column(s) in the database. Remember to commit the change (commit statement is not included in the queries)

update UA006_MEDICAL_EXAMINATION
set ESOPHORIA_NBR = NULL
where MEDICAL_EXAMINATION_ID in {(1234567, 2234567, 3234567)}

Check that the value you are changing a result for is consistent with the related section of the eMER. If you are unsure, check with the requestor.

For bug 206143 (CAME entered values that were incorrect by error), I updated the ESOPHORIA_NBR from “yes” to “No” depending on how the CAME set the related values of “HYPERPHORIA” and “EXOPHORIA. That was because I noticed that sometimes the CAME specifically entered "No" for Hyperphoria and Exophoria and in those cases I also specifically set Esophoria to No to keep the report consistent., For three of the records, Hyperphoria and Exophoria were NULL so I set Esophoria to NULL for those cases.

see also child task 207061: Backup and update Incorrect esophoria values in table UA006_MEDICAL_EXAMINATION for identified applicants

Update statements to set ESOPHORIA_NBR to NULL for the following three records.

update UA006_MEDICAL_EXAMINATION
set ESOPHORIA_NBR = NULL
where MEDICAL_EXAMINATION_ID in {(medical examination id(s))}

Update ESPOPHORIA_NBR to 0 (NO) for these five records)
update UA006_MEDICAL_EXAMINATION
set ESOPHORIA_NBR = 0
where MEDICAL_EXAMINATION_ID in {(medical examination id(s))}

Update the HTML and PDF files

  • To update the HTML and PDF files in the database:

  • make a copy of the directory where you downloaded the HTML files and PDF files as described in the section “Backup the original HTML and PDFs from the database”. For example, call the directory “revised”.

    Example:

  • open the HTML file in a plain text editor such as notepad or notepad++

  • update the value.

  • save the HTML file to the same filename that is already in the database (UA018_DOCUMENT in the FILENAME_TXT column)

  • open the HTML file in a browser.

  • print to PDF.

  • save the PDF file to the same filename that is already in the database (UA018_DOCUMENT in the FILENAME_TXT column)

Replace the Files in the database

  • Once the HTML and PDF files are updated they will have to be uploaded to the database. The replacement of these files has to be done from the schema browser. It cannot be done in a result set that was retrieved by a query.

  • Navigate to “UA018_DOCUMENT

  • To ensure I was replacing the correct files, I found it easiest to filter on the DOCUMENT_NBR of the files I was updating. As a reminder, the DOCUMENT_NBR is available in the query used to backup UA018_DOCUMENT (see Query to backup affected records in UA018_DOCUMENT earlier in this article).

  • Double click the n UA018_DOCUMENT, double-click on "HUGEBLOB" in the FILENAME_CONTENT_TXT column.

  • This time click “Load a file”

  • Load both the HTML file and the PDF files. (you will need to click the “X” in the upper right corner of the pop-up, to close it, after you load each file.

  • Commit the change.

  • Repeat as necessary, for affected file numbers in the request.

Testing that the file was correctly loaded to the database:

  • In UA018_DOCUMENT, double-click on "HUGEBLOB" in the FILE_CONTENT_TXT column for the file you want to check.

  • Select “Save to file” in the pop-up.

  • Save the file to a temporary name. For example, I saved the html files I was testing to h.html, and pdf files to p.pdf in the folders for each “file” I had to update

  • Verify that the files open and contain the updates that were made.

In one case, the browser could not open the html and pdf files I updated. This was because the file name contained multiple spaces in one spot. For example, instead of the FILENAME_TXT column’s filename having Text-Text Text--mer.html it had Text-Text Text--mer.html.

I removed the extra spaces in FILENAME_TXT and PATH_NAME_NM columns for the affected record.



Checking the record(s) in CAMIS

  • The final step, before asking the requestor to review the change is to login to CAMIS (prod).

  • Important: clear the browser cache before performing the checks.

  • Retrieve the file.

  • Under the Tests & Docs tab, view the HTML and PDF files that were replaced.



    . Verify that they contain the correct updates.

 Applicant Merge (Can be used for removing duplicates)

Required info: The license number of the first applicant and of the second.

Make sure to first check that both license numbers exist in CAMIS. If not, you will need to wait for it to get populated in DAPLS.

The following script merges an applicant into another one (MERs, related activities, assessments, docs, etc.).

Create a related task and include the script you ran.

Verify in the application if the changes were successful, you can search the correct file no. and look in the Tests & Docs. and MERs tabs to verify if the files are there.

In CAMIS (prod):
Select “Applicant search” from “Applicant” in the left hand menu:

Enter the file number in the resulting form:


Look in the Tests & Docs and the MER tabs in the resulting profile.

Set the task to “Committed” and ask the requester to review that the new file has the correct information

Once the merge is verified by the requester, they should contact the DAPLS team in order to delete the duplicate file number.

An example of a task for merging a duplicate file is

182540 Duplicate CAMIS File - record transfer request

 CAMIS/eMER Region Change

Required info: First and last name of applicant and their new region.

Within CAMISP.WORLD, in the table CAMIS.UA006_MEDICAL_EXAMINATION, change the CAMIS_REGION_CD to the requested region.

The region value list is available in CAMIS.TA057_CAMIS_REGION. As of 2021-07-28, the region list is:

Code

Name (English)

431

Outside of Canada-Ottawa (HQ)

432

Quebec - Dorval (UL)

433

Ontario - Toronto (YZ)

434

Central - Winnipeg (WG)

435

Western - Edmonton (XD)

436

Pacific - Vancouver (VR)

437

Atlantic - Ottawa (QM)

3642

Prairie Northern - (WG/XD)

 Document Fix (eMER submits as PDF, CAMIS expects HTML)

The following script is used to fix an ongoing issue with the document naming scheme. The issue is that eMER adds the date of submission in the file name, but CAMIS doesn’t expect it.

eMER does: {APPLICANT_NAME}-{SUBMISSION_DATE}-mer.[html|pdf]

CAMIS expects: {APPLICANT_NAME}--mer.html

Script to run:

UPDATE UA018_DOCUMENT SET FILENAME_TXT=REGEXP_REPLACE(FILENAME_TXT,'-mer.html$', '--mer.html') WHERE REGEXP_LIKE(FILENAME_TXT,'[^-]-mer.html$')
 Cannot access CAMIS through the H drive. The user can log in with H drive but has the authentication error

Please send the email to Service Desk team or Web team with a note that the issue is with the entrust token which has been not being validated successfully before getting to CAMIS

 Creating a Unique CAME Profile

 Creating a CAME Associate Admin profile

The following are required in order to create a CAME Associate Admin Profile:
User must be added into 2FA database before they are able to give eMER access to CAMEs
Create 2FA admin account for CAMIS

You need to know the STAMP number of the CAME(s) that the CAME Associate will be linked to.

Note: CAME Associates are not normally given 2FA admin accounts

  1. Complete profile:
    Under ADMIN:

    • Click CAME Associate Admin on side menu

    • Fill in CAME profile and click Add/Update - message confirming CAME Associate is displayed.

    • If the eMER Activation code is not created check your 2FA admin permissions.

      Note: the Copy for the “eMER activation Code does not work. The work around is to select the text of the activation code manually.

  2. On successful creation of the CAME Associate Profile, the user will create a GC Key and will be able to log into eMER. The CAME Associate can then submit medical examination records to CAMIS.

    This is an example of a CAME Associate Profile that is ready to be activated:



 2FA SMS code is not being sent to users cell phone

User must be added into 2FA database before they are able to give eMER access to CAMEs
Create 2FA admin account for CAMIS

To log in to eMER, the user must have a valid cell-phone number in their CAMIS profile in order to receive the 2FA SMS code.

  1. Log in to CAMIS and go to ADMINCAME Admin.

  2. In the Select Existing CAME dropdown, find the user (sorted by last name).

  3. Scroll down to the eMER section of the page and verify that profile is active & the number in the eMER Cell Phone # field is composed of only digits (no spaces even at the end, no special characters).

  4. If there are no issues with the cell #, check the 2FA database logs for any errors.

    • TWOFA_USER@TTSXP18

  5. Check the Twilio logs.
    Note: the following can provide access to Twilio: Michelle Le, Michelle Coelho, Alain Asgill, Peter Khouri.

    • Log in to Twilio.
      Note: After receiving access to Twilio, when you login for the first time you will need to activate
      your access to the TC Account from within Twilio. Look at the drop down above the Monitor tab

      Example:



      From the TC Account in Twilio:

    • Click on Monitor in the left-hand menu.

    • Go to LogsMessaging.

    • Filter the logs by the cell # from step 3

6. If we can not find any error in above steps, and even if the eMer status is changed from Inactive to active and CAM still does not get the 2FA SMS code:

Email to a CAMIS administrator to keep a copy of original number, modify that phone number in CAMIS to the different one (fake ones), with the “active” eMER status, click update, then put back original phone number, click update. CAMIS administrator then will need to generate a new activation code. CAM will sign in eMER using the new activation code and he/she would receive 2FA SMS codes after that.

 Delete items from "My Tasks"

Note: The assignor is able to delete any tasks they created.

Tasks are saved in UA047_TASK table. You can filter by TASK_TYPE_CD (refer to TA082_TASK_TYPE for the code) and TASK_DESCRIPTION_TXT (LIKE '%file_no%'). Once you find the correct task, set the DATE_DELETED_DTE to SYSDATE.

 Incorrect name for the applicant is displayed in the “Applicant Details” section of the medical record (eMER)

Example: Open CAMIS, enter the file no, get to the specific MER record and “View eMER record”, the “Submit MER Confirmation” will show the Applicant Details' name is different from Applicant (on top of the page). On the same page, go to the “Documents” section, you must see the wronglastname-wrongfirstname--mer.html and wronglastname-wrongfirstname--mer.pdf.

How this issue can happen:

CAME (doctor) creates a new applicant on EMER application with the right name of applicant

He enters medical data, however at Applicant Details section, he enters the wrong given name and wrong last name. He has to view, click the check box before click “Submit MER”. However, he might forget to review the names here

After summitting MER, the file has been submitted to CAM (CAMIS client) and there is a wronglastname-wrongfirstname--mer.html which contains all medical data is saved in the UA018_document table with a document_nbr

On CAMIS application, CAM is now opening the file, checking the “incoming eMER' and assigning the file to a specific CAM . At this point, I do not know yet that specific CAM has done something on the file (he might confirm it), then there is wronglastname-wrongfirstname--mer.pdf saved in the UA018_document table with the next document_nbr

Database Notes

We can find licence_nbr and medical_examination_id in UA006_medical_examination

WE can find html and pdf file under UA018_document

Here is the SQL we can use to check if the person has the right names in the medical files. These info will be shown on the file names

This below SQL is from PK_EMER_MEDICAL_EXAMINATION.SP_get_mer_step6

SELECT ua018_document.document_nbr,
  filename_txt,
  document_description_txt,
  document_date_dte,
  document_upload_dte,
  document_status_cd
FROM ua018_document, ua035_medical_examination_doc
WHERE ua018_document.document_nbr = ua035_medical_examination_doc.document_nbr
  AND medical_examination_id = p_medical_examination_id 
  AND (document_status_cd IN ('1', '3', '4', '5', '6'))
  AND ua018_document.date_deleted_dte IS NULL;

Fix: Using database within CAMISP.WORLD,

  1. Update the first name and last name in database for this MER record

    • UA006_MEDICAL_EXAMINATION: Filter the record using medical_examination_id

  2. Update the record with the new HTML file

    • UA018_DOCUMENT: Filter the record using the specific document_nbr, at the File_Content_Txt column, right click on the field "HugeBlob", choose "Pop Up Editor", save the file with LastName-Firstname--mer.html at your local, open that HTML by Notepad, changing the names at the Applicant Details, save it. Now at “Pop Up Editor” of the same record, we load the changed html file, change the path_name_nm, FileName_txt, Document_Description_txt as LastName-FirstName--mer.html. In order to have the Load option enable on “Pop Up Editor”, we should use the Schema->UA018_document and filter the document_nbr to Load a file rather than using the ‘Select’ statement.

  3. Update the record with the new PDF file

    • Double click on the HTML file at your local (at step 3) to open it in Google Chrome or Microsoft Edge, print to a pdf file with LastName-Firstname--mer.pdf, remember remove the option to print “Headers and Footers”

    • On UA018_document, filter the record by using the specific document_nbr, at the File_Content_Txt column, right click on the field "HugeBlob", choose "Pop Up Editor", we load the pdf file, change the path_name_nm, FileName_txt, Document_Description_txt as LastName-FirstName--mer.pdf

  4. Test by opening CAMIS, go to the same file number, click on View MER record, check whether applicant detail’s name is correct and the documents are now shown with the rightlastname-rightfirstname--mer.html and rightlastname-rightfirstname--mer.pdf

 Access to eMER

In CAMIS, create a new CAME:

  1. Enter CAME profile information, click Add/Update, screen refreshes

  2. Immediately click the Add New Address button and enter CAME office address, click Add/Update Address button, screen refreshes

    • Important: all CAME’s MUST have an office address

  3. Select your new CAME from the CAME list drop down → Screen refreshes showing the CAME record

  4. Fill in the eMER section with the tester’s cell phone number & note the activation key

In eMER:

  1. Create a new GC key account to be associated with the new CAME profile (or use an existing one if you have one).

  2. eMER will prompt you to enter activation key because your GC Key account is not recognized as an existing eMER account

  3. You should now have access to submit eMERs

 Future date of eMer is accepted

The clients cannot modify eMer on Camis because submitted date of the eMER is before the medical examination date. This happens when CAM chooses the examination date in the future

Fix: Find the medical_examination_id from the client’s information, on UA006_MEDICAL_EXAMINATION, change the medical_examination_dte is before or equal date_emer_submitted_dte

 eMER access issue: CAM is unable to access eMER system, receiving error messages

Error message: "Cannot insert Null into (CAMIS"."UA006_Medical_examination"."Stamp_number_txt")

Fix:

  1. Get the CAME’s stamp number(s) info based on the client’s request by running the following sql:

    SELECT * FROM UA045_STAMP UA045 WHERE stamp_number_txt in ('STAMP NUMBER');

*”The client” usually refers to the requestor noted on the bug.

  1. Look at the stamp_return_dte for the stamp number that the CAME is having issues with and check whether this value is not null and in the past (before today’s date).

  2. If the date is in the past, send an email to the client and ask them to clear the value of the stamp_return_dte

Error message: “An unexpected condition occurred while executing this request. To keep your account secure, you are unable to process further. Please exit your browser and try again. Please contact support to resume your access”. A doctor receives a new activation code, uses this activation code in eMer, then this error is shown up. Below is a temporary fix because we are in action to improve this bug in next releases

Fix:

Requirements: Developer needs to have been added to CAMIS with the usual privileges for that type of account:

  1. System Administrator

  2. eMER - CAME/Associate User Administrator

  3. eMER Triage


At a minimum, the developer also need to have an entry in AC040_STAKEHOLDER. Set the GLOBAL_USERID_LBL to the corresponding TWOFA_USERID_LBL for their record in AA008_APPLICATION_USER

The scripts required to check the CAME and CAME ASSOCIATE data are provided in the instructions and are also attached as sql files. These scripts are also attached to task
195476 Update the documentation in confluence

  1. You will need the following scripts for checking the data:

    Scripts for checking CAME DATA

  • CAMIS_CHECK_CAME_ACCESS.sql for CAMEs (don’t use for CAME Associates)

  • TWOFA_check_ACCESS_CAME_and_CAME_ASSOCIATE_DATA.sql

    Scripts for checking CAME Associate data

  • CAMIS_CHECK_CAME_ACCESS.sql for CAMEs (don’t use for CAMEs)

    CAME’s ACCOUNT ACCESS

  1. Get the CAME’s STAMP number from the ticket.

  2. Log into CAMIS

  3. Retrieve CAME’s account:

    • In the CAMIS menu, select “CAME Admin” from ADMIN

    • Select the CAME from the list (Select Existing CAME)

    • In the CAME Profile section of the CAME account that you have retrieved, verify that the STAMP ID matches the stamp number in the ticket.
      Example:

  4. Click the “Reset” button in the eMER section.

  5. click the “Add/Update eMER status” button in the eMER section.

  6. Verify account is active. If inactive, set it to active.
    Example:


    If you have to change the Status, click the “Add/Update eMER status” button in the eMER section.

  7. Generate a new ACTIVATION code for the CAME:
    In the eMER section press the “Create New Activation Code” button. Then press the
    Add/Uppdate eMER Status button. The code should change. (If the code does not change for any reason, Samia Dawi is able to generate new activation codes as well).

  8. Run the attached script “CAMIS_CHECK_CAME_ACCESS.sql” to check the data in CAMIS. It retrieves the data that we have to check in CAMIS using a single query.

--This script checks the data related to a CAME's account. It is not valid for CAME ASSOCIATEs as there is no data in AA0011_EXTERNAL_ACCESS for CAME ASSOCIATES.
--Please use the CAME_ASSOCIATE script to check data for a CAME ASSOCIATE.
--If the values return do not match the expected values it will be necessary to update the data - instructions are provided as part of the CAME ACCESS support documentation

select UA045_STAMP.STAMP_NUMBER_TXT, 
  UA045_STAMP.STAMP_RETURN_DTE, --if the STAMP_RETURN_DTE is in the past, update it to be blank
  YA096_PERSON.PERSON_ID, YA096_PERSON.LAST_NAME_NM, YA096_PERSON.FIRST_NAME_NM,
  AA008_APPLICATION_USER.USER_STATUS_CD, -- expected value is 1, 
  AA011_EXTERNAL_ACCESS.DATE_DELETED_DTE, --expected value is blank. That is, there should not be a date here.
  AA011_EXTERNAL_ACCESS.ACTIVATION_KEY_STATUS_CD, -- expected value is 20,
  AA008_APPLICATION_USER.TWOFA_USERID_LBL --IMPORTANT: copy the TWOFA_USERID_LBL to notepad as you will need it when checking the CAME's data in the TWOFA database

from (((YA096_PERSON
 inner join AA008_APPLICATION_USER on YA096_PERSON.PERSON_ID = AA008_APPLICATION_USER.PERSON_ID)
 inner join AA011_EXTERNAL_ACCESS on  YA096_PERSON.PERSON_ID = AA011_EXTERNAL_ACCESS.EXTERNAL_APPLICATION_USER_ID  )
 inner join  UA045_STAMP on YA096_PERSON.PERSON_ID = UA045_STAMP.MEDICAL_EXAMINER_PERSON_ID )
where UA045_STAMP.STAMP_NUMBER_TXT in 'stamp_number_txt' --replace the text stamp_number_txt with the stamp number provided in the ticket. For example ('A2260') or ('A2260', 'A1111') etc.

The expected output of running the script is as shown below:
STAMP_RETURN_DTE if the STAMP_RETURN_DTE is in the past, update it to be blank (source table is AA045_STAMP)
USER_STATUS_CD should be 1 - 1 = Active. (source table is AA008_APPLICATION_USER)
DATE_DELETED_DTE should be Blank/NULL/empty (source table is AA008_APPLICATION_USER)
ACTIVATION_KEY_STATUS_CD should be 20. (source table is AA011_EXTERNAL_ACCESS)
TWOFA_USERID_LBL - IMPORTANT Copy this value to notepad. You will need it for querying the 2FA table. (source table is AA011_EXTERNAL_ACCESS)

Important:
If the user account is NOT active (table AA008_APPLICATION_USER) it will be necessary to:

Set the account active through CAMIS or with an update statement in the database.

The account will also have to reset and a new activation code generated. The CAME will then have to re-activate their account.

See also Security Check Failed message



5. In editor another tab connect to the TWOFA database and Run the attached script “TWOFA_check_ACCESS_CAME”. It retrieves the data that we have to check in TWOFA using a single query.

--This script checks the TWOFA data related to a CAME's account. 

--If the values return do not match the expected values it will be necessary to update the data - instructions are provided as part of the CAME ACCESS support documentation

select AC040_STAKEHOLDER.STAKEHOLDER_ID, AC040_STAKEHOLDER.NAME_FIRST_NM, AC040_STAKEHOLDER.NAME_LAST_NM,
AC040_STAKEHOLDER.DATE_DELETED_DTE,  -- must be empty
AC040_STAKEHOLDER.ACCOUNT_LOCKED_IND, -- has to be 0
AC044_EXTERNAL_STAKEHOLDER.DATE_ACTIVATED_DTE, --has to be empty (when this is empty, the doctor is asked to put in his Activation Code)
AC044_EXTERNAL_STAKEHOLDER.DATE_EXPIRED_DTE, -- must be empty
AC044_EXTERNAL_STAKEHOLDER.ACTIVATION_CODE_TXT, -- must match the code in CAMIS
AC044_EXTERNAL_STAKEHOLDER.TELEPHONE_NUMBER_NUM, --telephone number has to be in format with all numbers, no space, no special character, no country code in front (+1)
AC044_EXTERNAL_STAKEHOLDER.IDENTITY_MBUN_NUM -- identity_mbun_num has to be cleared (Empty) because if this is not being cleared, then the mbun column can be populated from the past value from the browser.

from  AC040_STAKEHOLDER
inner join AC044_EXTERNAL_STAKEHOLDER on AC040_STAKEHOLDER.STAKEHOLDER_ID = AC044_EXTERNAL_STAKEHOLDER.STAKEHOLDER_ID 
where GLOBAL_USERID_LBL='replace global_userid_lbl'  -- replace global_userid_lbl with the value obtained when you ran the CAMIS query.

Important: you will need the TWOFA_USERID_LBL obtained from the script run in step 2.
An example of the expected output of running the script is shown below.

6. If the data is not correct in CAMIS you will need to run the scripts from the section “UPDATE” Scripts for correcting the CAMIS DATA” and “UPDATE” Scripts for correcting TWOFA DATA”.

7. Run the relevant scripts from step 2 and 3 again to confirm that the data is correctly updated.

8. Ask requester to get activation code from CAMIS  and send to CAME, have CAME confirm that they can login.

9. If CAME cannot login check the “Additional items to check” section for further info.


CAME ASSOCIATE’s Admin Account Access

  1. Log into CAMIS.

  2. Retrieve CAME Associate Admin’s account:

    • In the CAMIS menu, select “CAME Admin” from ADMIN


  3. Select the CAME Associate Admin from the list (Select Existing CAME Admin Associate).
    Example:


  4. In the Associated CAME(s) text box in the CAME Associate Profile of the CAME Admin’s account that you have retrieved, verify that the STAMP ID matches the stamp number in the ticket.

    Example:


  5. Verify account is active. If inactive, set it to active.

    Example:

  6. If you have to change the Status, click the “Add/Update” button near the bottom of the CAME Associate Profile section.

  7. Generate a new ACTIVATION code: press the “Create New Activation Code” button. Click the “Add/Update” button near the bottom of the CAME Associate Profile section

  8. Run the attached script “CAMIS_CHECK_CAME_ASSOCIATE_ACCESS.sql” to check the data in CAMIS. It retrieves the data that we have to check in CAMIS using a single query. TWOFA is not applicable.

--This script checks the data related to a CAME Associated's account. It is not valid for CAME.
--Please use the CAME_ASSOCIATE script to check data for a CAME ASSOCIATE.
--If the values return do not match the expected values it will be necessary to update the data - instructions are provided as part of the CAME ACCESS support documentation

select UA045_STAMP.STAMP_NUMBER_TXT, 
  UA045_STAMP.STAMP_RETURN_DTE, --if the STAMP_RETURN_DTE is in the past, update it to be blank
  YA096_PERSON.PERSON_ID, YA096_PERSON.LAST_NAME_NM, YA096_PERSON.FIRST_NAME_NM,
  AA008_APPLICATION_USER.USER_STATUS_CD, -- expected value is 1, 
  AA008_APPLICATION_USER.TWOFA_USERID_LBL --IMPORTANT: copy the TWOFA_USERID_LBL to notepad as you will need it when checking the CAME's data in the TWOFA database

from ((YA096_PERSON
 inner join AA008_APPLICATION_USER on YA096_PERSON.PERSON_ID = AA008_APPLICATION_USER.PERSON_ID)
 inner join  UA045_STAMP on YA096_PERSON.PERSON_ID = UA045_STAMP.MEDICAL_EXAMINER_PERSON_ID )
 where UA045_STAMP.STAMP_NUMBER_TXT in ('replace stamp_txt') --replace the text stamp_number_txt with the stamp number provided in the ticket. For example ('A2260') or ('A2260', 'A1111') etc.

STAMP_RETURN_DTE should be Blank/NULL/empty (source table is AA045_STAMP)
USER_STATUS_ID should be 1 - 1 = Active. (source table is AA008_APPLICATION_USER)
DATE_DELETED_DTE should be Blank/NULL/empty (source table is
AA008_APPLICATION_USER)



UPDATE SCRIPTS to correct data in CAMIS for CAMEs and CAME Admins


If STAMP_RETURN_DATE is NOT NULL

update UA045_STAMP
set STAMP_RETURN_DTE=''
where STAMP_NUMBER_TXT='stamp_number_txt'; –- replace stamp_number_txt with the STAMP_NUMBER_TXT that was retrieved by the single combined query.

If USER_STATUS_ID is not 1 (ACTIVE)

update AA008_APPLICATION_USER
set USER_STATUS_CD=1
where PERSON_ID = 'application_user_person_id'; –- replace person_id with the PERSON_ID that was retrieved by the single combined query.

IF DATE DELETED DTE is not NULL (this is for CAME only as there is no DATA in AA0011_EXTERNAL_ACCESS for CAME ASSOCIATES)

update AA011_EXTERNAL_ACCESS
set DATE_DELETED_DTE=''
where EXTERNAL_APPLICATION_USER_ID  = 'aa0011 external_application_user_id' –- replace external_application_user_id with twith the PERSON_ID that was retrieved by the single combined query.

IF ACTIVATION_KEY_STATUS_CD is not 20 (this is for CAME only as there is no DATA in AA0011_EXTERNAL_ACCESS for CAME ASSOCIATES)

update AA011_EXTERNAL_ACCESS
set ACTIVATION_KEY_STATUS_CD='20'
where EXTERNAL_APPLICATION_USER_ID  = ‘aa0011 external_application_user_id’;  –- replace external_application_user_id with the stamp number that was retrieved by the single combined query.


UPDATE SCRIPTS to correct data in TWOFA for CAMEs (does not apply to CAME Admins)

IF DATE DELETED DTE is not NULL in AC040_STAKEHOLDER:

update AC040_STAKEHOLDER
set DATE_DELETED_DTE = ''
where GLOBAL_USERID_LBL='replace global_userid_lbl'  -- replace global_userid_lbl with the value obtained when you ran the CAMIS query.


IF ACCOUNT LOCKED IN IS NOT 0 AC040_STAKEHOLDER:

update AC040_STAKEHOLDER
set ACCOUNT_LOCKED_IND = '0'
where GLOBAL_USERID_LBL='replace global_userid_lbl'  -- replace global_userid_lbl with the value obtained when you ran the CAMIS query.

IF DATE ACTIVATED DTE is not NULL in AC044_EXTERNAL_STAKEHOLDER:

update AC044_EXTERNAL_STAKEHOLDER
set DATE_DELETED_DTE = ''
where STAKEHOLDER_ID='stakeholder_id';

IF DATE EXPIRED DTE is not NULL in AC044_EXTERNAL_STAKEHOLDER:

update AC044_EXTERNAL_STAKEHOLDER
set DATE_EXPIRED_DTE = ''
where STAKEHOLDER_ID='stakeholder_id'; --replace stakeholder_id with the STAKEHOLDER_ID from the single twofa query

AC044_EXTERNAL_STAKEHOLDER.ACTIVATION_CODE

This is a visual comparison. Compare the value returned by the twofa query that is provided with the activation code in CAMIS.

AC044_EXTERNAL_STAKEHOLDER.TELEPHONE_NUMBER_NUM

This is a manual check.


AC044_EXTERNAL_STAKEHOLDER.IDENTITY_MBUN_NUM

update AC044_EXTERNAL_STAKEHOLDER
set IDENTITY_MBUN_NUM = ''
where STAKEHOLDER_ID='stakeholder_id'; --replace stakeholder_id with the STAKEHOLDER_ID from the single twofa query

Error message : “Service Unavailable. HTTP Error 503. The service is unavailable”

Fix: See bug #173022:

Contacting Michaud, Marcel (Web team) to check the eMER log in production

The issue can be DN-EMER-EREM app pool is stopped on ONE server. The web team can turn it on.

 Doctor is having an inactive stamp

Fix: This issue can be fixed by clients using the application. If the issue is still not fixed, please contact developers who can fix the issue from the database

By clients:

By developers:

STAMP_RETURN_DTE should be Blank/NULL/empty (source table is AA045_STAMP)
USER_STATUS_ID should be 1 - 1 = Active. (source table is AA008_APPLICATION_USER)
DATE_DELETED_DTE should be Blank/NULL/empty (source table is
AA008_APPLICATION_USER)

 Steps for transferring / correcting eMERs and / or documents between existing applicants (bug 181510)

Required info: The file no. that was incorrectly assigned and the correct file no., applicant id that the eMER should be assigned to.

There were two problems:
1) the tombstone data (name, dob was incorrect in UA006_MEDICAL_EXAMINATION.

2) two documents for ROBERT GARTSHORE were accidentally attached to the eMER for GEOFFREY LAWRENCE and had to be transferred to the correct eMER for ROBERT GARTSHORE.

3. Ran the scripts in https://dev.azure.com/transport-canada/DSD-CIVAV%20Support/_boards/board/t/Team%20Skyblazers/Backlog%20items/?workitem=183846 to resolve this issue.

This is slightly different from other scenarios and have logged bug 184054 Team Skyblazers Backlog items Board - Boards (azure.com) to address this

Verify in the application if the changes were successful, you can search the correct file no. and look in the Tests & Docs. and MERs tabs to verify if the files are there.

  1. In CAMIS (prod):
    Select “Applicant search” from “Applicant” in the left hand menu:

    Enter the file number in the resulting form:


    To verify that the Documents are transferred correctly it is necessary to view the actual eMER and view the files listed in the documents section of the eMER.
    Set the task to “Committed” and ask the requester to review that the new file has the correct information

    Example of a file transfer task:
    181510 Request to transfer an eMER dated 2021-06-02 to correct file #.

Required info: The name of the applicant and stamp number of the examiner (or exam date).

Within CAMISP.WORLD, in the table CAMIS.UA006_MEDICAL_EXAMINATION, locate the medical examination that needs to be deleted, usually by a combination of the applicant name and the stamp number of the examiner or the medical examination date. When located, set the DATE_DELETED_DTE to today’s date.

  1. Find the MEDICAL_EXAMINATION_ID of the files to be removed.
    * Can also use license_num or first_name_nm instead of family_name_nm or any other identifying information to find the record (e.g. dob) *
    SELECT * FROM UA006_MEDICAL_EXAMINATION WHERE STAMP_NUMBER_TXT = '{stamp_no}' AND UPPER(FAMILY_NAME_NM) = UPPER('{applicant_last_name}');

  2. Export the INSERT statements for the rows to be deleted and put into the the comments of the bug

  3. Set the DATE_DELETED_DTE to today’s date
    UPDATE UA006_MEDICAL_EXAMINATION SET DATE_DELETED_DTE = SYSDATE WHERE MEDICAL_EXAMINATION_ID IN ({list of IDs to be removed});

Required info: The license number of the first applicant and of the second.

Make sure to first check that both license numbers exist in CAMIS. If not, you will need to wait for it to get populated in DAPLS.

The following script merges an applicant into another one (MERs, related activities, assessments, docs, etc.).

Create a related task and include the script you ran.

Verify in the application if the changes were successful, you can search the correct file no. and look in the Tests & Docs. and MERs tabs to verify if the files are there.

In CAMIS (prod):
Select “Applicant search” from “Applicant” in the left hand menu:

Enter the file number in the resulting form:

 Missing Indicators on CAMIS.Tombstone tab

On CAMIS, entering a file number, at Tombstone tab, click on “Add/Update Indicators”, if there are missing indicators:

Check YA003_APPLICANT of that applicant, at date_deleted_dte to see whether the field is empty or not. If that field can be empty, then the missing indicators will appear

 Emer system is requesting an activation code for a regular eMer user. For ex: bug #177788

For a regular eMER user (doctors) or CAME Associates, if they have not activated their account for a long time, then they need to create a GC key again to continue . We think that is 24 months. This info is needed to verify with GCkey team

Fix:

For a regular eMER user, if he has activated his account before (i.e they could access eMer system) but now it is asking his activation code again, then we need to follow below steps
( see bug #177788 : eMER system requesting activation code from a regular eMER system user)

  • Ask the client (for ex Samia Dawi) to RESET eMER status

  • Ask the client to change eMER status from Inactive to Active on CAMIS if this person is having Inactive status. This status is shown on CAMIS page

  • Ask the client to generate a new activation code

  • Click Add/Update Status

  • CAMIS db: Make sure AA008_application_user.user_status_cd of that person is ‘1', (A CAME’s person ID can be obtained from MV005_CAMIS_EMER_ASSG_SCREEN.
    example:
    SELECT DISTINCT MEDICAL_EXAMINER_PERSON_ID, CAME_LAST_NAME_NM, CAME_FIRST_NAME_NM
    FROM MV005_CAMIS_EMER_ASSG_SCREEN
    WHERE STAMP_NUMBER_TXT='<stamp_number>'

  • AA011_external_access.last_login_dte has to be changed to any date within last year from today (Note: EXTERNAL_APPLICATION_USER_ID = the CAME’s PERSON_ID) activation_key_status_cd is '20’, activation_key_expiry_date_dte is in future date or empty.

    Note: there will not be any record in AA011_external_access for a CAME Associate.
    See for example: bug 179216 CAME Associate unable to complete eMER account setup

  • Now ask the client to contact the user to access eMER with the new generated activation code. It will ask him to enter ONE time of eMER activation code and then they can continue with eMer access code on their phone to get in eMER.

 Delete the address associated with Stamp number

When we have a task to delete address associated with stamp number

(see bug # 244024 Delete address associated with stamp number)

Within CAMISP.WORLD, in the table CAMIS.UA045_STAMP, locate the stamp number that needs to be deleted, usually locate by the stamp number. When located, set the DATE_DELETED_DTE to today’s date.

In the table CAMIS.UA031_MEDICAL_EXAMINER_OFFICE, locate the medical examination that needs to be deleted, usually by a combination of the medical examiner person id and the medical office address id of the examiner. When located, set the DATE_DELETED_DTE to today’s date.

-- Get the stamp number from requested ticket:
Select * from UA045_STAMP where STAMP_NUMBER_TXT = <stamp_number_txt>; -- replace <stamp_number_txt> with requested stamp number from ticket

--Script to update the DATE_DELETED_DTE with the today's date and time in the following table.
Update UA045_STAMP
Set DATE_DELETED_DTE = SYSDATE
where STAMP_NUMBER_TXT = <stamp_number_txt>; -- replace <stamp_number_txt> with requested stamp number from ticket

--Script to locate the MEDICAL_EXAMINER_PERSON_ID and MEDICAL_OFFICE_ADDRESS_ID:
Select * from UA031_MEDICAL_EXAMINER_OFFICE where MEDICAL_EXAMINER_PERSON_ID = <medical_examiner_person_id> and MEDICAL_OFFICE_ADDRESS_ID =  <medical_office_address_id>;

--Script to update the DATE_DELETED_DTE with the today's date and time in the following table.
Update UA031_MEDICAL_EXAMINER_OFFICE
Set DATE_DELETED_DTE = SYSDATE
Where MEDICAL_EXAMINER_PERSON_ID = <medical_examiner_person_id> -- replace <medical_examiner_person_id> with your medical_examiner_person_id from UA045_STAMP table
And MEDICAL_OFFICE_ADDRESS_ID = <medical_office_address_id>;    -- replace <medical_office_address_id> with your medical_office_address_id from UA045_STAMP table
 Creating and Troubleshooting 2FA account for CAMIS

Please refer to Create 2FA admin account for CAMIS for details about setting up and trouble shooting administrative access to CAMIS.

 eMER not listed under incoming eMERS in CAMIS

related DevOps Task: 201977 eMER found in applicant's Test & Docs tab not in MERs Tab

If an eMER is not listed under “Incoming eMERs” in CAMIS:
1. check if there the DATE_DELETED_DTE has a date set for the corresponding medical examination in the table UA006_MEDICAL_Examination.

  • If the DATE_DELETED_DTE also check the values of DATE_LAST_UPDATE_DTE and USER_LAST_UPDATE_ID to find out when the medical examination was deleted and who deleted it.

  • To find out who deleted the record, check YA096_PERSON and UA045_STAMP

2. If the eMER was deleted by the CAME (or business client) follow-up with the requestor to confirm if the record should be deleted.

If the requestor confirms the record should be undeleted, update the DATE_DELETED_DTE to NULL.

  • Make a backup for the record.

  • In CAMIS prod, verify that the record is listed under Incoming Records.

  • Ask the requestor to check the eMER.

 Steps for transferring eMERs and/or Documents between existing applicants

CAMIS Report Generator

This program needs to be run weekly on Monday until the changes to CAMIS/eMER have been finalized. The code can be found at https://dev.azure.com/transport-canada/DSD-CIVAV Support/_git/CAMIS Report Generator.

 Steps to perform the weekly auto-accept
  1. Open the project in Visual Studio.

  2. Open frmSelectUtilFunction.vb file and update line 1902 to the file path for your folder.

    Dim directoryPath As String = "C:\Users\lemi\Desktop\CAMIS Auto-Generated Reports\" + DateTime.Now.ToString("yyyyMMdd")
  3. Run the application.

    • If you are getting errors building the project, you may be missing some files that can be found here: \tc4s0a\Groups\AARA\AARAD\CAMIS\CAMIS Report Generator

  4. Select Production User Database. Click Next.

  5. Click Next.

  6. Navigate to the folder specified in step 2 and into the folder for today’s date. Click Save.

  7. Popup saying that the “Incoming eMER report and auto-accept script done!” should appear. Click OK,

  8. Wait while the script runs again for the next region (total of 7 regions).

  9. Repeat steps 6-8 until “done” popup appears.

  10. You should now have 7 Excel files in the folder as well as 7 scripts that have opened up.

  11. Run each script using CAMIS_DATA_ADMIN@CAMISP, making sure to commit the changes.

  12. Send an encrypted email to the clients to let them know.

    • Attach all the Excel documents.

    • Send to

      • Walker, Akii Yah <AkiiYah.Walker@tc.gc.ca>

      • Kapetis, Gale <gale.kapetis@tc.gc.ca>

      • Lee, Brenda <brenda.lee@tc.gc.ca>

      • Santos, Maria <maria.santos@tc.gc.ca>

      • Carter, Terry <terry.carter@tc.gc.ca>

      • Wali Alami, Aouab <aouab.walialami@tc.gc.ca>

      • Ferrer, Mary <mary.ferrer@tc.gc.ca>

      • Michelle Tan <michelle.tan@tc.gc.ca>

    • CC: Baptiste, Daniel <Daniel.Baptiste@tc.gc.ca>

    • Subject: 20210908 Weekly Auto-Accept eMER completed

    • Message

      Good afternoon,
      
      The weekly auto-accept for your region has been run and completed.
      
      With the following parameters:
      eMERs that are:
      •             external and submitted
      •             renewed by CAME
      •             not in diabetes or SSRI
      •             not deferred to RAMO
      •             not initial applicant
      
      Please see attached for the report.
      
      Thank you,
      
      Michelle Le
      A/Team Lead, Application Development
      Solution Centre, Digital Services Directorate
      Transport Canada / Government of Canada
      michelle.le@tc.gc.ca 
      
      Chef d'équipe p.i., Dévelopment des applications
      Centre des solutions, Direction générale des services numériques
      Transports Canada / Gouvernement du Canada
      michelle.le@tc.gc.ca

TFS Testing Plans, Suites and Test Cases imported:

  • No labels