callAllIdChidVisible.md 1.43 KB

callAllIdChidVisible (procedure)

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

Parameters

# Mode Name Type
1 IN p_sParentId varchar(50)

Body

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

Narrative

Business context: Recursive descendant of callAllIdbVisible — when a gdsmodule parent is hidden (bVisible=0), this proc cascades bVisible=0, bUnTask=0, bJurisdictionShow=0 to every descendant in the BACK navigation tree. Used in concert with the sAllId rebuild family to keep visibility / jurisdiction flags coherent across the module subtree.

What it does: opens a cursor over gdsmodule children of p_sParentId. For each child whose own bVisible=0, runs UPDATE gdsmodule SET bVisible=0, bUnTask=0, bJurisdictionShow=0 WHERE sParentId=p_sId, then if the child has further children, recurses (max_sp_recursion_depth=10). Note: the visibility flag tested is on the child, not the parent — so the cascade only fires when a node is itself already hidden, not when its ancestor is.

Invocation: orphan-via-dead-chain. Only caller is callAllIdbVisible, which is itself orphaned (no form-master / hook / Java / other-proc caller). No direct caller anywhere — candidate for maintainer audit alongside the rest of the callAllIdb*/callAllIdChid* family.