Histórico da Página
...
Cria uma infra estrutura que permite uma "granularização" das tarefas que podem ser executadas por quaisquer servidores.
A Lista pode ser criada pode ser criada para Windows e Linux usando o serviço do Redis como infra-estrutura (Serviço de Cache)
Hierarquia
- TQueueListSvc
Construtores
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#include 'protheus.ch'
// Setup Redis
Static cRedisHost := "tec-clima"
Static nRedisPort := 6379
User Function LstPut()
Local nRet := 0
// ID da mensagem
Local cMsgId1 := "id1"
// Mensagem a enviar
Local cMsg := '{"inteiro":100,"double":10.32,"OK":true,"NOK":false,"NULO":null,"VAZIO":"","ROWS":[{"Valor":5000,"OBJ":{"x":2},"Data":"2014-08-29"}, "ricardo"], "VETOR":[1,2,3,4]}'
// Nome da Lista
Local cListName := "Lista_TQLS"
// Objeto de Lista
Local oTQLS := Nil
Local cMsgGet := ""
// Cria um novo objeto de Lista
oTQLS := TListSvc():New(cListName)
If(oTQLS == Nil)
ConOut("### ERRO ### " + "Erro na criacao da Lista - " + cListName)
Return .F.
Else
ConOut("Criacao da Lista OK - " + oTQLS:cName)
EndIf
// Configurando a Lista
nRet := oTQLS:Setup(cRedisHost, nRedisPort)
If nRet != 0
ConOut("### ERRO ### " + "Erro ao fazer o Setup" + " Erro: " + AllTrim(Str(nRet)))
Return .F.
Else
ConOut("Setup de Lista OK - " + oTQLS:cName + " nMsgRetPer: " + AllTrim(Str(oTQLS:nMsgRetPer)))
EndIf
// Gravando uma mensagem
nRet := oTQLS:PutMsg( cMsgId1, cMsg )
If nRet != 0
ConOut("### ERRO ### " + "Erro ao enviar mensagem" + " Erro: " + AllTrim(Str(nRet)))
Return .F.
Else
ConOut("Enviou msg Lista OK - " + oTQLS:cName + " com ID: " + cMsgId1 + " Tamanho: " + AllTrim(Str(Len(cMsg))))
EndIf
// Obtem uma mensagem
nRet := oTQLS:GetMsg( cMsgId1, @cMsgGet )
If nRet != 0
ConOut("### ERRO ### " + "Erro ao receber mensagem" + " Erro: " + AllTrim(Str(nRet)))
Return .F.
Else
ConOut("Recebeu msg Lista OK - " + oTQLS:cName + " com ID: " + cMsgId1 + " Tamanho: " + AllTrim(Str(Len(cMsgGet))))
EndIf
// Removendo uma mensagem
nRet := oTQLS:DelMsg( cMsgId1 )
If nRet != 0
ConOut("### ERRO ### " + "Erro ao remover mensagem" + " Erro: " + AllTrim(Str(nRet)))
Return .F.
Else
ConOut("Removeu msg Lista OK - " + oTQLS:cName + " com ID: " + cMsgId1)
EndIf
Return .T. |
Observações
Para Windows a versão requer uma biblioteca para acesso ao Redis (rdwincli.dll).
Arquivos: rdwincli_32bits.zip | rdwincli_64bits.zip
Abrangência
Totvs Application Server com release superior a 7.00.131227A-20160120 NG
Veja também
- Classe TQueueListSvcTQueueSvc
- Serviço de Cache
- GetBuild
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas