程序内置了很多方便的函数 如产品类、客户类、人事类 这些预置定义在 app_dict_sql,里,以典型的 res 字典为例 res select res_id,res_name,res_spec,res_unit_type,res_cat_id,in_ref_price,out_ref_price,in_ceil_price,out_floor_price,cost_price,manufacturer,bar_code,res_model,res_rank,res_desc,res_place,ass_unit_type,num_dot_num,batch_flag,quality_days,easy_code,edt_io_flag,cost_cal_method,price_dot_num,res_kind,default_edt_id,ext_1,ext_2,ext_3,ext_4,ext_5,ext_6,ext_7,ext_8,stop_flag,floor_num,ceil_num,sup_id,order_id from res 我们看到是一次性将所有res的相关字段 读入内存中的res里。 这样在执行一些查询操作时,可以用相关的函数,如 get_res_info等去从内存中取得。 这样设计方式有利也有弊,随着res表数据的增加,客户端操作也随之变得越来越卡,越来越慢。 在 select 后加个 top 1000后,客户端的操作变得轻快起来了,但随之单据显示等不在1000里的数据则显示不出来了 那,是不是可以有一个比较兼顾的方法呢? 默认res字典不用全部读取,那些相关函数将从字典中取不到数据的时候,再从后台表中取,并且再自动 更新到客户端字典里 这样,相信速度会快很多很多 一点点小建议,期待回音。再次感谢优秀的软件。 |