El identificador de fila se refirió a una fila (SOLUCIONADO)

Post Reply
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

El identificador de fila se refirió a una fila (SOLUCIONADO)

Post by Armando »

Hola Amigos del foro:

Al traerme un respaldo de las tablas de un cliente y recuperarlo en mi PC de desarrollo,
en una tabla me tira el error "El identificador de fila se refirió a una fila eliminada o a una fila marcada para eliminar".

Me esta volviendo loco este error, no me deja abrir y mostrar la tabla en un xBrowse, estoy usando
un recordset con ADO puro.

Por cierto, en ningún momento se permite eliminar renglones del xBrowse, vamos no hay código
para eliminar renglones.

Muestro el código por si ahí esta mi horror.

Code: Select all

        REDEFINE XBROWSE oBrw ID 200 OF oDlg;
            DATASOURCE oRsVts ;
            COLUMNS "VEN_VEN", "PRO_DES", "VEN_CTD", "VEN_IMP", "VEN_PLA","VEN_CAN" ;
            HEADERS "Folio","Material", "Cantidad", "Importe","Placas","Can";
            COLSIZES 70,350,70,80,80,50;
            PICTURES "@Z 9999999",NIL,"@Z 99,999.999","@Z 999,999.99",NIL,NIL;
            JUSTIFY {AL_RIGHT,AL_LEFT,AL_RIGHT,AL_RIGHT,AL_LEFT,AL_CENTER};
            FOOTERS AUTOSORT BACKGROUND "Lineas"

            WITH OBJECT oBrw
                :l2007            := (.F.)
                :lHScroll         := (.F.)
                :lVScroll         := (.F.)
                :nMarqueeStyle    := MARQSTYLE_HIGHLROW
                :nColDividerStyle := LINESTYLE_LIGHTGRAY
                :nRowDividerStyle := LINESTYLE_LIGHTGRAY
                :nStretchCol      := STRETCHCOL_LAST
                :nHeaderHeight      := 25
                :nRowHeight         := 22
                :nFooterHeight      := 25
                :bClrHeader       := { || {CLR_WHITE,CLR_BLACK} }
                :bClrFooter       := { || {CLR_WHITE,CLR_BLACK} }
                :bClrSel          := { || IF( oBrw:KeyNo % oApp:nRowsInt == 0 ,{ CLR_BLACK, oApp:nRowParClr },{ CLR_BLACK, oApp:nRowNonClr }) }
                :bClrSelFocus     := { || {oApp:nFClrFocus,oApp:nBClrFocus} }
                :bClrStd          := { || IF( oBrw:KeyNo % oApp:nRowsInt == 0 ,{ CLR_BLACK, oApp:nRowParClr },{ CLR_BLACK, oApp:nRowNonClr }) }
                :nRecSelColor     := oApp:nRowParClr
                :lDisplayZeros    := (.F.)   // zero values are not displayed. Added by GNRao. No need to use @Z
                :blDblClick         := { | nRow, nCol, nKey | (Editar(oBrw,(.F.)),oBrw:SetFocus())}
                :bKeyDown           := { | nKey, nFlags | IIF(nKey == VK_RETURN,(Editar(oBrw,(.F.)),oBrw:SetFocus()),)}

                :aCols[02]:nFootStrAlign    := AL_RIGHT
            :aCols[02]:bFooter  := { || "Total de ventas del día (Sin vales cancelados) =>" }

            WITH OBJECT :aCols[04]
            :nFooterType         := AGGR_SUM
                :bSumCondition       := { || ! oRsVts:Fields("VEN_CAN"):Value }
            END

            :MakeTotals()

                // Por fuerza debe ir dentro del WITH OBJECT oBrw
                WITH OBJECT :aCols[01]
                    :cOrder := "A"
                END

                WITH OBJECT :aCols[06]
                    :SetCheck( { "SI16","NO16" } )
                END
            END
 
Saludos y gracias anticipadas
Last edited by Armando on Wed Dec 19, 2018 3:23 pm, edited 1 time in total.
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: El identificador de fila se refirió a una fila eliminada o a

Post by karinha »

João Santos - São Paulo - Brasil
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Re: El identificador de fila se refirió a una fila (SOLUCIONADO)

Post by Armando »

Karinha y amigos del foro:

Problema solucionado, Karinha agradezco tu interés por ayudar.

Cómo dice el clásico, "parece una tontería pero es una estupidez", resulta que el
recordset tiene un JOIN y la segunda tabla estaba vacía y por tanto no había
registros para hacer el JOIN y deduzco que el puntero se iba más allá del EOF.

Dejo esta experiencia por si a alguien le sirve.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Post Reply