Главная страница
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.033 c
2-1153207099
Ell
2006-07-18 11:18
2006.08.06
Зона для клика мышкой


2-1152855604
pushkin42
2006-07-14 09:40
2006.08.06
Совместимость NT систем???


10-1122560284
GekaNaz
2005-07-28 18:18
2006.08.06
НЕ могу вставить в Excel таблицу гиперссылку из Delphi


1-1150983408
yaJohn
2006-06-22 17:36
2006.08.06
Интерфейсы под Delphi 5


15-1152306828
ronyn
2006-07-08 01:13
2006.08.06
загрузчик не грузит