Pessoal, tenho um fonte que importa CSV na grid (opção de importar está em "outras opções" no menu incluir" Porém quando importo, ele dá erro dizendo que a variável não é objeto, mesmo eu já tendo tentado declará-la como objeto. Segue trecho do código e a linha que dá erro para análise:
Linha que dá erro:
FT_FUse()
Fclose(cArq)
oView:Refresh() ==> ERRO AQUI NESSA LINHA
oModel:GoLine( 1 )
Função completa:
User Function ImpCSV(oModel,oView)
Local cExt := "Arquivos | *.CSV"
Local cPath:=cGetFile(cExt,cExt)
Local cFileOpen := cPath
Local cArq := cPath + ".csv"
Default oModel := oModel:GetModel('SBZGRID')
FT_FUSE(cFileOpen)
FT_FGoTop()
cArq := cPath
nHdl := fOpen(cArq)
If nHdl == -1
MsgAlert("O arquivo de nome "+cArq+" nao pode ser aberto! Verifique os parametros.","Atencao!")
Return
Endif
nrg:=0
FT_FGoTop()
procregua(nrg)
nLidos := 0
_cCodPrin := ""
_nSeq := 1
_ln := 1
_lAcols := .f.
aFilial := {}
_CODIGO := ""
While !FT_FEOF()
//// Begin Transaction
cLine := FT_FReadLn()
aLinha := Separa(cLine,";")
nLidos++
IF nLidos >= 2
IF LEN(aLinha) > 0
oModel:AddLine()
oModel:GoLine( nLine )
oModel:SetValue('SBZ_COD',aLinha[01])
VldCodProd(oModel)
oView:Refresh()
/// nLine := oModelZA7:length() + 1
Endif
Endif
FT_FSkip()
EndDo
FT_FUse()
Fclose(cArq)
oView:Refresh() ==> ERRO NESSA LINHA
oModel:GoLine( 1 )
RETURN
Desde já agradeço a ajuda!