+3 votos
74 visitas
Estou com o seguinte problema,

Ao executar o método RefreshGrid, uma consulta é executada retornando o erro:

ORA-00972: identificador muito longo

 

O problema no SQL está no ALIAS gerado para a tabela TR_PCCODIGOSCONTRIBUICAOSOCIAL

Como existem dois joins para esta tabela, o alias desta tabela é montado desta forma (TR_PCCODIGOSCONTRIBUICAOSOCIAL1) estourando o limite de caracteres no Oracle.

 

Portanto, a pergunta é

Existe alguma forma de alterar o SQL que este componente executa ao disparar o método RefreshGrid?
por (51 pontos)
reclassificado por | 74 visitas

1 Resposta

+2 votos

Não vejo como sendo que você define apenas a tabela, campos e filtro. Não tem acesso ao DataSet!

Só se houver alguma herança.

Precisa ser este componente? Prefiro utilizar o TBennerDBGrid (http://wiki.benner.com.br/wiki/index.php?title=TBennerDBGrid). Vais ter controle sobre o SQL, várias tabelas, sobre os campos, adicionar campos, inserir imagens, controle de status, ordenação nativa, ....

Pode-se utilizar com um BQuery ou mesmo com um DContainerDB (mais flexível).

 

por (113 pontos)
Bom dia Rodrigo,

o que pensei foi na herança mesmo...

O processo já foi todo feito e baseado neste componente, estou fazendo uma correção.

Obrigado.
Melhores Aug 2025
    200 pontos
    Melhores 2025 Jul 28 - Aug 03
    1. Larson

      156 Pontos

    2. danilo.pereira

      96 Pontos

    3. danilo.pereira

      96 Pontos

    4. danilo.pereira

      96 Pontos

    5. luciano.fronza

      61 Pontos

    6. luciano.fronza

      61 Pontos

    7. luciano.fronza

      61 Pontos

    8. diuari.molinari

      52 Pontos

    9. diuari.molinari

      51 Pontos

    10. diuari.molinari

      51 Pontos

    517 perguntas
    566 respostas
    389 comentários
    704 usuários