文件解析规则配置课件

上传人:小** 文档编号:45152337 上传时间:2018-06-15 格式:DOC 页数:7 大小:47.02KB
返回 下载 相关 举报
文件解析规则配置课件_第1页
第1页 / 共7页
文件解析规则配置课件_第2页
第2页 / 共7页
文件解析规则配置课件_第3页
第3页 / 共7页
文件解析规则配置课件_第4页
第4页 / 共7页
文件解析规则配置课件_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《文件解析规则配置课件》由会员分享,可在线阅读,更多相关《文件解析规则配置课件(7页珍藏版)》请在金锄头文库上搜索。

1、1 文件解析规则配置文件解析规则配置bs_indb_file_type_t bs_indb_file_record_t 定长文本首先进行文件长度检查,实际文件长度和配置 RECORD_LENGTH 长度不一致将 过滤此条记录,error_code=2,写入错单文件 话单结构中 day 字段取值方式是 话单主叫时间小于当前帐期,day 取其他正常取值 文件头定义 指的是文件头行数,不是文件头长度,现在程序中对 HEAD_LEN 配置大与 的跳过第一行 文件尾定义应该是话单文件中完整的文件尾记录,读取文件一行记录时,和配置的文件尾 进行比较,如果相同,认为文件已经读取完。 文件类型为分割符分割的不

2、定长文本时,FIELD_LEN 字段长度统一配置为 512,如果 FIELD_LEN 配置的长度小于文件中一个字段的实际长度,将按配置的长度进行截取。 DATE_FIELD 为跨帐期字段比较索引,必须配置 field_index= -1 非赋值字段,只是调用转换函数,不同话单根据批价需要配置以下函数 这些直接根据查找结果,对话单结构中的相关字段进行赋值。 CHANGECOUNTERNUMBER = 308;/规整原始被叫号码,真实被叫,临时被叫 1 strcpy(m_pHdc-ori_callingnb,m_pHdc-service_id); 补充原始主叫 2 原始主叫为固话且区号少 0 的前

3、面补 0 3 strcpy(m_pHdc-true_counter_number,m_pHdc-counter_number);真实被叫号码赋值 4 true_counter_number,真实被叫号码,去掉接入号和手机号码的 0,本地固话号码补上区号 5 去掉接入号根据 true_counter_number 到 bs_indb_net_head_t 查找 同时将 net_type 网络类 型赋值给 land_type ?有疑问 land_type 代表网络类型? 6 临时对端号码,为去掉对端区号的号码根据 true_counter_number 到 bs_indb_area_code_t

4、查找同时赋值对端区号 counter_area_code 最后:true_counter_number 无接入吗,有区号,手机号前不带 0tmp_counter_number 临时对端号码 不带区号land_type 有网络类型?对端区号 counter_area_code 有值GETAREACODE = 307; /获得区号信息,通话地,主叫区号,被叫区号 根据 service_id 查找区号 service_id 是手机号前面应该不带 0,是固话前面应该带区号 手机到 bs_indb_phone_head_t 查找 固话到 bs_indb_area_code_t 查找 查找到区号赋值给 s

5、elf_area_code根 true_counter_number 查找被叫区号 ,赋值给 counter_area_code根据 counter_area_code 到 bs_indb_area_code_t 查找被叫长途分组 根据 self_area_code 到 bs_indb_area_code_t 查找主叫长途分组 called_land_group 被叫长途分组 calling_land_group 主叫长途分组GETNETTYPE = 303; /获得运营商网络类型 Net_type 运营商类型默认为 1 电信 手机号根据 true_counter_number 到 bs_in

6、db_phone_head_t 查找运营商类型 固话根据 tmp_counter_number 和 counter_area_code 到 bs_indb_pstn_head_t 查找运营商类 型GETLANDTYPE = 304; /获得长途网络类型 land_type 网络类型 默认为 0 根据对端号码到 bs_indb_net_head_t 查找, 赋值给 land_type GETTOLLTYPE = 305; /获得长途类型 strcmp(m_pHdc-oricalling_area_code,m_pHdc-counter_area_code)= toll_type=0 为市话 默认

7、 toll_type=0 根据 called_land_group,land_type 网络类型,net_type 运营商类型,取得 toll_typeGETROAMTYPE = 306; /获得漫游类型 Land_group 长途分组 10 省内 20 国内 40 港澳台 Roam_type 漫游类型 0 非漫游 1 省内漫游 2 国内漫游 4 港澳台 5 澳门 if(strcmp(m_pHdc-self_area_code,g_pBaseInfo-m_sAreaCode) = 0) strcpy(m_pHdc-roam_type,“0“); return true; 如果是漫游,根据主叫长

8、途分组判断GETTIMEUNIT= 309;/获得计费单元 根据 source_event_type 到 bs_indb_time_unit_t 查找 CHECK_FUNC 用以配置检查函数,CHANGE_FUNC 用以配置转换函数,具体函数说明 见下面的说明。2 批价函数批价函数2.1 检查函数检查函数 用于对解析字段的校验,如果不符合条件,过滤掉此条记录,写入错单文件函 数 编 号参数返回值说明1参数个数 1 $field_index 字段本身是数字返回 0 否则返回-1 返回-1 会过滤掉 此条话单,写入 错单文件检查是否数字,2参数个数 1 $field_index 字段本身同上检查日

