Duvidas de criação de indices.
Moderador: Moderadores
- Ricardo Sales Ribeiro
- Usuário Nível 3

- Mensagens: 279
- Registrado em: 13 Jul 2004 18:06
- Localização: Fortaleza-Ceara
Duvidas de criação de indices.
Bom Dia
Amigos
Uma duvidas, eu criei uma rotina para criar um indice on seria por NroOds, numero de ordem de serviços, e status,
o status eu só poderia mostra os ´P´pendentes, eu ainda tenho status ´F´ finalizada e ´C´ cancelada.
Use OrdOds
Index on NroOds to OrdOdsCD for status = ´P´
Qdo eu utilizar esse arquivo com esse indice, só mai me mostrar naturalmente asd os com estatus ´P´, no arquivo
as com status ´F´ e ´C´, não aparecerem.
Numa consulta, esse arquivo continua pesado ou seja, mesmo sem mostrar as C e as F ?
Meu problema é o seguinte, esse arquivo é para ter uma consulta rápida, já que os com status ´P´ é no maximo 10 itens,
mas tem horas que fica como se fosse processando alguma coisa, como posso deixar esse arquivo sempre leve.
Como posso fazer para na hora da atualização de indices, eu excluir os registros com status ´F´ e ´C´?
Atenciosamente.
Amigos
Uma duvidas, eu criei uma rotina para criar um indice on seria por NroOds, numero de ordem de serviços, e status,
o status eu só poderia mostra os ´P´pendentes, eu ainda tenho status ´F´ finalizada e ´C´ cancelada.
Use OrdOds
Index on NroOds to OrdOdsCD for status = ´P´
Qdo eu utilizar esse arquivo com esse indice, só mai me mostrar naturalmente asd os com estatus ´P´, no arquivo
as com status ´F´ e ´C´, não aparecerem.
Numa consulta, esse arquivo continua pesado ou seja, mesmo sem mostrar as C e as F ?
Meu problema é o seguinte, esse arquivo é para ter uma consulta rápida, já que os com status ´P´ é no maximo 10 itens,
mas tem horas que fica como se fosse processando alguma coisa, como posso deixar esse arquivo sempre leve.
Como posso fazer para na hora da atualização de indices, eu excluir os registros com status ´F´ e ´C´?
Atenciosamente.
- Ricardo Sales Ribeiro
- Usuário Nível 3

- Mensagens: 279
- Registrado em: 13 Jul 2004 18:06
- Localização: Fortaleza-Ceara
Duvidas de criação de indices.
Caro amigo
Boa Tarde
Eu ainda uso Ntx, não aprendi a usar cdx.
Gde abraço
Boa Tarde
Eu ainda uso Ntx, não aprendi a usar cdx.
Gde abraço
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Duvidas de criação de indices.
Olá Ricardo,
De cara, eu mudaria isso:Para isso:
Mas ideal mesmo seria se você postasse sua função para melhor entendimento.
De cara, eu mudaria isso:
Código: Selecionar todos
Use OrdOds
Index on NroOds to OrdOdsCD for status = ´P´Código: Selecionar todos
Use OrdOds
Index On status="P" To OrdOdsCDAbraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
- Ricardo Sales Ribeiro
- Usuário Nível 3

- Mensagens: 279
- Registrado em: 13 Jul 2004 18:06
- Localização: Fortaleza-Ceara
Duvidas de criação de indices.
Bom Dia!
Não entendi a sua opção, como a rotina vai saber que estou organizando por NroOds, e com status =´P´
Index on Status=´P´ TO OrdSerCd
Atenciosamente
Não entendi a sua opção, como a rotina vai saber que estou organizando por NroOds, e com status =´P´
Index on Status=´P´ TO OrdSerCd
Atenciosamente
-
Kapiaba
- Colaborador

- Mensagens: 1908
- Registrado em: 07 Dez 2012 16:14
- Localização: São Paulo
- Contato:
Duvidas de criação de indices.
Olá, tente assim ou modifique para seu gosto:
Código: Selecionar todos
ERASE OrdOdsCD.NTX // Para não acumular lixo no .NTX.
USE OrdOds EXCLUSIVE
INDEX ON NroOds TO OrdOdsCD ;
FOR ( .NOT. EOF() ) .AND. ;
OrdOds->STATUS = "P" .AND. ; // Somente os pendentes
OrdOds->STATUS != "F" .AND. ;
OrdOds->STATUS != "C"
CLOSE DATABASE
USE OrdOds
SET INDEX TO OrdOdsCD
Browse() // para ver o que mostrara...
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Duvidas de criação de indices.
Olá Ricardo,
Verdade!
É que tentei fugir da cláusula FOR por achar que poderia ser ela o problema. Mas faltou o detalhe da ordem:
Verdade!
É que tentei fugir da cláusula FOR por achar que poderia ser ela o problema. Mas faltou o detalhe da ordem:
Código: Selecionar todos
Index on STR(NroOds)+Status=´P´ TO OrdSerCdAbraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Duvidas de criação de indices.
Tenho a impressão de que o índice com FOR não funciona pra atualização no Harbour.
Pra deixar compatível, a sugestão é manter um índice por status + numero, e usar o SET SCOPE se precisar.
Sem scope, a pesquisa ficaria assim:
Só pra lembrar: é pra manter o índice sempre ativo, se for indexar só na hora de mostrar então melhor trabalhar sem índice.
Pra deixar compatível, a sugestão é manter um índice por status + numero, e usar o SET SCOPE se precisar.
Sem scope, a pesquisa ficaria assim:
Código: Selecionar todos
SEEK "P"
cTxt := ""
DO WHILE status == "P" .AND. .NOT. Eof()
cTxt += Str( arquivo->Numero, 6 ) + ","
SKIP
ENDDO
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/