Hello group,
I have modified grid07 sample to illustrate a problem I'm having. Appararently, grid control is not showing numeric values or what could be the issue here?
Kindly assist.
Grid control & Numerics
Moderator: Rathinagiri
- karweru
- Posts: 220
- Joined: Fri Aug 01, 2008 1:51 pm
- DBs Used: DBF,mysql,mariadb,postgresql,sqlite,odbc
- Contact:
Grid control & Numerics
Kind regards,
Gilbert.
Gilbert.
Re: Grid control & Numerics
Hello Gilbert,karweru wrote:Hello group,
I have modified grid07 sample to illustrate a problem I'm having. Appararently, grid control is not showing numeric values or what could be the issue here?
Kindly assist.
Kindly try the following updated sample:
Code: Select all
#include "minigui.ch"
Function Main
Local aRows [20] [3]
Public Op
aRows [1] := {'Simpson','Homer',10000}
aRows [2] := {'Mulder','Fox',40000}
aRows [3] := {'Smart','Max',30000}
aRows [4] := {'Grillo','Pepe',20000}
aRows [5] := {'Kirk','James',5000}
aRows [6] := {'Barriga','Carlos',2000}
aRows [7] := {'Flanders','Ned',100}
aRows [8] := {'Smith','John',25000}
aRows [9] := {'Pedemonti','Flavio',50000}
aRows [10] := {'Gomez','Juan',8000}
aRows [11] := {'Fernandez','Raul',13000}
aRows [12] := {'Borges','Javier',18000}
aRows [13] := {'Alvarez','Alberto',22000}
aRows [14] := {'Gonzalez','Ambo',40000}
aRows [15] := {'Batistuta','Gol',3500}
aRows [16] := {'Vinazzi','Amigo',4500}
aRows [17] := {'Pedemonti','Flavio',7500}
aRows [18] := {'Samarbide','Armando',90000}
aRows [19] := {'Pradon','Alejandra',1000000}
aRows [20] := {'Reyes','Monica',4000000}
aCtrl_1 := {'TEXTBOX','CHARACTER'}
aCtrl_2 := {'TEXTBOX','CHARACTER'}
aCtrl_3 := {'TEXTBOX','NUMERIC','9999999999'}
DEFINE WINDOW Form_1 ;
AT 0,0 ;
WIDTH 630 ;
HEIGHT 480 ;
TITLE 'Hello World!' ;
MAIN ;
FONT 'Arial' ;
SIZE 9
DEFINE LABEL Label_1
ROW 10
COL 10
WIDTH 60
VALUE 'Apellido:'
END LABEL
DEFINE TEXTBOX Text_1
ROW 10
COL 70
WIDTH 80
END TEXTBOX
DEFINE LABEL Label_2
ROW 10
COL 160
WIDTH 60
VALUE 'Nombres:'
END LABEL
DEFINE TEXTBOX Text_2
ROW 10
COL 230
WIDTH 80
END TEXTBOX
DEFINE LABEL Label_3
ROW 10
COL 320
WIDTH 60
VALUE 'Balance:'
END LABEL
DEFINE TEXTBOX Text_3
ROW 10
COL 390
WIDTH 80
NUMERIC .T.
END TEXTBOX
DEFINE BUTTON Button_A
ROW 10
COL 480
WIDTH 55
CAPTION 'Ok'
ACTION Ok()
END BUTTON
DEFINE BUTTON Button_B
ROW 10
COL 545
WIDTH 55
CAPTION 'Cancel'
ACTION Cancel()
END BUTTON
DEFINE GRID Grid_1
ROW 40
COL 10
WIDTH 590
HEIGHT 330
HEADERS { 'Apellido' , 'Nombres' , 'Balance' }
WIDTHS { 185 , 185 , 185 }
ITEMS aRows
COLUMNCONTROLS { aCtrl_1 , aCtrl_2 , aCtrl_3 }
JUSTIFY { GRID_JTFY_LEFT, GRID_JTFY_LEFT, GRID_JTFY_RIGHT }
VALUE 1
END GRID
DEFINE BUTTON Button_1
ROW 380
COL 10
CAPTION 'Agregar'
ACTION Agregar()
END BUTTON
DEFINE BUTTON Button_2
ROW 380
COL 140
CAPTION 'Eliminar'
ACTION Eliminar()
END BUTTON
DEFINE BUTTON Button_3
ROW 380
COL 270
CAPTION 'Modificar'
ACTION Modificar()
END BUTTON
END WINDOW
Form_1.Text_1.Enabled :=.f.
Form_1.Text_2.Enabled :=.f.
Form_1.Text_3.Enabled :=.f.
Form_1.Button_A.Enabled :=.f.
Form_1.Button_B.Enabled :=.f.
CENTER WINDOW Form_1
ACTIVATE WINDOW Form_1
Return
Procedure Agregar()
Op := 'AGREGAR'
Form_1.Text_1.Enabled :=.t.
Form_1.Text_2.Enabled :=.t.
Form_1.Text_3.Enabled :=.t.
Form_1.Button_1.Enabled :=.f.
Form_1.Button_2.Enabled :=.f.
Form_1.Button_3.Enabled :=.f.
Form_1.Button_A.Enabled :=.t.
Form_1.Button_B.Enabled :=.t.
Form_1.Grid_1.Enabled := .f.
Form_1.Text_1.SetFocus
Return
Procedure Eliminar()
Local i := Form_1.Grid_1.Value
If i != 0
Form_1.Grid_1.DeleteItem(i)
EndIf
Return
Procedure Modificar()
Local i := Form_1.Grid_1.Value , aTemp
Op := 'MODIFICAR'
If i != 0
aTemp := Form_1.Grid_1.Item(i)
Form_1.Text_1.Value := aTemp [1]
Form_1.Text_2.Value := aTemp [2]
Form_1.Text_3.Value := aTemp [3]
Form_1.Text_1.Enabled :=.t.
Form_1.Text_2.Enabled :=.t.
Form_1.Text_3.Enabled :=.t.
Form_1.Button_1.Enabled :=.f.
Form_1.Button_2.Enabled :=.f.
Form_1.Button_3.Enabled :=.f.
Form_1.Button_A.Enabled :=.t.
Form_1.Button_B.Enabled :=.t.
Form_1.Grid_1.Enabled := .f.
Form_1.Text_1.SetFocus
EndIf
Return
Procedure Ok()
Local aTemp := {} , i
If Op == 'AGREGAR'
Form_1.Grid_1.AddItem ( { Form_1.Text_1.Value , Form_1.Text_2.Value , Form_1.Text_3.Value } )
Form_1.Grid_1.Value := Form_1.Grid_1.ItemCount
ElseIf Op == 'MODIFICAR'
i := Form_1.Grid_1.Value
Form_1.Grid_1.Item (i) := { Form_1.Text_1.Value,Form_1.Text_2.Value ,Form_1.Text_3.Value }
EndIf
Form_1.Text_1.Value := ''
Form_1.Text_2.Value := ''
Form_1.Text_3.Value := ''
Form_1.Text_1.Enabled :=.f.
Form_1.Text_2.Enabled :=.f.
Form_1.Text_3.Enabled :=.f.
Form_1.Button_1.Enabled :=.t.
Form_1.Button_2.Enabled :=.t.
Form_1.Button_3.Enabled :=.t.
Form_1.Button_A.Enabled :=.f.
Form_1.Button_B.Enabled :=.f.
Form_1.Grid_1.Enabled := .t.
Form_1.Grid_1.SetFocus
Return
Procedure Cancel()
Form_1.Text_1.Value := ''
Form_1.Text_2.Value := ''
Form_1.Text_3.Value := ''
Form_1.Text_1.Enabled :=.f.
Form_1.Text_2.Enabled :=.f.
Form_1.Text_3.Enabled :=.f.
Form_1.Button_1.Enabled :=.t.
Form_1.Button_2.Enabled :=.t.
Form_1.Button_3.Enabled :=.t.
Form_1.Button_A.Enabled :=.f.
Form_1.Button_B.Enabled :=.f.
Form_1.Grid_1.Enabled := .t.
Form_1.Grid_1.SetFocus
ReturnKind Regards,
Grigory Filatov
"Everything should be made as simple as possible, but no simpler." Albert Einstein
Grigory Filatov
"Everything should be made as simple as possible, but no simpler." Albert Einstein
- karweru
- Posts: 220
- Joined: Fri Aug 01, 2008 1:51 pm
- DBs Used: DBF,mysql,mariadb,postgresql,sqlite,odbc
- Contact:
Re: Grid control & Numerics
Thank you very much Grigory for you quick attention. Now the numerics are displaying properly. The problem now is when you edit a record. I'm getting the following error when i run your modified sample.
Any way around this? Thanks again for your help.Date:10/12/10 Time: 10:01:45
Error BASE/1090 Argument error: INT
Called from INT(0)
Called from _SETVALUE(487)
Called from SETPROPERTY(6441)
Called from MODIFICAR(188)
Called from (b)MAIN(129)
Called from _DOCONTROLEVENTPROCEDURE(5262)
Called from EVENTS(1434)
Called from _DOMESSAGELOOP(0)
Called from _ACTIVATEWINDOW(4853)
Called from MAIN(143)
Kind regards,
Gilbert.
Gilbert.
Re: Grid control & Numerics
Gilbert,karweru wrote:Thank you very much Grigory for you quick attention. Now the numerics are displaying properly. The problem now is when you edit a record. I'm getting the following error when i run your modified sample.
...
Any way around this? Thanks again for your help.
Try the following working sample:
Code: Select all
#include "minigui.ch"
Function Main
Local aRows [20] [3]
Public Op
aRows [1] := {'Simpson','Homer',10000}
aRows [2] := {'Mulder','Fox',40000}
aRows [3] := {'Smart','Max',30000}
aRows [4] := {'Grillo','Pepe',20000}
aRows [5] := {'Kirk','James',5000}
aRows [6] := {'Barriga','Carlos',2000}
aRows [7] := {'Flanders','Ned',100}
aRows [8] := {'Smith','John',25000}
aRows [9] := {'Pedemonti','Flavio',50000}
aRows [10] := {'Gomez','Juan',8000}
aRows [11] := {'Fernandez','Raul',13000}
aRows [12] := {'Borges','Javier',18000}
aRows [13] := {'Alvarez','Alberto',22000}
aRows [14] := {'Gonzalez','Ambo',40000}
aRows [15] := {'Batistuta','Gol',3500}
aRows [16] := {'Vinazzi','Amigo',4500}
aRows [17] := {'Pedemonti','Flavio',7500}
aRows [18] := {'Samarbide','Armando',90000}
aRows [19] := {'Pradon','Alejandra',1000000}
aRows [20] := {'Reyes','Monica',4000000}
aCtrl_1 := {'TEXTBOX','CHARACTER'}
aCtrl_2 := {'TEXTBOX','CHARACTER'}
aCtrl_3 := {'TEXTBOX','NUMERIC','9999999999'}
DEFINE WINDOW Form_1 ;
AT 0,0 ;
WIDTH 630 ;
HEIGHT 480 ;
TITLE 'Hello World!' ;
MAIN ;
FONT 'Arial' ;
SIZE 9
DEFINE LABEL Label_1
ROW 10
COL 10
WIDTH 60
VALUE 'Apellido:'
END LABEL
DEFINE TEXTBOX Text_1
ROW 10
COL 70
WIDTH 80
END TEXTBOX
DEFINE LABEL Label_2
ROW 10
COL 160
WIDTH 60
VALUE 'Nombres:'
END LABEL
DEFINE TEXTBOX Text_2
ROW 10
COL 230
WIDTH 80
END TEXTBOX
DEFINE LABEL Label_3
ROW 10
COL 320
WIDTH 60
VALUE 'Balance:'
END LABEL
DEFINE TEXTBOX Text_3
ROW 10
COL 390
WIDTH 80
NUMERIC .T.
END TEXTBOX
DEFINE BUTTON Button_A
ROW 10
COL 480
WIDTH 55
CAPTION 'Ok'
ACTION Ok()
END BUTTON
DEFINE BUTTON Button_B
ROW 10
COL 545
WIDTH 55
CAPTION 'Cancel'
ACTION Cancel()
END BUTTON
DEFINE GRID Grid_1
ROW 40
COL 10
WIDTH 590
HEIGHT 330
HEADERS { 'Apellido' , 'Nombres' , 'Balance' }
WIDTHS { 185 , 185 , 185 }
ITEMS aRows
COLUMNCONTROLS { aCtrl_1 , aCtrl_2 , aCtrl_3 }
JUSTIFY { GRID_JTFY_LEFT, GRID_JTFY_LEFT, GRID_JTFY_RIGHT }
VALUE 1
END GRID
DEFINE BUTTON Button_1
ROW 380
COL 10
CAPTION 'Agregar'
ACTION Agregar()
END BUTTON
DEFINE BUTTON Button_2
ROW 380
COL 140
CAPTION 'Eliminar'
ACTION Eliminar()
END BUTTON
DEFINE BUTTON Button_3
ROW 380
COL 270
CAPTION 'Modificar'
ACTION Modificar()
END BUTTON
END WINDOW
Form_1.Text_1.Enabled :=.f.
Form_1.Text_2.Enabled :=.f.
Form_1.Text_3.Enabled :=.f.
Form_1.Button_A.Enabled :=.f.
Form_1.Button_B.Enabled :=.f.
CENTER WINDOW Form_1
ACTIVATE WINDOW Form_1
Return
Procedure Agregar()
Op := 'AGREGAR'
Form_1.Text_1.Enabled :=.t.
Form_1.Text_2.Enabled :=.t.
Form_1.Text_3.Enabled :=.t.
Form_1.Button_1.Enabled :=.f.
Form_1.Button_2.Enabled :=.f.
Form_1.Button_3.Enabled :=.f.
Form_1.Button_A.Enabled :=.t.
Form_1.Button_B.Enabled :=.t.
Form_1.Grid_1.Enabled := .f.
Form_1.Text_1.SetFocus
Return
Procedure Eliminar()
Local i := Form_1.Grid_1.Value
If i != 0
Form_1.Grid_1.DeleteItem(i)
EndIf
Return
Procedure Modificar()
Local i := Form_1.Grid_1.Value , aTemp
Op := 'MODIFICAR'
If i != 0
aTemp := Form_1.Grid_1.Item(i)
Form_1.Text_1.Value := aTemp [1]
Form_1.Text_2.Value := aTemp [2]
Form_1.Text_3.Value := aTemp [3]
Form_1.Text_1.Enabled :=.t.
Form_1.Text_2.Enabled :=.t.
Form_1.Text_3.Enabled :=.t.
Form_1.Button_1.Enabled :=.f.
Form_1.Button_2.Enabled :=.f.
Form_1.Button_3.Enabled :=.f.
Form_1.Button_A.Enabled :=.t.
Form_1.Button_B.Enabled :=.t.
Form_1.Grid_1.Enabled := .f.
Form_1.Text_1.SetFocus
EndIf
Return
Procedure Ok()
Local aTemp := {} , i
If Op == 'AGREGAR'
Form_1.Grid_1.AddItem ( { Form_1.Text_1.Value , Form_1.Text_2.Value , Form_1.Text_3.Value } )
Form_1.Grid_1.Value := Form_1.Grid_1.ItemCount
ElseIf Op == 'MODIFICAR'
i := Form_1.Grid_1.Value
Form_1.Grid_1.Item (i) := { Form_1.Text_1.Value,Form_1.Text_2.Value ,Form_1.Text_3.Value }
EndIf
Form_1.Text_1.Value := ''
Form_1.Text_2.Value := ''
Form_1.Text_3.Value := 0
Form_1.Text_1.Enabled :=.f.
Form_1.Text_2.Enabled :=.f.
Form_1.Text_3.Enabled :=.f.
Form_1.Button_1.Enabled :=.t.
Form_1.Button_2.Enabled :=.t.
Form_1.Button_3.Enabled :=.t.
Form_1.Button_A.Enabled :=.f.
Form_1.Button_B.Enabled :=.f.
Form_1.Grid_1.Enabled := .t.
Form_1.Grid_1.SetFocus
Return
Procedure Cancel()
Form_1.Text_1.Value := ''
Form_1.Text_2.Value := ''
Form_1.Text_3.Value := 0
Form_1.Text_1.Enabled :=.f.
Form_1.Text_2.Enabled :=.f.
Form_1.Text_3.Enabled :=.f.
Form_1.Button_1.Enabled :=.t.
Form_1.Button_2.Enabled :=.t.
Form_1.Button_3.Enabled :=.t.
Form_1.Button_A.Enabled :=.f.
Form_1.Button_B.Enabled :=.f.
Form_1.Grid_1.Enabled := .t.
Form_1.Grid_1.SetFocus
ReturnKind Regards,
Grigory Filatov
"Everything should be made as simple as possible, but no simpler." Albert Einstein
Grigory Filatov
"Everything should be made as simple as possible, but no simpler." Albert Einstein
- karweru
- Posts: 220
- Joined: Fri Aug 01, 2008 1:51 pm
- DBs Used: DBF,mysql,mariadb,postgresql,sqlite,odbc
- Contact:
Re: Grid control & Numerics
Thank you so much Grigory. It works perfectly now. Warm regards,
Kind regards,
Gilbert.
Gilbert.