Nesse vídeo demonstraremos a utilização da função X31UpdTable, que serve para atualizar uma tabela no banco de dados, como por exemplo, criar ou atualizar campos manualmente via APSDU e depois efetivar via AdvPL (a partir da 2210 é exibido uma mensagem que em breve esse recurso será descontinuado).
Abaixo o código fonte desenvolvido para o exemplo em vídeo acima:
//Bibliotecas
#Include "TOTVS.ch"
/*/{Protheus.doc} User Function zExe539
Atualiza uma tabela no SQL conforme as alterações nos dicionários (SX2, SX3 e SIX)
@type Function
@author Atilio
@since 07/04/2023
@obs
Função X31UpdTable
Parâmetros
Recebe o alias a ser atualizado
Retorno
Função não tem retorno
A partir da LIB 20221010_P12, é exibido uma mensagem de que essa função será descontinuada em breve
Saiba mais em: https://tdn.totvs.com/pages/releaseview.action?pageId=698632582
**** Apoie nosso projeto, se inscreva em https://www.youtube.com/TerminalDeInformacao ****
/*/
User Function zExe539()
Local aArea := FWGetArea()
Local cTabAlias := ""
//Abre um input pro usuário digitar a tabela
cTabAlias := FWInputBox("Insira o alias da tabela")
cTabAlias := Alltrim(cTabAlias)
//Caso a variável foi preenchida, seja tamanho 3 e exista no dicionário, ai prossegue
If ! Empty(cTabAlias) .And. Len(cTabAlias) == 3 .And. ExisteSX2(cTabAlias)
//Limpa as mensagens que haja em memória do X31
__SetX31Mode(.F.)
//Tenta executar a atualização da tabela (criação e alteração de índices e campos)
X31UpdTable(cTabAlias)
//Se houve algum erro, mostra mensagem
If __GetX31Error()
ShowLog("Houve um erro na atualização da tabela '" + cTabAlias + "':" + CRLF + CRLF + __GetX31Trace())
Else
FWAlertSuccess("Sucesso na atualização da tabela '" + cTabAlias + "'", "Sucesso")
EndIf
EndIf
FWRestArea(aArea)
Return
Bom pessoal, por hoje é só.
Abraços e até a próxima.
Boa tarde Atilio, o uso do x31updtable tenho notificado que sera restrito em próximas versoes só para uso interno do framework, vc já estaba notificado do isso?
Bom dia Aleks, tudo joia?
Então, o que eu sei, é que a função X31UpdTable ela será descontinuada, logo será uma questão de tempo até ela deixar de funcionar da forma que conhecemos.
No vídeo do YouTube, veja a partir de 1:45 mais ou menos, que eu mostro a tela que é exibida ao tentar acionar, que é exibido um aviso sobre o assunto.
Tenha uma ótima e abençoada quarta feira.
Um grande abraço.