Histórico da Página
Índice
Índice | ||||||||
---|---|---|---|---|---|---|---|---|
|
...
Plataforma
Produto: fluig
Banco de Dados: Oracle
Ocorrência
Percebemos que caso a grafia , se na declaração dos campos de um dataset o , a grafia do nome dos campos esteja está em minúsculo , quando consumido o dataset é consumido normalmente na web ou no mobile online a grafia dos campos precisa ser minusculo e no consumo no porém, quando consumindo no mobile jornalizado (offline) temos que usar o nome dos campos em maiúsculo para que a consulta não retorne 'null'. Neste cenário, o que podemos fazer para sempre retornar os valores corretos?
...
Esse comportamento ocorre em virtude da criação das tabelas no banco de dados Oracle, que por padrão utiliza as colunas com nomes todo em maiúsculo. Em alguns pontos do desenvolvimento sobre a plataforma é possível que as colunas sejam acessadas somente usando a definição do nome da mesma no banco de dados, ou seja, todo em maiúsculo.
Para evitar esta situação é sugerido que a definição das colunas seja sempre em maiúsculo, assim indiferente de onde realizemos a consulta, estará sempre respeitando o “padrão“.
...
Veja os exemplos abaixo:
Note que
...
Forma de definição dos campos não recomendada, em minúsculonesta forma de definição, os campos estão em minúsculo portanto, não recomendada:
Bloco de código | ||||
---|---|---|---|---|
| ||||
function defineStructure() { addColumn("cod_cliente"); addColumn("nom_cliente"); setKey(["cod_cliente"]); } |
Recomendação de Recomendamos a definição das colunas de forma padronizada, com caracteres em MAIÚSCULO, veja:
Bloco de código | ||||
---|---|---|---|---|
| ||||
function defineStructure() { addColumn("COD_CLIENTE"); addColumn("NOM_CLIENTE"); setKey([ "COD_CLIENTE" ]); } |
Indiferente da funcionalidade usada, o acesso a coluna será sempre da mesma forma e, por esse motivo, é importante que a definição e a consulta estejam padronizadas.
Confira abaixo o exemplo de acesso Acesso a coluna via desenvolvimento sobre a plataforma, que funcionará tanto no mobile quanto na web quanto no mobile, online e offline:
Bloco de código | ||||
---|---|---|---|---|
| ||||
var dataset = DatasetFactory.getDataset('dataset', new Array(), new Array(), new Array()); var dados = dataset.values; for ( var i in dados ) { var dado= dados[i]; var codigo = dado["COD_CLIENTE"]; var nome = dado["NOM_CLIENTE"]; } | ||||
Nota | ||||
A definição e a consulta estão padronizadas. O acesso a coluna será sempre da mesma forma, indiferente da funcionalidade usada. |