Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
languagejava
themeEclipse
firstline1
titlePONMARC
linenumberstrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "TOPCONN.CH"
#INCLUDE "TBICONN.CH"

//-------------------------------------------------------------------
/*/{Protheus.doc}
@author     fabio.gimenez
@version    1.0
/*/
//-------------------------------------------------------------------
User Function PONMARC()
Local aAutoCab          := {}
Local aSP8              := {}
Local nI                := 0

Private lMsErroAuto     := .F.

// Marcações que serão incluídas ou excluídas para a Matrícua 005022 Filial D MG 01
Aadd(aSP8,{{"P8_FILIAL","D MG 01 "},{"P8_MAT","005022"},{"P8_DATA",sToD("20230707")},{"P8_HORA",9}})
Aadd(aSP8,{{"P8_FILIAL","D MG 01 "},{"P8_MAT","005022"},{"P8_DATA",sToD("20230707")},{"P8_HORA",12}})
Aadd(aSP8,{{"P8_FILIAL","D MG 01 "},{"P8_MAT","005022"},{"P8_DATA",sToD("20230707")},{"P8_HORA",13}})
Aadd(aSP8,{{"P8_FILIAL","D MG 01 "},{"P8_MAT","005022"},{"P8_DATA",sToD("20230707")},{"P8_HORA",18}})

// Matricula e Filial o funciinário.
Aadd(aAutoCab,{{"RA_FILIAL","D MG 01 "},{"RA_MAT","005022"},aSP8})

// Marcações que serão incluídas ou excluídas para a Matrícua 005023 Filial D MG 01
aSP8 := {}
Aadd(aSP8,{{"P8_FILIAL","D MG 01 "},{"P8_MAT","005023"},{"P8_DATA",sToD("20230707")},{"P8_HORA",8.49}})
Aadd(aSP8,{{"P8_FILIAL","D MG 01 "},{"P8_MAT","005023"},{"P8_DATA",sToD("20230707")},{"P8_HORA",12.01}})
Aadd(aSP8,{{"P8_FILIAL","D MG 01 "},{"P8_MAT","005023"},{"P8_DATA",sToD("20230707")},{"P8_HORA",12.59}})
Aadd(aSP8,{{"P8_FILIAL","D MG 01 "},{"P8_MAT","005023"},{"P8_DATA",sToD("20230707")},{"P8_HORA",18.11}})

// Matricula e Filial o funciinário.
Aadd(aAutoCab,{{"RA_FILIAL","D MG 01 "},{"RA_MAT","005023"},aSP8})

/*/ Parâmetros PONM010
    lWork		,;	//01 -> Se o "Start" foi via WorkFlow
    lUserDef 	,;	//02 -> Não utilizado para o ExecAuto
    lLimita		,;	//03 -> Não utilizado para o ExecAuto
    cProcFil	,;	//04 -> Não utilizado para o ExecAuto
    lProcFil	,;	//05 -> Não utilizado para o ExecAuto
    lApoNLidas	,;	//06 -> Não utilizado para o ExecAuto
    lForceR		,;	//07 -> Não utilizado para o ExecAuto
    xAutoCab	,;  //08 -> Identificação dos Funcionários para o ExecAuto
    xAutoItens	,;  //09 -> Marcações dos funcionários que serão incluídas ou excluídas
    nOpcAuto    ,;  //10 -> Exclusão ou inclsuão da marcação - 1 - Exclusão, 3 Inclusão
/*/

// Inicialização do ambiente
PREPARE ENVIRONMENT EMPRESA ("T1") FILIAL ("D MG 01")

// Laço de repetições para a chamada do MsExecAuto por funcionário
For nI := 1 To Len(aAutoCab)
    MSExecAuto({|a,b,c,d,e,f,g,h,i,j| PONM010(a,b,c,d,e,f,g,h,i,j)},.T.,"","","","","","",aAutoCab[nI],aAutoCab[nI,3],3)
    If lMsErroAuto
        MostraErro()
    Else
        Conout("ExecAuto PONM010 Finalizado")
    EndIf
Next

Return
Aviso
titleImportante

Caso o ExecAuto seja executado sem interface, é necessário colocar o PREPARE ENVIRONMENT EMPRESA ("T1") FILIAL ("D MG 01") e RESET ENVIRONMENT. Se o ExecAuto for executado dentro do Protheus, chamando a rotina pelo Menu, não é necessário colocar o PREPARE ENVIRONMENT e RESET ENVIRONMENT.


Após a execução do MsExecAuto, veremos no console log a mensagem que foi incluída no programa "ExecAuto PONM010 Finalizado" para os dois funcionários.

...