Usando aspas no script

Você pode usar aspas em comandos de script de várias maneiras diferentes.

Dentro dos comandos LOAD

Em um comando LOAD, as seguintes marcas devem ser usadas como aspas:

  Descrição Símbolo Ponto de código Exemplo

Nomes do campo

aspas duplas

" " 34 "string"
  colchetes [ ] 91, 93 [string]
  acentos graves ` ` 96 `string`

Literais de string

aspas simples

' '

39 'string'

Em comandos SELECT

Para um comando SELECT interpretado pelo driver ODBC, pode ser um pouco diferente. Normalmente, você deve utilizar aspas duplas retas (Alt + 0034) para nomes de campos e de tabelas. Para literais, use aspas simples retas (Alt + 0039), mas nunca acentos graves. No entanto, alguns drivers ODBC não somente aceitam acentos graves, como também os preferem. Nesse caso, os comandos SELECT gerados contêm acentos graves.

Exemplos de aspas no Microsoft Access

O Microsoft Access ODBC Driver 3.4 (incluído no Microsoft Access 7.0) aceita as seguintes aspas ao analisar o comando SELECT:

Nomes de campos e de tabelas:

[ ]

" " ` `

Literais de cadeias de caracteres:

' '

Outros bancos de dados podem ter diferentes convenções.

Fora dos comandos LOAD

Fora de um comando LOAD, nos lugares em que o QlikView espera uma expressão, as aspas duplas denotam uma referência de variável e não uma referência de campo. Se você usar aspas duplas, a string incluída entre elas será interpretada como uma variável e, em seguida, o valor da variável será usado.

Referências de campo e referências de tabela fora de contexto

Algumas funções de script referem-se a campos que já foram criados ou que estão na saída de um comando LOAD, como por exemplo Exists() e Peek(). Essas referências de campo são chamadas referências de campo fora de contexto, ao contrário das referências de campo de fonte, que se referem aos campos que estão no contexto, ou seja, na tabela de entrada do comando LOAD.

Referências de campo e referências de tabela fora de contexto devem ser consideradas como literais e, portanto, precisam de aspas simples.

Diferença entre nomes e literais

A diferença entre nomes e literais torna-se mais clara na comparação dos seguintes exemplos:

Example:  

'Sweden' as Country

Quando essa expressão é usada como parte da lista de campos em um comando LOAD ou SELECT, a string de texto "Sweden" será carregada como valor de campo no campo QlikView "Country".

Example:  

"land" as Country

Quando essa expressão é usada como parte da lista de campos em um comando LOAD ou SELECT, o conteúdo do campo de banco de dados ou coluna da tabela com o nome "land" será carregado como valores de campo do campo QlikView "Country". Isto é, land será tratado como uma referência de campo.

Diferença entre números e literais de string

A diferença entre nomes e literais de string torna-se mais clara na comparação dos seguintes exemplos.

Example:  

'12/31/96'

Quando essa string é usada como parte de uma expressão, na primeira etapa ela é interpretada como a string de texto "12/31/96", que por sua vez pode ser interpretada como uma data se o formato da data for ‘MM/DD/YY’. Nesse caso, será armazenada como um valor duplo com uma representação numérica e uma textual.

Example:  

12/31/96

Quando essa string for usada como uma parte de uma expressão, será interpretada numericamente como 12 dividido por 31 dividido por 96.

Uso de aspas em uma string

Quando uma string contém caracteres que podem ser usados como aspas, é importante indicar claramente onde ela começa e onde ela termina ao delimitá-la. Se a string não for delimitada corretamente, o script falhará ou carregará os dados incorretamente.

Existem dois métodos para delimitar uma string que contém aspas.

Usar aspas específicas para delimitar a string

Escolha aspas que não sejam usadas dentro da string e use-as para delimitar a string inteira. O QlikView usará essas aspas específicas para determinar onde a string começa e onde ela termina.

Qualquer um dos tipos de aspas a seguir pode ser usado para delimitar a string inteira:

  • Aspas duplas " "
  • Colchetes [ ]
  • Acentos graves ` `
  • Aspas simples ' '

Example:  

[Tabela '1 "2"]

Colchetes são usados para delimitar a string. A string é carregada como: Tabela '1 "2"

'string `Name1` "Name2'

As simples são usadas para delimitar a string. A string é carregada como: string `Name1` "Name2

Usar caracteres de escape

Caracteres de escape são uma ocorrência adicional das aspas usadas para delimitar a string. Eles devem ser adicionados ao lado de cada ocorrência das aspas que aparecer na string. Quando todas as aspas forem usadas dentro de uma string, você precisará adicionar caracteres de escape ao lado do mesmo tipo de aspas usado para delimitar essa string. Caracteres de escape também podem ser usados quando você desejar inserir aspas que já estejam em uso em uma string.

Apenas as marcas a seguir podem ser usadas como caracteres de escape:

  • Aspas duplas " "
  • Colchetes [ ]
  • Aspas simples ' '

Example:  

"Michael cantou ""It's a beautiful day""."

Se você delimitar a string usando aspas duplas " ", deverá adicionar aspas duplas extras ao lado de cada par de aspas duplas usadas dentro dessa string.

Essa string é carregada como Michael cantou "It's a beautiful day". Ao usar o caractere de escape "", o editor de script do QlikView compreende quais aspas duplas fazem parte da string e quais indicam o fim dessa string. A aspa simples ' usada na abreviação It's não precisa de escape, pois não é a marca usada para delimitar a string.

Example:  

'Michael cantou: "It''s a beautiful day".'

Se você delimitar a string usando aspas simples, deverá adicionar uma aspa simples extra ao lado de cada aspa simples usada dentro dessa string.

Esta string é carregada como Michael cantou "It's a beautiful day". As aspas duplas " usadas para citar o que Michael disse não precisam de escape, pois não são a marca usada para delimitar a string.

Example:  

[Michael cantou [It's a "beautiful day]].]

Os colchetes [ ] se comportam de maneira diferente dos outros dois tipos de aspas. Se você quiser usar colchetes como caracteres de escape, deverá adicionar um colchete extra apenas ao lado do colchete direito ], e não ao lado do colchete esquerdo [.

Esta string é carregada como Michael cantou [It's a "beautiful day]. O escape é feito apenas no colchete direito ]. A aspa simples ' e as aspas duplas " usadas na string não precisam de escape, pois não são usadas para delimitar a string.