User Manual
MedDRA Dictionary Update version 1.0
Author:
Sy Truong
Systems Developer / Date

Table of Contents

1.AMENDMENT hISTORY

2.Purpose

3.Dictionary Types

4.External Dictionary process

5.download

6.ASCII to SAS

7.Compare Dictionaries

8.Retire External Dictionary

9.Register New Dictionary

10.Internal Dictionary Work Flow

11.Retire Internal Dictionaries

12.Register New Internal Dictionary

13.Drop Old Terms

This document and all information contained herein are CONFIDENTIAL and the property of Pharmacyclics, Inc. Any copying or other use is prohibited except by permission of Pharmacyclics, Inc.

Page 1 of 12

MedDRA Dictionary Update - User Manual / VSU-3.3
  1. AMENDMENT hISTORY

Date / Version / Amendement Description
August 22, 2007 / 1.0 / Initial draft
  1. Purpose
  2. This user manual is intended for thesaurus dictionary mangers and programmer analysts who work with the MedDRA dictionaries and Thesaurex System within Biometry of Pharmacyclics. It will describe the process of updating dictionaries in a manner that will retain the coding decision from the old dictionary while being consistent with the terms of the new dictionary.
  3. The processes that will be explained in this manual include the following areas.
  4. Download - Downloading ASCII files from MSSO.
  5. ASCII to SAS - Converting ASCII to SAS Datasets.
  6. Compare Dictionaries - Comparison report between existing external dictionary and new external and how it relates to internal dictionaries.
  7. Retire External Dictionary - Retiring old version of external dictionary
  8. Register New Dictionary - Registering new external dictionary to Thesaurex.
  9. External Dictionary Work Flow - Diagram how external dictionary is merged along with auto code, manual code and mapex process.
  10. Retire Internal Dictionaries - Retirement and archival of old version of internal dictionary.
  11. Register New Internal Dictionary - Creation of new version of internal dictionary based on old dictionary.
  12. Drop Old Terms - Drop all terms from new internal dictionary that does not match with new external dictionary.
  13. Internal Dictionary Work Flow - Diagram on how internal dictionaries are merged along with keys for auto code, manual code and mapex process.
  14. Dictionary Types

The dictionaries managed through the Thesaurex system is distinguished by two levels or types. This includes the following:

  • External – This type of dictionary is managed by an external vendor such as MSSO. Updates to the terms are managed completely by the external organization and Pharmacyclics only received updates but do not apply updates to these dictionaries. These dictionaries are usually delivered to PCYC as a series of ASCII files that are downloaded from the MSSO website.
  • Internal – These dictionaries include project specific dictionaries or global level dictionaries that are managed internally by PCYC. Manual coding decisions populate these dictionaries with new verbatim terms.

Both of these types of dictionaries are used at Pharmacyclics and are managed separately. Updates provided by MSSO to external dictionaries are managed differently from the updates of internal dictionaries. The underlying file structures of these dictionaries are also different. However, they do have a relationship to each other in that the internal dictionaries will reference the external dictionary to get the final preferred term and associated codes.

  1. External Dictionary process

The external dictionaries are delivered to Pharmacyclics as ASCII files from the MSSO. This file is then converted to SAS datasets to be used by Thesaurex. The following diagram illustrates the work flow.

There are actually a series of ASCII files which are converted to a series of SAS Datasets. These files are managed by the Thesaurex system so you do not have to merge or transform them. The registration process to Thesaurex will use some of the data but graphical user interface refers to the one file named SOC as a reference. There is nothing inherit to the dataset that the Thesaurex will automatically be able to determine what version it is. It is therefore up to you to name the dictionaries logically with the correct version numbers in order to manage them optimally.

  1. download

The first step in working with external dictionary is to download the ASCII files from the external vendor. This is a subscribed service so you would need the proper user name and password. The site to download is located at:

Perform the following steps in the download process.

5.1Create Directory – From windows explorer, navigate to the folder:
\\hal9000\Analysis\MedDRA\download\
Create a subdirectory with the name to match the new version of the version that you are downloading. An example is therefore:
\\hal9000\Analysis\MedDRA\download\MedDRA 10.0\
Create another subdirectory to this so that the download can store its files here. An example final folder is:
\\hal9000\Analysis\MedDRA\download\MedDRA 10.0\MedAcii

5.2Download Files – Download the ASCII directly to the specified directory created from the above steps.

  1. ASCII to SAS

In order to make the files delivered from MSSO useful, you need to convert the ASCII files to SAS Datasets. These SAS datasets will then be used by the Thesaurex and other SAS programs to manage your terms. Use the following steps to convert the ASCII files to SAS datasets.

6.1Backup File – Identify the old files that this process will over write. This is usually located at:
\\hal9000\Analysis\MedDRA\Source Data
Create a backup folder with the date. The name of the folder would be something like: backup_8-23-2007
Copy all datasets to this backup folder.

