[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[orca-users:03003] 報告:東芝レセコンからのデータ移行(保険情報扁)その後



三原です。

金平さまよりのご指摘もあり、また当院のスタッフとも相談の上、ORCAの補助区
分を以下の様に対応しましたので、報告します。
これで、東芝レセコン23000のデータの主要部分はすべてORCAへ移行できました。

新しいperlスクリプトです。

#読み込むファイル名はコマンドラインで指定するようにしました。
 perl  実行ファイル 読み込むファイル名 です。
#書き出すファイルを指定
 open (OUT,">orhkninf.out");
#先に抜けていた45(医師国保)を追加
 %array = (1,"01",2,"02",3,"03",4,"04",6,"06",7,"07",45,"60",41,"60",44,"60",42,"60",89,"99");
while (<>){
 @line = split(/,/);
 $hobetu = $line[2];
 $line[2] = $array{$hobetu};
 if ($line[2] eq ""){
   $line[2] = $hobetu;
   }
 $hb = $line[3]; //保険番号
 $hk = $line[4];  //本人家族別
 $line[5] = 0;  //区分には0を初期値として設定  
 $line[3] =~ s/^ +//;保険番号の先頭の空白を削除

国保ならとりあえず3割負担
 if ($line[2] =~ m/60/){ 
   $line[5] = 3;
   }
保険によっては本人2割、家族3割に区分する処理
 if ($hb =~ m/063032/){ 
 	&kubun;
 	}
 if ($hb =~ m/063024/){
 	$line[5] = 2;
	}
 if ($hb =~ m/063016/){
 	&kubun;
	}
 if ($hb =~ m/133298/){
 	&kubun;
	}
 if ($hb =~ m/133033/){
 	&kubun;
記号と番号に分割
 $line[7] =~ (/(.*)\/(.*)/);
 $line[7] = $1;
 $line[8] = $2;
 
 $line[16] ="";
 $newline = join(",",@line);
 print OUT"$newline\n";
}
close (OUT);

sub kubun{
 if ($hk =~ m/1/){
	$line[5] = 2; 本人なら2
	}
 if ($hk =~ m/2/){
	$line[5] = 3; 家族なら3、すでに3が設定されているので必要はないが
		}
}