>  기사  >  데이터 베이스  >  匹配与显示中文说明

匹配与显示中文说明

WBOY
WBOY원래의
2016-06-07 17:38:09918검색

近两天,急需要解决公司的ERP系统Infor SyteLine的问题。 由于ERP系统是英文版本,虽说是多语言版本,可以快速切换语言,但是系统一些核心显示的还是英文。面对政府核师的要求,需要把这些数据显示为具体中文字。Insus.NET接到一个财务部门一个参考表: 在ER

近两天,急需要解决公司的ERP系统Infor SyteLine的问题。




由于ERP系统是英文版本,虽说是多语言版本,可以快速切换语言,但是系统一些核心显示的还是英文。面对政府核师的要求,需要把这些数据显示为具体中文字。Insus.NET接到一个财务部门一个参考表:




在ERP原系统中,并无上图表的记录,Insus.NET只好在数据库创建这个表:




然后插入数据:




原本想象中,是件很容易解决的事情,只是做个表关联即可,但是在General Ledger打印出来的参考说明,全是一些参考码与随机性结合的数据,如下图:


一些数据只是前面匹配,一些可以做到完全匹配。因此想使用多表关联是无法解决的。怎样解决?参考表的字符与数据前面完全匹配的,就显示相应用中文。
这个可让Insus.NET难住了......
不过Insus.NET对于此问题已经在今早解决了,稍后把实现过程分享于此。


下面内容于2013-10-30 16:25分添加
解决的办法,是写一个自定义函数:




看过上面的函数之后,就会觉得它的原理很简单,即是先排序我们自定义设计的表的[Ref]字段,实现倒排序,也就是说我们先匹配最长字符的[Ref]字段值。然后是以数据库Ledger表的[ref]数据去循环匹配我们自定义的表[Ref]每一行值。截取出来的值与参考值一样,就说明匹配正确,如果没有,,就是用回原来的值。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.