Documento: PMSA203 (Tarefas do Projeto) - Rotina automática
Este documento contêm exemplos de utilizações da rotinas automáticas de inclusão, alteração e exclusão do rotina Cadastro de Tarefas de um projeto (PMSA203).
//INCLUSAO
USER FUNCTION PMS203I2()
LOCAL aGetCPos := {}
PRIVATE lMsErroAuto := .F.
//Posiciona no projeto
DbSelectArea("AF8")
dbSetOrder(1)
DbSeek(xFilial("AF8")+'TESTE2 ' )
aAdd(aGetCPos ,{"AF9_PROJET" ,'TESTE2 ' ,.F.})
aAdd(aGetCPos ,{"AF9_TAREFA" ,'02 ' ,.F.})
aAdd(aGetCPos ,{"AF9_REVISA" ,PmsRevAtu('TESTE2 ') ,.F.})
aAdd(aGetCPos ,{"AF9_EDTPAI" ,'TESTE2 ' ,.F.})
aAdd(aGetCPos ,{"AF9_DESCRI" ,'DESCRICAO TESTE' ,.F.})
aAdd(aGetCPos ,{"AF9_QUANT" ,1 ,.F.})
aAdd(aGetCPos ,{"AF9_NIVEL" ,'002' ,.F.})
aAdd(aGetCPos ,{"AF9_CALEND" ,'001' ,.F.})
aAdd(aGetCPos ,{"AF9_HDURAC" ,8 ,.F.})
aAdd(aGetCPos ,{"AF9_HORAI" ,"08:00" ,.F.})
aAdd(aGetCPos ,{"AF9_START" , dDataBase ,.F.})
MSExecAuto({|a,b,c,d| PMSA203(a,b,c,d)},3,{},"002",aGetCpos)
If lMsErroAuto
MostraErro()
Else
Alert("Tarefa inclusa com sucesso!")
Endif
Return
//ALTERAÇÃO
USER FUNCTION PMS203A2()
LOCAL aGetCPos := {}
PRIVATE lMsErroAuto := .F.
//Posiciona no projeto
DbSelectArea("AF8")
dbSetOrder(1)
IF DbSeek(xFilial("AF8")+'TESTE2 ' )
//Posiciona na tarefa.
DbSelectArea("AF9")
dbSetOrder(1) //AF9_FILIAL+AF9_PROJET+AF9_REVISA+AF9_TAREFA
DbSeek(xFilial("AF9")+AF8->(AF8_PROJET+AF8_REVISA)+'02 ' )
// Campos para Compor chave de busca na rotina automatica (obrigatorio)
aAdd(aGetCPos ,{"AF9_PROJET" ,AF9_PROJET ,.F.})
aAdd(aGetCPos ,{"AF9_TAREFA" ,AF9_TAREFA ,.F.})
aAdd(aGetCPos ,{"AF9_REVISA" ,AF9_REVISA ,.F.})
// fim dos campos de chave
aAdd(aGetCPos ,{"AF9_QUANT" ,99 ,.T.}) // Campo que será alterado
MSExecAuto({|a,b,c,d| PMSA203(a,b,c,d)},4,{},"002",aGetCpos)
If lMsErroAuto
MostraErro()
Else
Alert("Tarefa Alterada com sucesso!")
Endif
Else
Alert("Projeto não encontrado!")
Endif
Return
//EXCLUSÃO
USER FUNCTION PMS203E2()
LOCAL aGetCPos := {}
PRIVATE lMsErroAuto := .F.
//Posiciona no projeto
DbSelectArea("AF8")
dbSetOrder(1)
IF DbSeek(xFilial("AF8")+'TESTE2 ' )
//Posiciona na tarefa.
DbSelectArea("AF9")
dbSetOrder(1) //AF9_FILIAL+AF9_PROJET+AF9_REVISA+AF9_TAREFA
DbSeek(xFilial("AF9")+AF8->(AF8_PROJET+AF8_REVISA)+'02 ' )
// Campos para Compor chave de busca na rotina automatica (obrigatorio)
aAdd(aGetCPos ,{"AF9_PROJET" ,AF9_PROJET ,.F.})
aAdd(aGetCPos ,{"AF9_TAREFA" ,AF9_TAREFA ,.F.})
aAdd(aGetCPos ,{"AF9_REVISA" ,AF9_REVISA ,.F.})
MSExecAuto({|a,b,c,d| PMSA203(a,b,c,d)},5,{},"002",aGetCpos)
If lMsErroAuto
MostraErro()
Else
Alert("Tarefa Excluída com sucesso!")
Endif
Else
Alert("Projeto não encontrado!")
Endif
Return
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas