Você está na página 1de 17

BOPF para iniciantes.

Existem algumas tecnologias como HANA, Fiori, SAPUI5, OData, SAP Netweaver Gateway,
etc, que cada ABAPer quer aprender e utilizar. Mas em todos esses hypes, outro framework
chamado BOPF está sendo negligenciado . Neste artigo e na série futura, gostaria de abordar
o  BOPF e como podemos usá-lo em cenários reais do projeto. Embora a maioria dos conceitos
fosse para iniciantes, estou confiante, até mesmo os consultores experientes do BOPF
receberiam alguns centavos para levar para casa para esta série de BOPF.

Para sua informação, o SAP Transportation Managment é construído principalmente no


framework BOPF. As aplicações desenvolvidas usando o BOPF são genéricas e possuem
arquitetura uniforme, e os desenvolvimentos personalizados são estáveis e podem ser
desenvolvidos mais rapidamente.

Introdução:

BOPF (Business Object Processing Framework) é uma estrutura para trabalhar com o BO


(Business Objects). Esta estrutura fornece ferramentas e serviços para todo o ciclo de vida do
BO. BO é uma representação de um tipo de entidade de negócios exclusivamente identificável
descrita por um modelo estrutural, um modelo de processo interno e uma ou mais interfaces de
serviço.

Códigos de transação importantes:

 BOBF (Business Object estrutura do edifício) é não BOPF ao contrário do nome do


quadro
 BOB (Business Object Builder)
 BOBT (Teste BO)
 BOBX (Business Work Enhancement Workbench)

Você se lembra do programa de desenho animado “ BOB the Builder”? 🙂

O BOPF tem um procedimento passo a passo. Então, precisamos ir diretamente para uma classe
ou criação de módulo de função. Assim como o que fazemos em programas ABAP normais ou
OO ABAP. Sabemos que tudo é feito de programas, até mesmo as telas são feitas por
programação de pool de módulos, onde temos um pintor de tela para projetar a tela e temos um
relatório de back-end que executa o código e depois vemos a saída.
Arquitetura:

A camada superior é a camada de interface do usuário, onde pode ser FPM (BOPF é


totalmente integrado ao FPM) ou Fiori para exibir os dados. E, em seguida, vem a camada
Transaction que é instanciada automaticamente sempre que interagimos com o
BO, manipulação de transação de baixo nível como objetos de bloqueio são manipulados pela
camada de transação. Assim, sempre que chamamos qualquer BO internamente, pode chamar
muitos BOs, todos eles são atendidos pela estrutura do BOPF. A próxima camada que é
a camada BOPF Objectque não é instanciado automaticamente quando estamos fora do
framework, como quando escrevemos o relatório, precisamos explicitamente instiá-lo, mas
quando estamos dentro do framework, não precisamos instanciá-lo, o framework cuida
disso. Camada de banco de dadosconsiste nos dados.

A estrutura BOPF consiste em todos os BO (Business Object), como, por exemplo, ordem de
venda, entrega, entrega de entrada (espaço EWM) como uma entidade e que é modelada como
um objeto de negócios. Ele terá um modelo estrutural que consiste na estrutura do cabeçalho,
estrutura do item, etc. Quando entramos no código t do BOBF , vemos o padrão BO entregue
pela SAP. Abra a ordem de venda demo BO.
Como vemos, a Ordem de Vendas do Demo do BO tem o nó Raiz como ROOT ( podemos
alterar o nome se quisermos quando construímos nosso próprio BO personalizado ) e o subnó
como ITEM, ROOT_LONG_TEXT, ROOT_TEXT, CUSTOMER_BO. Sob o nó Raiz, vemos
que existem diferentes sub-nós com cinza , verde e verde com uma estrela, cada um com um
significado diferente. Sempre que criamos um nó personalizado, obtemos três opções para
selecionar o tipo do nó, conforme mostrado abaixo.

E você vê que eles são Nó Padrão , Delegado e Representação de Objeto de


Negócios . O cinza não é nada a não ser o nó Padrão, o verde um é o Delegado e o verde com
uma estrela são o Nó de Representação de Objetos de Negócios ou o nó de Cross-BO.

