Ponto de Entrada
Descrição: | Este Ponto de Entrada será executado na rotina Escala Automática de Produtivos (OFIOM270) e permite inserir campos para gravação na tabela VOE |
Localização: | Atualizações \ MovProdutivos \ Escala Automatica (OFIOM270) |
Eventos: | DbSelectArea("VAI") DbSetOrder(1) DbSeek( xFilial("VAI") + cProd ) If !Empty(VAI->VAI_DATDEM) .and. dDtFi > VAI->VAI_DATDEM MsgInfo(STR0031+DtoC(VAI->VAI_DATDEM),STR0016) ElseIf !Empty(cProd) For ni := 1 to nDias lGrava := .f. If FS_VERFERIADO(dDtIn+(ni-1)) // Feriados If !Empty(cPFer) lGrava := .t. cCPer := cPFer EndIf Else // Dia Normal nDia := Dow(dDtIn+(ni-1)) Do Case Case nDia == 1 // Domingo If !Empty(cPDom) lGrava := .t. cCPer := cPDom EndIf Case nDia == 2 // Segunda-Feira If !Empty(cPSeg) lGrava := .t. cCPer := cPSeg EndIf Case nDia == 3 // Terca-Feira If !Empty(cPTer) lGrava := .t. cCPer := cPTer EndIf Case nDia == 4 // Quarta-Feira If !Empty(cPQua) lGrava := .t. cCPer := cPQua EndIf Case nDia == 5 // Quinta-Feira If !Empty(cPQui) lGrava := .t. cCPer := cPQui EndIf Case nDia == 6 // Sexta-Feira If !Empty(cPSex) lGrava := .t. cCPer := cPSex EndIf Case nDia == 7 // Sabado If !Empty(cPSab) lGrava := .t. cCPer := cPSab EndIf EndCase EndIf If lGrava .and. cPAux # cCPer cPAux := cCPer DbSelectArea("VOE") RecLock("VOE",.t.) VOE->VOE_FILIAL := xFilial("VOE") VOE->VOE_CODPRO := cProd VOE->VOE_DATESC := dDtIn+(ni-1) VOE->VOE_CODPER := cCPer If lVOEFILPRO VOE->VOE_FILPRO := cFilPro Endif // Insere Campos para gravação na tabela VOE (Escala de Produtivos) If ExistBlock("OM270GRV") ExecBlock("OM270GRV",.f.,.f.) EndIf MsUnlock() EndIf Next MsgAlert(STR0028+cProd+STR0029,STR0016) Else MsgAlert(STR0030,STR0016) EndIf cProd := cPDom := cPSeg := cPTer := cPQua := cPQui := cPSex := cPSab := cPFer := cPAux := space(6) cNome := space(50) dDtIn := dDataBase+1 dDtFi := dDataBase+31 oDlg1:Refresh() Return() |
Programa Fonte: | OFIOM270.PRW |
Função: | FS_ESCALAR() |
Parâmetros: | N/A |
Retorno: | N/A |
Exemplo:
Include totvs.ch
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Insere Campos para gravação na tabela VOE (Escala de Produtivos) na rotina OFIOM270 (Escala Automática) //
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
User Function OM270GRV()
MsgAlert("Ponto de Entrada OM270GRV executado com sucesso!","Atenção")
Return