[firebase-br] Funcionamento confuso? com D6+DBX+FB1.5 - Ajudap/entender

Pha-Listas lista em pha.com.br
Dom Ago 14 12:08:03 -03 2005


> A única coisa que muda em cada um deles é o final, justamente o order...E
> uma coisa que chamou a minha atenção é que se eu usar a Indexação com
> ClientDataSet não funciona mesmo...

Para utilizar indices no ClientDataSet o campo tem que estar no ResultSet, pois a 
indexação e feita no cliente.

Voce tem que ver onde esta o Probelma, tete o seguinte.

- defina a propriedade  poRetainServerOrder = True do TDataSetProvider
- defina a propriedade  NoMetadata = True do TSQLDataSet
- limpe a propriedade IndexDefs do TClientDataSet

Voce tambem deve fazer teste com outros componentes como TSQLDataSet ou TIBQuery, para 
vericar se o problema esta no componente.

Faça tambem um Last e um RecordCount no ClientDataSet para verificar quantos registros 
estao sendo trazidos e se o problema nao e no Relatorio.

Utilizo ClientDataSet no Delphi6 e nao tenho nenhum problema desse tipo.

Pha
Nova  Odessa / SP - Brazil

----- Original Message ----- 
From: "oswaldosa" <oswaldosa em ig.com.br>
To: <lista em firebase.com.br>; <lista em firebase.com.br>
Sent: Friday, August 12, 2005 5:40 PM
Subject: Re: [firebase-br] Funcionamento confuso? com D6+DBX+FB1.5 - Ajudap/entender


> Olá Eduardo e amigos...
>
> Aqui vai o select completo para vc ver, não entendo ser o caso...no DSP eu
> inclusive redeclaro o nome da Tabela p/ele não se perder...
>
> SELECT
>    C.COD_CLI,  C.NOME_CLIENTE,  C.SOBRENOME_CLIENTE,
>    C.STATUS_INTERNO,   C.COD_CATEGORIA,  C.DT_CADASTRO,
>     C.ULT_CONTATO, C.APELIDO_CLIENTE,
>    C.SITUACAO_FINANCEIRA,  C.ENDERECO, C.COMPLEMENTO,C.BAIRRO,
>    C.CIDADE, C.UF,  C.CEP, C.CNPJ,  C.INSCR_ESTADUAL,  C.DATANASC,
>    C.TEL01,  C.TEL02, C.FAX, C.CELULAR, C.EMAIL, C.CRIADOR,
>    (SELECT CAT.CATEGORIA FROM CAT_CLIENTES CAT WHERE CAT.COD_CATEGORIA =
> C.COD_CATEGORIA) AS NOME_CATEGORIA,
>    (SELECT COUNT(*) FROM ANIMAIS A WHERE A.COD_CLI = C.COD_CLI) AS
> QT_ANIMAIS,
>    (SELECT COUNT(*) FROM ANIMAIS A WHERE A.COD_CLI = C.COD_CLI AND
> A.PEDIGREE IS NOT NULL AND A.PEDIGREE<>'') AS QT_COM_PEDIGREE,
>    (SELECT COUNT(*) FROM ANIMAIS A WHERE A.COD_CLI = C.COD_CLI AND
> A.AG_MATRIMONIAL = 'Y') AS QT_AGENCIA,
>    case C.STATUS_INTERNO
>      when '1' then 'Cliente Ativo'
>      when '2' then 'Cliente Inativo'
>      when '3' then 'Prospect'
>      else
>         'Sem Status Definido'
>  end as DESCRICAO_STATUS,
>   case C.SITUACAO_FINANCEIRA
>      when '1' then 'Situação Financeira OK'
>      when '2' then 'Crediário OK'
>      when '3' then 'Inadimplente'
>      when '4' then 'Cheques Devolvidos'
>      when '5' then 'Problema com Cartão de Crédito'
>      else
>         'Não Cadastrada'
>  end as DESCRICAO_SIT_FINANCEIRA
> FROM
>    CLIENTES C
> WHERE
>    (C.BAIRRO LIKE :BAIRRO OR :BAIRRO_TODOS = 1)  AND
>    (C.CIDADE LIKE :CIDADE OR :CIDADE_TODOS = 1)  AND
>    (C.UF = :UF OR :UF_TODOS = 1)  AND
>    (C.STATUS_INTERNO = :STATUS_INTERNO OR :STATUS_INTERNO = '0')  AND
>    (C.SITUACAO_FINANCEIRA = :SIT_FINANCEIRA OR :SIT_FINANCEIRA = '0')  AND
>    (C.COD_CATEGORIA = :COD_CATEGORIA OR :COD_CATEGORIA = 0) AND
>    (C.DT_CADASTRO BETWEEN :DT_INICIO AND :DT_FIM OR :TODOS_DTCAD = 1) AND
>    (C.CRIADOR = :CRIADOR_PETS OR :CRIADOR_PETS = '')
> ORDER BY C.SITUACAO_FINANCEIRA, C.NOME_CLIENTE, C.COD_CLI
>
>
> A única coisa que muda em cada um deles é o final, justamente o order...E
> uma coisa que chamou a minha atenção é que se eu usar a Indexação com
> ClientDataSet não funciona mesmo...
>
>
> []'s
> Oswaldo
>
> Em (17:03:07), FireBase escreveu:
>






Mais detalhes sobre a lista de discussão lista