Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagecpp
themeMidnight
titleExpressão SQL - Correto (SmartX)
#INCLUDE 'TLPP-CORE.TH'

User Function CTB400FIL()

    Local cFiltro  As Character
    Local cLote    As Character
    Local cSubLote As Character

    cLote    := "000001"
    cSubLote := "001"

    // Filtro em sintaxe SQL - obrigatório iniciar com @ para rotinas SmartX.
    cFiltro := "@ CT2_LOTE = '" + cLote + "' AND CT2_SBLOTE = '" + cSubLote + "'"

Return( cFiltro )

...

Bloco de código
languagecpp
themeMidnight
titleExpressão ADVPL - Incorreto (SmartX)
#INCLUDE 'TLPP-CORE.TH'

User Function CTB400FIL()

    Local cFiltro  As Character
    Local cLote    As Character
    Local cSubLote As Character

    // INCORRETO - Referência direta ao alias da tabela (não compatível com Smart X).
    cLote    := CT2->CT2_LOTE
    cSubLote := CT2->CT2_SBLOTE

    // INCORRETO - Operadores lógicos ADVPL e alias na expressão de filtro.
    cFiltro := " CT2->CT2_LOTE = '" + cLote + "' .AND. " CT2->CT2_SBLOTE = '" + cSubLote + "'"

Return( cFiltro )

04. Resumo Comparativo.

Foram incluídos exemplos de rotinas que utilizam o PageAction, bem como casos em que ele não é aplicado, com o objetivo de demonstrar as diferenças entre as abordagens e esclarecer em quais cenários cada uma se mostra mais adequada.

...

ContextoSintaxe permitidaInício com @Alias da tabela (ALIAS->)Operadores lógicos
Rotinas sem Smart XADVPL ou SQLNão obrigatórioPermitido.AND. / .OR.
Rotinas com Smart XSomente SQLObrigatórioNão permitidoAND / OR


...