Artigo: 952548 - Última revisão: sexta-feira, 18 de Julho de 2008 - Revisão: 1.0

CORRECÇÃO: Registos da outra sessão de utilizador que violam os critérios para uma tabela principal são apresentados na janela Navegar para uma tabela subordinada num ambiente multi-utilizador do Visual FoxPro 9.0 Service Pack 2

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sintomas

Tem duas janelas de procura que mostram uma criança e a tabela principal num ambiente multi-utilizador Microsoft Visual FoxPro 9.0 Service Pack 2. Outros utilizadores adicionarem registos a essas tabelas. Após estas tabelas são actualizadas, os registos são apresentados na janela Navegar para a tabela subordinada a instância do Visual FoxPro. Isto ocorre mesmo que os registos de violam os critérios que são especificados pelos valores actuais na janela Navegar para a tabela principal.

Resolução

Informações sobre a correcção

Uma correcção suportada está agora disponível da Microsoft. No entanto, destina-se a apenas a corrigir o problema descrito neste artigo. Aplique-a apenas em sistemas que tenham este problema específico.

Para resolver este problema, contacte o suporte técnico da Microsoft para obter a correcção. Para obter uma lista completa dos números de telefone de suporte técnico da Microsoft e informações sobre os custos de suporte, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Nota Em casos especiais, os custos normalmente inerentes às chamadas de suporte poderão ser anulados, se um técnico de suporte da Microsoft determinar que uma actualização específica resolverá o problema. Os custos normais do suporte serão aplicados a problemas adicionais e questões de suporte que não se enquadrem na atualização específica em questão.

Pré-requisitos

Tem de ter o Visual FoxPro 9.0 Service Pack 2 instalado para aplicar esta correcção.

Requisito de reinício

Não é necessário reiniciar o computador depois de aplicar esta correcção.

Informações sobre substituição de correcções

Esta correcção não substitui quaisquer outras correcções.

Informações do ficheiro

A versão inglesa desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são indicadas no formato de hora universal coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador fuso horário no item data e hora no painel de controlo.
Reduzir esta tabelaExpandir esta tabela
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempo
Vfp9.exe9.0.0.66025,783,55203-Junho de 200816: 12
Vfp9r.dll9.0.0.66024,734,97603-Junho de 200816: 12
Vfp9runtime.msmNão aplicável4,586,49603-Junho de 200816: 13
Vfp9t.dll9.0.0.66023,907,58403-Junho de 200816: 12

Ponto Da Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".

Mais Informação

Para obter mais informações sobre a terminologia de actualização de software, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
824684  (http://support.microsoft.com/kb/824684/LN/ ) Descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft

Passos para reproduzir o problema

  1. Crie um directório no disco local.
  2. Inicie o Visual FoxPro 9.0 SP2.
  3. Copy the following code into a new Visual FoxPro program file, and then save the file as Session1.prg to the directory that you created in step 1.
    _SCREEN.Caption = "SESSION 1"
    LOCAL liLoop AS INTEGER, cCodeNewRecord AS STRING
    cCodeNewRecord = "SES1"
    SET MULTILOCKS ON
    CURSORSETPROP("Buffering", 5,0)
    CD ( ADDBS(JUSTPATH(SYS(16))) )
    CLOSE DATA ALL
    ERASE KB952548_*.*
    
    CREATE DATABASE KB952548_DB
    CREATE TABLE  KB952548_DB_PARENT;
    	(h1 c(10) PRIMARY KEY)
    CREATE TABLE KB952548_DB_DETAIL;
    	(h1 c(10), ;
    	d1 c(30), ;
    	d2 c(30), ;
    	FOREIGN KEY h1 TAG TAGDETAIL REFERENCES KB952548_DB_PARENT )
    CLOSE DATABASES ALL
    
    OPEN DATABASE KB952548_DB SHARED
    USE KB952548_DB_PARENT SHARED IN 0
    USE KB952548_DB_DETAIL SHARED IN 0 ORDER TAGDETAIL
    SELECT KB952548_DB_PARENT
    SET RELATION TO h1 INTO KB952548_DB_DETAIL
    
    INSERT INTO KB952548_DB_PARENT (h1) VALUES (cCodeNewRecord)
    FOR liLoop = 1 TO 4
    	INSERT INTO KB952548_DB_DETAIL (h1, d1) ;
    	VALUES (cCodeNewRecord, "FIRSTSESSION " + TRANSFORM(liLoop))
    ENDFOR
    
    SELECT KB952548_DB_PARENT
    GO TOP
    DEFINE WINDOW PAR FROM 0,0 TO 10,30 FLOAT CLOSE GROW
    BROWSE LAST NOWAIT WINDOW PAR
    DEFINE WINDOW DETAIL FROM 15,15 TO 30,60 FLOAT CLOSE GROW
    SELECT KB952548_DB_DETAIL
    GO TOP
    BROWSE LAST NOWAIT WINDOW DETAIL
  4. Criar outro ficheiro de programa do Visual FoxPro novo utilizando o seguinte código e, em seguida, guardar o ficheiro como Session2.prg para o directório que criou no passo 1.
    _SCREEN.Caption = "SESSION 2"
    LOCAL cCodeNew AS STRING, liLoop AS INTEGER
    CD ( ADDBS(JUSTPATH(SYS(16))) )
    SET MULTILOCKS ON
    CURSORSETPROP("Buffering",5,0)
    CLOSE ALL
    CLOSE DATA ALL
    cCodeNew = "SES2"
    
    OPEN DATABASE KB952548_DB SHARED
    USE KB952548_DB_PARENT SHARED IN 0
    USE KB952548_DB_DETAIL SHARED IN 0 ORDER TAGDETAIL
    SELECT KB952548_DB_PARENT
    SET RELATION TO h1 INTO KB952548_DB_DETAIL
    
    INSERT INTO KB952548_DB_PARENT (h1) VALUES (cCodeNew)
    FOR liLoop = 1 TO 4
    	INSERT INTO KB952548_DB_DETAIL (h1, d1) ;
    		VALUES (cCodeNew, "SECONDSESSION " + TRANSFORM(liLoop))
    ENDFOR
    
    =TABLEUPDATE(.T.,.T.,'KB952548_DB_PARENT')
    =TABLEUPDATE(.T.,.T.,'KB952548_DB_DETAIL')
    CLOSE DATABASES ALL
    
  5. Execute o programa Session1.prg. Quando o fizer, dois procure janelas abertas. A janela de procura Kb952548_db_parent apresenta os registos da tabela principal. A janela de procura Kb952548_db_detail apresenta os registos da tabela subordinada.
  6. Iniciar outra instância do Visual FoxPro e, em seguida, execute o programa Session2.prg.
  7. Verifique o SESSION 1 janela.
Na janela de procura Kb952548_db_parent , o valor actual da coluna H1 for SES1 . Neste caso, a janela de procura Kb952548_db_detail deverá apresentar todos os registos nos quais o valor da coluna H1 está SES1 . No entanto, alguns registos na qual o valor da coluna H1 é SES2 são inesperadamente apresentadas em Kb952548_db_detail procure janela.

A informação contida neste artigo aplica-se a:
  • Microsoft Visual FoxPro 9.0 Professional Edition
Palavras-chave: 
kbmt kbexpertiseadvanced kbqfe kbhotfixserver KB952548 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 952548  (http://support.microsoft.com/kb/952548/en-us/ )