# `TJ_TJMES_GRNLine` (procedure) > MES --> Infor Syteline ERP(MES,调用Infor ERP数据库里的存储过程) - **Type:** PROCEDURE - **Deterministic:** NO - **SQL data access:** CONTAINS SQL ## Parameters | # | Mode | Name | Type | |---|---|---|---| | 1 | IN | `sMakePerson` | `varchar(100)` | | 2 | IN | `sBrId` | `varchar(100)` | | 3 | IN | `sSuId` | `varchar(100)` | | 4 | OUT | `sReturn` | `varchar(1000)` | | 5 | OUT | `sCode` | `int` | | 6 | OUT | `sSql` | `longtext` | | 7 | OUT | `sData` | `longtext` | | 8 | OUT | `sAfterIn` | `longtext` | ## Body _Body is not pre-cached. To inspect: `mysql --defaults-file=~/.my.cnf -e 'SHOW CREATE PROCEDURE `TJ_TJMES_GRNLine`'`._ ## Narrative **Business context:** 第三方接口 → Infor Syteline ERP (per `COMMENT 'MES --> Infor Syteline ERP(MES,调用Infor ERP数据库里的存储过程)'`) — "Before" proc of an Infor Syteline GRN-line pull. Designed to hand the calling Java the SQL fragment and the JSON parameter map it should execute against the Infor SQL Server side to fetch `TJMES_GRNLine` (Goods-Received-Note line) rows. **What it does:** Sets `sSql = " SELECT * FROM TJMES_GRNLine WHERE CreateDate >=#{CreateDate}"` and builds `sData = JSON_OBJECT('CreateDate', DATE_FORMAT(NOW(),'%Y-%m-%d'))` (using `FROM gdsmodule LIMIT 1` just so MySQL has a single-row context for the `SELECT INTO`). Copies `sData` to `sAfterIn` so the After-side proc receives the same payload. Does not set `sCode`/`sReturn` — caller defaults handle that. **Invocation:** Designed to be invoked by `InfoSqlserverServiceImpl.doViewTable("inforarrive","TJ_TJMES_GRNLine","TJ_TJMES_GRNLineAfter")` from `InterfaceController.testdhrk()`. However, the `testdhrk` method is fully commented out in `xly-src/xlyInterface/.../InterfaceController.java`, and the partner proc `TJ_TJMES_GRNLineAfter` is not deployed in this DB. Status: bridge is wired in DB but the Java entry point is dormant — verify before relying on it.