PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 25 → LOG ANTES E DEPOIS DE UMA TABELA
LOG ANTES E DEPOIS DE UMA TABELA
Iniciado por Boller, abr., 18 2020 6:05 PM - 2 respostas
Membro registado
3.651 mensagems
Popularité : +175 (223 votes)
Publicado em abril, 18 2020 - 6:05 PM
LOG ANTES E DEPOIS DE UMA TABELA

CRIA UMA CLASSE DEFINIDA DA TABELA +

MT001_CLIENTES is Class <MAPPING=T001_CLIENTES>

// Le code se trouvant entre <MAPPING> et <FIN> est généré automatiquement.
// Il sera effacé et recréé entièrement à chaque génération depuis l'analyse.
<MAPPING>
m_nT001_ID_PESSOA is 8-byte unsigned int <MAPPING=T001_ID_PESSOA, unique key>
m_sT001_ID_USUARIO is ANSI string <MAPPING=T001_ID_USUARIO>
m_sT001_NOME is ANSI string <MAPPING=T001_NOME>
m_sT001_NOME_MAE is ANSI string <MAPPING=T001_NOME_MAE>
m_sT001_TIPO_PJ_PF is ANSI string <MAPPING=T001_TIPO_PJ_PF>
<END>

END



//----------------------------------------------------------

//carga da estrutura antes da alteracao
HFilter(T001_CLIENTES,T001_CLIENTES.T001_ID_PESSOA,gnID)
FileToArray(garr_T001_CLIENTES_Antes,T001_CLIENTES,T001_CLIENTES.T001_ID_PESSOA)
HDeactivateFilter(T001_CLIENTES)
//carga da estrutura antes da alteracao


//------------------------------------------------------------

Procedure UI_Log(acao)

//carga da estrutura depois da alteracao
HFilter(T001_CLIENTES,T001_CLIENTES.T001_ID_PESSOA,gnID)
FileToArray(garr_T001_CLIENTES_Depois,T001_CLIENTES,T001_CLIENTES.T001_ID_PESSOA)
HDeactivateFilter(T001_CLIENTES)
//carga da estrutura depois da alteracao

//diferença
bufTabela_antes is Buffer
Serialize(garr_T001_CLIENTES_Antes,bufTabela_antes,psdJSON)

bufTabela_depois is Buffer
Serialize(garr_T001_CLIENTES_Depois,bufTabela_depois,psdJSON)

IF bufTabela_antes <> bufTabela_depois THEN

//Info("diferente")

//Log Colunas
TLOG_TABELAS.TLOG_TABELASID = GET_SEQ(TLOG_TABELAS)
TLOG_TABELAS.TLOG_TELA = "Cadastro de Clientes"
TLOG_TABELAS.TLOG_ACAO = acao
TLOG_TABELAS.TLOG_NOME_TABELA = "T001_CLIENTES"
TLOG_TABELAS.TLOG_OLD_VALOR = bufTabela_antes
TLOG_TABELAS.TLOG_NEW_VALOR = bufTabela_depois
TLOG_TABELAS.TLOG_DATA_HORA = DateSys() + TimeSys()
TLOG_TABELAS.TLOG_PROFISSIONAL = GnUserID
HAdd(TLOG_TABELAS)

ELSE
//Info("igual")
END


--
Adriano José Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 99949 1800
adrianoboller@gmail.com
skype: adrianoboller
http://wxinformatica.com.br/
Publicado em abril, 24 2020 - 12:42 PM
Olá Adriano

Podemos implementar a mesma característica usando a estrutura RECORD que é um tipo de variável do Windev.
Muito elegante!

https://help.windev.com/…
Membro registado
3.651 mensagems
Popularité : +175 (223 votes)
Publicado em abril, 27 2020 - 8:20 PM
:merci:

Blz farei os 2 exemplos no sabado que vem na video aula

--
Adriano José Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 99949 1800
adrianoboller@gmail.com
skype: adrianoboller
http://wxinformatica.com.br/