Pergunta

Eu ouvi falar sobre os boatos de que a próxima Access2010 tem uma base de Dados Macros recurso que vai, pela primeira vez, adicionar acionar a funcionalidade para Acesso de dados de tabelas de motor.Alguém tem uma mais detalhes sobre isso?Por exemplo, eles podem criado em código (ACEDAO, SQL DDL, etc)?Os Dados Macro de execução se os dados são modificados a partir de fora da interface de usuário do Access exemplo:via ODBC, OLE DB, etc?

Foi útil?

Solução

Ok, um pouco mais de informação.

Os Dados Macro de execução se os dados são modificados a partir de fora da interface de usuário do Access exemplo:via ODBC, OLE DB, etc?

Sim, é verdade.

Estes verdadeiros gatilhos são os dados, a nível de motor.Então, usando o ado, dao ou mesmo de edição de tabelas no modo de exibição de tabela em ms-access significa que os ativadores irá disparar.Esses gatilhos, inclui também, o cenário onde você não tiver o ms-access instalado em seu computador.

É claro que você vai precisar de JET está instalado (para o restante deste artigo eu vou usar o termo ACE).Lembre-se que era só no access 2007 que o acesso a equipe recebeu a propriedade de JET.Eles agora estão livres para aprimorar este mecanismo para suas necessidades.Começamos a ver algumas mudanças para ACE, em 2007, e agora vamos ver um MONTE de mudanças para 2010.Alguns desses recursos são ainda NDA para mim...mas eu irei derramar tanto quanto eu puder aqui.

Por exemplo, eles podem criado em código (ACEDAO, SQL DDL, etc)?

No código, perahps, mas não com o SQL ddl.Os gatilhos não são comandos sql.Tenha em mente que para Oracle ou Sql server ou MAIS sistemas no mercado, todos eles tendem a ter o seu PRÓPRIO idioma personalizadas para os seus gatilhos de qualquer maneira.

No ACE de novo assim você irá escrever o que é chamado de dados macro.Você usar o editor de macros em ms-access.Estes são antiquados macros do access, mas o editor foi completamente re-feito.As novas macros também ter sub-rotinas, loop, se, em seguida, mais blocos e um tipo de conjunto de registos.Lembre-se, nós recebemos a capacidade de criar variáveis temp em 2007 macros.Em 2010, esta é expandido para incluir também as variáveis locais e, acima de novos recursos.

A sintaxe para macro existente comandos é o mesmo das versões anteriores.No entanto, temos uma nova mancha de IDE, juntamente com todos os acima legal comandos adicionados.Temos agora, portanto, temos dois tipos de macros.Macros de INTERFACE do usuário (regular como antes) e agora a nova chamados de dados de macros.Não faria sentido para uma tabela de nível macro para ser capaz de exibir mensagens de erro na tela.Assim, qualquer erro que é registrado entra em uma tabela.Há também um novo log de comandos que permitem que você escreva seus próprios erros personalizados para a tabela .Um brilhante e simples de design aqui.Aqui, o que que o log de erro a tabela seguinte aparência:

alt text
(fonte: kallal.autoridade de certificação)

Em um mundo de enorme IDE, quadro enorme de obras e horrível enormes bibliotecas de código pagou para atualizar uma linha simples em uma tabela, pode-se dizer que os dados macros são mais refrescantes recurso.Eles se sentem muito parecido como o original dbaseII obras.Eles são muito simples, mas mortal poder total porque eles são executados no nível de tabela.

Por exemplo, aqui é um macro que irá manter o inventário totais de uma tabela.Neste exemplo vou supor que o mestre de registos de inventário de existir.E, em seguida, temos uma tabela detalhes do pedido.Se um utilizador edita qualquer valor na tabela pedidos, queremos que o mestre de tabela para atualização automática dos estoques.

Assim, temos:Eu tenho duas tabelas

tblFruits:    main data fruit inventory table
id         (autonumber)
Fruit text
OnHand    (number value of fruit in inventory)

tblFruitsOrder
id       (autonumber)
Fruit_id (FK to tblFruts.ID)
QtyOrder (number of fruit to order)

Isto é um simples teste

Então, nós vamos ter um gatilho na tblFruitsOrder que irá atualizar + manter os níveis de estoque em tblFruits quando o campo é QtyOrder editado ou modificado.

Aqui está o que a macro se parece com:

alt text
(fonte: kallal.autoridade de certificação)

Observe como muito simples acima é.Observe que o IDE se você clicar em uma seção do código, então você obter o velho estilo de macro tipo de edição no qual você pode inserir os valores para o comando (este é similar ao pré 2010, mas agora os parâmetros de edição e ocorre no código, não é um painel que aparece na parte inferior da tela nas versões anteriores).

Aqui está outra foto do ecrã em que eu a brincar com a capacidade de fazer um loop e chame uma sub-rotina.

alt text
(fonte: kallal.autoridade de certificação)

No exemplo acima, podemos usar msgboxs etc.porque esta não é uma tabela de nível macro.Então os comandos disponíveis são restritos automaticamente para você quando você está escrevendo uma tabela de nível macro, como oposição a uma regular macro.A terminologia adotada para distinguir os dois tipos de macros de INTERFACE do usuário macros de dados e macros.

O acima é tudo que eu posso falar em púbico.No entanto, há mais alguns REALMENTE puro-o características sobre essas macros que eu simplesmente não posso ainda falar em público, como eu ainda estou sob NDA sobre esses recursos.Mas há mais legal surpresas para vir aqui.

Aqui está uma captura de tela dos tipos de disparadores de tabela, temos:

alt text
(fonte: kallal.autoridade de certificação)

Outras dicas

Mais informações sobre este novo recurso foram Postado hoje no blog da equipe de desenvolvimento de MS Access e definitivamente fornece mais informações sobre a questão crucial levantada nos comentários acima.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top