Versão atual:

variable is not an object on U_IMPCSV(ZSBZCAD.PRW) line : 188

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!

Versões (3):

Ver a versão formatada

variable is not an object on U_IMPCSV(ZSBZCAD.PRW) line : 188

Comentário

new question