× Linguagem de Programação ADVPL

Perguntas Execblock

Mais
11 anos 5 meses atrás #19004 por Freitas
Execblock foi criado por Freitas
Boa tarde pessoal.
É o seguinte, montei um execblock para atender minha necessidade de contabilizar valores de títulos incluídos no contas a pagar usando ou não múltiplas naturezas porém ao ao rodar a rotina de contabilização os lançmentos não são contabilizados.

Arquivo Anexo:

Nome do Arquivo: Execblock.rar
Tamanho do Arquivo:62 KB
Anexos:

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 5 meses atrás #19006 por kanaamlrr
Respondido por kanaamlrr no tópico Execblock
Ao invés d execblock utilize a chamada direta da função
por exemplo:

"U_510001VAL()"

E certifique-se de que no final da sua function está assim:

Return cRet

Abraço!

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 5 meses atrás #19011 por Freitas
Respondido por Freitas no tópico Execblock
Ola Kanaãm. Obrigado pela ajuda. Apliquei as modificações que você indicou.

Na lp 510/001, ficha valor, campo Vlr Moeda 1 coloquei "U_510001VAL()", no fonte LP510001Val coloquei o Return cRet mas ao rodar a contabilização gera error.log

Type mismatch on compare on DETPROVA(MATAFUNA.PRX)

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 5 meses atrás #19013 por kanaamlrr
Respondido por kanaamlrr no tópico Execblock
Nesse caso não deveria ser um valor numérico?

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 5 meses atrás #19034 por Freitas
Respondido por Freitas no tópico Execblock
Kanaãn, simplifiquei a instrução para

If(SE2->E2_MULTNAT <> "2" .AND. SE2->E2_AGCTB $ "S" .AND. SE2->E2_PREFIXO <> "TRF" .AND. (!(SE2->E2_TIPO$GETMV("MV_TIPNCTB"))))
nRet := SEV->EV_VALOR
Else
nRet := SE2->E2_VALOR+SE2->E2_IRRF+SE2->E2_INSS+SE2->E2_PIS+SE2->E2_COFINS+SE2->E2_CSLL
Endif

mas mesmo assim ao rodar a contabilização nada é contabilizado. Se eu coloco essa instrução diretamente na LP a contabilização acontece mas quando eu mando executar a chamada via execblock, então, nada.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 5 meses atrás #19039 por kanaamlrr
Respondido por kanaamlrr no tópico Execblock
Não precisa utilizar o execblock, é só colocar a chamada da função direto.

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.121 segundos
Joomla templates by a4joomla