Página 1 de 1

Lentidão em acesso rede XP

Enviado: 25 Jun 2014 14:31
por Marcio_Carneiro
Olá, amigos

Estou com um problema num cliente.:
De uns tempos para cá, ele passou a reclamar da demora em gravar e imprimir notas de orçamento.
Sempre funcionou redondo, mas agora tá travando.

Ex:
De um ponto da rede acesso (via atalho) o prg, cadastro e imprimo normalmente,
Se outro ponto de rede acessar o mesmo programa, mesmo não fazendo nada, no outro ponto da rede já fica lento, sendo que na impressão (local) chega a pausar e depois continuar.

Já baixei o set_xp da área de dowload e dá erro na execução, e não corrige nada.


O que os amigos sugerem?

Marcio

Lentidão em acesso rede XP

Enviado: 25 Jun 2014 15:28
por Jairo Maia
Olá Márcio,

Eu sugiro algumas coisas:

1 - Independente do tipo de contrato que você tenha com seu cliente, não chame para si um problema que é do SO Windows. Este problema não está em seu sistema, mas sim no SO.

2 - Se seu contrato também prevê suporte ao SO, sugiro os seguintes passos para tentar resolver um problema que não foi seu sistema que criou:
a-Verifique se não existe mais de 1 antivírus instalado nas máquinas. Clientes são loucos para clicar em prosseguir naqueles montes de coisinhas que baixam e instalam, e juram por Deus que nunca fizeram isso. Já cheguei ver máquina com 4 antivírus.
b-Se seu cliente não tem instalado o CCleaner por exemplo, instale em todos computadores, rode e limpe tudo que ele sugerir.
c-Depois, baixe em www.baixaki.com.br o utilitário adwcleaner.exe e rode também nos computadores. Tenha em mente que após passar este utilitário a máquina precisará ser reiniciada.
d-Após isso, faça uma varredura na memória do computador a fim de verificar tudo que está em segundo plano atrapalhando o funcionamento do micro, e remova.

Tudo isso, porquê seu cliente tem que ter em mente que as máquinas precisam de manutenção severa no SO, e isso é para tentar não ter que pará-las para enviar a um técnico para formatá-las e reinstalar o sistema operacional limpo. O que não é preciso dizer quanto transtorno isso causa.

Lentidão em acesso rede XP

Enviado: 26 Jun 2014 08:14
por Marcio_Carneiro
Obrigado pela atenção

Infelizmente, não tenho responsabilidade pelo SO, mas no interior é difícil não dar uma olhada
para o cliente, pois o profissional que atua na parte do SO já trocou até o switch.

O Anti-vírus é Microsoft Security Essentials.

Tenho certeza que é uma variável do sistema operacional, mas o problema é que meu cliente
fica na minha cola, para tentar ajudar ele...

Por isso pedi ajuda aos amigos.

No caso de programa em Harbour acaba a necessidade de config.nt/autoexec? Mesmo sendo DBF/NTX?

Lentidão em acesso rede XP

Enviado: 26 Jun 2014 08:29
por Toledo
Márcio, uma outra dica que reduz o trafego na rede é fazer a instalação do programa em cada ponto da rede, evitar colocar o EXE apenas no servidor, compartilhando na rede apenas os arquivos DBF e NTX.

Abraços,

Lentidão em acesso rede XP

Enviado: 26 Jun 2014 08:45
por Marcio_Carneiro
Obrigado pela atenção.

Mas já sendo chato, como fazer isto:
eu utilizo uma procedure que abre os arquivos.dbf, que no caso estão na pasta local,
e como trataria isto em mapeamento de rede?

Marcio

Lentidão em acesso rede XP

Enviado: 26 Jun 2014 10:42
por Kapiaba
Primeiro, voce deve mudar seus indices para .CDX, que e muito mais rapido que
indices .NTX. E deixar o seu MENU PRINCIPAL, como no exemplo abaixo.

Serve tanto para o .EXE na REDE, como para o .EXE na maquina LOCAL.

Em 32 bits, nao necessita mudar nada no config.nt e autoexec.nt

Código: Selecionar todos

REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850

NNOUNCE RDDSYS
ANNOUNCE FPTCDX
REQUEST DBFCDX, DBFFPT

REQUEST OrdKeyNo, OrdKeyCount, OrdCreate, OrdKeyGoto

