Variable is not an object on ATUGRID(ZCSVIMP.PRW) line : 141

Pessoal, tenho um fonte que deveria importar um arquivo CSV para uma grid, porém no meio do processo ele exibe esse erro: variable is not an object on ATUGRID(ZCSVIMP.PRW) line : 141

Alguém tem ideia do que possa ser? Segue linha do erro, trecho do código e arquivo prw. Agradeço desde já!

Linha do erro:


static function atuGrid(oModel, oView, aItens)

ERRO AQUI ==> Default oModel := oModel:GetModel( 'GRID_SBZ' ) <== ERRO AQUI

Função completa:


static function atuGrid(oModel, oView, aItens)

    Default oModel := oModel:GetModel( 'GRID_SBZ' )

    Local nLine   := 1

    Local nTam    := 0

    Local nX := {}

    oModel:SetMaxLine( 99999 )    // Determina a quantidade m�xina de linhas que o grid pode possuir - 99999.

    aEval( aItens , {|x| Iif( x[1] , nTam++ , nil ) } )

    if oModel:length() == 1 .and. Empty( oModel:GetValue('SBZ_LOCPAD') )

        nLine := oModel:length()

    else

        nLine := oModel:length() + 1

    endif


    ProcRegua( nTam )


    for nX := 1 To Len( aItens )

        If aItens[nX][1]   // Se a linha estiver marcada.

            IncProc( allTrim( aItens[nX][2] ) + ' - ' + allTrim( aItens[nX][3] ) )

            If nLine > 1 .OR. nX > 1

                nLine := oModel:AddLine()

                oView:Refresh()

            Endif

            oModel:GoLine( nLine )


            oModel:SetValue("BZ_LOCPAD", aItens[nX][1], NIL)
            //oModel:SetValue('BZ_TE',aItens[nX][4])
            //oModel:SetValue('',aItens[nX][4])
            //oModel:SetValue('',aItens[nX][5])
            //oModel:SetValue('',aItens[nX][6])
            //oModel:SetValue('',aItens[nX][7])
            //oModel:SetValue('',aItens[nX][8])
            //oModel:SetValue('',aItens[nX][9])
            //oModel:SetValue('',aItens[nX][10])
            //oModel:SetValue('',aItens[nX][11])
            //oModel:SetValue('',aItens[nX][12])
            //oModel:SetValue('',aItens[nX][13])
            //oModel:SetValue('',aItens[nX][14])
            //oModel:SetValue('',aItens[nX][15])
            //oModel:SetValue('',aItens[nX][16])
            //oModel:SetValue('',aItens[nX][17])
            //oModel:SetValue('',aItens[nX][18])
            //oModel:SetValue('',aItens[nX][19])
            //oModel:SetValue('',aItens[nX][20])
            //oModel:SetValue('',aItens[nX][21])
            //oModel:SetValue('',aItens[nX][22])

            // nLine < 1 .OR. nX < 1
//       nLine ++
            //dif

        Endif

    next nX
    oView:Refresh()
    oModel:GoLine( 1 )

return

Arquivo PRW anexado

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.

Olá, você precisa ver quem chamou a função atuGrid, pois o parâmetro foi recebido diferente do que você esperava.