XMLDOCUMENT — различия между версиями

Материал из Фабиус wiki
Перейти к: навигация, поиск
м (Смотрите также)
м (Пример использования)
Строка 27: Строка 27:
  
 
  fld := ' _1,C,200; '
 
  fld := ' _1,C,200; '
  aa := IdHttpGet( local_host + ':' + utm_port + '/opt/out' )
+
  aa := [[IdHttpGet]]( local_host + ':' + utm_port + '/opt/out' )
 
  // сохраняем входящие сообщения в файле out.xml
 
  // сохраняем входящие сообщения в файле out.xml
 
  WriteTxtFile( { aa }, 'out.xml', TempPath, true )
 
  WriteTxtFile( { aa }, 'out.xml', TempPath, true )

Версия 12:16, 8 сентября 2016

XMLDocument - это функция, описанная в файле QrAddFn2.pas

XMLDocument( xmlfile )

Чтение XML файла

Полный текст функции

type
  TQrEvXMLDocument=class(TQREvElementFunction)
  public
    function Calculate: TQREvResult; override;
  end;
function TQrEvXMLDocument.Calculate: TQREvResult;
begin
  Result := NilValue;
  if (ArgList.Count >= 1) and (Argument(0).Kind = ResString) then
    begin
      Result.Kind := ResObject;
      Result.ObjResult:=TXMLDocument.Create(Application);
      TXMLDocument(Result.ObjResult).LoadFromFile(Argument(0).StrResult);
    end;
end;

Пример использования

fld := ' _1,C,200; '
aa := IdHttpGet( local_host + ':' + utm_port + '/opt/out' )
// сохраняем входящие сообщения в файле out.xml
WriteTxtFile( { aa }, 'out.xml', TempPath, true )
doc := XmlDocument( Nice_Path( TempPath ) + 'out.xml' )
node := xmlNode( doc )
_ := CreateTmpFile( fld, '_', ~IsFreeDel := true )
for i := 0 to XmlNodeProp( node, "ChildNodeCount" ) - 1
  aa := XmlNodeProp( XmlNodeProp( node, "ChildNodes", i ), "NODEVALUE" )
  aa := Right( aa, Len( aa ) - at( 'http', aa ) - 6 )
  if !Empty( aa )
    ( _ )->( DbAppend() )
    ( _ )->_1 := aa
  endif
next

Смотрите также

XMLNode

Функции Delphi

Полезные функции