Criar o seu primeiro muito simples OData SAP Gateway de Serviço

Há tanta informação e, aparentemente, as novas tecnologias disponíveis sobre desenvolvimento móvel e ágil de aplicações dentro de SAP no momento em que torna-se muito difícil para knowwhere para iniciar. Então Fiori é o futuro junto com SAPUI5, e o SAP Gateway e OData, ou mesmo HANA, Ariba (ou o que quer que seja chamado) e os infinitos outros nomes e tecnologias ao redor….. Como tudo isso se encaixa no quadro geral de um desenvolvedor SAP?Vamos começar no nível do solo, ou seja, o gateway Netweaver, onde as habilidades tradicionais do SAP ABAP são necessárias como parte da construção de um aplicativo Fiori.O SAP Gateway existe há muitos anos, mas com a mudança para aplicativos Fiori/móveis/responsivos, ele está sendo usado cada vez mais e agora é uma parte fundamental do seu cenário SAP.O Gateway permite que os dados dentro do(S) SEU (s) sistema (S) SAP sejam acessados pelo mundo exterior por meio de serviços OData.
…portanto, neste novo mundo Fiori, o front end é criado usando SAPUI5 usando o web IDE,
…isso chama um serviço OData que foi criado em seu sistema SAP por meio do SAP Gateway
…o serviço OData usa o ABAP para recuperar dados SAP e os retorna por meio do serviço OData
o exemplo abaixo mostrará como criar rapidamente seu primeiro serviço OData Gateway usando o código ABAP básico para selecionar dados de uma tabela padrão.
Etapa 1 – o SAP Netweaver Gateway Service Builder
Primeiro vá para a transação SEGW onde você vai ser capaz de construir o seu serviço

Etapa 2 – Criar projeto
Próximo usando o botão “criar”, você tem que criar um projeto para armazenar todos os seus modelos de dados, implementtions, tipos de entidade, conjuntos de entidades, etc. Não se preocupe muito com a terminologia nesta fase, tudo ficará claro.

Etapa 3-Insira os detalhes do projeto
insira um nome, descrição e pacote. Deixe todo o resto como padrão, a menos que você saiba que precisa de algo específico.

Etapa 4-importar estrutura DDIC
vamos basear este exemplo em um subconjunto da tabela SAP padrão EKKO. Dentro do projeto recém-criado, clique com o botão direito do mouse no nó” modelo de dados ” e selecione Importar – >estrutura DDIC

Etapa 5-Insira detalhes da estrutura
digite EKKO dentro do campo estrutura ABAP e insira um objeto um nome, ou seja, purchaseorder

Passo 6 – Propriedades do modo de Exibição
Expanda o nó recém-criado “Tipo de Entidade->purchaseorder” e dê um duplo clique no nó de Propriedades

Estamos indo só para usar em apenas alguns campos para selecionar todos os campos abaixo Statu e excluí-los

Até parece que isso

Nota: A razão que eu não vou usar todos os campos é porque alguns são incompatíveis com o serviço de gateway sem alterar o tipo de dados.Vou mostrar onde você obteria o erro mais abaixo se tivesse usado todos os campos. Esta informação pode apenas ajudá-lo a entender o erro quando você está criando um para real no futuro.
Passo 7 – Criar Conjunto de Entidade
Salvar seu processo até agora e, em seguida, clique direito sobre o Conjunto de Entidade nó e selecione Create

Passo 8 – forma Alternativa para criar o Conjunto de Entidade
Alternativamente clique duas vezes a Entidade Definir o nó e, em seguida, clique em Acrescentar botão de Linha

Passo 9 – conjunto de Entidade detalhes
Dar o nome de conjunto de entidade (normalmente o plural, do Tipo de Entidade)

em Seguida, selecione o Tipo de Entidade a partir de seleção de entrada de ajuda

uma Vez selecionado, pressione ok (marca de verificação verde)

Entidade foi criada

Passo 10 – Gerar gateway service
primeiro clique duas vezes no nó do projeto e gere todo o projeto usando o botão “gerar objetos de tempo de execução”

agora você notará que os objetos de implementação de Serviço foram criados.Criar, Excluir, GetEntity(Ler), GetEntitySet(Consulta) e Atualização

Passo 11 – Ativo e manter o serviço
Agora você precisa ir para a transação “/IWFND/MAINT_SERVICE” eu sempre acho que eu só pode obter este trabalho se iadd /n no início i.e. /n/IWFND/MAINT_SERVICE

Passo 12 – Adicionar o serviço de
Dentro de /n/IWFND/MAINT_SERVICE clique em Adicionar Serviço de botão

, em Seguida, insira as informações de serviço que você deseja adicionar (Repare que você pode usar caracteres curinga para encontrar o seu serviço)

Pressione enter para encontrar o seu serviço ou serviços que correspondam aos critérios de pesquisa. Depois de clicar no que deseja adicionar

a próxima tela mostra os detalhes do serviço selecionado, insira os detalhes do pacote(ou seja, objeto local) e deixe tudo como padrão. Em seguida, pressione o botão ok (marca de verificação verde)

agora Você deve receber uma mensagem pop-up que seu serviço “foi criado e é de metadados foi carregada com sucesso”

Voltar à página anterior

