欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

如何給點晴MIS系統任意頁面增加自定義JS函數及操作腳本功能,并支持JS直接提取SQLServer數據庫后臺數據參與運算或賦值顯示

admin
2022年4月29日 16:54 本文熱度 12964
為了給點晴MIS系統任意頁面增加自定義JS函數及操作腳本功能,并支持JS直接提取SQLServer數據庫后臺數據參與運算或賦值顯示,需要用到如下幾個頁面:
/MIS/ajax_data/set_page_js.asp   -----》用于設置相關JS參數
/MIS/ajax_data/get_field_value.asp   ------》用于在需要增加JS控制的頁面上獲取相關JS腳本和函數
/MIS/ajax_data/return_field_value.asp    ------》提供返回數據的遠端頁面,單表查詢,正常情況下無需用到或修改
/MIS/ajax_data/return_sql_value.asp    ------》提供返回數據的遠端頁面,復雜SQL查詢,正常情況下無需用到或修改
/MIS/js/lime_util.min.js    ------》JS工具庫,內置了將近300個常用JS函數,方便JS高效設計
這個功能是通用設計方法,支持點晴MIS系統中任意頁面增加自定義JS腳本功能,可以方便的對任意頁面進行精確的控制,包括:更改指定字段的只讀、禁止留空、動態從SQL Server中提取信息刷新到頁面上、動態批量加載信息到當前頁面等。


下面以采購單打印頁面為例,說明如何改造打印頁面增加自定義JS函數及操作腳本功能,并利用新增的功能動態更改打印人、將要求到貨時間改為當前時間之后的3天。


第一步:給打印頁面增加自定義JS函數及操作腳本功能
先找到采購單打印頁面“/mis/mrp/purchase_order_checkinfo.asp”,在最頂部增加:
page_site="mis_mrp_document_print_edit_asp"  '默認為當前頁面完整路徑,但單據打印頁面有點不同應該設置為模板設計頁面地址,路徑中的“/.”都要改成“_”
sub_code=pr_code_i   '默認留空,如果當前頁面有多種子頁面,那么要啟用子識別碼,例如打印設計頁面對應著送貨單、銷售單、入庫單等各種單據類型
在頁面最底部加入下面紅色內容(這些紅色內容務必放在最底部,需要獲取上面這兩個值,并且有一個隱藏的DIV,以免加載異常):
<script language="javascript">
<%call get_js_body(page_site,sub_code,0)%>
</script>
<!--#include file="../ajax_data/get_field_value.asp"-->
'引入get_field_value.asp要用到上面的兩個參數page_site、sub_code


在頁面右上角增加管理員才能訪問的按鈕:
if popedom100185>0 then input_button=input_button &"<input type=""button"" class=""button_80px button_ui_orange"" value=""頁面JS腳本"" onclick=""open_win('/mis/ajax_data/set_page_js.asp?page_site="& page_site &"&sub_code="& sub_code &"',960,640);"">"


如果啟用提交前JS,那么還要在提交JS中加上以下這個:
<%call get_js_submit(page_site,sub_code,0)%>


如果啟用提交后JS,那么還要在提交JS后面加上以下這個:
<%call get_js_submit_after(page_site,sub_code,0)%>


如果要在頁面上顯示“執行JS”按鈕,用于某些不方便在進入頁面時、也不方便在提交表單時加載的JS腳本:
<%call get_js_button(page_site,sub_code,0)%>


然后找到采購單打印設置頁面“/mis/mrp/document_print_edit.asp”,在頁面頂部增加:
page_site="mis_mrp_document_print_edit_asp"  '默認為當前頁面完整路徑,路徑中的“/.”都要改成“_”
sub_code=pr_code_i   '默認留空,如果當前頁面有多種子頁面,那么要啟用子識別碼,例如打印設計頁面對應著送貨單、銷售單、入庫單等各種單據類型

在頁面最底部加入下面內容(這些腳本務必放在最底部,需要獲取上面這兩個值,并且有一個隱藏的DIV,以免加載異常):

<!--#include file="../ajax_data/get_field_value.asp"-->
'引入get_field_value.asp要用到的兩個參數page_site、sub_code


由于本頁面中還需要顯示字段說明,所以還需要在相應位置的表頭print_top_intro和表尾print_bottom_intro說明中增加以下內容:
add_custom_id_remark=get_js_remark(page_site,sub_code,1)   '獲取字段說明
if add_custom_id_remark&"CS"<>"CS" then print_top_intro=replace(print_top_intro &"|"& add_custom_id_remark,"||","|")
if add_custom_id_remark&"CS"<>"CS" then print_bottom_intro=replace(print_bottom_intro &"|"& add_custom_id_remark,"||","|")


