Árvore de páginas

Versões comparadas

Chave

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

MATA640- Exceções ao Calendário

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):

Para Inclusão, Alteração e Exclusão:

NomeTipoDescriçãoDefaultObrigatórioReferência
PARAMIXB1LógicoCompatibilidade.F.

PARAMIXB2Numérico

Opção desejada: 3-Inclusão; 4-Alteração ; 5-Exclusão


X
PARAMIXB3Vetor

Array contendo cabeçalho da Estrutura de Produtos


X
PARAMIXB4VetorArray contendo os itens que a estrutura possui.
X
Idiomas:Todos

País(es):

Todos

Banco(s) de Dados:

Todos

Sistema(s) Operacional(is):

Todos


Descrição:

As Exceções de Calendário são utilizadas para definição de toda e qualquer exceção periódica a um Recurso, Centro de Custo ou a toda a fábrica, tais como feriados, férias coletivas, compensações, jornada reduzida, etc.


Bloco de código
languagecpp
firstline1
titleExemplo Inclusão/Alteração/Exclusão:
linenumberstrue
collapsetrue
#INCLUDE "TOTVS.CH"
#INCLUDE "RWMAKE.CH"
#INCLUDE 'Protheus.ch'
 
User Function MyMATA640(nOpc)
Local aCab      := {}
Local aItens    := {}
Local aGets     := {}
 
Private lMsErroAuto := .F.
 
Default nOpc := 3
 
ConOut(Repl("-",80))
ConOut(PadC("Teste de rotina automatica para Exceções ao Calendário",80))

//Quando se tratar de inclusao e ou alteracao deverao ser passados os dados de cabecalho e
//itens(array com os intervalos de horas para a data especificada no cabecalho). 
//No caso de exclusao sera necessario enviar somente os dados de cabecalho.
 
If nOpc == 3
	//--------------- Exemplo de Inclusão ------------------------------------//
	aCab := {	{"H9_DTINI"  ,Date()            	    , Nil},;//Data Inicial do Bloqueio
				{"H9_RECURSO","000001"               	, Nil},;//Código do Recurso
				{"H9_CCUSTO" ,"      "              	, Nil},;//Centro de Custo
				{"H9_MOTIVO" ,"INCLUSAO AUTOMATICA"		, Nil}} //Motivo do Bloqueio
			
	aGets := {}
	aadd(aGets, {06.00,12.00})
	aadd(aGets, {13.00,22.00})
 
	aadd(aItens,aGets)
 
    ConOut("Teste de Inclusao")
    MSExecAuto({|v,x,y,z| MATA640(v,x,y,z)},.F.,nOpc,aCab,aItens) //Inclusão
    ConOut("Fim inclusao.")
ElseIf nOpc == 4
   //--------------- Exemplo de Alteração ------------------------------------//
   	aCab := {	{"H9_DTINI"  ,Date()            	    , Nil},;//Data Inicial do Bloqueio
				{"H9_RECURSO","000001"               	, Nil},;//Código do Recurso
				{"H9_CCUSTO" ,"      "              	, Nil},;//Centro de Custo
				{"H9_MOTIVO" ,"INCLUSAO AUTOMATICA"		, Nil}} //Motivo do Bloqueio
			
	aGets := {}
	aadd(aGets, {07.00,12.00})
 
	aadd(aItens,aGets)
 
    ConOut("Teste de Inclusao")
    MSExecAuto({|v,x,y,z| MATA640(v,x,y,z)},.F.,nOpc,aCab,aItens) //Alteração
    ConOut("Fim inclusao.")
 
ElseIf nOpc == 5
   //--------------- Exemplo de Exclusão ------------------------------------
	aCab := {	{"H9_DTINI"  ,Date()            	    , Nil},;//Data Inicial do Bloqueio
				{"H9_RECURSO","000001"               	, Nil},;//Código do Recurso
				{"H9_CCUSTO" ,"      "              	, Nil}} //Centro de Custo
 
	aAdd(aItens,{})

	MSExecAuto({|v,x,y,z| MATA640(v,x,y,z)},.F.,nOpc,aCab,aItens) //Exclusão
EndIf
 
//Verifica se ocorreu algum erro, e exibe a mensagem.
If lMsErroAuto
   If IsBlind()
      If IsTelnet()
         VTDispFile(NomeAutoLog(),.t.)
      Else
         cString := MemoRead(NomeAutoLog())
         Conout("Aviso de Erro:",cString)
      EndIf
   Else
      MostraErro()
   EndIf
Else
   MsgInfo("Operação realizada com sucesso","OK")
EndIf
ConOut(Repl("-",80))

Return

Sintaxe:

MATA640 - Exceções ao Calendário ( PARAMIXB1, PARAMIXB2, PARAMIXB3, PARAMIXB4 ) --> Nil

Retorno:

Nil (nulo)

   Nil