7-1 関数の指定方法
Universal Connect/Xでは、データファイルの中で規定の関数を使用することにより、動作設定画面で指定されている内容よりも優先して実行したり、動作設定にはない詳細な設定をしたりできます。
ここでは、データ形式によって異なる指定方法について説明します。
参考
各製品用API関数は、それぞれのユーザーズマニュアルもあわせて参照してください。
CSVデータファイルでの指定
関数は、データファイルの前に次のタグで囲んで記述します。タグで囲むことにより制御命令として認識されます。
カンマ区切り以外の形式の場合でも、実際のデータの先頭に<start><end>というタグを入れ、関数はタグの間に入力することで、有効にできます。
<start> コマンド開始 <end> コマンド終了
注意
<start>は1行目に記述されていることが必要です。
<end>の次の行は項目行として扱うため、固定長データで項目行を省略する場合を除いて空白行をおくことはできません。
関数を記述した場合、その設定は動作設定より優先されます。
例 sample_api_ja.csv
<start> VrSetSpoolFileName2="C:\SVFJP\UniConX\Sample\ja\sample_api_csv_ja.pdf" <end> "発行年月日","発注番号","仕入先名","仕入先郵便番号","仕入先住所市","仕入先住所1"... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000477","株式会社ウイングアーク設計","950-0911","新潟県... ... ...
上記は「sample_api_ja.csv」のテキスト表示です。
実際のデータが始まる前に「VrSetSpoolFileName2」という関数が入っています。<start>タグと<end>タグの間には、このような形で1行に1つずつ関数を定義できます。
例 複数の<start>タグと<end>タグを定義したデータファイル
1データファイル内に複数の<start>タグと<end>タグを定義して、それぞれ別の関数を定義することもできます。
<start> VrSetForm="C:\SVFJP\UniConX\Sample\ja\Form\sample_ja1.xml,4" VrSetSpoolFileName2="C:\SVFJP\UniConX\Sample\ja\sample_api_csv_ja.pdf" <end> "発行年月日","発注番号","仕入先名","仕入先郵便番号","仕入先住所市","仕入先住所1","仕入... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000477","株式会社ウイングアーク設計","950-0911","新潟県... ... ... <start> VrSetForm="C:\SVFJP\UniConX\Sample\ja\Form\sample_ja2.xml,4" VrSetSpoolFileName2="C:\SVFJP\UniConX\Sample\ja\sample_api_csv_ja2.pdf" <end> "発行年月日","発注番号","仕入先名","仕入先郵便番号","仕入先住所市","仕入先住所1","仕入... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000476","ウイングアーク商事株式会社","150-0044","東京都... 2013/03/01,"1000477","株式会社ウイングアーク設計","950-0911","新潟県... ... ...
上記では「sample_api_ja.csv」に複数の<start>タグと<end>タグを定義し、XML様式ファイルおよび出力ファイル名を設定しています。
データファイル内で一度指定した関数は、再度同じ関数によって変更されるまでその設定を保持します。
注意
フィールド名として<start>および<end>は使用できません。
<start>と<end>の関数定義を使用する場合、<end>の次の行は、フィールド名を定義してください。
<start>と<end>の関数定義を使用する場合、動作設定でクエリー様式ファイル、置換マスターは使用できません。
複数の<start>と<end>で関数定義を使用する場合、動作設定で[ファイル定義]に「カンマ区切り、タブ区切り、カスタム区切り」のいずれかを指定し、[CSV 複数コマンド処理モード]にチェックを付けてください。ただし、固定長データファイルを使用する場合は「7-2 共通の関数」-「SetSchema」の注意に従ってください。
複数の<start>と<end>で関数を定義し、出力プリンター名や出力ファイル名などを切り替える場合、動作設定で[文書分割]にチェックを付けてください。
複数の<start>と<end>で関数定義を使用する場合、ヘッダー明細別レコード形式のデータは使用できません。
XMLデータファイルでの指定
XMLデータファイルの場合は、<document>タグ、<form>タグに関数を設定することで有効にできます。
<?xml version="1.0" encoding="UTF-8" ?> <vfreport> <document file="C:\SVFJP\UniConX\Sample\ja\sample_api_xml_ja.pdf"> <発行年月日><![CDATA[2013/03/01]]></発行年月日> <発注番号><![CDATA[1000476]]></発注番号> <仕入先名><![CDATA[ウイングアーク商事株式会社]]></仕入先名> <仕入先郵便番号><![CDATA[150-0044]]></仕入先郵便番号> <仕入先住所市><![CDATA[東京都渋谷区]]></仕入先住所市> ... ...
上記は「sample_api_ja.xml」のテキストデータです。
<document>タグに「file」属性があります。このような形で各設定をします。
利用する関数によって<document>タグと<form>タグのどちらに記載するかが異なります。
XML関数は引数全体を「"」で囲む必要があります。また、引数に「& < > " '」を含める場合は「& < > " '」に置き換えて指定します。
例 1. ユーザー名の指定が「A&B」の場合<document username="A&amp;B">
タグ内に関数を複数設定する場合は、半角スペースで区切って指定します。
例 2. スプール文書名とユーザー名を指定する場合<document name="name" username="user">
XML関数は、同一タグに同じ名称の関数を重複指定できませんので、同じ名称の関数を複数指定する場合は引数を制御文字「|」で区切って指定します。
例 3. 拡大縮小モードと紙種番号を指定する場合<document vrcomout="REDU 3|PTYP 4">
注意
XMLファイルの場合、複数の<start><end>を定義できませんが<document>タグ、<form>タグで同様の指定ができます。詳細は「第6章 使用できるデータファイル」の「6-2 XMLデータファイル」を参照してください。