Olá George,
Obrigado pelo retorno.
Na verdade nosso problema está na lentidão da população de uma tabela MTable
(com a função SalTblPopulate) e não na ordenação da mesma.
Seguem os exemplos:
Função para ordenação da coluna
Function: FunColOrdenaColuna
Description:
Returns
Parameters
Static Variables
Local variables
Window Handle: hWnd_col_ordena[*]
Number: nu_vet_sort_flags[*]
Actions
Call SalWaitCursor( TRUE )
Set hWnd_col_ordena[0] = hWndItem
If boo_cres
Set nu_vet_sort_flags[0] = MTS_DESC |
MTS_DT_DEFAULT
Set boo_cres = FALSE
Else
Set nu_vet_sort_flags[0] = MTS_ASC |
MTS_DT_DEFAULT
Set boo_cres = TRUE
If NOT MTblSort( hWndForm, hWnd_col_ordena,
nu_vet_sort_flags )
Set boo_cres = NOT boo_cres
Call SalTblClearSelection( hWndForm )
Call SalWaitCursor( FALSE )
Código que utilizamos do MTable no SAM_Create da classe Tbl_Child
! Subclass - MTbl
Call MTblSubClass( hWndItem )
! Cores alternadas de fundo nas linhas
Call MTblSetAltRowBackColors( hWndItem, FALSE, CTE_Cor_01_Alt,
CTE_Cor_02_Alt )
! Ajusta cor da moldura da tabela ( cabeçalhos )
Call MTblSetHeadersBackColor( hWndItem, CTE_Cor_Tela, MTSC_REDRAW )
! Habilita e define Tool Tip
Call MTblEnableTipType( hWndItem, MTBL_TIP_CELL, TRUE )
Obrigado e um abraço!
Rodrigo Scarano
Target Sistemas
* <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED]
Rua Turiassu, 390 - 2º Andar - Perdizes - SP
CEP 05005-000 São Paulo Brasil
Tel. SUPORTE: 55 11 3866 3466
Tel.: 55 11 3801 4015
site.: <http://www.targetsis.com.br%20/> www.targetsis.com.br
Tecnologia da Informação Aplicada ao Distribuidor
-----Mensagem original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em nome
de George Hilton
Enviada em: terça-feira, 18 de novembro de 2008 10:40
Para: [email protected]
Assunto: RES: [sqlwin] Child Table TD 5.1 - Urgente.
Rodrigo,
Verifiquei os fontes e além da SalTblSortRows utilizamos também a função
MTblSort contida na dll mtbl.dll.
Eu populo a tabela com um SalTblPopulate normal e depois uso a MTblSort.
Qual função você está utilizando para popular a tabela?
Nâo percebi diferença no tempo de resposta das duas formas de ordenações.
-----Mensagem original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] nome
de Rodrigo Scarano - Target Sistemas
Enviada em: terça-feira, 18 de novembro de 2008 11:01
Para: Centura List
Assunto: [sqlwin] Child Table TD 5.1 - Urgente.
Prioridade: Alta
Olá pessoal. Tudo certo?
Estou com um problema urgente e gostaria de saber se alguém pode me ajudar:
Quando migramos nosso aplicativo do TD 4.2 para o TD 5.1, o comando
SalTblSortRows da Child Table começou a apresentar problemas de GPF. Após
várias reclamações o caso foi registrado como um BUG pela Ana Paula (Unify),
porém até o momento não foi resolvido. Cansamos de esperar por uma resposta
da Unify (até porque acho que eles não estão muito preocupados conosco) e
para contornar a situação, passamos a utilizar a classe MTable que não
apresenta o problema na ordenação. A questão é q o comando de Populate da
MTable é MUITO MAIS LENTO que o mesmo comando na Child Table e isso está
inviabilizando a utilização em nossos clientes. Gostaria de saber se alguém
do fórum utiliza a classe MTable e já enfrentou este tipo de situação de
lentidão.
Qquer ajuda é bem vinda.
Forte abraço!
Rodrigo Scarano
Target Sistemas
* <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED]
Rua Turiassu, 390 - 2º Andar - Perdizes - SP
CEP 05005-000 São Paulo Brasil
Tel. SUPORTE: 55 11 3866 3466
Tel.: 55 11 3801 4015
site.: <http://www.targetsis.com.br%20/> www.targetsis.com.br
Tecnologia da Informação Aplicada ao Distribuidor