9、期格式3参数个数 1 $field_index 字段本身同上检查是否浮点 数4参数个数 2 逗号分割 参数 1:$ field_index 代表一个 field_index 字 段的值;其他表示一个常量字符串 ,如果配置 常量会改变当前字段的已经取出的值 参数 2: $ field_index 代表一个 field_index 字段 的值;其他表示一个常量字符串同上= 按字符串方式 比较5同上同上!= 按字符串方式 比较6参数个数 2 逗号分割 参数 1:$ field_index 代表一个 field_index 字 段的值;字段对应内容不能有字符 参数 2: $ field_index 代

10、表一个 field_index 字段 的值;其他表示一个常量字符串; 字段对应内容不能有字符同上 按数值比较7同上同上= 按数值比较2.2 转换函数转换函数用于对解析出来的字段值或要输出的字段值进行转换函 数 编 号参数返回值说明51参数个数 2 逗号分割 参数 1: $0 代表字段本身 参数 2: $field_index 代表一个字段值,其他代 表一个常量字符串。将参数 2 的值赋 值给本字段赋值函数52参数个数 3 逗号分割 参数 1: $0 代表字段本身, $field_index 代表 field_index 指定的字段值 参数 2: bein_npos 参数 3: nlength将

11、参数 1 从 bein_npos 位取 nlength 赋值给本 字段字符串截取53参数个数 2 逗号分割 参数 1: $0 代表字段本身 $field_index 代表 field_index 指定的字段值 参数 2: 常量数字参数 1+参数 2 后 赋值给本字段数字相加54同上同上数字相减55同上同上数字相乘56同上同上数字相除 返回 整型57参数个数 2 逗号分割 参数 1: $0 代表字段本身 $field_index 代表 field_index 指定的字段值 参数 2: 常量字符串字符串连接58计算流量59参数个数 1 参数 1: $0 代表字段本身 $field_index 代表

12、 field_index 指定的字段值去掉本字段值前 86,086,0086去掉手机号码 前的 8660参数个数 1 参数 1: $0 代表字段本身 $field_index 代表 field_index 指定的字段值取掉 013,014,015,018 前的 0去掉手机号码 前的 061参数个数 2 逗号分割 参数 1: $0 代表字段本身 $field_index 代表参数 1/参数 2 的 值赋值给本字段,数字相除 返回 float 型field_index 指定的字段值 参数 2: 常量数字70无获得当前时间, 年月日时 (24)分秒71无获得当前时间, 年月日3 文件输出文件输出3.

13、1 文件输出大类文件输出大类 Out_class 有以下几种程序中已经写死。1 有主文件有主文件现在配置输出的有:有主非重单文件(经营分析文件)有主重单文件2 无主文件无主文件正常无主文件无主重单文件3 错单文件错单文件输出错单文件的情况有以下几种: 1 文件解析时: 定长文件检查文件长度错误时,错误代码为 2 文件解析配置了检查函数,检查错误时,错误代码应该为配置的错误代码,现在程 序没有做这个处理,应该没有错误码 2 事件判断时: 找事件,执行条件规则错误时,写错误文件,无错误码bf_event_rule_t 配置 if_exit=1 的记录 写错误文件,错误吗为该表配置的错误吗 3 标准

14、资费计算 写错单文件error_code=1 bs_source_event_type_t 没用定义产品判断方式error_code=2 根据 product_id 到 bf_prod_pricing_plan_t 找定价编号未找到 4 截断话单判断 时写错单文件4 过虑文件过虑文件输出过滤文件地方有以下个: 无主话单过滤 filter_type 3 无主过虑 优惠前话单过滤 filter_type 1 优惠前过虑 优惠前调整 无错误代码 adujst_type 1 优惠前调整 2 优惠后调整 优惠后话单过滤 filter_type 2 优惠后过虑 1,2,4 通过过滤规则过滤的文件的错误代码

15、 根据 bs_indb_filter_config_t 配置的过滤函数确 定错误代码。有以下几种: Error_code=901 按日期过滤话单 Error_code=902 屏蔽话单 Error_code=903 开通之前的话单 Error_code=904 过滤的 ivpn 话单 Error_code=905 过滤的 wvpn 话单 Error_code=906 过滤的 ppc 话单5 普通累帐文件普通累帐文件6 零费用累帐文件零费用累帐文件3.2 文件输出配置事项文件输出配置事项Out_class 文件输出大类上面已经介绍 File_type 文件输出细类 可以自由定义,同一个大类里可以

16、输出多份 Out_format 不同的文件,根据 file_type 区 分。 Out_format 输出文件格式 在 bs_indb_out_format_t 和 bs_indb_out_field_t 具体配置 Out_cond 文件输出条件 在 bs_indb_outcond_config_t 配置具体的输出条件规则 COND_SEQ 为同一个输出条件的内部序号,就是一个输出条件可以配置多个比较字段, 按 COND_SEQ 逐个比较。多个比较结果为 并且的关系。 Field_index 为要比较的字段索引 OPERATOR 为比较运算符号 1:=, 2:!=,3:,4:=,6:= RESULT 为比较结果判断值 常量 Out_type 输出文件格式 原始文件 定长文件 分割符分割文件输出文件中带错误号的方法:将文件名前缀 FILE_PREFIX 第一个字母配置为大写的 E将在输出文件的每行加上 erro

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号