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

Вниз

TSringList   Найти похожие ветки 

 
Xmen   (2004-05-31 14:02) [0]

привет всем...

помогите!!!

У мне есть код типа того

var StrLst: TStringList;
begin
 StrLst:=TStringList.Create;
 try
   StrLst.Add("My String");//  
   UpdDB(StrLst);
 finally
   StrLst.Free;
 end;
end;

но
StrLst.Add("My String");//  
строка не работает, то есть не добовлять "My String" в StrLst


 
Sandman25+1   (2004-05-31 14:03) [1]

Добавляет.
Ошибка в UpdDB


 
Семен Сорокин ©   (2004-05-31 14:09) [2]

строка не работает, то есть не добовлять "My String" в StrLst
докажи


 
Xmen   (2004-05-31 14:18) [3]

Спасибо за ответы
вот мой польный код

procedure TfmUpdateDB.Button2Click(Sender: TObject);
var
   StdTableLst, OraTableLst: TStringList;
begin

   StdTableLst:=TStringList.Create;
   OraTableLst:=TStringList.Create;

   try
       with OraTableLst do begin
           Add("S_REGION.DBF");
           Add("SPR_BANK.DBF");
           Add("BNK.DBF");
       end;

       with OraTableLst do begin
           Add("REGION_LIST");
           Add("BANK_LIST");
           Add("BRANCH_LIST");
       end;

       dmUpdateDB.UpdDB(Edit1.Text, CheckBox1.Checked, StdTableLst, OraTableLst)

   finally
       StdTableLst.Free;
       OraTableLst.Free;
   end;
end;

--------

procedure TdmUpdateDB.UpdDB(Dir: String; Conv: Boolean; StdTableList, OraTableList: TStringList);
var
   i, j, FldCnt: Integer;
begin

   with snMySession do begin
       if IsAlias("TestUpd") then DeleteAlias("TestUpd");
       AddStandardAlias("TestUpd",Dir,"DBASE");
       SaveConfigFile;
   end;

   for i:=0 to 2 do begin
       with tbMyTable do begin
           Close;
           TableName:=StdTableList.Strings[i];
           Open;
       end;

       if Conv then ConvToWin(tbMyTable);

       with OraTable1 do begin
           Close;
           TableName:=OraTableList.Strings[i];
           Open;
           EmptyTable;
           FldCnt:=FieldCount;
       end;

       with tbMyTable do begin
           First;
           while not Eof do begin
               with OraTable1 do begin
                   Insert;
                   for j:=0 to FldCnt-1 do Fields[j]:=tbMyTable.Fields[j+1];
                   Post;
               end;
               Next;
           end;
       end;
   end;
end;

procedure TdmUpdateDB.ConvToWin(Table: TTable);
var Fil :  String;
   i,j : Longword;
begin
   with Table do begin
       First;

       while not Eof do  begin
           for j:=0 to FieldCount-1 do begin
               if Fields[j].DataType in [ftString] then Fil:=Fields[j].AsString else Continue;

               for i:= 1 to Length(Fil) do begin
                   case Ord(Fil[i]) of
                       240: Fil[i]:=Chr(Ord(Fil[i])-72);   // ?
                       241: Fil[i]:=Chr(Ord(Fil[i])-57);   // ?
                       252: Fil[i]:=Chr(Ord(Fil[i])-67);   // ?
                       128..175: Fil[i]:=Chr(Ord(Fil[i])+64);   // ? ? ? ... ?, ? ? ...?
                       224..239: Fil[i]:=Chr(Ord(Fil[i])+16);   // ? ?  ?... ?
                       else Fil[i]:=Fil[i];                // (??? ????????? ??????)
                   end;
               end;
           Edit;
           Fields[j].AsString:=Fil;
           Post;
           Fil:="";
       end;

       Next;
   end;
end;


 
Sandman25+1   (2004-05-31 14:23) [4]

with OraTableLst do begin
   ...
   with OraTableLst do begin


 
Ega23 ©   (2004-05-31 14:25) [5]

Ну и где останов срабатывает?


 
Xmen   (2004-05-31 14:26) [6]

Уважаймый Sandman25+1
я не понил твой ответ
Xmen


 
Семен Сорокин ©   (2004-05-31 14:27) [7]

Sandman25+1   (31.05.04 14:23) [4]
глазастый, я минуты 3 искал, но не там :))


 
Семен Сорокин ©   (2004-05-31 14:28) [8]

Xmen   (31.05.04 14:26) [6]
      with OraTableLst do begin
          Add("S_REGION.DBF");
          Add("SPR_BANK.DBF");
          Add("BNK.DBF");
      end;

      with OraTableLst do begin
          Add("REGION_LIST");
          Add("BANK_LIST");
          Add("BRANCH_LIST");
      end;

в один лист пишешь :)


 
Sandman25+1   (2004-05-31 14:29) [9]

[6] Xmen   (31.05.04 14:26)

Вы нигде не вызываете StdTableLst.Add

[7] Семен Сорокин ©   (31.05.04 14:27)

Я просто не понял, зачем там сразу 2 списка, поэтому обратил внимание на то, что там присваивается :)


 
Xmen   (2004-05-31 14:30) [10]

with tbMyTable do begin
          Close;
          TableName:=StdTableList.Strings[i]; здесь  StdTableList.Strings[i] пусто
          Open;
      end;


 
Xmen   (2004-05-31 14:32) [11]

Спасибо всем
я очень бланадарен


 
Xmen   (2004-05-31 14:32) [12]

Спасибо всем
я очень благадарен



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

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

Наверх




Память: 0.48 MB
Время: 0.051 c
8-1080736695
alextov
2004-03-31 16:38
2004.06.13
Ошибка при сохранении jpeg файла


8-1080846684
?
2004-04-01 23:11
2004.06.13
как отловить изменения экрана?


4-1083832354
Аноним
2004-05-06 12:32
2004.06.13
Отмена минимизации окна


14-1085672356
Nick-From
2004-05-27 19:39
2004.06.13
popup run time


14-1085167911
European
2004-05-21 23:31
2004.06.13
Учебник по VHDL





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский