ステップ5.1: テスト統合ファイルの作成

ヒント:

テンプレート内の情報の検索に役立つ行番号を指定しました。テンプレートを更新するときに、特に新しい行を追加する場合、行番号は精度を失う可能性があります。この場合、変更されていないテンプレートを参照として使用できます。
タスク1 一般的な情報の追加
  1. 任意のエディタで統合テンプレートを開きます。

    ファイルを読みやすくするフォーマットを保持するために、Notepad++などの XMLの編集に十分なエディタを使用することをお勧めします。

  2. 会社名をCompanyName要素の値として指定します。
    3   <CompanyName>your_company_name</CompanyName>

    この名前はどこで使用されていますか。この名前は、Oracle Clinical One Digital Gatewayによって、Oracle Clinical One Digital Gatewayおよび通知Eメールに表示される一意の安全性レポートIDの一部として使用されます。(安全性レポートIDは、Oracle Argus Safetyの「追加情報」タブに参照IDとしても表示されます。)

  3. Oracle Clinical One Digital Gatewayでテスト用にE2B+ R2ファイルを配置し、SFTPサーバーの資格証明キーを追加するSFTPサーバーのフォルダへのパスを追加します。次のように値を追加します。
    8   <SFTPRoot>path_from_home_to_folder</SFTPRoot>
    9   <SFTPUserCredentials>SFTP_credential_key_name</SFTPUserCredentials>
  4. 定数値のプレースホルダを、統合するスタディの詳細に置き換えます。
    • DTDFILEPATH (テンプレート内の行315): この文字列を、Oracle Argusサーバー上のDTDファイルへのフルパス(E:\Argus\InterchangeService\DTDFiles\ich-icsr-v2.1-services.DTDなど)に置き換えます。
    • COMPANYNAME (テンプレートの行327): 行3で使用した名前と同じ名前に置き換えます。周囲のダッシュ(- )は、Oracle Clinical One Digital Gatewayの安全性レポートIDを構成する要素間のセパレータとして機能するため、削除しないでください。
    • ARGUSSTUDYNAME (テンプレート内の行339): Oracle Argus SafetyスタディID。Oracle Argus Safetyの値と正確に一致する必要があり、大文字と小文字が区別されます。テストの場合は、テスト・スタディのIDを指定できます。
    • MEDICINALPRODUCTNAME (テンプレート内の行349): Oracle Argus Safetyライセンスに表示されるとおり、この文字列を正確な取引名に置き換えます。そうしないと、Oracle Argus Safetyは製品を認識せず、統合が失敗します。この情報は、Oracle InFormスタディが送信されるように設定されていなかった場合に必要です。ただし、Oracle InFormで送信する場合でも指定できます。
      • 調査が薬用製品を1つのみ調査している場合は、行349で文字列MEDICINALPRODUCTNAMEを正確な製品名に置き換えます。
      • 調査で複数の製品を調査している場合は、コードリストを使用して、この調査に使用するすべての製品名をマップできます。コーデルリスト、コメント解除行348を使用するには、次のように製品名(Oracle Argus Safetyライセンスに表示されるとおり)を追加して、349行をコメント・アウトします。
        348   <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.DefaultCodeListMapper" custom-converter-param="INTHUBCODELIST~DRUGSAFETYREPORT_MEDICINALPRODUCTNAME">
        349   <!-- <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.DefaultInitializer" custom-converter-param="MEDICINALPRODUCTNAME"> -->
        350      <a>medicinalProductName[0].value</a>
        351      <b>medicinalproduct.content</b>
        352   </field>

        次に、製品名を保持するOracle InFormコードリストに基づいて、ソース値とターゲット値をOracle Clinical One Digital Gatewayコードリスト(行102から105)に追加します。

        102   <codelist>
        103      <ID>DRUGSAFETYREPORT_MEDICINALPRODUCTNAME</ID>
        104      <Entry Source="" Description="Medicinal product name" Target=""/>
                 <!-- Duplicate the above line for each product name and add source and target values for each. -->
        105   </codelist>
      • スタディがブラインドの場合は、製品名の前にBLINDEDを付けます(たとえば、製品名Drug1275の場合は、BLINDEDDrug1275を指定します)。これにより、製品名がOracle Argus Safetyの製品名タブに表示されません。
