Sp_plc_implementation.md 2.64 KB

Sp_plc_implementation (procedure)

机器运行情况

  • Type: PROCEDURE
  • Deterministic: NO
  • SQL data access: CONTAINS SQL

Parameters

# Mode Name Type
1 IN sMachineId varchar(100)
2 IN sBrId varchar(100)
3 IN sSuId varchar(100)
4 IN tStartDate varchar(100)
5 IN tEndDate varchar(100)
6 IN pageNum int
7 IN pageSize int
8 OUT totalCount int
9 IN countCloumn varchar(5000)
10 OUT countMapJson longtext
11 IN sFilterOrderBy varchar(5000)
12 IN sGroupby_select_sql varchar(5000)
13 IN sGroupby_group_sql varchar(5000)
14 OUT sCode int
15 OUT sReturn varchar(5000)

Body

Body is not pre-cached. To inspect: mysql --defaults-file=~/.my.cnf -e 'SHOW CREATE PROCEDURESpplc_implementation'._

Narrative

Business context: 设备 / PLC 信号采集 — paged equipment-running-status report (proc COMMENT: "机器运行情况"). Reads the raw PLC log table sysdoplclog, decodes the pipe/comma-delimited sValues payload via Fn_split_string, and explodes one row per machine into 31 typed metric columns (合格数/不合格数/PH/电导率/工单号/班组/警报灯/原纸放卷计数 …) ready for a grid. Restricted to iPlcNo < 3 machines (first signal-group only) — companion Sp_plc_implementation1 handles iPlcNo > 2.

What it does: Builds two temp tables (Sp_plc_implementation for output, p_elemachine for the machine slice), populates p_elemachine from elemachine filtered by sMachineId or iPlcNo < 3 AND iPlcNo > 0, then cursors each machine reading the top-N rows of sysdoplclog WHERE iSemens=p_iSemens AND sTaskRes<>'' paged by LIMIT p_index,pageSize. For each row, computes p_iVz = MOD(iPlcNo,14) and uses Fn_split_string(sValues,'|',p_iVz) to pick this machine's slot inside the merged payload, then splits that slot by , to produce 23 typed metrics including sQty10 调机/生产 phase flag and 警报灯 colour decode.

Invocation: Status: appears orphaned. No gdsmodule.sProcName binding, no gdsconfigformmaster sSqlStr/sConfigSqlStr reference, no gdsconfigcharmaster.sProcedureName chart binding, no other-routine caller, no Java/MyBatis reference. Only install script xly-src/script/标版/30100101/Sp_plc_implementation.sql ships it. The signature matches the paged-report calling convention (pageNum/pageSize/totalCount/countMapJson/bFilter-style), so likely a former report data-source whose form-master was deprovisioned — candidate for maintainer audit.