0

嗨,任何人都可以在 Sage X3 中帮助我。

我制作了一个新表 (ZITEMECO) 和一个新屏幕 (ZITF0) 以在 OITF 窗口内使用,但我无法阅读该表,看来 $LIENS 操作根本不起作用,我做错了什么?

以下是 SPEITF 的代码:

# Gestão da máscara ITF0 (Específico)

$ACTION
  Case ACTION
    When "OUVRE"      : Gosub OUVRE
    When "APRES_CRE"  : Gosub APRES_CRE
    When "APRES_MOD"  : Gosub APRES_MOD
    When "LIENS"      : Gosub LIENS
    When Default
  Endcase
Return

$OUVRE
  If clalev([F:ZITE]) : Local File ZITMECO[ZITE] : Endif
  Local File ZITMECO [ZITE]

Return

$APRES_CRE
  Gosub APRES_CRE_MOD
Return

$APRES_MOD
  Gosub APRES_CRE_MOD
Return

$APRES_CRE_MOD

  Local Integer LN_EXISTE
  LN_EXISTE=1
  Read [ZITE]ZITE0=[M:ITF0]ITMREF;[M:ITF0]STOFCY
  If fstat=0
   LN_EXISTE=2
  Else
   LN_EXISTE=1
  Endif

    Trbegin[F:ZITE]
          [F:ZITE]ITMREF=[M:ITF0]ITMREF
          [F:ZITE]STOFCY=[M:ITF0]STOFCY
          [F:ZITE]VIDRO=[M:ZITF0]VIDRO
          [F:ZITE]PLASTICO=[M:ZITF0]PLASTICO
          [F:ZITE]PAPEL=[M:ZITF0]PAPEL
          [F:ZITE]ECAL=[M:ZITF0]ECAL
          [F:ZITE]ACO=[M:ZITF0]ACO
          [F:ZITE]ALUM=[M:ZITF0]ALUM
          [F:ZITE]MADEIRA=[M:ZITF0]MADEIRA
          [F:ZITE]OUTROS=[M:ZITF0]OUTROS
   If LN_EXISTE=2

       Rewrite [F:ZITE]
   Else

       Write [F:ZITE]
   Endif
          If fstat=0
            Commit
          Else
            Rollback
          Endif

Return

$LIENS

  Filter [F:ZITE]
  Filter [F:ZITE] Where [F:ZITE]ITMREF=[M:ITF0]ITMREF and [F:ZITE]STOFCY=[M:ITF0]STOFCY

          [M:ZITF0]VIDRO=[F:ZITE]VIDRO
          [M:ZITF0]PLASTICO=[F:ZITE]PLASTICO
          [M:ZITF0]PAPEL=[F:ZITE]PAPEL
          [M:ZITF0]ECAL=[F:ZITE]ECAL
          [M:ZITF0]ACO=[F:ZITE]ACO
          [M:ZITF0]ALUM=[F:ZITE]ALUM
          [M:ZITF0]MADEIRA=[F:ZITE]MADEIRA
          [M:ZITF0]OUTROS=[F:ZITE]OUTROS

  Affzo [M:ZITF0]

Return

如果有人可以帮助我,我会陷入困境......我可以在表格中写入值并修改它们,但我无法读取它们。

4

1 回答 1

0

$LIENS您的块中没有读取。filter 语句只是过滤。您必须添加 for[F:ZITE] ... nextRead [F:ZITE]last 或 first 或read [F:ZITE]ZITE0=[M:ITF0]ITMREF;[M:ITF0]STOFCY

于 2018-06-06T20:16:31.363 回答