Histórico da Página
...
Para execução da rotina automática, ilustramos a solicitação do adiantamento após a efetivação da viagem (MyFA667A), no seguinte exemplo:
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE "PROTHEUS.CH" |
...
#INCLUDE "FWMVCDEF.CH" |
...
//---------- Solicitacao de adiantamento da viagem ----------// |
...
User Function MyFA667A() |
...
Local aKeyFLC := {} |
...
Local aUser := {} |
...
Local oModel := Nil |
...
Local oModelFLC := Nil |
...
Local oModelFLD := Nil |
...
Local cViagem := "0000000001" |
...
Local cPartic := "000002" |
...
RpcSetEnv("T1","D MG 01 ","claudio.ribeiro","1") // Inicializa ambiente com usuario solicitante |
...
dbSelectArea("FL5") |
...
dbSetOrder(1) |
...
dbSeek(xFilial("FL5")+cViagem) // Viagem ja solicitada |
...
// Carrega modelo de dados com a solicitacao de viagem posicionada |
...
oModel := FWLoadModel("FINA667A") |
...
oModelFLC := oModel:GetModel("FLCDETAIL") // Participantes |
...
oModelFLD := oModel:GetModel("FLDDETAIL") // Adiantamentos |
...
// Chave de busca do participante dentro da da viagem |
...
aKeyFLC := { {"FLC_FILIAL",xFilial("FLC")},{"FLC_VIAGEM",cViagem},{"FLC_PARTIC",cPartic} } |
...
oModel:SetOperation(MODEL_OPERATION_UPDATE) |
...
oModel:Activate() |
...
If FINXUser(RetCodUsr(),aUser,.T.) |
...
// Participante que recebera |
...
adiantamento If oModelFLC:SeekLine(aKeyFLC) |
...
oModelFLC:SetValue("OK",.T.) |
...
oModelFLD:LoadValue("FLD_DTSOLI",dDatabase) |
...
oModelFLD:LoadValue("FLD_DTPREV",DataValida(dDatabase+3)) |
...
oModelFLD:LoadValue("FLD_SOLIC" ,aUser[1]) |
...
oModelFLD:LoadValue("FLD_NOMESO",PadR(aUser[2],TamSx3("FLD_NOMESO")[1])) |
...
oModelFLD:SetValue("FLD_VALOR",400) |
...
oModelFLD:SetValue("FLD_MOEDA","1") |
...
oModelFLD:SetValue("FLD_JUSTIF","Adiantamento para viajante") |
...
// Validacao e gravacao dos dados se |
...
consistentes If oModel:VldData() |
...
oModel:CommitData() Conout("Adiantamento solicitado com sucesso.") Else VarInfo("",oModel:GetErrorMessage()) |
...
Conout("Erro na validacao, adiantamento nao foi solicitado.") |
...
EndIf Else Conout("Viajante nao encontrado nessa viagem.") |
...
EndIf EndIf oModel:DeActivate() |
...
oModel:Destroy() |
...
RpcClearEnv() |
...
Return |
...
04. TABELAS UTILIZADAS
- FL5 - Viagem
- FLC - Passageiros
- FLD - Adiantamentos
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas