Nenhum dado aparece em um sub-relatório quando o sub-relatório é vinculado por um campo AutoNumeração com a propriedade tamanho do campo definida como código de replicação

O suporte para o Office 2003 terminou

A Microsoft terminou o suporte para o Office 2003 em 8 de abril de 2014. Esta alteração afetou as suas atualizações de software e opções de segurança. Saiba o que isto significa para você e como permanecer protegido.

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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 824641
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sintomas
Em um banco de dados do Microsoft Access, se você exibir um relatório no modo de visualização está vinculado a um sub-relatório usando um campo AutoNumeração e se a propriedade de Tamanho do campo do campo é definida como Código de replicação , o sub-relatório pode não exibir todos os dados.
Causa
O modo folha de dados de uma tabela ou consulta que contém um campo do tipo de dados AutoNumeração (com sua propriedade FieldSize definida como Código de replicação ) Retorna ou exibe o código de replicação como uma seqüência de caracteres, em vez de retornar ou exibindo o código de replicação como um GUID.
Como Contornar
Para contornar o problema, use um dos seguintes métodos:
  • Método 1: Usar um subformulário em vez de uma sub-relatório

    Criar um subformulário em que o subformulário se baseia o mesmo conjunto de registros que o sub-relatório existente e vincule o subformulário criado em vez de sub-relatório ao relatório principal. Para fazer isso, execute as seguintes etapas:
    1. Adicione um formulário que é baseado no mesmo conjunto de registros como sub-relatório.
    2. Abra o relatório principal no modo Design.
    3. Inserir um controle Subformulário/sub-relatório para o relatório a partir da caixa de ferramentas.
    4. No Assistente de sub-relatório, clique para selecionar usar um formulário ou relatório existente e clique no nome do formulário que foi criado em step1 na caixa de listagem.
    5. Clique em Avançar .
    6. Em campos de formulário/relatório , selecione o campo AutoNumeração no relatório principal.
    7. Em campos do subformulário/sub-relatório , selecione o campo correspondente no subformulário que foi criado na etapa 1.
    8. Clique em Concluir . Observe que os dados no subformulário aparecem quando você exibir o relatório principal em Visualizar impressão.
  • Método 2: Modificar a fonte de registro dos relatórios da

    Você pode modificar a fonte do registro do relatório principal e sub-relatório usar consultas para que a consulta correspondente retorna todas as colunas da tabela relevante. Além disso, as consultas devem usar a função CStr para converter o conteúdo do campo Código de replicação em um valor de seqüência de caracteres. Para fazer isso, execute as seguintes etapas:
    1. Crie uma consulta para a fonte de registro do relatório principal.

      Por exemplo, suponha que a origem do relatório principal é uma tabela que é denominada projeto . A tabela de projeto contém dois campos, PID e PName . Neste exemplo, o PID é um campo AutoNumeração com a propriedade de Tamanho do campo definida como Código de replicação . Criar uma consulta que é denominada Consulta1 semelhante à seguinte consulta:
      SELECT 	CStr([PID]) AS strPID, 	PNameFROM 	Project
    2. Crie uma consulta para a fonte de registro do sub-relatório.

      Por exemplo, suponha que a fonte do sub-relatório é uma tabela que é chamada de tarefas . A tabela de tarefas contém dois campos, TaskID e RelatedProject . Neste exemplo, RelatedProject é um campo número com a propriedade de Tamanho do campo definida como Código de replicação que faz referência a coluna de identificação da tabela Project . Criar uma consulta que é denominada Query2 semelhante à seguinte consulta:
      SELECT 	TaskID, 	CStr([RelatedProject]) AS strRelatedProjectFROM 	Project
    3. Cria o relatório principal com base na consulta Consulta1 .
    4. Abra o relatório principal no modo de design.
    5. Inserir um controle de Subformulário/sub-relatório no relatório a partir da caixa de ferramentas.
    6. No Assistente de sub-relatório, clique para selecionar usar consultas e tabelas existentes e, em seguida, clique em Avançar .
    7. Clique em consulta: Query2 na lista Tabelas/consultas .
    8. Clique em >> para mover todos os campos da lista Campos disponíveis para a lista Campos selecionados e, em seguida, clique em Avançar .
    9. Em campos de formulário/relatório , selecione strPID .
    10. Em campos do subformulário/sub-relatório , selecione strRelatedProject .
    11. Clique em Concluir . Observe que os dados no sub-relatório também aparecem quando você exibir o relatório principal em Visualizar impressão.
Mais Informações

Passos para reproduzir o problema

  1. Inicie o Microsoft Access.
  2. Crie um novo banco de dados é denominado Db1.mdb.
  3. Crie uma tabela que é o projeto com as seguintes especificações:

    Table: Project------------------------------PID	AutoNumberPName	TextColumn: PID------------------------------Field Size	Replication ID	
  4. Crie outra tabela que é chamada tarefas com as seguintes especificações:

    Table: Tasks------------------------------TaskID		AutoNumberRelatedProject	NumberColumn: TaskID------------------------------Field Size	Replication IDColumn: RelatedProject------------------------------Field Size	Replication ID		
  5. Crie e execute a consulta a seguir para inserir dados na tabela Project e a tabela de tarefas :
    INSERT INTO project ( PName )VALUES ('test');
    e
    INSERT INTO tasks ( RelatedProject )SELECT PIDFROM project;
  6. Na janela banco de dados, clique em relatórios sob objetos .
  7. No painel direito, clique duas vezes em Criar relatório usando o Assistente .
  8. Clique em tabela: Project na lista Tabelas/consultas .
  9. Clique em >> para mover todos os campos da lista Campos disponíveis para a lista Campos selecionados e, em seguida, clique em Concluir .

    Observação Observe que o relatório de projeto é aberto automaticamente no impressão visualizar.
  10. No menu Exibir , clique em Design View .
  11. Inserir um controle de Subformulário/sub-relatório no relatório a partir da caixa de ferramentas.
  12. No Assistente de sub-relatório, clique para selecionar usar consultas e tabelas existentes e, em seguida, clique em Avançar .
  13. Clique em tabela: tarefas na lista Tabelas/consultas .
  14. Clique em >> para mover todos os campos da lista Campos disponíveis para a lista Campos selecionados e, em seguida, clique em Avançar .
  15. Em campos de formulário/relatório , selecione PID .
  16. Em campos do subformulário/sub-relatório , selecione RelatedProject e em seguida, clique em Concluir .
  17. No menu arquivo , clique em Salvar .
  18. No menu Exibir , clique em impressão visualizar . Observe que os dados que corresponde à sub-relatório estão faltando.
Referências
Para obter mais informações sobre o tipo de dados AutoNumeração e código de replicação, clique em Ajuda do Microsoft Office Access no menu Ajuda , digite sobre tamanho de campo AutoNumeração e bancos de dados replicados na caixa Procurar no painel Assistência e, em seguida, clique em Iniciar pesquisa para exibir o tópico.

Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
210612Consulta parâmetro retorna não registros com campo de código de replicação
Perda de dados ACC2003 ACC2002 ACC2000 dados ausentes

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 824641 - Última Revisão: 12/08/2015 03:49:35 - Revisão: 1.5

Microsoft Office Access 2003, Microsoft Access 2002 Standard Edition, Microsoft Access 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbdatabase kbreport kbprb KB824641 KbMtpt
Comentários