FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour Problem with oBrowse:aDeleted
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Problem with oBrowse:aDeleted
Posted: Mon Nov 20, 2023 12:36 PM
To delete a record on Array I use this

function del_row( oBrowse )
if ! Empty( oBrowse:aArrayData )
ADel( oBrowse:aArrayData, oBrowse:nArrayAt, .t. )
oBrowse:Refresh()
endif

xbrowser oBrowse:aDeleted <------
return nil

it delete the row but then when I need oBrowse:aDeleted I have the empty array

How it possible ?
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Problem with oBrowse:aDeleted
Posted: Mon Nov 20, 2023 07:09 PM
Use
Code (fw): Select all Collapse
oBrw:Delete()
to delete rows. Please do not use your own functions to delete.
Regards



G. N. Rao.

Hyderabad, India
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Problem with oBrowse:aDeleted
Posted: Tue Nov 21, 2023 09:04 AM
nageswaragunupudi wrote:Use
Code (fw): Select all Collapse
oBrw:Delete()
to delete rows. Please do not use your own functions to delete.
Yes it delete the record but then re-save on archive

There's probably something I don't understand

I have two dbf

Report.dbf (oDbf)
Formati.dbf ( oDbfMod) have 30 fields +1 for recno()

at first for editing I take a record on Report.dbf
Code (fw): Select all Collapse
oRecord := oDbf:record()
create am array from another archive
Code (fw): Select all Collapse
  aDataForm := oDbfMod:DbfToArray( cItemFlds, { ||FIELD->codRep == cCode_Tmp  } )
and work aDataform on Xbrowse


When I go to save I made
Code (fw): Select all Collapse
      // save oDbf Report.dbf

       // delete rows
       
          if ! Empty( oBrowse:aDeleted )
            AEval( oBrowse:aDeleted, { |a| a[ 31 ] := -a[ 31 ] } )
            oDbfMod:SaveArrayToDBF( cItemFlds, oBrowse:aDeleted )
         endif

         AEval( aDataForm, { |a| a[ 1 ] := oRec:codRep } )
         AEval( aDataForm, { |a,i| a[ 29 ] := strzero(i,5) } )
         oDbfMod:SaveArrayToDBF( cItemFlds, aDataForm )

          //Salva Report.dbf ok
        oRec:Save()
I tried also with
Code (fw): Select all Collapse
oDbfMod:ArrayToDBF( aDataForm ,  cItemFlds,, .t., .t. )
append a record empty on oDbf
not delete the record on oDbfMod
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com

Continue the discussion