Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2011.12.25;
Скачать: [xml.tar.bz2];

Вниз

Поле не принимает значения   Найти похожие ветки 

 
lesstab ©   (2011-09-05 13:05) [0]


datamodul.qryTeacher.FieldByName("ClrKod").Value := datamodul.qryColor.FieldByName("Kod").Value;
datamodul.qryTeacher.Post;


Правая часть оператора присваивания имеет конкретное значение, но левая часть не принимает никакого значения, всегда остается Null. В чем может быть причина.

П.С. Ошибки не выдается. Сервер - Firebird 2.5. Соединение ADOConnection. Набор данных ADOQuery.


 
Медвежонок Пятачок ©   (2011-09-05 13:07) [1]

скорее всего это оптический обман


 
Медвежонок Пятачок ©   (2011-09-05 13:08) [2]

datamodul.qryTeacher.FieldByName("ClrKod").Value := datamodul.qryColor.FieldByName("Kod").Value;

ShowMessage("Поле таки принимает значение:  "VarToStr(datamodul.qryTeacher.FieldByName("ClrKod").Value));


 
Медвежонок Пятачок ©   (2011-09-05 13:14) [3]

а еще лучше так:

ShowMessage("полю присваивается значение " + VarToStr(datamodul.qryColor.FieldByName("Kod").Value) + #13#10"И поле приняло значение " + VarToStr(datamodul.qryTeacher.FieldByName("ClrKod").Value));


 
lesstab ©   (2011-09-05 16:44) [4]


> Медвежонок Пятачок ©   (05.09.11 13:14) [3]
>
> а еще лучше так:
>
> ShowMessage("полю присваивается значение " + VarToStr(datamodul.
> qryColor.FieldByName("Kod").Value) + #13#10"И поле приняло
> значение " + VarToStr(datamodul.qryTeacher.FieldByName("ClrKod").
> Value));


    if formtechedit.ModalResult = mrOK then
    begin

        datamodul.qryTeacher.FieldByName("ClrKod").Value := datamodul.qryColor.FieldByName("Kod").Value;
        ShowMessage("ïîëþ ïðèñâàèâàåòñÿ çíà÷åíèå " + datamodul.qryColor.FieldByName("Kod").AsString + #13#10+"È ïîëå ïðèíÿëî çíà÷åíèå " + datamodul.qryTeacher.FieldByName("ClrKod").AsString);
        datamodul.qryTeacher.Post;
    end;

Вот результат:
http://img7.imageshack.us/img7/8683/append.th.png


 
Медвежонок Пятачок ©   (2011-09-05 17:20) [5]

У меня не AsString.
У меня Value.


 
lesstab ©   (2011-09-06 07:22) [6]

   
if formtechedit.ModalResult = mrOK then
    begin
        datamodul.qryTeacher.FieldByName("ClrKod").Value := datamodul.qryColor.FieldByName("Kod").Value;
        ShowMessage("ïîëþ ïðèñâàèâàåòñÿ çíà÷åíèå " + VarToStr(datamodul.qryColor.FieldByName("Kod").Value) + #13#10+"È ïîëå ïðèíÿëî çíà÷åíèå " + VarToStr(datamodul.qryTeacher.FieldByName("ClrKod").Value));
        datamodul.qryTeacher.Post;
    end;


Все равно результат тот.


 
lesstab ©   (2011-09-06 07:26) [7]

Вот объявление ДатаМодуля:

type
 Tdatamodul = class(TDataModule)
   connectionLesstab: TADOConnection;
   qryCurriculum: TADOQuery;
   qrySubject: TADOQuery;
   dsrcCurriculum: TDataSource;
   dsrcSubject: TDataSource;
   qryColor: TADOQuery;
   dsrcColor: TDataSource;
   qryRoom: TADOQuery;
   dsrcRoom: TDataSource;
   qryTeacher: TADOQuery;
   dsrcTeacher: TDataSource;
   qryTeacherKOD: TLargeintField;
   qryTeacherSTATE: TStringField;
   qryTeacherNAME: TStringField;
   qryTeacherROOM: TLargeintField;
   qryTeacherCLRKOD: TLargeintField;
   qryColorKOD: TLargeintField;
   qryColorHEX: TStringField;
   qryColorSTATE: TStringField;
   procedure dsrcCurriculumDataChange(Sender: TObject; Field: TField);
   procedure qrySubjectBeforePost(DataSet: TDataSet);
   procedure qrySubjectAfterPost(DataSet: TDataSet);
   procedure qryTeacherBeforePost(DataSet: TDataSet);

 private


 
Очень Злой   (2011-09-07 11:25) [8]


>    
> if formtechedit.ModalResult = mrOK then
>     begin
>         datamodul.qryTeacher.FieldByName("ClrKod").Value
> := datamodul.qryColor.FieldByName("Kod").Value;
>         ShowMessage("ïîëþ ïðèñâàèâàåòñÿ çíà÷åíèå " + VarToStr(datamodul.
> qryColor.FieldByName("Kod").Value) + #13#10+"È ïîëå ïðèíÿëî
> çíà÷åíèå " + VarToStr(datamodul.qryTeacher.FieldByName("ClrKod").
> Value));
>         datamodul.qryTeacher.Post;
>     end;
>
>
> Все равно результат тот.


А Edit/Append/Insert точно не пропустил?


 
lesstab ©   (2011-09-08 14:39) [9]


> А Edit/Append/Insert точно не пропустил?


Нет, несомненно.
Так как, нет времени, сейчас обхожу это место в программе. Куда же оно денется. ))


 
Ega23 ©   (2011-09-08 14:42) [10]


> А Edit/Append/Insert точно не пропустил?


Тогда было бы "Cannot perform this operation on a closed DataSet"


 
lesstab ©   (2011-09-14 13:38) [11]

Вот это работает:

datamodul.qryTeacher.FieldByName("ClrKod").AsInteger := datamodul.qryColor.FieldByName("Kod").AsInteger;


А это нет:

datamodul.qryTeacher.FieldByName("ClrKod").Value := datamodul.qryColor.FieldByName("Kod").Value;

Вчем же разница?


 
Anatoly Podgoretsky ©   (2011-09-14 15:14) [12]

> lesstab  (14.09.2011 13:38:11)  [11]

Разница в Value



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2011.12.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.004 c
15-1315600188
Юрий
2011-09-10 00:29
2011.12.25
С днем рождения ! 10 сентября 2011 суббота


15-1314986696
Virgo_Style
2011-09-02 22:04
2011.12.25
программирование IncDay-style


15-1315629693
morba
2011-09-10 08:41
2011.12.25
Помогите с реализацией отключения usb устройств


11-1236511074
Jon
2009-03-08 14:17
2011.12.25
CreateRestrictedToken


15-1315419704
неокубинец
2011-09-07 22:21
2011.12.25
Подскажите по подключению монитора





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский