Android Question B4XTable Cell Value Become OverFlow and How to Hide Page Button and Search Box?

evbedp

Member
Licensed User
Longtime User
Have any solution for Cell Value is More Than 100 Billion? because when i implement to B4XTable Cell Show me Value to OVERFLOW. i can try change to string value but when user click column to sort the value that become string short not number value sort. Please help me,
 
Last edited:

DonManfred

Expert
Licensed User
Longtime User
Please help me,
HELP US HELPING YOU!

I see no project uploaded which shows the error. I see NO WAY to help with the information you provided.

Maybe the column is designed to hold INTEGER?
Try to use LONG instead.
 
Upvote 0

evbedp

Member
Licensed User
Longtime User
1713258729881.png


Project with some modified in return value, because secret information:
#Region  Activity Attributes
    #FullScreen: False
    #IncludeTitle: True
#End Region

Sub Process_Globals
End Sub

Sub Globals
    Private lPeriode1 As Label
    Private lPeriode2 As Label
    
    Dim items As List
    Private dgv As B4XTable
    
End Sub

Sub Activity_Create(FirstTime As Boolean)
    'Do not forget to load the layout file created with the visual designer. For example:
    Activity.LoadLayout("Layout1")
    items.Initialize
    general.FormatColumn(dgv.AddColumn("PERIODE",dgv.COLUMN_TYPE_TEXT),0,60dip)
    general.FormatColumn(dgv.AddColumn("GROSS",dgv.COLUMN_TYPE_NUMBERS),0,160dip)
    general.FormatColumn(dgv.AddColumn("DISC",dgv.COLUMN_TYPE_NUMBERS),0,140dip)
    general.FormatColumn(dgv.AddColumn("NET",dgv.COLUMN_TYPE_NUMBERS),0,160dip)
    dgv.NumberOfFrozenColumns = 2
End Sub
Sub Activity_Resume
    RefreshData
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Public Sub Wilayah_Data(Success As Boolean,Data As Object)
    If Success Then
        If Data.As(List).Size = 0 Then
            ToastMessageShow("Data Not Found",True)
        Else
            items = Data
            DisplayTable
        End If
    Else
        MsgboxAsync(Data.As(String),"Response Server")
    End If
    ProgressDialogHide
End Sub
public Sub RefreshData
    If items.IsInitialized = False Then items.Initialize Else items.Clear
    wilayah.Data(Me)
End Sub
Private Sub DisplayTable()
    Dim Ds As List
    Ds.Initialize
    For Each m As Map In items
        Dim row As List
        row.Initialize
        row.Add(m.Get("periode"))
        row.Add(100016516516132)
        row.Add(2000000000)
        row.Add(564613123032000)
        Ds.Add(row)
    Next
    dgv.SetData(Ds)
End Sub
 

Attachments

  • 1713258411181.png
    1713258411181.png
    83.8 KB · Views: 82
Upvote 0

evbedp

Member
Licensed User
Longtime User
HELP US HELPING YOU!

I see no project uploaded which shows the error. I see NO WAY to help with the information you provided.

Maybe the column is designed to hold INTEGER?
Try to use LONG instead.
can't change it at all. because there just only have 4 option in B4xFormatter

1. COLUMN_TYPE_TEXT
2. COLUMN_TYPE_NUMBERS
3. COLUMN_TYPE_VOID
4. COLUMN_TYPE_DATE
 
Upvote 0

evbedp

Member
Licensed User
Longtime User
This is 100% the wong way to ask for help!
I´m OUT HERE.

I suggest to create a thread in the Bugs forum so hopefully Erel can have a look at it.
sorry, @DonManfred, I'm just channeling my stress into jokes that might not be funny because I've tried several ways but still couldn't find a solution and feel stuck
 
Upvote 0

teddybear

Well-Known Member
Licensed User
TYPE_NUMBERS uses Double internally. See B4XTable.b4xlib
The number is stored in sqlite using Double
but cell show OVERFLOW
But for view it is formatted as int , the max_value is 0x7fffffff.
if you would like to display it correctly, you may modify b4xformatter libaray.
 
Upvote 0
Top