1. O nó padrão é o nó que criamos para o detalhe do item sob o cabeçalho, como visto
acima.
2. Nó delegado é o nó dependente que podemos usar de acordo com nosso requisito,
coisas como pasta de anexos, Coleta de texto pode ser usada em qualquer nó em
particular como e quando necessário.
3. Nó Representação de Objetos de Negócios ou Nó Cruzado BO são nós de outro BO,
como o nome diz “CROSS”. A estrutura é bem projetada para integrar essas
funcionalidades. Tudo o que precisamos saber é a interface constante da BO e estamos
bem em ir, que vamos conhecer quando trabalharmos com o BOPF.

Nós vemos sob elementos node os elementos processuais (Node Elements) do nó raiz que


contém a lógica de negócios. Os modelos procedurais  são Determinações, Ações, Validações,
etc. Clara separação entre alteração e verificação da lógica de negócios.   Mudar a lógica nada
mais é do que as determinações se algo aconteceu com meu aplicativo, preciso reagir a ele para
que haja algo chamado uma ação e validar os dados, esteja correto ou não, temos validações
que não são nada além de checar lógica de negócios . Portanto, não há mistura de ambos, todos
são separados. Nós temos uma seção separada para tudo.

Leia também - Visão geral do SAP Hybris

Criação passo a passo de um Custom BO


Vá para Transaction BOB:

Nós vemos aqui três Categorias de BOs viz. Aprimoramentos de Objeto de negócios


customizado , SAP Business Object e Business Object que são autoexplicativos.

Clique em Criar Objeto Comercial Personalizado:

Um assistente nos guia para criar um objeto de negócios personalizado.


Os próximos passos são simples para a criação do BO, basta fornecer os nomes necessários e
você está pronto para ir.

Forneça o prefixo ignorar o namespace ( namespace é como se você estivesse trabalhando para
um cliente e você precisa que todo o namespace do BO tenha o mesmo nome, em vez de estar no
namespace Z, então compramos o namespace do SAP ).
Clique em continuar

Você acha que o nome da Interface Constante já está proposto, essa é a beleza do BOPF. Você
também pode alterar o nome, se desejar fazê-lo. E clique em continuar.

Por padrão, o nome do nó raiz é Root (você pode alterar, se desejar). Forneça a descrição e o
nome da estrutura Persistente e Transitória (você também pode clicar no botão Propor Nome e
a estrutura fornecerá o nome). Além disso, a estrutura transitória é opcional, você pode deixar
em branco se assim desejar, mas a estrutura persistente é obrigatória para dar.
Como o nome diz, a estrutura transitória é transitória, ou seja , é chamada no tempo de
execução.

Nota - Você precisa ter zpersistent e ztranscient estrutura (não tabela) no banco de


dados. Senão você teria um erro como abaixo.

Verificar também - Como identificar o sistema S / 4HANA de ABAP no sistema HANA?

Clique em continuar ...

O framework BOPF propõe automaticamente o nome da Estrutura Combinada, Tipo de Tabela e


Tabela de Banco de Dados, no entanto, você pode alterar o nome conforme sua escolha no
namespace Z.

Clique em continuar ...


E finalmente, clique em Complete e seu BO é criado. Como dito anteriormente, o BOPF é mais
de modelagem e menos de codificação.

Clique no BO e você encontrará todos os detalhes do seu Objeto de Negócios: o modelo


estrutural, o modelo procedural (Node Elements), a interface constante, etc. Ainda não fizemos
nenhuma codificação e nosso BO foi criado com a tabela de banco de dados diferente de
processo tradicional, temos que fazer isso manualmente.

Quando abrimos a tabela de banco de dados, descobrimos que ela possui o campo-chave gerado
automaticamente.
No BOPF, não criamos o campo-chave. A própria estrutura criou a chave e a chave é
um número hexadecimal de 32 dígitos.  É muito difícil lembrar, mas há uma maneira de lidar
com isso. Nós temos algo chamado como chaves alternativas, que vamos ver nos nossos
últimos tutoriais.

Na próxima parte, conforme a exigência, podemos criar nossa estrutura de nós, ou seja,
podemos adicionar subnó de qualquer um dos três tipos especificados acima. Além disso,
implemente a lógica na seção de elementos do nó. Vamos verificar como existe uma separação
clara entre o modelo de negócios e a lógica.

