Possivelmente, as bases de dados e arquivos auxiliares estarão em diferentes pastas do servidor. O parâmetro cipar pode ser utilizado para indicar os caminhos dos diretórios onde estarão os arquivos utilizados pelo Script, sendo normalmente declarado no início do script, após a primeira tarefa. Por exemplo:
<parm name="cipar">CDS.*=c:\bases\cds\cds.*</parm>
Isto indica que todos os arquivos de nome cds e qualquer extensão (cds.*) indicados no script por CDS estão armazenados no diretório c:\bases\cds\
Qualquer arquivo fora do diretório cgi pode ser específicado através deste parâmetro. Para especificar um conjunto de arquivos utilize as tags <pft>, separando cada arquivo por literais, por exemplo:
<parm name="cipar">
<pft>
‘cds.*=c:\bases\cds\cds.*’/
‘short.pft=c:\bases\cds\short.pft’/
‘error.htm=c:\httpd\docs\error.htm’/
</pft>
</parm>
9.6.2 Gizmo
Outro parâmetro muito usado é o gizmo. Ele realiza a referência a uma base de dados gizmo (base de conversão). Por exemplo, se sua base gizmo chamar-se troca, o parâmetro gizmo seria:
<parm name="gizmo">troca</parm>
Bases de dados gizmo são utilizada para converter caracteres ou string de caracteres em outros caracteres ou string de caracteres. Seu uso mais comum é converter “caracteres especiais” como Á, Ç, Ñ em strings de texto que sejam exibidos corretamente pelo HTML (é ç e Ñ). A tabela de conversões pode ser facilmente encontrada em livros de HTML.
Uma base de dados gizmo é definida em dois campos
1 Valor de entrada
2 Valor de saída
Cada caracter especial e sua versão texto são registradas em diferentes registros da base de dados, por exemplo:
MFN=1 1: é 2: é |
MFN=2 1: ç 2: ç |
A localização da base gizmo também pode ser especificada através do parâmetro cipar, por exemplo:
<parm name="cipar"> troca.*=c:\bases\troca.*</parm>
9.7 Loops (laços)
Frequentemente uma tarefa relacionada a uma base de dados requer que sejam exibidos uma série de registros, fazendo com que o programa execute um “loop” a cada registro processado. Este loop é especificado com as tags <loop> and </loop> para as tarefas mfnrange, search e keyrange.
Por exemplo, o loop pode ser utilizado no script Olamundo a seguir para exibir a mensagem tantas vezes quantas forem desejadas (especificadas pelo parâmetro to).
<IsisScript name="Olamundo"> <display><pft>’Content-type: text/html’##</pft></display> <do> <parm name="to">10</parm> <loop> <display>Olá Mundo!</display> </loop> </do> </IsisScript>
Como no exemplo anterior, não é necessária a utilização de uma tarefa específica ou qualquer referência a uma base de dados para utilizar o parâmetro loop, contudo, ele é comumente usado em tarefas de pesquisa, onde deve-se indicar que, para cada registro encontrado como resultado da busca deverá ser exibido com a formatação indicada pelo formato.