FUNCTION MAIN()

    SET DATE BRITISH
    SET EPOCH TO 1950
    SET CENTURY ON
    SET SOFTSEEK OFF
    SET WRAP ON
    SETCANCEL( .F. )
    SET CONFIRM OFF
    SET DELETED ON
    SET ESCAPE OFF
    SET EXACT ON
    SET EXCLUSIVE OFF
    SET MULTIPLE OFF
    /*
    SET AUTOPEN ON
    SET DBFLOCKSCHEME TO 3
    */

    RDDSETDEFAULT("DBFCDX")

    HB_LANGSELECT( 'PT' )
    HB_SETCODEPAGE( "PT850" )

Lentidão em acesso rede XP

Enviado: 26 Jun 2014 10:57
por Toledo
Bom, primeira coisa é compartilhar no Servidor a pasta onde está os arquivos DBF e NTX, depois em cada terminal fazer o mapeamento da pasta, atribuindo uma letra para a unidade (pasta) na rede (por exemplo Y:).

No seu programa principal criar uma variável contendo a letra do mapeamento (por exemplo x_DirDBF:="Y:\").

Na sua procedure que abre os DBF's, usar a variável acima como caminho até o DBF, por exemplo:

Código: Selecionar todos

Func Abre_Dbf( xcArquivo, xcAlias, lModo, nTentativa )
LOCAL lSempre, lRetor := .F.

if !file( x_DirDBF + xcArquivo + ".dbf" )
   Alert( "Arquivo " + xcArquivo + " não encontrado" )
   Retu ( .F. )
endif
lSempre := ( nTentativa == 0 )
IF EMPTY( SELECT( xcAlias ) )
   DO WHILE ( lSempre .OR. nTentativa > 0 ) .AND. INKEY() <> 27
      IF lModo                     // .T. ABRE ARQUIVO EXCLUSIVO ...
         USE ( x_DirDBF + xcArquivo ) ALIAS ( xcAlias ) EXCLUSIVE NEW
      ELSE                         // .F. ABRE ARQUIVO COMPARTILHADO ...
         USE ( x_DirDBF + xcArquivo ) ALIAS ( xcAlias ) SHARED NEW
      END
      IF ( .NOT. NETERR() )          // COM SUCESSO ...
         lRetor := .T.
         EXIT
      END
      INKEY( 1 )             // TENTATIVAS 1 SEGUNDO ...
      nTentativa := nTentativa - 1
   END
ELSE
   SELE SELECT( xcAlias )
   lRetor := .T.
ENDIF
Retu ( lRetor )
Abre_Dbf(<cArquivo>,<cAlias>,<lTipo>,<nTentativas>)
cArquivo = Nome do arquivo DBF
cAlias = Alias do arquivo DBF
lTipo = .T. para modo EXCLUSIVO e .F. para modo COMPARTILHADO
nTentativas = número de tentativas para abrir o arquivo

Como usar a função:

Código: Selecionar todos

   if !Abre_Dbf( "clientes", "clientes", .f. , 10 )
      Alert( "Não foi possível abrir o arquivo CLIENTES" )
      Close All
      Return
   endif
   _c_ntx1 := x_DirDBF + "cli_cod"  //NTX ordenado por código
   _c_ntx2 := x_DirDBF + "cli_nome" //NTX por nome
   if !File( _c_ntx1 + ".ntx" ) .or. !File( _c_ntx2 + ".ntx" )
      INDEX ON CODIGO TO ( _c_ntx1 )
      INDEX ON NOME TO ( _c_ntx2 )
   endif
   SET INDEX TO ( _c_ntx1 ), ( _c_ntx2 )
Abraços,

Lentidão em acesso rede XP

Enviado: 27 Jun 2014 15:28
por Marcio_Carneiro
Obrigado pela atenção, Mestre Toledo.

Quanto aos índices, a consulta é super rápida, mesmo sendo ntx.

Obrigado pela aula, vou estudar a lição e aplicá-la.

É muito estranho isto.

Marcio

Lentidão em acesso rede XP

Enviado: 28 Jun 2014 03:15
por rochinha
Amiguinho,

Nas impressoras que estão sendo usadas, desabilite a impressão por spool. Configure para impressão direta sem este recurso.

Nas maquinas que acessam impressora faça o mesmo.