Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

CONTEÚDO

Índice
indent8.1.
exclude.*CONTEÚDO
stylenone

01. VISÃO GERAL

A rotina de Registro de Ocorrências é uma rotina de apontamento de registro de ocorrências por Documento ou Viagem.

Informações
titleImportante:

Para a correta e plena utilização do processo automático, somente deverão ser usadas "Ocorrências por Documento".

02. OBJETIVO DE UTILIZAÇÃO

Realizar processamento da rotina de Registro de Ocorrências de forma automática.

03. PARÂMETROS

ParâmetroDescrição
aCabArray composto de campos do cabeçalho
aItensArray composto de campos dos itens
aAutoNFAvaArray com as NFs com registro de pendências
nOpcAutoOpção de execução (Ex. 3 - Inclusão)

 04. EXEMPLO DE EXECUÇÃO DE PROGRAMA


Bloco de código
#Include 'PROTHEUS.CH'
#include "topconn.ch" 

User Function TM360AUT()
Local aCab   	   := {}
Local aItens    	:= {}
Local aNFAvaria := {}
Local cSeq		:= '001'
Local nPesoNota := 1000 // Peso da Nota
Local nQtdVol	   := 1012 //Qtde de Volumes
Local nNumNFCcNumNFc   := '098765432'202001180' //numero da nota
Local cSerNFc  cSerieNF	:= '123FAT' //Serie da NF
Local nQtdAva   := 112 //Qtde Avaria /ocorrencia/pendencia
Local cCodOco   := "E008"E017" // ocorrencia cliente
Local cFilDoc   := "M SP 01 "
Local cDoc      := "000000029000000395"
Local cSerie    := "117A01"
Local cTipPnd   := "01"
04" //dt2_tippnd
Local cTMSCOSB	:= SuperGetMV('MV_TMSCOSB',,'0')
 
Private lMSErroAuto := .F.//--Cabecalho da Ocorrencia
 
Aadd(aCab,{"DUA_FILORI", "30"		M SP 01 "       , NIL})      // Informe a Filial de Origem da Viagem
Aadd(aCab,{"DUA_VIAGEM", "000004001807", NIL}) 		        // Informe o numero da Viagem
 
//--Itens da ocorrencia:
aAdd( aItens, {	 {"DUA_SEQOCO", StrZero(1,Len(DUA->DUA_SEQOCO))    , NIL},;
                {"DUA_DATOCO", dDataBase,                            NIL},;
				                {"DUA_HOROCO", StrTran(SubStr(Time(),1,5),":","")	   , NIL},;                 
     
				           {"DUA_CODOCO", "EINF"cCodOco,                               NIL},;                 
            
				    {"DUA_FILDOC", cFilDoc "30"	,                               NIL},;                 
                
				{"DUA_DOC"   , "001094   "cDoc,                          NIL},;                 
                
				{"DUA_SERIE" , "UNI"cSerie      ,                          NIL},;                  
				
                {"DUA_QTDOCO", 100nQtdVol,                                  NIL},;                        
      
				          {"DUA_PESOCO", 100nPesoNota,                                  NIL},;			                          
				                {"DUA_FILVTR", ""	   ,                                  NIL},;                 
             
				   {"DUA_NUMVTR", ""	   ,                                  NIL}})			


          
 

If cTMSCOSB == '2' 
    aNFAvaria := {{cFilDoc + cDoc + cSerie, {{cNumNFc, cSerNFc, nQtdVol, nQtdAva,"",.F.,cNumNFc, (nPesoNota / nQtdVol),cCodOco,cTipPnd,"1"}}
Else 
	aNFAvaria := cFilDoc + cDoc + cSerie,{{cNumNFc, cSerNFc, nQtdVol, nQtdAva,.F.,cNumNFc, (nPesoNota / nQtdVol)}}, cCodOco, cTipPnd, "1"}}  
EndIf

lMsErroAuto := .F.

MsAguarde( {|| MsExecAuto( {|x,y,z| TMSA360(x,y,z)}, aCab, aItens, aNFAvaria, 3 ) }, 'AGUARDE, PROCESSANDO...' )
 
If lMSErroAuto   
    
	MostraErro()
Else   
    
	Alert("ConclúidoRegistro de ocorrência realizado com Sucesso !! ")
EndIf
	     
Return

  


05. TABELAS UTILIZADAS

  • DUA - Registro de Ocorrências
  • DV4 - Notas Fiscais com Avaria
  • DLY - Eventos do Comprovante de Entrega



HTML
<!-- 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>