タスク2 コードリストのマップ

各コードリスト要素(テンプレートの14行目から開始)を編集して、対応するソース値を追加します。Oracle Argus Safetyのターゲット値は、予想される標準のE2B R2コードに基づいてテンプレートにすでに追加されています。

ソース値はどこから取得しますか。対応するソース値(Oracle InFormコードリストからコード)は、統合するスタディの注釈付きスタディ・ブックから取得できます。「コード」列にソース値が表示されます。

覚えておいてください: Oracle Argus Safetyコードリストをカスタマイズした場合は、対応するターゲット値を確認し、E2B R2標準値からカスタマイズされたOracle Argus Safetyコードリストの適切なターゲット値に変更する必要もあります。

ヒント:

使用可能なすべてのコードリストを使用していない場合は、この統合に必要ないコードリストをコメント・アウトします。
  1. 次のコードリストに対応するソース値を追加します。

    警告:

    Oracle Argus Safetyでは、ターゲット値としてすでに指定されているE2B値のみを受け入れることができるため、ターゲット値を変更しないでください。例外として、Oracle Argus Safetyでカスタム・コードリストを使用していて、それらを適切にマッピングする場合は、カスタム・コードリストのものを使用してターゲット値を更新できます。
    • 性別
    • DRUGSAFETYREPORT_ADVERSEEVENTREPORTEDOUTCOME
    • DRUGSAFETYREPORT_ACTIONTAKEN
    • HS_YES_NO_UNKNOWN: Oracle Argus Safetyの「リアクション」タブの「受信済トリートメント」、「RelatedToStudyConduct」および「PatientHasPriorHistory」チェックボックスを移入するために使用されます。
    • HS_TRUE_FALSE: Oracle Argus Safety、製品レベル(進行中など)および患者レベル・インジケータ(BreastFeedingIndicatorなど)のケース・レベルで深刻度インジケータを移入するために使用されます。
    • EVENT_LEVEL_YES_NO: Oracle Argus Safetyの「リアクション」タブで「深刻度インジケータ」の値を移入するために使用されます。
    • DRUGSAFETYREPORT_DOSAGEINTERVALUNIT
    • DRUGSAFETYREPORT_SEPARATEDOSAGENUMB
    • DRUGSAFETYREPORT_DOSAGEINTERVALNUM
    • DRUGSAFETYREPORT_UNITOFMEASURE
    • DRUGSAFETYREPORT_ADMINISTRATIONROUTE
  2. (オプション)このデータをOracle InFormで収集し、Oracle Argus Safetyに送信する場合は、次のコードリストに対応するソース値も追加します。

    警告:

    Oracle Argus Safetyでは、ターゲット値としてすでに指定されたE2B値のみを受け入れることができます。これらの値にOracle Argus Safetyでカスタム・コードリストを使用している場合を除き、ターゲット値を変更しないでください。
    • DRUGSAFETYREPORT_QUALIFICATIONCODE
    • DRUGSAFETYREPORT_AGEGROUP
    • DRUGSAFETYREPORT_TERMHIGHLIGHTED
  3. (オプション)このデータをOracle InFormで収集し、Oracle Argus Safetyに送信する場合は、次のコードリストのソース値とターゲット値の両方を指定します。
    ソース列はOracle InFormから送信される値で、ターゲット値はOracle Argus Safetyコードリストの値である必要があります。
    • 職業
    • 競合
    • DRUGSAFETYREPORT_DOSAGEFORM
    • DRUGSAFETYREPORT_ADVERSEEVENTSEVERITY
タスク3 正しいSpecialKeyCodeListMapperを含める

