4GL- Calling IMPORTSIL from grid contextual menu (GBOUT1) doesn't work

Hi, I'm facing a weird behaviour.

In my specific, I've developed a routine that uses IMPORTSIL to add a new line to an existing sales order.

This routine is simple:

  1. Reads current SOH data and generates a text file
  2. Add a new text line from parameters values
  3. Call IMPORTSIL
  4. Checks GOK, GERRTRACE
  5. Shows the trace

How the routine is called:

Local Integer NLIN : NLIN = nolign-1
Infbox [M:ZADH1]ITMREF(NLIN)
Local Char ITM(30) : ITM = [M:ZADH1]ITMREF(NLIN)
Local Decimal QTY  : QTY = [M:ZADH1]QTY(NLIN)
Local Char PJT(50) : PJT = [M:ZADH0]NUM + "~T" + num$([M:ZADH1]LIN(NLIN))
Local Char TYP(5)  : TYP = "5"
Local Decimal PRI  : PRI = [M:ZADH1]GROPRI(NLIN)
Local Decimal DTE  : DTE = [M:ZADH1]DTE(NLIN)
Local Integer LINCV(30) : LINCV = 0
Local Integer STA  : STA = 0
Local Char NPO(30) : NPO = "ADH0000035"
Call ADD_SOH_LINE(ITM, QTY, PJT, TYP, NPO, PRI, DTE, LINCV, STA)

If I call this routine from a right menu in $EXEBOUT it works perfectly, but if I call it from a contextual grid menu (B1_NBLIG) it simply doesn't add the line and there is no error returned from IMPORTSIL.

Can't IMPORTSIL be used from a contextual grid menu?

Should I set any global variable value before call IMPORTSIL?

What Am I missing?