No meu código, ao clicar no botão selecionar o method é chamado.
Só q ta acontecendo dele ser chamado duas vezes e não sei pq isso ta acontecendo,ja aconteceu com alguém aq?
alguém poderia me ajudar a resolver isso?
Vou mostrar a chamada do method e o method para vc analisarem:
REDEFINE BUTTON bSelecionar ID 4005 OF ::oDlg ACTION {::MudarEmp2()}
METHOD MudarEmp2() CLASS XBMudarEmpresa
LOCAL i:=::xBrw2:nVScrollPos, subDir
IF !file("C:\MFOLHA\MFOLHA.DIR")
IF !FILE(::bancos:getRaiz()+"MFOLHA.DIR")
MsgAlert("Falha ao selecionar diretório da empresa selecionada! Tente novamente", "Erro ao selecionar diretório" )
return .f.
endif
endif
/******************************************/
nReg := RECNO()
IF !(39->(USED()))
::bancos:abrir(39)
SELE 39
GO nReg
ENDIF
IF !EMPTY(39->DIRETORIO)
subDir := alltrim(39->DIRETORIO) + "\"
ELSE
MsgAlert("Não foi possÃvel abrir um dos diretório, verifique o tamanho dos mesmos", "Alerta")
ENDIF
::empresa := 39->EMPRESA
::cnpj := 39->CGC
IF TRAVAREG(10)
REPL 39->SN WITH "S"
ELSE
MsgAlert("Não foi possÃvel alterar o arquivo 'MFOLHA.DIR'")
ENDIF
::bancos:closeAllDBF()
::bancos:SetSubDir(subDir)
REST FROM &(::bancos:arqParam) ADDI
KWEMPDIR :=subDir
KWEMPNOM := ::empresa
KWEMPCGC := ::cnpj
save all like kw* to &(::bancos:arqParam)
::lSelecionou := .T.
::oDlg:End()
RETURN .T.