Exemplo 08 – Pesquisando em várias base

IsisScript - WXIS

Formulário HTML

[codesyntax lang="html4strict" container="pre"]
<html>
<head> <title>Pesquisando em várias bases</title></head>
<body>
<h3>Pesquisa em Múltiplas Bases de Dados</h3>
<form action="/cgi-bin/wxis.exe" method="post">
  <input type="hidden" name="IsisScript" value="curso/script8.xis">
   Digite sua expressão de pesquisa<br>
  <input type="text" name="expressao">
   Pesquisar na base
  <input type="checkbox" name="base1" value="Livros">Livros
  <input type="checkbox" name="base2" value="Multimidia">Multimidia
   No formato:
  <select name="formato">
  <option value="simples">Simples
  <option value="detalhado">Detalhado
  </select>
  <input type="submit" value="Pesquisar">
</form>
</body>
</html>
[/codesyntax]


Script

[codesyntax lang="html4strict" container="pre"]
<IsisScript>
<section>
<display><pft>'Content-type: text/html'/#</pft></display>
<field action="cgi" tag="2001">expressao</field>
<field action="cgi" tag="2002">formato</field>
<parm name="cipar">
<pft>
 'BASE1.*=C:\bases\livro\livro.*'/
 'BASE2.*=C:\bases\virtu\virtu.*'/
 'GIZMO.*=C:\bases\gizmo\asc2ans.*'/
</pft>
</parm>
<flow action="jump"><pft>if a(v2003) and a(v2004) then 'ERRO' fi</pft></flow>
<flow action="jump"><pft>if a(v2003) then 'BASE2' , fi</pft></flow>
<do task="search">
<parm name="db">BASE1</parm>
<parm name="gizmo">GIZMO</parm>
<parm name="expression"><pft>v2001</pft></parm>
<display><h2>Resultados da pesquisa na Livros</h2></display>
<loop>
<field action="import" tag="2002">2002</field>
<display>
<pft>
if v2002='simples' then mfn, '-'mhl,v245,'<hr>', else
 newline('<br>')@\bases\livro\form1.pft
'<hr>'
fi
</pft>
</display>
</loop>
</do>
<label>BASE2</label>
<flow action="jump"><pft>if a(v2004) then 'FIM' fi </pft></flow>
<display><h2>Resultados da pesquisa na Multimídia</h2></display>
<do task="search">
<parm name="db">BASE2</parm>
<parm name="gizmo">GIZMO</parm>
<parm name="expression"><pft>v2001</pft></parm>
<loop>
<field action="import" tag="2002">2002</field>
<display>
<pft> if v2002='simples' then
 newline('<br>')@\bases\virtu\simples.pft
'<hr>', fi
</pft>
</display>
<display>
<htmlpft>
 <pft>if v2002='detalhado' then
 cat('curso/detalhado.htm'), fi
</pft>
</htmlpft>
</display>
</loop>
</do>
<flow action="exit">Sai da pesquisa</flow>
<label>ERRO</label>
<display>Você deve selecionar uma base de dados</display>
<label>FIM</label>
<flow action="exit">Termina tudo</flow>
</section>
</IsisScript>
[/codesyntax]

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *