クリスタルレポート(Crystal Reports)で、全角→半角変換する、式フィールド

クリスタルレポート(Visual Studio 2010 + CrystalReports Ver13 )で、全角→半角変換するまともな方法が見つからなかったので、ごりっと力技しました。

どこかの誰かのために貼り付けときます。

Local StringVar target := {フィールド名};

target := Replace(target, "1","1");
target := Replace(target, "2","2");
target := Replace(target, "3","3");
target := Replace(target, "4","4");
target := Replace(target, "5","5");
target := Replace(target, "6","6");
target := Replace(target, "7","7");
target := Replace(target, "8","8");
target := Replace(target, "9","9");
target := Replace(target, "0","0");
target := Replace(target, "ァ","ァ");
target := Replace(target, "ア","ア");
target := Replace(target, "ィ","ィ");
target := Replace(target, "イ","イ");
target := Replace(target, "ゥ","ゥ");
target := Replace(target, "ウ","ウ");
target := Replace(target, "ェ","ェ");
target := Replace(target, "エ","エ");
target := Replace(target, "ォ","ォ");
target := Replace(target, "オ","オ");
target := Replace(target, "カ","カ");
target := Replace(target, "ガ","ガ");
target := Replace(target, "キ","キ");
target := Replace(target, "ギ","ギ");
target := Replace(target, "ク","ク");
target := Replace(target, "グ","グ");
target := Replace(target, "ケ","ケ");
target := Replace(target, "ゲ","ゲ");
target := Replace(target, "コ","コ");
target := Replace(target, "ゴ","ゴ");
target := Replace(target, "サ","サ");
target := Replace(target, "ザ","ザ");
target := Replace(target, "シ","シ");
target := Replace(target, "ジ","ジ");
target := Replace(target, "ス","ス");
target := Replace(target, "ズ","ズ");
target := Replace(target, "セ","セ");
target := Replace(target, "ゼ","ゼ");
target := Replace(target, "ソ","ソ");
target := Replace(target, "ゾ","ゾ");
target := Replace(target, "タ","タ");
target := Replace(target, "ダ","ダ");
target := Replace(target, "チ","チ");
target := Replace(target, "ヂ","ヂ");
target := Replace(target, "ッ","ッ");
target := Replace(target, "ツ","ツ");
target := Replace(target, "ヅ","ヅ");
target := Replace(target, "テ","テ");
target := Replace(target, "デ","デ");
target := Replace(target, "ト","ト");
target := Replace(target, "ド","ド");
target := Replace(target, "ナ","ナ");
target := Replace(target, "ニ","ニ");
target := Replace(target, "ヌ","ヌ");
target := Replace(target, "ネ","ネ");
target := Replace(target, "ノ","ノ");
target := Replace(target, "ハ","ハ");
target := Replace(target, "バ","バ");
target := Replace(target, "パ","パ");
target := Replace(target, "ヒ","ヒ");
target := Replace(target, "ビ","ビ");
target := Replace(target, "ピ","ピ");
target := Replace(target, "フ","フ");
target := Replace(target, "ブ","ブ");
target := Replace(target, "プ","プ");
target := Replace(target, "ヘ","ヘ");
target := Replace(target, "ベ","ベ");
target := Replace(target, "ペ","ペ");
target := Replace(target, "ホ","ホ");
target := Replace(target, "ボ","ボ");
target := Replace(target, "ポ","ポ");
target := Replace(target, "マ","マ");
target := Replace(target, "ミ","ミ");
target := Replace(target, "ム","ム");
target := Replace(target, "メ","メ");
target := Replace(target, "モ","モ");
target := Replace(target, "ャ","ャ");
target := Replace(target, "ヤ","ヤ");
target := Replace(target, "ュ","ュ");
target := Replace(target, "ユ","ユ");
target := Replace(target, "ョ","ョ");
target := Replace(target, "ヨ","ヨ");
target := Replace(target, "ラ","ラ");
target := Replace(target, "リ","リ");
target := Replace(target, "ル","ル");
target := Replace(target, "レ","レ");
target := Replace(target, "ロ","ロ");
target := Replace(target, "ヮ","ヮ");
target := Replace(target, "ワ","ワ");
target := Replace(target, "ヰ","ヰ");
target := Replace(target, "ヱ","ヱ");
target := Replace(target, "ヲ","ヲ");
target := Replace(target, "ン","ン");
target := Replace(target, "A","A");
target := Replace(target, "B","B");
target := Replace(target, "C","C");
target := Replace(target, "D","D");
target := Replace(target, "E","E");
target := Replace(target, "F","F");
target := Replace(target, "G","G");
target := Replace(target, "H","H");
target := Replace(target, "I","I");
target := Replace(target, "J","J");
target := Replace(target, "K","K");
target := Replace(target, "L","L");
target := Replace(target, "M","M");
target := Replace(target, "N","N");
target := Replace(target, "O","O");
target := Replace(target, "P","P");
target := Replace(target, "Q","Q");
target := Replace(target, "R","R");
target := Replace(target, "S","S");
target := Replace(target, "T","T");
target := Replace(target, "U","U");
target := Replace(target, "V","V");
target := Replace(target, "W","W");
target := Replace(target, "X","X");
target := Replace(target, "Y","Y");
target := Replace(target, "Z","Z");
target := Replace(target, "A","A");
target := Replace(target, "B","B");
target := Replace(target, "C","C");
target := Replace(target, "D","D");
target := Replace(target, "E","E");
target := Replace(target, "F","F");
target := Replace(target, "G","G");
target := Replace(target, "H","H");
target := Replace(target, "I","I");
target := Replace(target, "J","J");
target := Replace(target, "K","K");
target := Replace(target, "L","L");
target := Replace(target, "M","M");
target := Replace(target, "N","N");
target := Replace(target, "O","O");
target := Replace(target, "P","P");
target := Replace(target, "Q","Q");
target := Replace(target, "R","R");
target := Replace(target, "S","S");
target := Replace(target, "T","T");
target := Replace(target, "U","U");
target := Replace(target, "V","V");
target := Replace(target, "W","W");
target := Replace(target, "X","X");
target := Replace(target, "Y","Y");
target := Replace(target, "Z","Z");
target := Replace(target, "a","a");
target := Replace(target, "b","b");
target := Replace(target, "c","c");
target := Replace(target, "d","d");
target := Replace(target, "e","e");
target := Replace(target, "f","f");
target := Replace(target, "g","g");
target := Replace(target, "h","h");
target := Replace(target, "i","i");
target := Replace(target, "j","j");
target := Replace(target, "k","k");
target := Replace(target, "l","l");
target := Replace(target, "m","m");
target := Replace(target, "n","n");
target := Replace(target, "o","o");
target := Replace(target, "p","p");
target := Replace(target, "q","q");
target := Replace(target, "r","r");
target := Replace(target, "s","s");
target := Replace(target, "t","t");
target := Replace(target, "u","u");
target := Replace(target, "v","v");
target := Replace(target, "w","w");
target := Replace(target, "x","x");
target := Replace(target, "y","y");
target := Replace(target, "z","z");
target := Replace(target, "a","a");
target := Replace(target, "b","b");
target := Replace(target, "c","c");
target := Replace(target, "d","d");
target := Replace(target, "e","e");
target := Replace(target, "f","f");
target := Replace(target, "g","g");
target := Replace(target, "h","h");
target := Replace(target, "i","i");
target := Replace(target, "j","j");
target := Replace(target, "k","k");
target := Replace(target, "l","l");
target := Replace(target, "m","m");
target := Replace(target, "n","n");
target := Replace(target, "o","o");
target := Replace(target, "p","p");
target := Replace(target, "q","q");
target := Replace(target, "r","r");
target := Replace(target, "s","s");
target := Replace(target, "t","t");
target := Replace(target, "u","u");
target := Replace(target, "v","v");
target := Replace(target, "w","w");
target := Replace(target, "x","x");
target := Replace(target, "y","y");
target := Replace(target, "z","z");
target := Replace(target, "ー","-");
target := Replace(target, "(","(");
target := Replace(target, ")",")");


以下の文字列ジェネレータが便利でした。(レイズソフトウェアさんのサイトへ)
http://lazesoftware.com/tool/strgen/