Fórum
Ver pergunta

V10 – Prigrelha problema na ordem de colunas   

124 visualizações
1
0

A usar uma prigrelha com uma stored procedure é obrigatório criar as colunas com a mesma ordem que estas são devolvidas?

Exemplo:

Carregamento dos dados

private void LoadGrid()
{
StdBELista lista;
string sql = "";

sql = "sp_XPTO";

lista = new StdBELista();
lista = PriSDKContext.SdkContext.BSO.Consulta(sql);

priEncomendas.DataBind(lista);
}

A sp devolve 6 colunas com a seguinte ordem:

ID, Encomenda, Data, Artigo, Cliente, Nome

Ao construir a prigrelha faço o seguinte:

priEncomendas.AddColKey("Encomenda", FpCellType.CellTypeEdit, "Encomenda", 10, true, true, strCamposBaseDados: "Encomenda");
priEncomendas.AddColKey("Data", FpCellType.CellTypeDate, "Data", 10, true, true, strCamposBaseDados: "Data");
priEncomendas.AddColKey("Artigo", FpCellType.CellTypeEdit, "Artigo", 10, true, true, strCamposBaseDados: "Artigo");
priEncomendas.AddColKey("Cliente", FpCellType.CellTypeEdit, "Cliente", 10, true, true, strCamposBaseDados: "Cliente");
priEncomendas.AddColKey("Nome", FpCellType.CellTypeEdit, "Nome", 10, true, true, strCamposBaseDados: "Nome");
priEncomendas.AddColKey("ID", FpCellType.CellTypeEdit, "ID", 10, true, false, strCamposBaseDados: "ID");

E o que acontece é que a informação fica baralhada, aparecendo o ID na coluna da Encomenda.

Faça login para poder traduzir
Integração
V10
Marcado como spam
Criado há 5 anos e 6 meses anthonyvalente
a
anthonyvalente Iniciante
1 respostas
0
Resposta privada

Isso é uma coisa que não tens de te preocupar, a ordem é importante, mas para isso podes usar este metodo priGrelha1.DaCamposBDSelect().

Para mais detalhes podes ver o exemplo aqui no GitHub, e aqui tens um bom artigo COMO UTILIZAR A PRIGRELHA DO SDK .

Faça login para poder traduzir
Marcado como spam
Criado há 5 anos e 6 meses sergiosereno
sergiosereno Most Valuable Professional
    Comentários
    Mas para isso teria que construir o meu select com os campos que a função DaCamposBDSelect() devolve. Tendo em conta a complexidade de algumas sp's isso é impraticável, para não falarmos das que já são usadas noutros desenvolvimentos e têm colunas adicionais que podem não ser usadas nos novos ecrãs.
    5 anos e 6 meses
    anthonyvalente

      Os campos que esse metódo devolve são os campos que se adiciona à grelha. Deves usar esse metodo por causa de uma columas especiais que são adicionadas e que são necessárias para os agrupamentos e databinding funcionem correctamente.

      5 anos e 6 meses
      sergiosereno
        Usar o metodo ou preencher o campo strCamposBaseDados? Esse campo eu compreendo que tenha de usar e estou a usar, só não entendo porque é que o objeto não reconhece a coluna sem ser necessário ordenar a query. Vou assumir como uma limitação do objeto e contornar da maneira que me indicou mas pedia que pelo menos ponderasse sobre o assunto, a prigrelha pode ser bastante útil mas precisa de algumas melhorias.
        5 anos e 6 meses
        anthonyvalente