Hoje será demonstrado em como incluir o saldo inicial (na SB9) de vários produtos em uma única rotina.
Imagina ter que cadastrar o saldo inicial de vários produtos em um armazém, dezenas ou centenas de registros.
Pensando nisso, foi montado dois fontes para auxiliar nesse processo, sendo que:
- O primeiro fonte, basicamente abre uma tela para selecionar um arquivo CSV com as colunas para realizar a importação acionando o ExecAuto da MATA220
- O segundo fonte, abre uma tela de parâmetros para digitar do produto de/até e em qual armazém vai ser criado, ai através disso, será acionado o Execauto da MATA220 de todos os produtos que não tenham ainda saldo inicial cadastrado na SB9 naquele armazém
Sendo que em ambas, é exibido no final um log do processamento. Abaixo um exemplo do segundo fonte:
Além disso, caso você precise, da pra acionar o segundo fonte direto no ponto de entrada ao incluir um produto, para ele já incluir o saldo inicial no armazém padrão.
Esse e outros Fontes Premium, estão disponíveis para os assinantes dos Cursos do Terminal de Informação, saiba mais em terminaldeinformacao.com/assinatura.
Bom pessoal, por hoje é só.
Abraços e até a próxima.
Isso não é melhor por um MILE?
Bom dia Arthur, tudo joia?
Opa, ótima ideia, é que pensamos em criar uma User Function para poder ser acionada inclusive num ponto de entrada após a inclusão do produto (seja no p.e. ITEM ou direto no MT010INC).
E também dessa forma, dar uma autonomia na flexibilidade para quem deseja customizar o sistema.
Tenha uma ótima e abençoada terça feira.
Um forte abraço.
Atilio tem como esse saldo inicia já ser criado na gravação do produto novo?
Cadastrei produto novo, cliquei em salvar e após salvar, automaticamente já se cria o saldo inicial desse produto
Bom dia Mauro, tudo joia?
Sim, você tem que acionar a função dentro do ponto de entrada, por exemplo, se você tiver usando o p.e. MT010INC, ficaria assim:
Tenha uma ótima e abençoada terça feira.
Um forte abraço.
Tentei fazer assim, porem ja erro ja na hora de abrir o cadastro de produto
//Bibliotecas
#Include “Protheus.ch”
/*——————————————————————————————————*
| P.E.: MT010INC |
| Desc: Ponto de entrada após inclusão do produto |
| Link: http://tdn.totvs.com/pages/releaseview.action?pageId=6087685 |
*——————————————————————————————————*/
User Function MT010INC()
Local aArea := GetArea()
//Local cRetorno := “”
// Garante que estamos na área correta e com o registro travado
RecLock(‘SB1’, .F.)
B1_X_USER := RetCodUsr()
SB1->(MsUnlock())
// Chamada da função desejada com os campos do produto recém-incluído
u_APCPM02b(SB1->B1_COD, SB1->B1_PROC)
RestArea(aArea)
Return
Bom dia Mauro, tudo joia?
Qual mensagem de erro que está dando?
Fico no aguardo.
Tenha uma ótima e abençoada sexta feira.
Um forte abraço.