Perguntas Gatilho para alterar a TES dos produtos no Venda Direta

Mais
11 anos 1 mês atrás #17680 por davidjackpaiva
Ola pessoal, alguem poderia me ajudar?

A TES padrao no Venda Direta e no Venda Assistida é 501.

O Venda Assistida ficaria usando a TES 501. Já no Venda Direta teria que ser outra TES, eu defini a 707.

Como eu poderia fazer um gatilho que alterasse a TES somente no Venda Direta? Pouparia um bom tempo se fosse automatico, imagina mudar a TES de uns 20 itens. :(

Desde ja agradeço.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17687 por GuPadrao
David, bom dia.

Conheço muito pouco o loja, mas vou tentar lhe ajudar.

1- O nome dos programas para o venda assistida e para o venda direta muda? Sei que o programa do venda assistida é o LOJA701.

2- Existe uma função chamada FUNNAME() e através dela você especificaria qual o programa está sendo usando no momento e a partir dessa informação você determinaria o TES.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17719 por davidjackpaiva
Boa Tarde Luiz

Primeiramente agradeço a sua atenção em me ajudar.

Bom, verifiquei o seguinte:

Venda Direta -> FATA701
Venda Assistida -> LOJA701

Eu apertei F1 no campo onde eu altero a TES (LR_TES), la no Venda Direta. Entao criei um gatilho de teste para alterar o campo LR_DESCRI quando o campo LR_PRODUTO fosse atualizado. Deu certo o teste. Dai resolvi alterar o gatilho para atualizar o campo LR_TES, mas nao esta sendo atualizado, nao sei porque.

Aquela função FUNNAME() é ideal para o que preciso, mas ainda nao sei como fazer o gatilho alterar a TES no Venda Direta. Talvez por ponto de entrada?

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17756 por sarraipa
Cara to com o mesmo problema que vc, no meu caso o sistema busca a tes no parametro MV_TESSAI, então é só encontrar o ponto de correto para compilar esta função.

#include "protheus.ch"
#include "topconn.ch"

user function TESLOJA(codpro)

local resp

if ( codpro == '0000')
resp := "538"
else
resp := GetMV("MV_TESSAI")
endif

return resp

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17758 por kanaamlrr
É só chamar a função que o André postou alterando a condição do codpro para o FUNNAME() de dentro do gatilho.
No retorno da função passa a tes desejada.
Deve funcionar.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17773 por GuPadrao
David, fazendo uma mistureba das informações, tomei a liberdade de alterar o código do André Sarraipa.

Compile o código e faça uma chamada para ele no gatilho utilizando o ExecBlock.

// Inicio Codigo
#include "protheus.ch"
#include "topconn.ch"

user function TesLoja()

Local cResp := ""

If !FunName() $ "FATA701/LOJA701"
cResp := ""

ElseIf FunName() = "LOJA701"
cResp := "501"

ElseIf FunName() = "FATA701"
cResp := "701"

EndIf

return cResp

// Fim Codigo

Por favor Acessar ou Registrar para participar da conversa.

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