カンマを含むコード・リストがOracle InFormからOracle Argus Safetyに正しく送信されるようにするには、この特定のマッパーを統合ファイルに含めます。これにより、コード リストの値にカンマが含まれている場合でも、コード リストに関連するデータを正しく送信するためのインテグレーションが決まります。

ノート:

既存の統合の場合は、新しいコード・リスト・マッパーで構成ファイルを更新してください。次に、Oracle Clinical One Digital Gatewayで構成ファイルを再アップロードします。
<mapping map-null="false" wildcard="false" trim-strings="true" type="one-way" map-id="PrimaryCountryCodeMap">
                <class-a>oracle.hsgbu.infpub.ebm.com.oracle.xmlns.informtosafety.drugsafetyreport.v1.ReportDrugSafetyReportType</class-a>
                <class-b>oracle.hsgbu.argus.e2b.r2.Safetyreportext</class-b>
            <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.SpecialKeyCodeListMapper" custom-converter-param="INTHUBCODELIST~COUNTRY">
                    <a>primarySourceCountryCode.value</a>
                    <b>safetyreportid.content</b>
                </field> 
            </mapping> 
                    <mapping map-null="false" wildcard="false" trim-strings="true" type="one-way" map-id="IchicsrSafetyReportGenericMap">
                <class-a>oracle.hsgbu.infpub.ebm.com.oracle.xmlns.informtosafety.drugsafetyreport.v1.ReportDrugSafetyReportType</class-a>
                <class-b>oracle.hsgbu.argus.e2b.r2.Safetyreportext</class-b>
                <field map-id="IchicsrSafetyReportPrimarySourceMap">
                    <a>drugSafetyReportPrimarySource</a>
                    <b>primarysource</b>
                    <a-hint>oracle.hsgbu.infpub.ebm.com.oracle.xmlns.informtosafety.drugsafetyreport.v1.DrugSafetyReportPrimarySourceType</a-hint>
                    <b-hint>oracle.hsgbu.argus.e2b.r2.Primarysource</b-hint>
                </field> 
                <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.SpecialKeyCodeListMapper" custom-converter-param="INTHUBCODELIST~COUNTRY">
                    <a>primarySourceCountryCode.value</a>
                    <b>primarysourcecountry.content</b>
                </field>
                          <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.SpecialKeyCodeListMapper" custom-converter-param="INTHUBCODELIST~COUNTRY">
                    <a>occurrenceCountryCode.value</a>
                    <b>occurcountry.content</b>
                </field>
   
タスク4 投与量の頻度をマップ

必要な作業投与頻度についてOracle InFormにコードリストがあり、この情報をOracle Argus Safetyと共有する場合のみ。

たとえば、Oracle InFormには、「1日2回」の値を「2XD」として保存する投与頻度用のコードリストがあるとします。Oracle Argus Safetyと共有する情報は2XDです。ただし、Oracle Argus SafetyではE2B標準を使用し、この情報を1つのみではなく3つのフィールドに分割するため、この例では同じ値2XDを3つの異なるコードリストにマッピングする必要があります。統合ファイルでこれを表す方法は次のとおりです。


   <DRUGSAFETYREPORT_SEPARATEDOSAGENUMB>
      <Entry Target="2" Description="Twice a day" Source="2XD" />
   </DRUGSAFETYREPORT_SEPARATEDOSAGENUMB>
   <DRUGSAFETYREPORT_INTERVALNUMB>
      <Entry Target="1" Description="Twice a day" Source="2XD"/>
   </DRUGSAFETYREPORT_DOSAGEINTERVALNUMB>
   <DRUGSAFETYREPORT_DOSAGEINTERVALUNIT>
      <Entry Target="804" Description="Day" Source = "2XD"/>
   </DRUGSAFETYREPORT_DOSAGEINTERVALUNIT>
タスク5 Oracle Argus Safetyのユーザー定義フィールドへのマップ