Leia também - primeiro aplicativo SAPUI5 de um ABAPer

Todas as etapas acima são boas situações. E se você enfrentar alguns problemas no processo
Criação de BOs Customizados? Confira a seção abaixo que um dos membros da nossa equipe
enfrentou enquanto fazia o tutorial passo a passo acima. Você pode encontrar soluções caso
tenha problemas semelhantes.

1. Se você receber a mensagem "Objeto de negócios não pôde ser criado", não se preocupe.
Vá para o código-t BOBF e você encontrará o seu objeto de negócios foi criado.

2. Exibir <> ícone Alterar está desativado.

Procure a seção Home Business Objects (na imagem acima). Clique duas vezes no seu
objeto. Você descobriria que o ícone de alteração está desativado.
Como habilitar a manutenção / alteração do Business Object?

Digite “ debug ” na seção de comando e aperte enter.

Clique em Sim no pop-up.


Magia!! O ícone de exibição <> Alterar está ativado.

3. As estruturas / tabelas do dicionário de dados não estão ativadas ou estão no status NEW.

Vá para o modo de mudança. Do menu Extras -> Gerar Objetos de Repositório -> Gerar
Elementos do Dicionário.
Bata a marca verde.

Os objetos do dicionário de dados seriam gerados e ativados.


Vá para o SE11 e verifique-os. Eles estão ativados. Se acontecer de você verificá-los antes de
Gerar os Objetos de Repositório no Menu Extras, então esses objetos SE11 estariam em status
NOVO, não Ativos.
Vamos parar por aqui hoje. Espero que eu tenha sido capaz de lhe dar uma introdução justa. O
BOPF não é uma Ciência de Foguetes e não é tão complexo como alguns dizem. Nós só
precisamos entender alguns fundamentos, então você iria começar a amar o framework e
apreciá-lo melhor.

Como já foi revelado acima, o próximo artigo seria mais interessante com o caso real do
projeto. Nós criaríamos nossa estrutura de nós. Adicione Sub Nós de tipos (Nó Padrão, Nó
Delegado e Nó de Representação de Objeto de Negócios). Nós implementaríamos a lógica nos
elementos dos nós e veríamos como podemos separar o modelo de negócios e a lógica. Então,
por favor fique atento.

Se você já está trabalhando no BOPF, por favor, compartilhe o seu caso de uso do
projeto. Deixe-nos saber qual problema você enfrentou e como você resolveu.

Nós queremos ouvir de você. Por favor, curtir, compartilhar e deixar seus comentários abaixo.
Tutoriais passo a passo sobre o SAP BOPF

 BOPF para iniciantes. Parte 1 - Introdução

Implementação e aprimoramento do SAP Fiori

 SAP Fiori da Space Level


 Fiori App - Uma introdução de um ABAPer
 Tutorial SAP Fiori. Parte I. Verificação do sistema, instalação e configuração
 Tutorial SAP Fiori. Parte II. End to End Implementação do Fiori App
 Tutorial SAP Fiori. Parte III Fluxograma para aprimorar o SAP Fiori App padrão
 Tutorial SAP Fiori. Parte IV Como alterar o idioma padrão não inglês no Fiori Launch Pad?
 Tutorial SAP Fiori. Parte V. End to End Implementação da Minha Caixa de Entrada -
Aplicativo de Aprovação de Pedido de Compra
 Exibir e baixar PNG JPG PDF Document em Fiori Client Android com aplicativo de
terceiros para Zoom / opções adicionais
 Como implantar o aplicativo UI5 sem LPD_CUST?
 SAPUI5 para ABAPers - Reutilização de componentes com exemplo em tempo real
 SAPUI5 para ABAPers - Consumindo o Serviço OData do Aplicativo SAPUI5 - Operações
CRUD
 Configurando a Transação do SAP GUI no Launchpad do Fiori
 Tutorial SAP Fiori. Parte VI Como solucionar erros do SAP Fiori?
 CDS Part 11. Como consumir a exibição de CDS no serviço de negócios inteligente KPI
Fiori Apps?

 TAG
 Bob o construtor
 BOPF para iniciantes
 BOPF para freshers
 Fundamentos do BOPF
 Introdução ao BOPF para ABAPers
 O que é o BOPF Framework?

Você também pode gostar