Passo 13 – Encontrar o seu serviço adicionado
agora Você será retornado para o catálogo de serviços, dependendo de quantas serviços de instalação em seu sistema, você pode precisar usar o filterfunctionality para encontrar o seu serviço recém-adicionado.

agora você deve ver os detalhes de configuração do serviço e um semáforo verde ao lado do nó ODATA ICF no canto inferior esquerdo.

Passo 14 – o SAP Netweaver Gateway do Cliente
agora precisamos testá-lo usando o SAP Netweaver Gateway do Cliente, o qual é acessado através do “Cliente Gateway” botão logo acima do ODATA nó no canto inferior esquerdo

em Seguida, deixando o URI de Solicitação como padrão “/sap/opu/odata/sap/ZTEST_PROJECT_SRV/?$format=xml”, basta clicar no botão de “Executar”

em seguida, Você deve obter um HTTP respose semelhante a este, com um verde status_code


Passo 15 – testes Adicionais através do SAP Netweaver Gateway do Cliente
Agora você pode modificar a URL para que ele termina com “$metadados?sap-ds-debug=true” e, em seguida, pressione executar novamente,para que possamos retornar propriedades de metadados da entidade purchaseorder

“/sap/opu/odata/sap/ZTEST_PROJECT_SRV/$metadados?sap-ds-debug = true”

agora mude o URI para ter ” / purchaseorders?sap-ds-debug = true ” no final para que possamos segmentar os dados do conjunto de compradores

“/sap / opu / odata/sap / ztest_project3_srv / purchaseorders?sap-ds-debug=true”


Quando você pressionar executar, você deve obter o seguinte erro, como não temos implementado o método thatpopulates esses dados ainda

Passo 16 – Implementar GetEntitySet método
Agora volte para o SEGW transação e encontrar a implementação do serviço de métodos criados antes. Encontre o chamadogetentityset (consulta) e clique com o botão direito sobre ele. Em seguida, selecione “Ir para o ABAP Workbench”

a seguinte mensagem aparecerá dizendo que a operação ainda não foi implementada. Basta clicar em ok

Agora você será levado para o tcode SE80. Dentro da lista de objetos à esquerda, Encontre o método PURCHASEORDERS_GET_ENTITYSETWITHIN Methods->métodos herdados.
Depois de ter encontrado isso, clique direito sobre ele e selecione Redefinir

Dentro do código do método que aparece basta adicionar o seguinte ABAP instrução select
SELECT *
ATÉ 10 LINHAS
a PARTIR de ekko
EM CAMPOS CORRESPONDENTES DA TABELA et_entityset.

salvar e ativar

etapa 17-testar novamente o serviço
alterar novamente o URI para ” / sap / opu / odata/sap/ztest_project_srv / purchaseorders?sap-ds-debug=true”

Desta vez, você deve obter alguns dados retornados

Passo 18 – Mais informações
Lembre-se que eu mencionei sobre não usar todos os campos da EKKO tabela como alguns não são compatível.Se você tivesse incluído todos eles ao executar o URI ” / sap / opu / odata/sap / ztest_project_srv / purchaseorders?sap-ds-debug = true ” você teria recebido a seguinte mensagem de erro http:

<?xml version="1.0" encoding="utf-8" ?>- <error xmlns:xsi="http://www.w3.org/2001/XMLSchema-Instance"> <code>HTTP/500/E/Internal Server Error <message>Call of service /sap/opu/odata/sap/ZTEST_PROJECT_SRV/purchaseorders terminated because of an error. The following error text was processed in system TST : The current statement is only supported for character-type data objects.The error occurred on the application server erpukpltm. The termination type was: RABAX_STATE.If the termination type is RABAX_STATE, you will find more information on the cause of termination in system TST in transaction ST22. If the termination type is ABORT_MESSAGE_STATE, you will find more information on the cause of termination on the application server ????? in transaction SM21. If the termination type is ERROR_MESSAGE_STATE, you can search for further information in the trace file for the work process in transaction ST11 on the application server ______. You may also need to analyze the trace files of other work processes. If you do not yet have a user ID, contact your system adminmistrator.</message> </error>

Passo 19 – desenvolvimento
O próximo passo é aceder a este serviço de gateway de seu SAP Fiori App


Instruções passo a passo sobre como criar o seu primeiro SUA transação da web com base no padrão de ABAP de diálogo programa usando SE80
SAP Netweaver Business Client
SAP Desenvolvimento de aplicações Web usando o SEU Exemplo de código ABAP e informação
Netweaver – Informações sobre o SAP netweaver tecnologias
SAP GUI para HTML – execução de SAP em um PC que não tenha o cliente SAP instalado
Manutenção de serviços web – Utilização de transação SICF para ativar e manter a SAP web services
SAP Desenvolvimento de aplicações Web – Exemplo de código e informações sobre diversas áreas do desenvolvimento web
SAP GUI para HTML – execução de SAP em um PC que não tenha o cliente SAP instalado
Internet transaction server ( SUA ) – vantagens e desvantagens
SUA lógica de Fluxo – vantagens e desvantagens do uso de SUA lógica de fluxo de
Desenvolvimento de SAP Transações da Web – usando SE80 e, em seguida, publicado para o SEU

Deixe uma resposta

O seu endereço de email não será publicado.