必要な作業Oracle InFormフィールドをOracle Argus Safetyのユーザー定義フィールドにマップする必要がある場合のみ。

前提条件は何かありますか。はい。Oracle Argus SafetyにOracle InFormからデータを移入するユーザー定義フィールドがある場合は、Oracle Central Designerでフィールドのカスタム・データ・シリーズを作成し、Oracle Argus Safetyのユーザー定義フィールドに適切な別名を使用する必要があります。

テンプレートの「カスタム患者フィールド」セクション(891行目以降)には、Oracle Argus Safetyが受け入れることができる各ユーザー定義フィールドのマッピングがあり、Oracle Argus Safetyに送信されるターゲット値が有効であることを確認するために必要な変換がすでに適用されています。

Oracle InFormフィールドを、調査の必要に応じてユーザー定義フィールドにマップし、使用しないエントリがこのセクションにある場合は、それらをそのままにして、マップせずに削除しないでください。

Oracle Argus Safetyの最初のカスタム日付フィールドのテンプレートの例を次に示します:

891   <!-- Custom Patient Fields section -->
892   <field>
         <!-- The part in bold below indicates the field type and number for each Argus Safety user-defined field. -->
893      <a map-get-method="getSpecificCustom" key="Cust_Patient_Dt_1">this</a>
894      <b>custpatientdt1Extension.content</b>
895   </field>
これらのフィールドをマッピングするための2つのオプションがあります。
  • 直接マッピング: これはすでに設定されているデフォルトのマッピングで、そのまま値を送信します。テンプレートからの直接マッピングの例を次に示します。
    
    458   <field>
    459      <!-- Below line is for the InForm field whose value is sent to Argus Safety. -->
    460      <a map-get-method="getSpecificCustom" key="Cust_General_Str_1">this</a>
    461      <!-- Below line is for the target Argus Safety field where the unaltered source value is placed. -->
             <b>custgeneralstr1Extension.content</b>
          </field>
    

    ターゲット値のOracle Argus Safetyにコードリストがある場合を除き、直接マッピングを変更する必要はありません。この場合、マッピングを編集してコードリスト・マッピングに変換する必要があります(後述)。

  • コーデリスト・マッピング: Oracle InFormのカスタム・フィールドをOracle Argus Safetyのコーデリスト値にマップする必要がある場合に使用します。フィールドでOracle InFormのコードリストが使用されており、Oracle Argus Safetyに送信されるコードと異なる値が必要な場合は、統合ファイルにOracle Clinical One Digital Gatewayコードリストを追加して、そのカスタム・フィールド・マッピングに新しいコードリストを添付する必要があります。次に、Oracle Clinical One Digital Gatewayコードリストをフィールドで使用してソース値を変換する例を示します。
    <field custom-converter="oracle.hsgub.clnicalone.integration.impl.mapper.DefaultCodeListMapper" custom-converter-param="INTHUBCODELIST~COUNTRY">
       <!-- The part in bold below indicates the field type and number for each Argus Safety user-defined field. -->
       <a map-get-method="getSpecificCustom" key="Cust_Patient_Dt_1">this</a>
       <b>custpatientdt1Extension.content</b>
    </field>

    ヒント:

    複数のソース値を同じターゲット値にマップできますが(追加のソース値に行を追加することで)、同じソース値を複数のターゲット値にマップすることはできません。
タスク6 (オプション)その他のマッピング構成の追加

必要な作業Oracle Argus Safetyと共有しているフィールドに特定のニーズがある場合のみ。使用可能なカスタム・コンバータを使用して、ソース値をOracle Argus Safetyで受け入れられるターゲット値に自動的に変換したり、カスタム・コードリストを使用する場合はカスタム値に変換することができます。

