讨论_关于系统预置字典类应用的一个思考与建议_产供销
学习.交流
专业源于专注
www. onlyit. cn   
学习交流 文件下载 手册资料 交流QQ群

    

 4  1/1   1  
作者
内容
10000  [个人空间]


注册  2021-04-28
发贴数  4
精华数  0
原创贴  0
来自  
状态  正常

级别  会员
#1»发布于2021-05-14 10:16

程序内置了很多方便的函数 
 
如产品类、客户类、人事类 
 
这些预置定义在 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字典不用全部读取,那些相关函数将从字典中取不到数据的时候,再从后台表中取,并且再自动 更新到客户端字典里 
 
这样,相信速度会快很多很多 
 
一点点小建议,期待回音。再次感谢优秀的软件。




        于 2021-05-14 10:16 被 10000 修改


10000  [个人空间]


注册  2021-04-28
发贴数  4
精华数  0
原创贴  0
来自  
状态  正常

级别  会员
#2»发布于2021-05-14 09:55

随着 res 资料变多,客户端 就经常会 鼠标转圈 背景变白灰,程序 提示 没有响应




qf2016  [个人空间]
QQ名  meng 113779009


注册  2016-01-17
发贴数  2567
精华数  0
原创贴  0
来自  
状态  正常

级别  版主
#3»发布于2021-05-15 10:46

数据量大用网络模式,客户端是增量刷新的。




justin  [个人空间]


注册  2021-02-24
发贴数  17
精华数  0
原创贴  0
来自  
状态  正常

级别  会员
#4»发布于2021-05-15 17:27

老師, 
 
看一樓的截圖 是在網絡及sql 模式下的 
{看 oserver 的加載 及 sql 語句中有 with 語法} 
 
我也是網絡模式,sql server,也遇到了這個問題。 
 
嘗試按一樓的建議,加個 top 1000,真的超快,打開單據頁面 是真的 秒開。 
 
但用 top 去限定 字典,也會帶來一個問題,就是相關的函數查詢問題及 res 的相關數據不出來了。 
現在的解決辦法是 用 top 后,在單據里再逐一單獨刷新 res 字典


        于 2021-05-15 17:27 被 justin 修改



 4  1/1   1  

登录后方可发贴


[ 电话: 0571-85462761 王先生 QQ: 124520435 加入软件QQ群 - 杭州 - 浙ICP备19051128号-1 网安 33010402003225 ]