O objetivo da rotina MATA241 - Movimentos Internos Modelo 2 é agilizar a operação de digitação dos movimentos a serem realizados. Na grande maioria dos casos estes movimentos pertencem a um mesmo contexto (ex: baixa de insumos para uma ordem de produção, baixa de material de consumo para uma solicitação ao armazém) e assim estão relacionados ao mesmo centro de custo. Por este motivo esta rotina apresenta este formulário neste modelo, com o centro de custo único para todos os movimentos.
A rotina de movimentações múltiplas permite realizar as operações de inclusão e estorno, conforme exemplos abaixo:
//------------------------------------------------------------------------
/*
EXEMPLO DE INCLUSÃO
*/
//------------------------------------------------------------------------
#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"
User Function TMATA241()
Local _aCab1 := {}
Local _aItem := {}
Local _atotitem := {}
Local cCodigoTM := "503"
Local cCodProd := "PRODUTO "
Local cUnid := "PC "
Private lMsHelpAuto := .T.
Private lMsErroAuto := .F.
//Private _acod := {"1","MP1"}
PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "EST"
_aCab1 := {{"D3_DOC" ,NextNumero("SD3",2,"D3_DOC",.T.), NIL},;
{"D3_TM" ,cCodigoTM , NIL},;
{"D3_CC" ," ", NIL},;
{"D3_EMISSAO" ,ddatabase, NIL}}
_aItem:={{"D3_COD" ,cCodProd ,NIL},;
{"D3_UM" ,cUnid ,NIL},;
{"D3_QUANT" ,1 ,NIL},;
{"D3_LOCAL" ,"01" ,NIL},;
{"D3_LOTECTL" ,"",NIL},;
{"D3_LOCALIZ" , "ENDEREÇO ",NIL}}
aadd(_atotitem,_aitem)
MSExecAuto({|x,y,z| MATA241(x,y,z)},_aCab1,_atotitem,3)
If lMsErroAuto
Mostraerro()
DisarmTransaction()
break
EndIf
Return
//------------------------------------------------------------------------
/*
EXEMPLO DE ESTORNO
*/
//------------------------------------------------------------------------
#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"
User Function TMata241()
Local aCab := {}
Local aItem := {}
Private lMsErroAuto := .F.
PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "EST"
dbSelectArea("SD3")
dbSetOrder(2)
If dbSeek(xFilial()+"X00002004")
aCab := { {"D3_DOC" ,SD3->D3_DOC,Nil}}
aItem := {{"D3_COD", "2", NIL},;
{"D3_UM", "UN", NIL},;
{"D3_QUANT", 1, NIL},;
{"D3_LOCAL", "01", NIL},;
{"D3_ESTORNO", "S", NIL}}
MSExecAuto({|x,y,z| MATA241(x,y,z)},aCab,{aItem},6)
If lMsErroAuto
Mostraerro()
Endif
EndIf
Return |
Na página principal da rotina, estão disponíveis as seguintes opções:
|
04. PRINCIPAIS CAMPOS
| Campo | Descrição |
|---|---|
| Número do documento | Número do documento referente a(s) movimentação(ões) que serão informados. |
| TM | Código do tipo de movimentação que os movimentos que serão informados, pode ser: (E) - Entrada - Códigos < ou = 500 (S) - Saída - Códigos > 500 |
| Centro de Custo | Inclua a descrição relacionada |
| Nome | Propósito | Link da Documentação |
|---|---|---|
| MV_ABATEST | ||
| MV_ATFDCBA | ||
| MV_CBASEAF | ||
| MV_CQ | Local (Armazém) do Controle de Qualidade. | DT MV_CQ |
| MV_CUSMED | ||
| MV_DAMARCT | ||
| MV_ESTNEG | Indica se o sistema permitirá que os saldos em estoque dos produtos fique negativo através de movimentação. Conteúdo deve ser (S)im ou (N)ão. | DT MV_ESTNEG |
| MV_IMPMOV | Indica se permite a impressão da relação dos movimentos não realizados por falta de saldos. | DT MV_IMPMOV |
| MV_INTGH | ||
| MV_LOCPROC | Indica o local padrão a ser enviado os materiais indiretos em processo. | DT MV_LOCPROC |
| MV_OPSUSP | ||
| MV_PIMSINT | Habilita integração Protheus x PimsGraos | DT MV_PIMSINT |
| MV_PRODMNT | Indica o item de estoque para ordem de produção do SIGAMNT | DT MV_PRODMNT |
| MV_QTDPREV | indicar se soma quantidade dos campos de ordens de produção previstas nos cálculos de quantidade empenhada e quantidade prevista de entrada. | DT MV_QTDPREV |
| MV_REVPROD | Indica se utiliza controle de revisão de produto. | DT MV_REVPROD |
| MV_TPSALDO | Indica qual tipo de saldo será considerado nos movimentos internos: (S) Utiliza a funcao SaldoSB2() (Q) Utiliza o valor B2_QATU-B2_QACLASS-B2_RESERVA | DT MV_TPSALDO |
| MV_VLDALMO | Indica se deve validar existência do almoxarifado destino do movimento. | DT MV_VLDALMO |
| MV_WMSNEW | Indica se utiliza novo conceito WMS (Movimentações e Estoque por Endereço). | DT MV_WMSNEW |
<!-- esconder o menu -->
<style>
div.theme-default .ia-splitter #main {
margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
display: none;
}
#main {
padding-left: 10px;
padding-right: 10px;
overflow-x: hidden;
}
.aui-header-primary .aui-nav, .aui-page-panel {
margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
margin-left: 0px !important;
}
</style>
|