增加完以上代碼后,頁面上就會出現一個“頁面JS腳本”按鈕:


點擊“頁面JS腳本”按鈕就會出現以下JS設計頁面:


第二步:設計JS取數腳本
在以上界面中,可以自定義設計表體JS、提交前JS、說明文字等信息。其中表體JS支持直接從SQL Server中動態提取數值,并將返回值參與到JS運算、或者直接刷新頁面上的內容,刷新方式包括DIV的innerHTML、input的value等內容,也支持JS的replace函數更新模板頁面上原有的:$input_time${銷售單號}等進行替換,十分的靈活方便。點擊上面的“加載預置值”按鈕,就可以看到系統提供的預置樣板,JS方式動態從SQL Server取數提供了單表和識別字段直接簡單取數、以及自寫SQL腳本實現復雜取數兩種方式。


由于JS從SQL Server中動態取數是異步實現的,所以相對麻煩些,下面提供兩段信息供參考:
表體JS:
async function compute(){
  var table_name="userinf";  //SQL Server表名稱
  var sole_id="username";  //用于唯一識別的字段
  var id_value="wuxin";  //唯一識別的字段值
  var get_id="name";  //需要返回的字段名
  var alert_flag=1;  //有異常時是否彈出提醒,0-否、1-是
  var wait_time=500;  //異步查詢等待時間,單位ms
  get_field_value(table_name, sole_id, id_value, get_id, alert_flag);  //本行勿動,以上變量會自動傳入本函數
  var tmpValue=await getSomething(get_id,wait_time);  //本行勿動,以上變量會自動傳入本函數
  document.getElementById("print_body").innerHTML=document.getElementById("print_body").innerHTML.replace("{制單人}",tmpValue);  //tmpValue即為獲得的字段值,此行開始自行寫JS腳本
}
compute();  //此處去掉斜杠啟用上面的JS腳本


頁面說明:
制單人:{制單人}|制單時間:{制單時間}


保存后,就可以在頁面上看到新增的內容了,我們在上面插入這個新增的字段{制單人}:


設計完畢后,返回采購單打印頁面,就會看到上面的“{制單人}”已經被自動更換為“伍鑫”了:


另外,為了方便JS開發,本功能還引入JS工具庫(已經強制引入,無需再次引入,直接使用即可),提供了將近300個API函數,可以極大的簡化JS設計,此JS庫的使用方法參見以下教程:
lime-util 前端模塊化 Javascript 工具庫[9]
  http://17809.oa22.cn


高級應用:
更復雜的自定義SQL查詢并返回json數據集的例子,參見詢價單自動轉為采購單,這個新增采購單頁面提供了自動抓取多個物料的相應詢價價格的功能,位置:采購管理-》新增采購單。


相關教程:

點晴MIS系統頁面動態JS加載自定義SQL語句開發設計指南[12]
  http://26832.oa22.cn

點晴ERP中Excel批量導入報價單明細如何驗證導入的信息是否合法?[17]
  http://26923.oa22.cn

零代碼開發助手之Excel批量導入設計操作指引[1490]
  http://18327.oa22.cn


該文章在 2024/10/30 17:37:09 編輯過

全部評論2

Ccoffee
2022年6月17日 8:47
標簽打印時超出了打印寬度折行造成整張標簽打印變形,可以用JS函數reduceStrFontSize按照設置的打印最大寬度自動縮小字體大小
函數說明:
reduceStrFontSize(strID, strFontSize, strMaxWidth, targetMinFontsize)strID-需要縮小的字符串ID,strFontSize-當前字符串的字體大小單位pt,strMaxWidth-當前字符串最大所占寬度,targetMinFontsize-超出寬度后自動縮小最小的字體大小單位pt
函數應用:
var lable_num=document.getElementById('lable_num').value;
for(i=1;i<lable_num;i++){
 try{reduceStrFontSize("product_spec_display"+i, 12, 150,7);}catch(err){}
 try{reduceStrFontSize("product_model_display"+i, 12, 60, 7);}catch(err){}
}

該評論在 2022/6/17 8:48:14 編輯過
Ccoffee
2024年10月30日 16:36
 ERP批量導入報價單明細如何驗證導入的信息是否合法教程

該評論在 2024/10/30 16:36:44 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved