Files
lazarus-ccr/wst/trunk/tests/SDMTabularService/test_prj.pas
inoussa 65f4a3dffd + TStringBufferRemotable = reading a node's raw buffer
+ Better Delphi support : client & server( new )
    - SOAP, XMLRPC and BINARY formats

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@212 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2007-07-12 14:46:45 +00:00

80 lines
2.4 KiB
ObjectPascal

program test_prj;
{$mode objfpc}{$H+}
uses
SysUtils,
synapse_http_protocol,
soap_formatter,
SDMTabularService, SDMTabularService_proxy;
var
SDMSoap : SDMTabularServiceSoap;
QueryBuffer : RunQueryType;
QryResult : RunQueryResponse;
XmlFileVar : TextFile;
begin
SYNAPSE_RegisterHTTP_Transport();
// if Assigned(InitProc) then
// TProcedure(InitProc);
QueryBuffer := RunQueryType.Create();
try
SDMSoap := wst_CreateInstance_SDMTabularServiceSoap();
if not Assigned(SDMSoap) then
begin
WriteLn('Service not assigned');
Exit;
end;
QueryBuffer.Query :=
'SELECT ' +
'saversion, saverest, ' +
'l.areasymbol, l.areaname, l.lkey, ' +
'mu.musym, mu.muname, museq, mu.mukey, ' +
'textcat, textsubcat, ' +
'flodfreqdcd, wtdepannmin, ' +
'comppct_r, compname, localphase, slope_r, slope_l, slope_h, hydgrp, tfact, runoff, drainagecl, wei, majcompflag, slopelenusle_r, c.cokey, ' +
'reskind, resdept_r, ' +
'hzdept_r, hzdepb_r, om_l, om_h, kffact, kwfact, ch.chkey, ' +
'texture ' +
'FROM sacatalog sac ' +
'INNER JOIN legend l ON l.areasymbol = sac.areasymbol AND l.areasymbol = ''IN001'' ' +
'INNER JOIN mapunit mu ON mu.lkey = l.lkey ' +
'LEFT OUTER JOIN mutext mutx ON mutx.mukey = mu.mukey AND mutx.textcat = ''innitrate'' ' +
'LEFT OUTER JOIN muaggatt muag ON muag.mukey = mu.mukey ' +
'LEFT OUTER JOIN component c ON c.mukey = mu.mukey AND c.majcompflag = ''Yes'' ' +
'LEFT OUTER JOIN corestrictions core on core.cokey = c.cokey AND core.reskind IN (''Densic bedrock'', ''Lithic bedrock'', ''Paralithic bedrock'') ' +
'LEFT OUTER JOIN chorizon ch ON ch.cokey = c.cokey AND ch.hzdept_r = ''0'' ' +
'LEFT OUTER JOIN chtexturegrp chtg ON chtg.chkey = ch.chkey ' +
'ORDER BY l.areasymbol, museq, comppct_r DESC, compname, hydgrp, texture';
// WriteLn(QueryStr);
try
QryResult := SDMSoap.RunQuery(QueryBuffer);
if not Assigned(QryResult) then
WriteLn('QryResult not assigned');
except on E:Exception do
begin
WriteLn(E.Message);
Exit;
end;
end;
// WriteLn(QryResult.s_schema);
WriteLn(Copy(QryResult.RunQueryResult.schema.Data, 1, 500));
AssignFile(XmlFileVar, 'junk.xml');
Rewrite(XmlFileVar);
WriteLn(XmlFileVar, QryResult.RunQueryResult.diffgram.Data);
CloseFile(XmlFileVar);
finally
QueryBuffer.Free();
end;
end.