カスタム・コンバータを使用して、次を実行できます。
  1. デフォルト・フィールドが空白の場合に送信される代替フィールドの指定: このコンバータは、すでにマップされているOracle InFormフィールド(デフォルト・フィールド)を空白のままにできる場合に使用し、かわりに別のフィールドを使用してデータを記録します。

    テンプレートでは、対象者が国外を旅行中に有害なイベントが発生したときに、すでにこのテンプレートを使用してケースに対処しているため、ソース国は空白のままになり、かわりに発生国が指定されます。この場合、コンバータによるフィールド・マッピングは、発生国が指定されていない場合に送信されるソース国を識別します。

             
          <!-- Below line is the mapping for default field -->
    525   <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.DefaultCodeListMapper" custom-converter-param="INTHUBCODELIST~COUNTRY">
    526         <a>occurrenceCountryCode.value</a> <!-- Default InForm field. -->
    527         <b>safetyreportid.content</b>
                <!-- Above line is the field in Argus Safety that is mapped to both the default and the alternate field. -->
    528   </field>
    
          <!-- Use below field mapping tag to map an alternate field to an Argus Safety field that already has a default field mapped to it. -->
          <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.DefaultNVLInitializer">
             <a>primarySourceCountryCode.value</a> <!-- Alternate InForm field to send only if default is null. -->
             <b>safetyreportid.content</b>
             <!-- Above line is field in Argus Safety that is mapped to both the default and the alternate field. -->
          </field>
    
  2. 1つのOracle InFormフィールドを接頭辞として別のOracle InFormフィールドに追加します: このコンバータを使用して、あるOracle InFormフィールドの値を接頭辞として別のOracle InFormフィールドの値に追加し、結果の値をOracle Argus Safetyと共有します。次に、メッセージ受信者の識別子をサイトの国コードで接頭辞として付加し、連結値の区切りとして「: : 」を使用するテンプレートの例を示します。
    541   <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.DefaultConcatenator" custom-converter-param="::">
    542      <a>primarysourcecountry.content</a> <!-- The value of this field will be added as a prefix to the value of the second field. -->
    543      <b>messagereceiveridentifier.content</b> <!-- This is the field that will be sent to Argus Safety, if mapped. -->
    544   </field>

    たとえば、プライマリ・ソース国が「US」で、メッセージ受信者識別子が「INFARG_01」の場合、前述のマッピングに従って「US: : INFARG_01」が結果の値となり、messagereceiveridentifier値として送信されます。

  3. Oracle InFormからOracle Argus Safetyに送信される製品名の大文字または小文字: テンプレートに表示されるこのコンバータを使用して、大文字で記述された製品名をOracle Argus Safetyに送信します。製品名を小文字で送信するには、コンバータ(テンプレート内の行1545)を編集し、コメント(テンプレート内の行1544)に示すように、custom- converter- paramパラメータにtoLowerを追加します。
    1544 <!-- custom-converter-param "toUpper" capitalizes all characters and "toLower" decapitalizes all characters  -->
    1545      <field custom-converter="oracle.hsgbu.clinicalone.integration.impl.mapper.CaseConverter" custom-converter-param="toUpper"> 
    1546          <a>this</a> 
    1547          <b>medicinalproduct.content</b> 
    1548      </field>		

    注意:

    デフォルトでは、このケース・コンバータは、Oracle Argus Safetyに送信されたすべての製品名を大文字にします。
タスク7 Oracle InFormからの部分的な安全性症例の説明を処理するための統合の構成

このタグを統合構成ファイルに含めて、一部のナレーティブ・データがOracle Clinical One Digital Gatewayによって適切に処理されるようにすることをお薦めします。このタグは、すべてのカスタム・コンバータおよび追加のマッピング要素の後に、構成ファイルの最後に含める必要があります。タグはtrueまたはfalseに設定できます。

         
1721      </p:Mappings>
1722 <p:Schedule>
1723 <p:retrycount>2</p:retrycount>
1724 </p:Schedule>
1725 <p:Notifications/>
<!–- Change the tag value to false, if needed -->
1726 <p:ProceedOnFailures>true</p:ProceedOnFailures>
1727 </p:Integration>
タスク8 統合ファイルへの変更の保存