Recent

Author Topic: Field of types ftString not persistent  (Read 1948 times)

matthijsj

  • Newbie
  • Posts: 3
Field of types ftString not persistent
« on: October 10, 2024, 09:43:37 am »
I have a form with a BufDataSet, a dbGrid and a datasource connecting them. When I try to enter data in a field of type ftString, the entered data is not persistent. The data is removed when I move to the next field. What do I do wrong?

matthijsj

  • Newbie
  • Posts: 3
Re: Field of types ftString not persistent
« Reply #1 on: October 16, 2024, 02:19:51 pm »
I entered the following code:
Code: Pascal  [Select][+][-]
  1. procedure TForm1.Button1Click(Sender: TObject);
  2. begin
  3.   BufDataset1.Insert;
  4.   BufDataset1.FieldByName('Number').Value := 1000;
  5.   BufDataset1.FieldByName('Naam').Value := 'EenWaarde';
  6.   BufDataset1.Post;
  7. end;  
  8.  
However the field "Naam' does not save the data.
« Last Edit: October 16, 2024, 03:22:35 pm by matthijsj »

dseligo

  • Hero Member
  • *****
  • Posts: 1461
Re: Field of types ftString not persistent
« Reply #2 on: October 16, 2024, 02:28:18 pm »
Post example project which shows your problem.

Also provide (https://wiki.freepascal.org/Forum):
- the name of your operating system
- the version of your operating system
- the version of your Free Pascal Compiler
- the version of your Lazarus IDE

Thaddy

  • Hero Member
  • *****
  • Posts: 16532
  • Kallstadt seems a good place to evict Trump to.
Re: Field of types ftString not persistent
« Reply #3 on: October 16, 2024, 02:36:48 pm »
Het naam veld moet een shortstring zijn. string[255]
The name field should be a shortstring type with a value to the maximum you expect.
Otherwise you store a pointer...
« Last Edit: October 16, 2024, 02:38:26 pm by Thaddy »
But I am sure they don't want the Trumps back...

wp

  • Hero Member
  • *****
  • Posts: 12604
Re: Field of types ftString not persistent
« Reply #4 on: October 16, 2024, 07:15:17 pm »
I don't see any problem with the code that you posted for TBufdataset. See attached sample project.

Zvoni

  • Hero Member
  • *****
  • Posts: 2844
Re: Field of types ftString not persistent
« Reply #5 on: October 17, 2024, 08:18:40 am »
And shouldn't he use "AsInteger", "AsString" instead of "Value"?
One System to rule them all, One Code to find them,
One IDE to bring them all, and to the Framework bind them,
in the Land of Redmond, where the Windows lie
---------------------------------------------------------------------
Code is like a joke: If you have to explain it, it's bad

rvk

  • Hero Member
  • *****
  • Posts: 6661
Re: Field of types ftString not persistent
« Reply #6 on: October 17, 2024, 09:34:21 am »
And shouldn't he use "AsInteger", "AsString" instead of "Value"?
Value is a variant, so it will accept a string and convert it back to the correct fieldtype.

But we haven't seen anything of the rest of the code and defined fields.
(Although pushing a string into a ftInteger field via a variant will result in an exception.)

matthijsj

  • Newbie
  • Posts: 3
Re: Field of types ftString not persistent
« Reply #7 on: October 19, 2024, 03:51:24 pm »
Size should be given when fieldtype is ftString.

Richard Marriott

  • Newbie
  • Posts: 6
Re: Field of types ftString not persistent
« Reply #8 on: December 16, 2024, 07:20:11 am »
I assume you set up the table in the IDE, so go back to the field definitions property and make sure that the definition for 'Namm" contains a size parameter (as matthijsj suggests).
The other suggestions should all work. Value is a variant that contents the input to the field definition type. The only other thing I can think of is to try 'Append" rather than "Insert" in your code.

 

TinyPortal © 2005-2018