Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.06;
Скачать: CL | DM;

Вниз

формат 1С   Найти похожие ветки 

 
rosl   (2006-07-20 10:05) [0]

нужно принять данные из структурированного файла (1С)
например:
Иванов|Иван|Иванович
нужно записать его в файл dbf
field1        field2   field2
Иванов      Иван   Иванович
вобщем как пробежать по строке. разделитель "полей" занк |


 
tesseract ©   (2006-07-20 11:18) [1]

PosEx.


 
Virgo_Style ©   (2006-07-20 11:29) [2]

Если данные пишутся в базу запросами, и их не очень много - т.е. допустимо динамическое формирование запроса, без параметров - то можно ReplaceStr, примерно так:

ValuesStr:=""""+StringReplace( SourceStr ,"|",""",""",[rfReplaceAll])+""""; :
Иванов|Иван|Иванович  ->  "Иванов","Иван","Иванович"


 
dolmat   (2006-07-20 12:07) [3]

function NextSubStr(Const SubStr,Str : String; PrevIdx : Integer):Integer;
begin
if (PrevIdx<=Length(Str)) and (PrevIdx>0) then  Result := pos(SubStr,PChar(@Str[PrevIdx]))+PrevIdx-1 else  Result := 0;
end;

   assignfile(f,"\\Dubovik\c\scclient\POST\INFO\"+SearchRec.Name);
   reset(f);
   readln(f,s);
   k:=0;
   for i:=1 to 2 do k :=NextSubStr(",",s,k+1);
   s1:=copy(s,k+1,10);
   delete(s1,3,1);
   insert(".",s1,3);
   delete(s1,6,1);
   insert(".",s1,6);
   datpl:=strtodate(s1); //data oplat
   while not eof(f) do begin
   readln(f,s);
   table1.append;
   k:=0;
   for i:=1 to 4 do begin k :=NextSubStr(",",s,k+1);
   case i of
   1: begin sc:=copy(s,1,k-1); testscet;Table1SCET.asstring:=sc; end;
   2: k1:=k;
   3: begin s1:=copy(s,k1+1,k-k1-1); Table1OPL.asfloat:=strtofloat(s1); k1:=k; end;
   4: begin s1:=copy(s,k1+1,k-k1-1); Table1PENI.asfloat:=strtofloat(s1); k1:=k; end;
   end;
   end;
   Table1DATA_OPL.AsDateTime:=datpl;
   table1.post;
   end;
   closefile(f);
   erase(f);


 
ORMADA ©   (2006-07-20 12:15) [4]

ужас!
а чё не в формате csv .. разницы никакой зато можно было бы без выкрутасов использовать....
лучше конечно xml или на крайняк dfb:(
p.s. бедные люди у которых работает такой программер... моя плакаль


 
IceBeerg ©   (2006-07-20 12:56) [5]


> 2 Virgo_Style ©   (20.07.06 11:29) [2]

Не, туа нада вместо разделителя ставить #13#10, а патом в StringList построчно загружать и юзать...


 
ORMADA ©   (2006-07-20 13:42) [6]

заюзай из джеди JvCsvDataSet поставив в качестве разделителя "|"
и работай как с обычной таблой



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

Текущий архив: 2006.08.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
15-1152715483
Ломброзо
2006-07-12 18:44
2006.08.06
Новый mail.ru а-ля Outlook web access


3-1148922995
Katyyha
2006-05-29 21:16
2006.08.06
Курсач


3-1149251071
Still Swamp
2006-06-02 16:24
2006.08.06
Посомтрим на проблему FB с другой стороны...


15-1152193319
Альф
2006-07-06 17:41
2006.08.06
Как создать dll с именем основного exe ?


1-1151068147
oleggar
2006-06-23 17:09
2006.08.06
нужно в Делфи 5 из файла Excel2000 считать данные