クリスタルレポート(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/