CGDevTools Forum

Welcome to the Official CGDevTools Support Community Forums.

TIWCGJQEdit DataLink fires SetText

by paubc » 09 Jun 2017 23:07

Hi,

When TIWCGJQEdit component is linked to a field it assign the field value when showing it (kind of a circular action) firing Field.OnSetText immediatly after showing the field value. No matter if you set the control to be ReadOnly, Editable, NonEditableAsLabel, etc.

Why?
Am I doing something wrong?

I realize of this behaivor because I have a read-only float field showing a percent done value with DisplayFormat := '#0.00 %'. The user will not edit this value. I only want to show it but I can't because I get an error message like "50,50 % is not a valida floating point value". The same value is showing ok in a grid.

Any help?

Regards, Pau.
paubc
 
Posts: 14
Joined: 16 Feb 2017 16:48

by Alexander Bulei » 16 Jun 2017 10:56

Hi paubc,
Can you send us the simple testcase? TIA

Best Regards.
Group: Developers | Support Team

  • info [at] cgdevtools.com - General information
  • sales [at] cgdevtools.com - Sales department
  • support [at] cgdevtools.com - Product and Technical Support
User avatar
Alexander Bulei
Site Admin
 
Posts: 3635
Joined: 15 May 2012 08:52
Location: Mealhada, Portugal

by paubc » 20 Jun 2017 15:48

Hi,

I have been out of the office last week. Yesterday, when I put my hands again on this project everything worked as spected. Don't know what happend. It seems that from time to time something gets corrupted and strange behaivors arise. Next time I will shut down the system before wasting my time. Does this happen to anyone else?

Regards, Pau.
paubc
 
Posts: 14
Joined: 16 Feb 2017 16:48

by paubc » 20 Jun 2017 18:50

Hi,

Is happening again. Attached is a simple project that is not working on my machine.
I get this exception when the main form is showing on navigator:

---------------------------
Debugger Exception Notification
---------------------------
Project Test_DisplayFormat.exe raised exception class EDatabaseError with message ''75,45%' is not a valid floating point value for field 'PERCENT_DONE''.
---------------------------
Break Continue Help
---------------------------

I'm using DXE6, IW v14.1.6 and IWCG v3.0.0.115.

Regards, Pau.
You do not have the required permissions to view the files attached to this post.
paubc
 
Posts: 14
Joined: 16 Feb 2017 16:48

by Alexander Bulei » 21 Jun 2017 11:15

Hi paubc,

Project Test_DisplayFormat.exe raised exception class EDatabaseError with message ''75,45%' is not a valid floating point value for field 'PERCENT_DONE''.


You can't enter '%' char in edit field...If you want allow user enter that char, you need handle the Field.OnSetText event.

Best Regards.
Group: Developers | Support Team

  • info [at] cgdevtools.com - General information
  • sales [at] cgdevtools.com - Sales department
  • support [at] cgdevtools.com - Product and Technical Support
User avatar
Alexander Bulei
Site Admin
 
Posts: 3635
Joined: 15 May 2012 08:52
Location: Mealhada, Portugal

by paubc » 21 Jun 2017 19:21

Hi,

The "%" character comes from field's DisplayFormat property. I'm not entering it. The TIWCGJQEdit control should get field's Value instead of DisplayText.

Also, why the SetTextField is fired?
The TIWCGJQEdit control is ReadOnly.

Regards, Pablo.
paubc
 
Posts: 14
Joined: 16 Feb 2017 16:48

by Alexander Bulei » 23 Jun 2017 10:09

Hi paubc,

The "%" character comes from field's DisplayFormat property. I'm not entering it.


But works fine here in this way...
Can you make a small video from yours demo?

Best Regards.
Group: Developers | Support Team

  • info [at] cgdevtools.com - General information
  • sales [at] cgdevtools.com - Sales department
  • support [at] cgdevtools.com - Product and Technical Support
User avatar
Alexander Bulei
Site Admin
 
Posts: 3635
Joined: 15 May 2012 08:52
Location: Mealhada, Portugal

