...
- Histórico das transferências.
- Alçada de aprovação de documentos.
- Transferência transferência entre filiais e armazéns em um mesmo documento.
...
O processo que envolve o Solicitação de Transferência transferência de Materiais contempla as seguintes etapas:
...
Bloco de código |
---|
theme | Confluence |
---|
title | Incluir uma solicitação de transferência |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "TBICONN.CH"
/*
Exemplo de inclusão de ums solicitacao de transferenciatransferência via rotina automatica
*/
User Function M311Inc()
Local oModel
Local aLog
Local cMensLog
Local nX
PREPARE ENVIRONMENT EMPRESA '99' FILIAL '01' USER 'admin' PASSWORD '' MODULO "EST"
oModel := FWLoadModel("MATA311") //Carrega o modelo
oModel:SetOperation(MODEL_OPERATION_INSERT) // Seta operação de inclusão
oModel:Activate() // Ativa o Modelo
//Cabeçalho da solicitacao
oModel:SetValue( 'NNSMASTER', 'NNS_CLASS', '1' )
oModel:SetValue( 'NNSMASTER', 'NNS_ESPECI', ' ' )
//Itens da solicitacao
// produto e local de origem
oModel:SetValue( 'NNTDETAIL', 'NNT_FILORI', '01' )
oModel:SetValue( 'NNTDETAIL', 'NNT_PROD', 'PRO001' )
oModel:SetValue( 'NNTDETAIL', 'NNT_LOCAL', '0A' )
oModel:SetValue( 'NNTDETAIL', 'NNT_QUANT', 1 )
// produto e local de destino
oModel:SetValue( 'NNTDETAIL', 'NNT_FILDES', '01' )
oModel:SetValue( 'NNTDETAIL', 'NNT_PRODD', 'PRO001' )
oModel:SetValue( 'NNTDETAIL', 'NNT_LOCLD', '0B' )
If oModel:VldData() //Validação do modelo
oModel:CommitData() // Gravação do Modelo
Else
aLog := oModel:GetErrorMessage() //Recupera o erro do model quando nao passou no VldData
cMensLog := ''
//laco para gravar em string cLog conteudo do array aLog
For nX := 1 to Len(aLog)
If !Empty(aLog[nX])
cMensLog += Alltrim(aLog[nX]) + CHR(13)+CHR(10)
EndIf
Next nX
lMsErroAuto := .T. //seta variavel private como erro
AutoGRLog(cMensLog) //grava log para exibir com funcao mostraerro
MostraErro()
EndIf
oModel:DeActivate() //desativa modelo
Return NIL
|
Bloco de código |
---|
title | Copiar uma solicitação de transfência |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "TBICONN.CH"
/*
Exemplo de Copia de ums solicitacao de transferenciatransferência via rotina automatica
*/
User Function m311Copy()
Local oModel
Local nX
Local cCodDoc
Private cOpId311 := "004" // DECLARACAO PARA O REALIZAR A COPIA DA SOLICITACAO
PREPARE ENVIRONMENT EMPRESA '99' FILIAL '01' USER 'admin' PASSWORD '' MODULO "EST"
cCodDoc := "0000000001" // codigo do documento de solicitação de transferenciatransferência a ser copiado
//Posiciona registro
dbSelectArea("NNS")
NNS->(DbSetOrder(1))
If NNS->(DbSeek(xFilial("NNS") + cCodDoc))
//carrega o model
oModel := FWLoadModel( "MATA311" )
//Define operação do modelo
oModel:SetOperation( MODEL_OPERATION_INSERT )
//Ativação do modelo
oModel:Activate( .T. )
//-- Preenchimento dos campos da NNT da 1a linha
oModel:SetValue( "NNTDETAIL","NNT_QUANT",3)
If oModel:VldData() //Validação do modelo
oModel:CommitData() // Gravação do Modelo
Else
aLog := oModel:GetErrorMessage() //Recupera o erro do model quando nao passou no VldData
cMensLog := ''
//laco para gravar em string cLog conteudo do array aLog
For nX := 1 to Len(aLog)
If !Empty(aLog[nX])
cMensLog += Alltrim(aLog[nX]) + CHR(13)+CHR(10)
EndIf
Next nX
lMsErroAuto := .T. //seta variavel private como erro
AutoGRLog(cMensLog) //grava log para exibir com funcao mostraerro
MostraErro()
EndIf
ELSE
conout("Documento de Solicitação de transferenciatransferência não encontrado")
ENDIF
Return NIL
|
Bloco de código |
---|
title | Alterar uma solicitação de transferencia |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "TBICONN.CH"
/*
Exemplo de alteracao de ums solicitacao de transferenciatransferência via rotina automatica
*/
User Function m311Alt()
Local oModel
Local nX
Local cCodDoc
Private cOpId311 := "004" // DECLARACAO PARA O REALIZAR A ALTERACAO DA SOLICITACAO
PREPARE ENVIRONMENT EMPRESA '99' FILIAL '01' USER 'admin' PASSWORD '' MODULO "EST"
cCodDoc := "0000000001" // codigo do documento de solicitaзгo de transferenciatransferência a ser alterado
//Posiciona registro
dbSelectArea("NNS")
NNS->(DbSetOrder(1))
If NNS->(DbSeek(xFilial("NNS") + cCodDoc))
//carrega o model
oModel := FWLoadModel( "MATA311" )
//Define operaзгo do modelo
oModel:SetOperation( MODEL_OPERATION_UPDATE )
//Ativaзгo do modelo
oModel:Activate()
//-- Preenchimento dos campos da NNT da 1a linha
oModel:SetValue( "NNTDETAIL","NNT_QUANT",4)
If oModel:VldData() //Validaзгo do modelo
oModel:CommitData() // Gravaзгo do Modelo
Else
aLog := oModel:GetErrorMessage() //Recupera o erro do model quando nao passou no VldData
cMensLog := ''
//laco para gravar em string cLog conteudo do array aLog
For nX := 1 to Len(aLog)
If !Empty(aLog[nX])
cMensLog += Alltrim(aLog[nX]) + CHR(13)+CHR(10)
EndIf
Next nX
lMsErroAuto := .T. //seta variavel private como erro
AutoGRLog(cMensLog) //grava log para exibir com funcao mostraerro
MostraErro()
EndIf
ELSE
conout("Documento de Solicitaзгo de transferenciatransferência nгo encontrado")
ENDIF
Return NIL |
Bloco de código |
---|
title | Efetivar uma solicitação de transferencia |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "TBICONN.CH"
/*
Exemplo de Efetivar uma solicitacao de transferenciatransferência via rotina automatica
*/
User Function m311efet()
Local oModel
Local nX
Local cCodDoc
Private cOpId311 := "011" // DECLARACAO PARA O REALIZAR A EFETIVACAO DA SOLICITACAO
PREPARE ENVIRONMENT EMPRESA '99' FILIAL '01' USER 'admin' PASSWORD '' MODULO "EST"
cCodDoc := "0000000001" // codigo do documento de solicitaçãoo de transferenciatransferência a ser efetivado
//Posiciona registro
dbSelectArea("NNS")
NNS->(DbSetOrder(1))
If NNS->(DbSeek(xFilial("NNS") + cCodDoc))
//carrega o model
oModel := FWLoadModel( "MATA311" )
//Define operação do modelo
oModel:SetOperation( MODEL_OPERATION_UPDATE )
//Ativação do modelo
oModel:Activate()
//-- Preenchimento dos campos da NNS
oModel:SetValue( 'NNSMASTER' , 'NNS_STATUS' , '2' )
oModel:SetValue( 'NNSMASTER' , 'NNS_ESPECI' , "NF" )
If oModel:VldData() //Valida??o do modelo
oModel:CommitData() // Grava??o do Modelo
Else
aLog := oModel:GetErrorMessage() //Recupera o erro do model quando nao passou no VldData
cMensLog := ''
//laco para gravar em string cLog conteudo do array aLog
For nX := 1 to Len(aLog)
If !Empty(aLog[nX])
cMensLog += Alltrim(aLog[nX]) + CHR(13)+CHR(10)
EndIf
Next nX
lMsErroAuto := .T. //seta variavel private como erro
AutoGRLog(cMensLog) //grava log para exibir com funcao mostraerro
MostraErro()
EndIf
oModel:DeActivate() //desativa modelo
ELSE
conout("Documento de Solicitação de transferenciatransferência não encontrado")
ENDIF
Return NIL
|
Bloco de código |
---|
title | Excluir uma solicitação de transferencia |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "TBICONN.CH"
/*
Exemplo de Excluir uma solicitacao de transferenciatransferência via rotina automatica
*/
User Function m311Exc()
Local oModel
Local nX
Local cCodDoc
PREPARE ENVIRONMENT EMPRESA '99' FILIAL '01' USER 'admin' PASSWORD '' MODULO "EST"
cCodDoc := "0000000002" // codigo do documento de solicitação de transferenciatransferência a ser excluida
//Posiciona registro
dbSelectArea("NNS")
NNS->(DbSetOrder(1))
If NNS->(DbSeek(xFilial("NNS") + cCodDoc))
//carrega o model
oModel := FWLoadModel( "MATA311" )
//Define operação do modelo
oModel:SetOperation( MODEL_OPERATION_DELETE )
//Ativação do modelo
oModel:Activate()
If oModel:VldData() //Validação do modelo
oModel:CommitData() // Gravação do Modelo
Else
aLog := oModel:GetErrorMessage() //Recupera o erro do model quando nao passou no VldData
cMensLog := ''
//laco para gravar em string cLog conteudo do array aLog
For nX := 1 to Len(aLog)
If !Empty(aLog[nX])
cMensLog += Alltrim(aLog[nX]) + CHR(13)+CHR(10)
EndIf
Next nX
lMsErroAuto := .T. //seta variavel private como erro
AutoGRLog(cMensLog) //grava log para exibir com funcao mostraerro
MostraErro()
EndIf
oModel:DeActivate() //desativa modelo
ELSE
conout("Documento de Solicitaão de transferenciatransferência n?o encontrado")
ENDIF
Return NIL |
...
Deck of Cards |
---|
effectDuration | 0.5 |
---|
history | false |
---|
id | samples |
---|
effectType | fade |
---|
|
Card |
---|
default | true |
---|
id | 1 |
---|
label | Incluir |
---|
| Permite a inclusão de informações da solicitação de um produtotransferência. As informações devem ser preenchidas de acordo com as orientações descritas em Principais Campos. Após preencher as informações desejadas e clique em Confirmar. Aviso |
---|
| Não é permitida a alteração dos campos código, data e solicitante em Documento de Transferenciatransferência, sendo gerado automaticamente, conforme usuario logado e ddatabase.
|
|
Card |
---|
default | true |
---|
id | 2 |
---|
label | Alterar |
---|
| Permite a alteração de informações da solicitação selecionado. As informações devem ser ajustadas de acordo com as orientações descritas em Principais Campos. Após alterar as informações desejadas e clique em Confirmar.
Aviso |
---|
| Não é permitida a alteração dos campos código, data e solicitante em Documento de Transferenciatransferência.
|
|
Card |
---|
| Permite a visualização de informações da solicitação.
Após visualizar as informações desejadas e clique em Confirmar.
|
Card |
---|
| Permite a exclusão da solicitação de transferenciatransferência. Confira as informações disponíveis e clique em Confirmar.
|
Card |
---|
| Permite a visualização de informações da solicitação e somente editando dos campos Tp.Doc Entr, Especie NF e Just. Rejeic em Documento de Transferenciatransferência. Em Dados de Transferencia transferência será somente possivel navegar nas informações.
Após visualizar as informações desejadas e clique em Confirmar.
|
Card |
---|
| Facilita a inclusão de solicitação de transferencia transferência de materiais. O sistema faz uma copia da solicitação selecionada atualizando o codigo, data e solicitante , possibilitando a edição e a gravação do o cadastro de um novo produto.
ProcedimentosPara cadastrar uma solicitação de transferência utilizando a opção Copiar: - Em Solicitação de Transferencia transferência de Materiais, posicione o cursor sobre o solicitação a ser copiado.
- Clique em Copiar.
- É exibida a tela de inclusão apresentando todos os campos preenchidos da mesma forma como foram preenchidos para a solicitação selecionado.
- Se necessário altere/preencha os campos que desejar.
- Confira os dados e confirme a inclusão.
|
|
...
05. PRÉ CONDIÇÕES PARA UTILIZAÇÃO DA ROTINA
- Processo de transferencia transferência entre Armzazéns
- Processo de transferencia transferência entre filiais Armzazéns
06. PARÂMETROS DO SISTEMA
Nome | Propósito | Link da documentação |
MV_TPCUSST | define o custo do produto que deve ser considerado no registro de transferência. Apresenta as opções 1=Lista de Preço; 2=Custo Standard; 3=Último preço de Compra e 4=Custo Unitário. |
|
MV_APROVTR | indica se o controle de transferência de produto deve ser submetido para alçada de aprovação. A opção padrão é F. |
|
MV_CUSFIL | indica se o recalculo do custo médio deverá calcular o custo aglutinando por Filial (F), por Empresa (E) ou por Armazém (A). A opção padrão é A. |
|
MV_AGCUSTO | indica se deve aglutinar o custo on-line (por Filial ou Empresa). Respeita a definição do parâmetro MV_CUSFIL. A opção padrão é F. |
|
MV_MTNLOTE | mantém o número do sub-lote para as transferências entre o mesmo produto e o mesmo lote. A opção padrão é N. |
|
MV_ESTNEG | indica se o Sistema permite que os saldos em estoque dos produtos fiquem negativos por meio de movimentações. A opção padrão é S. |
|
07. PONTOS DE ENTRADA
Nome | Propósito | Equivalente em MVC | Link da documentação |
---|
MT311ROT | possa manipular os botões existentes e adicionar novos botões na rotina Solicitação de |
Transferência
08. ADAPTER EAI
Não se aplica a esta rotina
...
12. PROCESSOS RELACIONADOS
...