Boa tarde!
Estou com uma dúvida no uso da FwExecView com uma tela como Owner.
Segundo a documentação, é possível criar a tela usando um objeto de janela existente, o passando no quarto parâmetro da função. Exemplo:
FwExecView('Associação de Rota a Vendedor', 'ELFATA31', MODEL_OPERATION_UPDATE, oDlg)
Estou tentando efetuar testes com esse parâmetro, mas não consegui fazer funcionar corretamente. Utilizei da seguinte maneira:
User Function ELFATA31
Local oDlg := Nil
Local aCoors := FwGetDialogSize()
Local aButtons := {{.F.,Nil},{.F.,Nil},{.F.,Nil},{.F.,Nil},{.F.,Nil},{.F.,Nil},{.T.,Nil},{.T.,Nil},{.F.,Nil},{.F.,Nil},{.F.,Nil},{.F.,Nil},{.F.,Nil},{.F.,Nil}}
Define MsDialog oDlg From aCoors[1], aCoors[2] To aCoors[3] / 2, aCoors[4] / 2 Pixel
Activate MsDialog oDlg Centered On Init(FwExecView('Associação de Rota a Vendedor', 'ELFATA31', MODEL_OPERATION_UPDATE, oDlg, { || .T. } , , , aButtons))
Return
Ao chamar a função, a tela é criada e os componentes começam a ser desenhados, mas quando o carregamento termina, é gerado um erro de Access Violation.
Access Violation in function TDIALOG:ACTIVATE on ::MSDIALOG:ACTIVATE line : 19
Tentei chamar a FwExecView antes do Activate da Dialog, mas dessa forma também não funcionou (a View foi criada antes da Dialog).
Alguém já utilizou esse parâmetro e saberia me explicar como utilizá-lo?
Grato pela atenção.