Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];




Вниз

У меня есть такая процедура 


Ольга   (2002-01-22 14:19) [0]

Все работает, а вот в ListBox3 данные не меняются, не понимаю в чем дело



procedure TForm1.Button6Click(Sender: TObject);
var i,l,j:integer;
s:string;
begin

Table2.close;
Table2.CachedUpdates:=false;
if button6.Caption="Удаленные данные" then
begin
table2.TableName:="last.dbf";
button6.Caption:="Рабочие данные" ;
listbox1.font.Color:=clblue;
listbox2.font.Color:=clblue;
listbox3.font.Color:=clblue;
end
else
begin
table2.TableName:="data.dbf";
button6.Caption:="Удаленные данные";
listbox1.font.Color:=clblack;
listbox2.font.Color:=clblack;
listbox3.font.Color:=clblack;
end;
table1.close;
Table1.EmptyTable;
table2.cachedupdates:=true;
table2.Open;
table1.open;
for i:=1 to table2.recordcount do
begin
table1.insert;
table1.fields[0].asstring:=table2.fields[0].asstring;
table1.fields[1].asstring:=table2.fields[1].asstring;
l:=length(table2.fields[2].asstring);
table1.fields[2].asstring:=table2.fields[2].asstring[l];
for j:=1 to l-1 do
begin
s:=table2.fields[2].asstring[j];
table1.fields[2].asstring:=table1.fields[2].asstring+s;
end;
table2.next;
end;

with Table1 do
begin
try
ApplyUpdates;
except
raise;
end;
CommitUpdates;
end;
listbox1.clear;
listbox2.clear;
listbox3.clear;
Table1.First;
for i:=1 to table1.RecordCount do
begin
listBox1.Items.Add(Table1.FieldbyName("Otdel").asstring);
listBox2.Items.Add(Table1.FieldbyName("Name").asstring);
listBox3.Items.Add(Table1.FieldbyName("Parol").asstring);

table1.Next;
end;

end;



Digitman   (2002-01-22 14:40) [1]

если не принимать во внимание строчку listBox3.Clear (это можно считать тоже изменением, если до выполнения строчки список был непуст), то это значит только одно : строчка
listBox3.Items.Add(Table1.FieldbyName("Parol").asstring);
не выполняется.



Ольга   (2002-01-22 14:43) [2]

При первом нажатии на кнопку - все меняется, при следующих - список остается без изменений, в то время, когда другие листбоксы меняют значения.



gek   (2002-01-22 15:20) [3]

Значит не меняются данные поля FieldbyName("Parol").asstring
Надо см где сие происходит
И еще, что это за код

with Table1 do
begin
try
ApplyUpdates;
except
raise;
end;
CommitUpdates;
end;

может проще надо

with Table1 do
begin
try
ApplyUpdates;
finally
CommitUpdates;
end;
end;



Digitman   (2002-01-22 15:21) [4]

слушай, ну ты вообще-то имеешь хоть какое-то понятие о трассировке кода ?



Digitman   (2002-01-22 15:27) [5]

если - лень, так и скажи : "мне лень отладить свой код"
если кроме "батонов" слышать ни о чем не слышала и знать не знаешь (и уж об отладчике встроенном - тем паче), так и скажи : "я не знаю ничего о принципах отладки приложений, отладьте за меня, найдите мои ляпы и исправьте, пожалуйста"



Ольга   (2002-01-22 17:21) [6]

зачем же так - все с чего-то начинали...



Digitman   (2002-01-22 17:47) [7]

а что тебе обидного в моем контрвопросе ? ты ведь как свой вопрос ставишь ? "жму на кнопку, и че-то там делается, но не так" ? А что там реально происходит - ты сама хоть чуточку разбиралась ? Ведь код довольно сложную логику реализует, это ж не три строчки, в которых ты сомневаешься ! Что толку-то, что я за тебя оттрассирую этот код ? Тем более, что совершенно непонятно, что значит в твоем вопросе фраза "данные не меняются" ! Даже если "в лоб" предположить, что под этим подразумевается незаполнение по каким-то причинам списка элементов в ListBox3 (а заполнение его происходит именно при вызове метода ListBox3.Items.Add()), то простейший напрашивающийся вывод : не выполняется строчка, содержащая этот вызов. И именно это я тебе подсказал. А ты никак не отреагировала на подсказку. И какие в такой ситуации обиды могут быть, если ты даже не можешь (не хочешь ?) подсказкой воспользоваться ? Вот и получается : "отладьте за меня мой код, а то я не знаю, как его отлаживать"




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.021 c
3-42706           VV                    2002-01-18 10:58  2002.02.14  
Из Oracle в локальную БД


1-42792           Hokum                 2002-01-31 16:43  2002.02.14  
Имитация InterBase


4-42905           Витамин               2001-12-17 21:54  2002.02.14  
Не нашел хороших доков по хукам, а есть проблема....


1-42784           Eraser                2002-01-31 09:45  2002.02.14  
Формирование массива


14-42873          XM-AD                 2001-12-24 16:15  2002.02.14  
И все таки мне хотелось бы разоюраться, что мне запускать!!! Да, и модераторам - прочитайти сперва.......