FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour XBROWSE --> ArrayData --> MaraiDB Rowset *
Posts: 336
Joined: Mon Dec 07, 2009 02:49 PM
XBROWSE --> ArrayData --> MaraiDB Rowset *
Posted: Sun Sep 21, 2025 09:07 AM
Dear Antonio

The below XBROWSE usage datasource as ArrayData which is created by TArraydata using MariaDB rowset.

How to assign values to the ArrayData column via XBROWSE control for the current record similar TDataRow v ?

tried below code but its not working.. As Data Access Layer Diagram
                        oBrwInv:aArrayData:FieldGet( "prd_id" ) := 1
                        oBrwInv:aArrayData:FieldGet( "prd_name")  := 'Abc'
Please guide on the XBROWSE definition column names array when datasource is TArrayData which is generated from MariaDB Rowset.

Is the Column array correct when datasource is ArrayData ?
    aInvCols :=  {"prd_name ", "batch_no",  "batch_mrp" , "batch_rate" , "bill_qty"  ,"free_qty" ,"schm_percent" ,"schm_amount" , "disc_percent1" ,"disc_amt1" ,"prd_net_amount" }
 //TArrayData is created from MariaDB Rowset
 aInvRows := TArrayData():New( oApp:oDBConn, Q_INV_DET_BYID(  STR(nTranId)  ) ) 
 
 //Is aInvCols correct paramter to provide column names
 

    aInvCols :=  {"prd_name ", "batch_no",  "batch_mrp" , "batch_rate" , "bill_qty"  ,"free_qty" ,"schm_percent" ,"schm_amount" , "disc_percent1" ,"disc_amt1" ,"prd_net_amount" } 
    aInvHdrs :=     { "Item ", "Batch No",  "M.R.P." , "Rate" ,     "Bill" , "Free" ,  "%",   "Amt.(-)",    "%" ,  "Amt.(-)" ,  "Amount" }
    aInvColSizes := {270    ,          110,         90 ,      90,         63,     63 ,  45 ,         72 ,   45   ,     72   ,    100    }
    aInvColPict  := {NIL    ,         NIL, "@Z 99999.99" , "@Z 99999.99" , "@Z 9,999" , "@Z 9,999" , "@Z 99.99" , "@Z 99,999.99"  , "@Z 99.99" , "@Z 99,999.99" , "@Z 99,99,999.99"  }
    @ 130, 020 XBROWSE oBrwInv SIZE 1130, 350 PIXEL OF oWnd FONT oApp:oFontGet  ;
        DATASOURCE aTInvRows ;
        COLUMNS aInvCols;
        HEADERS aInvHdrs;
        PICTURES aInvColPict ;
        COLSIZES aInvColSizes  ;
        CELL LINES NOBORDER FASTEDIT FOOTERS
		
		
     WITH OBJECT oBrwInv:aCols[ 1 ]

        :nEditType     = EDIT_GET
        :bGetChange := < | k, f, o |
                        
                        oBrwInv:aArrayData:FieldGet( "prd_id" ) := 1
                        oBrwInv:aArrayData:FieldGet( "prd_name")  := 'Abc' 
                        //popSaleEditInvRecDlg( oBrwTxnPrd , oBrwTxnBFM , aVTxnM , aTTRec)
                        //BFMSumUpd( oBrwTxnBFM, oBrwTxnPrd )
                        //InvCalcNetAmt( oBrwTxnBFM, oBrwTxnPrd,  aVTxnM, aTTRec[ IDX_VT01_ROUND_YN  ]  )
                        //oBrwTxnPrd:GoToCol( oBrwTxnPrd:aCols[ TXN_INV_PRD_BATCH_NO ] )
                        oBrwInv:RefreshCurrent()
                        oBrwInv:SetFocus()
                        oWnd:Update()

                        >

     END
Thanks

Shridhar

FWH 24.04, BCC 7 32 bit, MariaDB

Continue the discussion