Em projetos analíticos, a carga inicial estabelece a fotografia dos dados; o delta procura refletir mudanças posteriores. O mecanismo de Change Data Capture (CDC) para extração de ABAP CDS pode registrar alterações das tabelas físicas subjacentes e disponibilizá-las aos consumidores compatíveis. Mas não basta acrescentar uma anotação: o desenho da view precisa permitir o mapeamento das chaves.
1. CDC automático em uma seleção simples
O modo automático é voltado a cenários simples, em que a relação entre a CDS e a tabela monitorada pode ser inferida. Exemplo didático de projeção de uma tabela de cabeçalho, sujeito à disponibilidade do recurso no backend:
@EndUserText.label: 'Extrator de pedidos - exemplo'
@AccessControl.authorizationCheck: #NOT_REQUIRED
@Analytics.dataExtraction.enabled: true
@Analytics.dataExtraction.delta.changeDataCapture.automatic: true
define view entity ZI_DEMO_SO_CDC
as select from vbak as H
{
key H.vbeln as SalesDocument,
H.auart as SalesDocumentType,
H.erdat as CreatedOn
}
Este é um modelo de estudo, não uma promessa de suporte universal. Verifique release, requisitos do extrator e se o consumidor utiliza o mecanismo correspondente. A existência da anotação não prova que o cenário esteja operacional.
2. E quando a CDS tem JOIN?
Em uma CDS que une tabelas, pode ser necessário declarar @Analytics.dataExtraction.delta.changeDataCapture.mapping com o papel de cada tabela e os campos-chave correspondentes. O mapeamento precisa refletir a chave física e a cardinalidade real. Atribuir automatic: true a um modelo com vários joins ou agregações não transforma, por si só, esse modelo em um extrator CDC válido.
Para modelagens complexas, avalie uma CDS extratora mais simples, com dados enriquecidos posteriormente em camadas analíticas. Um projeto fiscal com Basic, Composite, Fact e Consumption deve passar por avaliação própria de extração e delta.
3. Procedimento de validação
- Verifique a disponibilidade do mecanismo CDC e as dependências do produto/release.
- Confirme as chaves físicas e o mapeamento da entidade.
- Inicialize a carga com um consumidor compatível e confirme a posição de delta.
- Insira ou altere um registro em ambiente de testes autorizado.
- Verifique se a atualização aparece no monitoramento e na tabela de destino.
- Teste exclusões quando aplicável, cuidando da semântica no consumidor.
4. Problemas frequentes
Delta vazio: pode indicar ausência de inicialização válida, consumidor incorreto, alterações fora do escopo ou problema no CDC. Registros duplicados: investigue joins e chaves antes de alterar a configuração de extração. Falha de ativação: confirme suporte ao tipo de CDS e à anotação naquele release.