Árvore de páginas

Ambiente de desenvolvimento do TLPP

Para criarmos os programas em TLPP para o servidor REST usando os @annotation ou as classes, precisamos preparar nosso ambiente de desenvolvimento.

O ambiente de desenvolvimento para escrever aplicações REST requer alguns includes que são distribuídos junto com o RPO padrão do TLPP (tlpp.rpo).

Caso queria atualizar o tlpp.rpo consulte a página de Downloads do TLPP.



Para você desenvolver programas em TLPP é muito simples, basta você extrair os includes da linguagem, que já vem com o tlpp.rpo, adicionar #include 'tlpp-core.th' no seu programa.tlpp e pronto, você já pode usufruir de todos os novos recursos da linguagem.

Extraindo os includes

Como os includes fazem parte do RPO (tlpp.rpo), basta executar a função tlpp.environment.getIncludesTLPP para extraí-los.

Após executar esta função os includes serão extraídos dentro do diretório do "RootPath" do seu ambiente, em um diretório chamado "includes".

Tendo isto basta adicionar este diretório nos seus "PATHs de includes" no seu ambiente de compilação.

Obs. os includes estão disponíveis a partir da versão 01.02.02 do RPO (tlpp.rpo)

Para extrair podemos executar esta função de diversas maneiras:

AppServer Command Line

[AppServer] -env=[seu ambiente] -runstartnormal -run=tlpp.environment.getIncludesTLPP
Ex:
appserver.exe -env=TLPPCORE -runstartnormal -run=tlpp.environment.getIncludesTLPP

SmartClient

Abrir o SmartClient e digitar na tela:

Programa inicial: tlpp.environment.getIncludesTLPP

Comunicação no cliente: [seu serviço]

Ambiente no servidor: [seu ambiente]



SmartClient Command Line

[SmartClient] -M -Q -E=[seu ambiente] -Z=[hostname / IP]-Y=[Porta] -P=tlpp.environment.getIncludesTLPP
Ex:
smartclient.exe -M -Q -E=TLPPCORE -Z=localhost -Y=5012 -P=tlpp.environment.getIncludesTLPP

Código TLPP ou AdvPL
Function u_TLPPIncs()
  Local lRet := .F.
  Local cRet := ""
  Local aMessages := {}
  Local nI := 0

  ConOut("Getting TLPP includes ...")
  lRet := tlpp.environment.getIncludesTLPP(@cRet, @aMessages)

  If(lRet != .T.)
    ConOut("Error: " + cValToChar(cRet))
    For nI := 1 to Len(aMessages)
      ConOut(cValToChar(nI) + " Error: " + cValToChar(aMessages[nI]))
    Next
  Else
    ConOut("OK. 'includes' extracted on path: " + cValToChar(cRet))
  EndIf
Return lRet

Obs. Você pode criar fontes .tlpp e/ou .prw sem nenhum include se eles não tiverem nenhuma dependência

  • Sem rótulos