Escolar Documentos
Profissional Documentos
Cultura Documentos
Abrangência
ERP 10 e 11
Disponibilidade do recurso
Este recurso está disponível nos produtos Microsiga Protheus 10 e 11.
Compilação de código-fonte.
Execução de código-fonte.
Para compilar um código-fonte com o código escrito no formato Embedded, deve-se utilizar o produto Microsiga Protheus, com build igual ou
superior a 7.00.050721P, em um ambiente com repositório para TOTVS | DBAccess (RPODB=TOP). A utilização deste recurso, também
depende da atualização da LIB.
1º Opção:
%Order: % traduzido para SqlOrder(->(IndexKey()))
2º Opção:
%Order: , % traduzido para SqlOrder(->(IndexKey()))
3º Opção:
%Order: , % traduzido para SqlOrder(->(DBNickIndexKey()))
Limitação
Não é permitido incluir funções no meio do código embedded. Se precisar, o valor deve ser guardado em uma variável antes do início do
BeginSQL.
Exemplo
tam_cp := GetE2ValorSize() BeginSql alias 'E2TEMP' column E2_EMISSAO as Date, E2_VALOR as Numeric(tam_cp,2) . . . EndSql
Erros de compilação
Caso seja utilizado algum argumento inválido para especificar as colunas ou erros de sintaxe nas expressões que serão transformadas para
montagem da query, a compilação do código-fonte é interrompida com a ocorrência Syntax Error, informando a linha em que a primeira
ocorrência foi encontrada.
Erros de execução
Query Argument Error: Alias [XXX] already in suse.
Caso a instrução BeginSQL especifique um alias que já esteja aberto (em uso), a aplicação é abortada com ocorrência de erro fatal,
informando em XXX o alias utilizado.
Type Mismach on +
Esta ocorrência, se reproduzida, informará na pilha de chamadas o número da linha do código-fonte correspondente à instrução
EndSQL. Essa ocorrência ocorre caso alguma função intermediária do engine do Embedded SQL, excluíndo-se as funções
especificadas na query com a sintaxe %exp:...%, retornar um conteúdo não caractere que será acrescentado na query. Esta ocorrência
é mais dificil de localizar, sendo útil nestes casos a análise do arquivo temporário gerado pelo TOTVS | Development Studio, no
momento da compilação.