Estou desenvolvendo um fonte para que quando uma fatura gerada através da rotina "Funções contas a pagar", ela traga para o novo titulo informações do titulo "antigo", como por exemplo: Numeração do FLUIG, nome do aprovador e status de liberação.
Segue versão atual do fonte:
User Function FA290()
Local cTitulo := "000202490" Local cTipo := "FT" Local cXNFLUIG := "123456" Local cXTITAPROV := "S" Local cXNOMAPR := "Teste"
cQuery := "UPDATE SE2010" cQuery += " SET E2XNFLUIG = '" + cXNFLUIG + "', " cQuery += "E2_XTITAPROV = '" + cXTITAPROV + "', " cQuery += "E2_XNOMAPR = '" + cXNOMAPR + "' " cQuery += "WHERE D_E_L_E_T = ' ' AND E2_NUM = '" + cTitulo + "'"
TCSqlExec(cQuery, "SE2")
(As variáveis estão com valores para testes)
Porém ao executar a rotina e simular o processo de geração da fatura é apresentado o seguinte erro "THREAD ERROR ([6336], administrator, FLASH-PRTHML) 01/07/2024 14:16:02 argument #0 error, expected N->C, function str on U_FA290(F290BTIT.PRW) 01/07/2024 14:07:48 line : 31"
Impedindo que o conteúdo seja gravado.
Ps: Pesquisei a respeito do erro e vi que na função o tipo de parâmetro esperado seria "C-> Caractere" porém todas as variáveis estão declaradas como string. Anexo um print do fonte para facilitar o entendimento.
Na linha 31 do seu fonte, existe a função "str()" que esta esperando um numero mas esta recebendo uma string.
— Leandro.Santos 01 de Jul de 2024Agradeço a sinalização! Olhando as documentações encontrei outra função que irá me auxiliar com o caso especifico.
— Alberto Barrios 02 de Jul de 2024