6.2Copy Template Program – Navigate to the directory where the SAS program is stored. These programs will perform the conversion and is located at:
\\hal9000\Analysis\MedDRA\programs
Copy the READIN.SAS template program to a new program to reflect your version. An example new name is READIN_V10.1.SAS.

6.3Update Input Path – There are two references to the program path inside the READIN program. Update the path to reflect the path noted in step 5.1. The update would be similar to the code example shown below:
proc import out=outlib.intl_ord
DATAFILE= "\\hal9000\Analysis\MedDRA\download\MedDRA
10.0\MedAcii\&indata..asc"
DBMS=DLM REPLACE;
DELIMITER='24'x;
GETNAMES=NO;
DATAROW=1;
RUN;

6.4Verify Data Creation –Verify that the newly updated datasets are created in the specified location such as:
\\hal9000\Analysis\MedDRA\Source Data
These datasets are created from the ASCII file as the result of performing the import using the READIN program.

  1. Compare Dictionaries

A report is generated identifying which terms from existing dictionaries are going to be changed due to the fact that the external dictionary is being updated. This process involved evaluating differences between the external dictionaries. The result of these differences will then be compared with the internal dictionaries to determine what needs to be changed. The merge for the external data flow is shown below.

7.1Copy Template Program – Navigate to the directory where the SAS program is stored which performs this conversion. This is located at:
\\hal9000\Analysis\MedDRA\programs
Copy the COMPARE.SAS to a new program to reflect your version. An example new name is COMPARE_V10.1.SAS.

7.2Update Input Path – There are references to the location of the old version of the datasets that needs to be changed. This refers to the location noted in step 6.1. A sample change would be:
*** Location of old dictionary ***;
libname oldlib “\\hal9000\Analysis\MedDRA\Source Data\backup_8-23-2007”;

7.3Verify Output – Verify the output result of the merged report in the resulting HTML report that is generated as the result from the compare program.

  1. Retire External Dictionary

There is only one external MedDRA dictionary that will be used at one time. The addition of a new one therefore requires the removal of the old one. The actual underlying files are backed up as seen in step 6.1 and therefore not lost. This process of “retirement” is meant to remove references to the old dictionary so it will not lead to confusion.

8.1Retire in Thesaurex – The process of retirement does require you to be administrators so if you are not, please send a request for the Thesaurex administrator to perform the following tasks.

8.1.1Log in to Thesaurex as an administrator.

8.1.2Click on the “Thesaurus Management” icon from the main “Administration Tools” screen.

8.1.3Identify the old dictionary to be retired through the list of the thesaurus dictionary and click on the “Delete” button.

8.1.4Click on the OK button when prompted for confirmation.

  1. Register New Dictionary

The registration of the new external dictionary is intended to have the Thesaurex system know where the files are located pertaining to the new dictionary. It will not alter or update the data, but document the version number and type of dictionary to be used by the system.

9.1Register Dictionary – The process of registration does require you to be administrators so if you are not, please send a request for the Thesaurex administrator to perform the following tasks.

9.1.1Log in to Thesaurex as an administrator.

9.1.2Click on the “Thesaurus Management” icon from the main “Administration Tools” screen.

9.1.3Click on the “New Thesaurus” button.

9.1.4Enter the same name for both “Thesaurex Type” and “Thesaurus Description”. For example:
Meddra External version 10.1
Note that the version number matches the number of the dictionary that has been downloaded from MSSO.

9.1.5Enter the physical server path pertaining to the location where the new files were created. For example:
\\hal9000\Analysis\MedDRA\Source Data

9.1.6The dataset name is SOC.

9.1.7The classification is “MedDRA”.

9.1.8The level is “External”.

9.1.9Click on the OK button.

9.1.10Verify from the “Thesaurus Administration” screen that the new dictionary referred to by the name as specified in 9.1.4 is part of the list.

  1. Internal Dictionary Work Flow
  2. Internal MedDRA dictionaries are managed internally by Pharmacyclics team members. These dictionaries are initially created as empty dictionaries and are then populated through the auto code and manual code process. It is then merged with source data to then create the new mapped dataset in the mapex process. There are similarities as compared with external dictionaries but it differs in that the internal dictionaries are updated and managed internally.

Structurally, the datasets that store the internal dictionaries are different from the external dictionary. Some of the differences include:

10.1.1Single File – All the different fields such as llt_name, pt_name, hlt_name, hlgt_name and soc_name are all stored in a single centralized file. The external dictionary is structured in a normalized fashion where these fields are stored in separate files and needs to be merged with the corresponding “code” variables in order to form the final data.

