Estou criando tabela temporária e está dando, estou tentando criar o indice convertendo o campo DATA com a função DTOS().
oTableTemp := FWTemporaryTable():New("TRB", aCampos)
oTableTemp:AddIndex("01", {"FILIAL","DTOS(DATENTR)","NUM","ITEM"} )
oTableTemp:Create()
THREAD ERROR ([5616], mbarretos, 4KSBC1227) 19/02/2023 08:49:46
erro no parâmetroaFields: O campo DTOS(DATENTR) não existe on FWTABLESTRUCT:ADDINDEX(FWTABLESTRUCT.PRX) 12/11/2021 14:43:29 line : 405
Alguém consegue ajudar?
dadinel
Fevereiro 19, 2023, 6:55pm
2
Olá,
Não é necessário efetuar a conversão do tipo de campo, isso é feito de forma automática pela classe FWTemporaryTable.
O método AddIndex recebe apenas o nome do índice e um array com o nome dos campos.
oTableTemp := FWTemporaryTable():New("TRB", aCampos)
oTableTemp:AddIndex("01", {"FILIAL","DATENTR","NUM","ITEM"} )
oTableTemp:Create()
Lembrando que os campos do índice devem existir na tabela com o tipo correto e nome idêntico.
Documentação: https://tdn.totvs.com.br/display/public/framework/FWTemporaryTable