Главная страница
    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.038 c
1-1086244146
Vlad Oshin
2004-06-03 10:29
2004.06.13
Какое время указывается в TSearchRec? создания? посл. обращения?


9-1075981475
Hex0DesiMaL
2004-02-05 14:44
2004.06.13
Трейнеры


1-1085694456
GEN++
2004-05-28 01:47
2004.06.13
DLL обмен строками


1-1085725841
Susanoo
2004-05-28 10:30
2004.06.13
Элементы MainMenu


1-1085909283
nitro
2004-05-30 13:28
2004.06.13
Как проверить пустой ли список Listbox ?





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