10.1.2Method – An extra field in the internal dictionary is used to capture the method of coding. This will document from which other dictionary was used to merge the data in order to derive at the current coded row.

10.1.3User Name and Date – Additional administrative fields are used to capture who added a particular term to the dictionary and at what time.

10.1.4Notes – Optional comment fields are stored in the internal dictionary capturing the description and explanation of a coding decision.

  1. Retire Internal Dictionaries

Once the new external dictionary has been replaced, it is also necessary to update the internal dictionaries since there is direct correlation between the dictionaries. This means that all internal dictionaries has a relationship and are used together along with an external dictionary. The first step in applying the updates to the internal dictionary is to match it with the related external dictionary. The retirement does not physically delete the underlying SAS datasets. It is a process of updating the names used to identify the dictionaries. This will still allow users to view and search through the old dictionaries while making clear that they are retired and therefore not be used in a study.

11.1Retire Internal Dictionary – The process of retirement does require you to be administrators so if you are not, please send a request for the Thesaurex administrator to perform the following tasks.

11.1.1Log in to Thesaurex as an administrator.

11.1.2Click on the “Thesaurus Management” icon from the main “Administration Tools” screen.

11.1.3Review the list of Thesaurus dictionaries and identify the one to be retired.

11.1.4Click on the “Modify…” button corresponding to the dictionary to be retired.

11.1.5Change both the “Thesaurus Type” and “Thesaurus Description” to have a new name. For example if the values were:
Xcytrin MedDRA
update this to:
Xcytrin MedDRA RETIRED

11.1.6Make a note of the location path, data name and level for future reference.

11.1.7Click on the OK button.

11.2Verify from the “Thesaurus Administration” screen that the dictionary has been updated with a new name with the word “RETIRED”.

  1. Register New Internal Dictionary

As part of the process of updating the internal dictionaries to correspond to the new external dictionary, you need to register new internal dictionaries corresponding to the new external dictionary. It is recommend that you name the new dictionary with a meaningful name including the same version number corresponding to the external dictionary number as part of the name. This will make it easier to reference the relationship between the external and internal dictionaries.

12.1Register Internal Dictionary – The process of registering a new internal dictionary does require you to be administrators so if you are not, please send a request for the Thesaurex administrator to perform the following tasks.

12.1.1Log in to Thesaurex as an administrator.

12.1.2Click on the “Thesaurus Management” icon from the main “Administration Tools” screen.

12.1.3Click on the “New Thesaurus” button.

12.1.4Enter the same name for “Thesaurus Type” and “Thesaurus Description”. Since this is similar to the old dictionary, it is recommended that you use a similar name but udpate it to have the new version number. For example the old value is:
Xcytrin MedDRA
update this to:
Xcytrin MedDRA version 10.1

12.1.5Enter the same path as the path noted in step 11.1.6.

12.1.6Enter a similar name as the data named in 11.1.6 but with the version number corresponding to the external version. Note that for datasets names, the dotis not allowed as part of the name so replace dots with underscore. The name of the dataset should 8 or less characters so the example dataset for version 10.1 may look like:
xcym10_1

12.1.7Select classification as “MedDRA”.

12.1.8Select the same level as the one noted in step 11.1.6.

12.1.9Click on the OK button.

12.2Verify from the “Thesaurus Administration” screen that the new dictionary has been added to the list.

  1. Drop Old Terms

When a new external dictionary is introduced, it is possible that some of the new terms in the dictionary will make the old terms obsolete. That means that some of the old coding decision between verbatim and preferred terms in the internal dictionary is no longer valid and therefore needs to be dropped.
Rather than starting from the very beginning, you can copy the terms from the old dictionary and “migrate” it to the new internal dictionary. In order to ensure that the old set of terms work with the new dictionary, we would need to drop the old terms as identified by the report generated during the comparisons. The new updated dictionary will therefore contain a set of terms that was originally coded for from the old dictionary, but is still valid for the new dictionary. The ones that are dropped out will be manually re-coded to reflect the terms from the new external dictionary. You can apply the update and dropping of terms by the updating and running the following program.

13.1Copy Template Program – Navigate to the directory where the SAS program is stored which performs this conversion. This is located at:
\\hal9000\Analysis\MedDRA\programs
Copy the DROPUPDATE.SAS to a new program to reflect your version. An example new name is DROPUPDATE_XYCYTRINV10.1.SAS.

13.2Update Input Parameter – The program has parameters defined at the very top as macro variables. These would then select the correct files to then update. The following are example of some of the changes.
*** Update dictionary names ***;
%let old_name = Xcytrin MedDRA RETIRED;
%let new_name = Xcytrin MedDRA v10.1;

This document and all information contained herein are CONFIDENTIAL and the property of Pharmacyclics, Inc. Any copying or other use is prohibited except by permission of Pharmacyclics, Inc.

Page 1 of 12