by paubc » 26 Jun 2017 15:05

Hi,

I will record a viedo soon. Meanwhile here you are error details:

Error details:
Exception message : '75,45%' is not a valid floating point value for field 'PERCENT_DONE'
Exception class : EDatabaseError
Exception address : 007E32CF
Exception Time : 2017-06-26 15:54:11.252
------------------------------------------------------------------------------------------------------------------------
Application Name : Test_DisplayFormat.exe
Application Version:
Started at : 2017-06-26 15:49:23.376
Running for : 4 minutes 47 seconds
Computer Name : PRB-DXE6
Compiler Version : 270
------------------------------------------------------------------------------------------------------------------------
IntraWeb Version : 14.1.6
Multi-session : False
Content Path : C:\IFS\bin\fw_exe\fw_exe_cs_iw\wwwroot\
Session count : 1
Application Path : C:\IFS\bin\fw_exe\fw_exe_cs_iw\
Active Form : [unassigned]
Active Form list :
Form list : [1] IWUserSession (TIWUserSession)
Browser Name : Firefox
Browser UserAgent : Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0
Session ID : zMvWBUwq8eYIzvNOJeMn~G
Last Access : 2017-06-26 15:54:11.126
Callback : False
Runtime parameters :
------------------------------------------------------------------------------------------------------------------------
Client IP address : 127.0.0.1
Request PathInfo : /$/
Request Method : GET
Request User Agent : Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0
Cookies Count : 1
------------------------------------------------------------------------------------------------------------------------
(003E22CA){Test_DisplayFormat.exe} [007E32CA] Data.DB.Db.DatabaseError$qqrx20System.UnicodeStringp25System.Classes.TComponent (Line 3245, "Data.DB.pas" + 10) + $E
(00026032){Test_DisplayFormat.exe} [00427032] System.SysUtils.Sysutils.Format$qqrx20System.UnicodeStringpx14System.TVarRecxirx31System.Sysutils.TFormatSettings (Line 12113, "System.SysUtils.pas" + 1) + $B
(00026017){Test_DisplayFormat.exe} [00427017] System.SysUtils.Sysutils.Format$qqrx20System.UnicodeStringpx14System.TVarRecxi (Line 12107, "System.SysUtils.pas" + 1) + $F
(003E2369){Test_DisplayFormat.exe} [007E3369] Data.DB.Db.DatabaseErrorFmt$qqrx20System.UnicodeStringpx14System.TVarRecxip25System.Classes.TComponent (Line 3251, "Data.DB.pas" + 1) + $15
(003EA564){Test_DisplayFormat.exe} [007EB564] Data.DB.Db.TFloatField.SetAsString$qqrx20System.UnicodeString (Line 6965, "Data.DB.pas" + 4) + $37
(00171A26){Test_DisplayFormat.exe} [00572A26] Vcl.Controls.TControl.GetTextBuf$qqrpbi (Line 6065, "Vcl.Controls.pas" + 0) + $6
(0059B1AE){Test_DisplayFormat.exe} [0099C1AE] IWCGJQEdit.TIWCGJQCustomEdit.CheckCharCase$qqrx20System.UnicodeString (Line 749, "IWCGJQEdit.pas" + 5) + $6
(003E732A){Test_DisplayFormat.exe} [007E832A] Data.DB.Db.TField.SetText$qqrx20System.UnicodeString (Line 5707, "Data.DB.pas" + 0) + $2
(003E6FB5){Test_DisplayFormat.exe} [007E7FB5] Data.DB.Db.TField.SetEditText$qqrx20System.UnicodeString (Line 5574, "Data.DB.pas" + 1) + $20
(00569345){Test_DisplayFormat.exe} [0096A345] IWCGJQCommon.TIWCGFieldDataLink.SetFieldText$qqrx20System.UnicodeString (Line 9460, "IWCGJQCommon.pas" + 7) + $9
(0059B991){Test_DisplayFormat.exe} [0099C991] IWCGJQEdit.TIWCGJQCustomEdit.DataLinkUpdateData$qqrv (Line 887, "IWCGJQEdit.pas" + 5) + $18
(005694BF){Test_DisplayFormat.exe} [0096A4BF] IWCGJQCommon.TIWCGFieldDataLink.UpdateData$qqrv (Line 9496, "IWCGJQCommon.pas" + 2) + $10
(003F1EFD){Test_DisplayFormat.exe} [007F2EFD] Data.DB.Db.TDataLink.UpdateRecord$qqrv (Line 10402, "Data.DB.pas" + 3) + $5
(003F2095){Test_DisplayFormat.exe} [007F3095] Data.DB.Db.TDataLink.DataEvent$qqr18Data.Db.TDataEventi (Line 10478, "Data.DB.pas" + 25) + $2
(0056904C){Test_DisplayFormat.exe} [0096A04C] IWCGJQCommon.TIWCGFieldDataLink.DataEvent$qqr18Data.Db.TDataEventi (Line 9387, "IWCGJQCommon.pas" + 3) + $9
(003F260B){Test_DisplayFormat.exe} [007F360B] Data.DB.Db.TDataSource.NotifyLinkTypes$qqr18Data.Db.TDataEventio (Line 10743, "Data.DB.pas" + 3) + $13
(003F2631){Test_DisplayFormat.exe} [007F3631] Data.DB.Db.TDataSource.NotifyDataLinks$qqr18Data.Db.TDataEventi (Line 10749, "Data.DB.pas" + 2) + $8
(003F266B){Test_DisplayFormat.exe} [007F366B] Data.DB.Db.TDataSource.DataEvent$qqr18Data.Db.TDataEventi (Line 10758, "Data.DB.pas" + 4) + $6
(003F9980){Test_DisplayFormat.exe} [007FA980] Data.DB.Db.TDataSet.DataEvent$qqr18Data.Db.TDataEventi (Line 13669, "Data.DB.pas" + 46) + $14
(00460B28){Test_DisplayFormat.exe} [00861B28] Datasnap.DBClient.Dbclient.TCustomClientDataSet.DataEvent$qqr18Data.Db.TDataEventi (Line 1904, "Datasnap.DBClient.pas" + 10) + $6
(003F9A72){Test_DisplayFormat.exe} [007FAA72] Data.DB.Db.TDataSet.UpdateRecord$qqrv (Line 13705, "Data.DB.pas" + 2) + $8
(003FAA66){Test_DisplayFormat.exe} [007FBA66] Data.DB.Db.TDataSet.Post$qqrv (Line 14407, "Data.DB.pas" + 1) + $2
(004643D9){Test_DisplayFormat.exe} [008653D9] Datasnap.DBClient.Dbclient.TCustomClientDataSet.Post$qqrv (Line 3318, "Datasnap.DBClient.pas" + 10) + $2
(005ACAEB){Test_DisplayFormat.exe} [009ADAEB] IWFTest_DisplayFormat.TIWFRMTest_DisplayFormat.DoCDS$qqrv (Line 73, "IWFTest_DisplayFormat.pas" + 6) + $B
(005ACBBB){Test_DisplayFormat.exe} [009ADBBB] IWFTest_DisplayFormat.TIWFRMTest_DisplayFormat.IWAppFormCreate$qqrp14System.TObject (Line 78, "IWFTest_DisplayFormat.pas" + 1) + $3
(0030FB18){Test_DisplayFormat.exe} [00710B18] IWBaseForm.TIWBaseForm.DoCreate$qqrv (Line 290, "IWBaseForm.pas" + 3) + $8
(0030F8FA){Test_DisplayFormat.exe} [007108FA] IWBaseForm.TIWBaseForm.$bctr$qqrp25System.Classes.TComponent (Line 224, "IWBaseForm.pas" + 25) + $3
(00007017){Test_DisplayFormat.exe} [00408017] System.TObject.NewInstance$qqrv (Line 15578, "System.pas" + 1) + $10
(002E6D0E){Test_DisplayFormat.exe} [006E7D0E] IWForm.TIWForm.$bctr$qqrp25System.Classes.TComponent (Line 232, "IWForm.pas" + 1) + $4
(0038ED9B){Test_DisplayFormat.exe} [0078FD9B] IWServerSession.TIWServerSession.StartForm$qqrv (Line 444, "IWServerSession.pas" + 15) + $C
(00390C59){Test_DisplayFormat.exe} [00791C59] IWServerSession.TIWServerSession.ExecuteForm$qqrv (Line 816, "IWServerSession.pas" + 3) + $2
(00390526){Test_DisplayFormat.exe} [00791526] IWServerSession.TIWServerSession.DoExecuteSession$qqrx20System.UnicodeStringo (Line 709, "IWServerSession.pas" + 40) + $3
(00390A73){Test_DisplayFormat.exe} [00791A73] IWServerSession.TIWServerSession.ExecuteSession$qqrx20System.UnicodeString (Line 794, "IWServerSession.pas" + 51) + $8
(0037F3FC){Test_DisplayFormat.exe} [007803FC] IWServer.TIWServer.ExecuteUrl$qqrx20System.UnicodeString (Line 485, "IWServer.pas" + 63) + $8
(0037F90C){Test_DisplayFormat.exe} [0078090C] IWServer.TIWServer.Execute$qqrv (Line 554, "IWServer.pas" + 11) + $11
(0038CF3B){Test_DisplayFormat.exe} [0078DF3B] IWServerSession.HttpExecute$qqrpuci (Line 88, "IWServerSession.pas" + 2) + $3
(003ACFBD){Test_DisplayFormat.exe} [007ADFBD] IW.Server.HTTPIndy.Server.Httpindy.THTTPServerIndy.DoCommandGet$qqrp20Incontext.TInContextp37Incustomhttpserver.TInHTTPRequestInfop38Incustomhttpserver.TInHTTPResponseInfo (Line 224, "IW.Server.HTTPIndy.pas" + 26) + $15
(00379AF4){Test_DisplayFormat.exe} [0077AAF4] InCustomHTTPServer.TInCustomHTTPServer.DoExecute$qqrp20Incontext.TInContext (Line 1426, "InCustomHTTPServer.pas" + 180) + $F
(0034F633){Test_DisplayFormat.exe} [00750633] InContext.TInContext.Run$qqrv (Line 185, "InContext.pas" + 2) + $7
(0034E1CE){Test_DisplayFormat.exe} [0074F1CE] InTask.TInTask.DoRun$qqrv (Line 136, "InTask.pas" + 0) + $2
(00365E4E){Test_DisplayFormat.exe} [00766E4E] InThread.TInThreadWithTask.Run$qqrv (Line 625, "InThread.pas" + 1) + $3
(003657F9){Test_DisplayFormat.exe} [007667F9] InThread.TInThread.Execute$qqrv (Line 377, "InThread.pas" + 43) + $5
(000CF90D){Test_DisplayFormat.exe} [004D090D] System.Classes.ThreadProc$qqrxp22System.Classes.TThread (Line 14601, "System.Classes.pas" + 21) + $5
(00008D50){Test_DisplayFormat.exe} [00409D50] System.ThreadWrapper$qqspv (Line 23704, "System.pas" + 45) + $0

Regards.
paubc
 
Posts: 14
Joined: 16 Feb 2017 16:48

by paubc » 26 Jun 2017 15:57

Hi,

Attached is a video showing the error.

Regards.
You do not have the required permissions to view the files attached to this post.
paubc
 
Posts: 14
Joined: 16 Feb 2017 16:48

by Alexander Bulei » 27 Jun 2017 09:23

Hi paubc,

What is your version of cgdevtools?

Best Regards.
Group: Developers | Support Team

  • info [at] cgdevtools.com - General information
  • sales [at] cgdevtools.com - Sales department
  • support [at] cgdevtools.com - Product and Technical Support
User avatar
Alexander Bulei
Site Admin
 
Posts: 3635
Joined: 15 May 2012 08:52
Location: Mealhada, Portugal

Next

Return to JQEdit

Who is online

Users browsing this forum: No registered users and 3 guests

Contact Us.