Transporte_automatico

12
The Basis Blue Book 22 Cristiano S. Canzone 4. Extended Transport System Uma das inovações do SAP R/3 4.6 para a área de Basis é o Extended Transport System. Este recurso elimina a necessidade de uma ou mais pessoas se dedicarem ao transporte manual das CTS (conhecidas também como Change Requests), seja via comando TP, seja através da transação STMS. Utilizando o ETS (Extended Transport System), é possível configurar rotas de transporte para mandantes (clients) ao invés de rotas direcionadas apenas para sistemas. E é possível criar rotas diferenciadas (por exemplo, uma rota para configurações funcionais e outra rota para ajustes em programas – independentes de mandantes). Este roteiro ilustra, passo a passo, a configuração e o uso do ETS.

Transcript of Transporte_automatico

Page 1: Transporte_automatico

The Basis Blue Book 22

Cristiano S. Canzone

4. Extended Transport System Uma das inovações do SAP R/3 4.6 para a área de Basis é o Extended Transport System. Este recurso elimina a necessidade de uma ou mais pessoas se dedicarem ao transporte manual das CTS (conhecidas também como Change Requests), seja via comando TP, seja através da transação STMS.

Utilizando o ETS (Extended Transport System), é possível configurar rotas de transporte para mandantes (clients) ao invés de rotas direcionadas apenas para sistemas. E é possível criar rotas diferenciadas (por exemplo, uma rota para configurações funcionais e outra rota para ajustes em programas – independentes de mandantes). Este roteiro ilustra, passo a passo, a configuração e o uso do ETS.

Page 2: Transporte_automatico

The Basis Blue Book 23

Cristiano S. Canzone

O Ambiente de Exemplo Tomemos como exemplo o landscape SAP abaixo:

Figura 4.1 – O landscape

Este landscape possui as seguintes características:

�� Os programadores ABAP fazem suas alterações (e, consequentemente, geram suas CTS) no mandante 030. Estas alterações são independentes de mandantes e, portanto, só precisam “ir” para um mandante em cada sistema;

�� As equipes funcionais geram suas CTS no mandante 010. Estas configurações devem ser copiadas para o mandante 030, a fim de que as equipes de ABAP possuam a última versão da configuração em seu mandante;

�� O mandante 110 é utilizado para consolidar as configurações para a realização dos testes integrados;

�� O mandante 120 é copiado para o mandante 130 a cada treinamento. Portanto, o mandante 130 não precisa receber transportes das configurações. Estas seguirão na cópia;

�� O mandante 210 deve receber as configurações que, depois de testadas, foram validadas no mandante 110.

Page 3: Transporte_automatico

The Basis Blue Book 24

Cristiano S. Canzone

Portanto, precisamos criar rotas de transporte para obtermos o cenário abaixo:

Figura 4.2 – O landscape e os transportes

Limpando a casa Antes de começar a trabalhar com o novo sistema de transportes, é necessário apagar todas as rotas existentes no SAP. Para isso, deve-se entrar na transação STMS e selecionar o menu Overview | Transport Routes. Na tela de rotas de transporte, pressione F5 para ativar o modo de edição. Lembre-se que você deve fazer estas alterações sempre no Transport Domain System.

Selecione as rotas de transporte (uma a uma) e selecione o menu Edit | Transport Route | Delete.

Transport Layers – Como funcionam nesse caso ? O sistema de transportes do SAP utiliza os Transport Layers para associar CTS a rotas de transporte. Em uma instalação padrão do sistema, há dois transport layers criados, Z<SID> (no nosso caso, ZDEV) e SAP.

O Layer ZDEV é utilizado para o transporte de objetos da SAP transportáveis em uma ordem de transportes Workbench. Portanto, as alterações de programas, efetuadas pelas equipes de ABAP, são transportáveis apenas pelo transport layer ZDEV.

O Layer SAP é utilizado para o transporte de objetos SAP Standard. Programas standard, por exemplo, são transportáveis apenas por este layer.

Uma vez que não é possível utilizar um transport layer em duas rotas diferentes, para o mesmo sistema de origem (no caso o DEV), é necessário criar um layer adicional para o transporte das configurações funcionais (lembre-se que o layer SAP é para programas standard e o layer ZDEV para configurações workbench).

Page 4: Transporte_automatico

The Basis Blue Book 25

Cristiano S. Canzone

Criando um transport layer adicional Para criar um transport layer deve-se entrar na transação STMS e selecionar o menu Overview | Transport Routes. Na tela de rotas de transporte, pressione F5 para ativar o modo de edição.

Selecione o menu Edit | Transport Route | Create. No nosso caso, criamos uma rota de transporte ZCUS, para configurações de customizing, como na figura abaixo. Após preencher os campos, clique no botão Save.

Figura 4.3 – Criação de transport layers

A nota 313991 Devido a problemas de transporte das CTS aprovadas no sistema de QAS, a SAP liberou uma nota (313991) que basicamente diz que devemos criar um sistema virtual (VIR) entre o sistema QAS e o sistema PRD para validar a aprovação das CTS. Feito isso, devemos ajustar as rotas e grupos de transporte para contemplar este novo sistema e, por fim, agendar a execução de um job para fazer a movimentação das CTS neste sistema virtual.

Grupos de transporte O novo sistema de transporte utiliza o conceito de grupos de transporte. Cada grupo de transporte possui a relação de mandantes que devem receber as CTS geradas para a rota a que este grupo pertence. O nome dos grupos deve começar e terminar com uma barra (/).

No nosso exemplo, criamos quatro grupos de transporte, um para cada rota ilustrada na figura 4.2 e mais um para validar a aprovação das CTS, de acordo com a nota 313991 da SAP:

�� Um grupo para transportar CTS funcionais para os mandantes 030, 110 e 120, chamado /RELEASED/;

�� Um grupo para transportar CTS de ABAP para o mandante 110, chamado /RELEABAP/;

�� Um grupo para intermediar a aprovação das CTS, usando um sistema virtual (VIR), chamado /APPROVED/. Este grupo tem como destino o mandante 003 (qualquer número serve) do sistema VIR;

�� Um grupo para transportar CTS aprovadas no QAS para o mandante 210, da produção, chamado /DELIVERY/.

Para criar as rotas de transporte, selecione o menu Edit | Transport Target Group | Create. Na janela que se abrir, preencha o nome do grupo (começado e terminado por “/”) e uma descrição para o grupo. A seguir, clique no botão Client Assignment.

Preencha uma linha de cada vez, com o nome do sistema e o número do mandante destino, como na figura abaixo:

Page 5: Transporte_automatico

The Basis Blue Book 26

Cristiano S. Canzone

Figura 4.4 – Criando um grupo de transporte

Após criar uma linha para cada conjunto de sistema/mandante, clique no botão Save.

Rotas de Transporte É necessário criar as rotas de transporte, que orientarão o SAP em como deve ocorrer o transporte (em que sequência). Serão criadas três rotas, uma para cada grupo de transporte criado.

Selecione o menu Edit | Transport Route | Create. Na janela que se abrir, clique no botão Extended Transport Control, como na figura abaixo:

Figura 4.5 – A primeira tela de Rotas de Transporte e o botão Extended Transport Control

Selecione a opção Consolidation. Em Integration System, selecione o sistema de origem (em nosso caso, DEV). Em Transport Layer, selecione o transport layer desejado. Em Consolidation Target, insira o nome do grupo de consolidação. Ao final, pressione o botão Save (vide figura abaixo):

Page 6: Transporte_automatico

The Basis Blue Book 27

Cristiano S. Canzone

Figura 4.6 – Criando uma rota de transporte

Para nosso exemplo devem ser criadas duas rotas de consolidação e duas rotas de delivery:

Uma rota para as CTS funcionais, de Consolidation, cujo Integration System é DEV, o Transport Layer é ZCUS e o Consolidation Target é /RELEASED/.

Uma rota para as CTS de objetos ABAP não-standard, de Consolidation, cujo Integration System é DEV, o Transport Layer é ZDEV e o Consolidation Target é /RELEABAP/.

Uma rota para as CTS de objetos SAP standard, de Consolidation, cujo Integration System é DEV, o Transport Layer é SAP e o Consolidation Target é /RELEABAP/.

Uma rota para as CTS aprovadas no QAS (para validar a aprovação), de Delivery, cujo Delivery Source é QAS.110 (nosso mandante de aprovação), e o Delivery Target é /APPROVAL/.

Uma última rota, para as CTS aprovadas no QAS (para transporte para o PRD), de Delivery, cujo Delivery Source é VIR.003 (um mandante virtual de um sistema também virtual), e o Delivery Target é /DELIVERY/.

Page 7: Transporte_automatico

The Basis Blue Book 28

Cristiano S. Canzone

Como fazer para distinguir os grupos e os mandantes ? É necessário um pequeno subterfúgio para “dizer” ao SAP que as CTS liberadas no mandante 010 devem entrar na fila /RELEASED/, uma vez que a fila /RELEABAP/ é que está associada ao layer default (ZDEV).

Para isso, clique sobre o sistema DEV (vide figura 4.7) e selecione o menu Edit | System | Change.

Figura 4.7 – Selecionando um sistema

Na janela que se abre (vide figura 4.8), selecione a guia Standard Transport Layer e insira uma linha em Client Specific Settings, associando o mandante ao Layer desejado (no nosso caso, associamos o mandante 010 ao Layer ZCUS).

Page 8: Transporte_automatico

The Basis Blue Book 29

Cristiano S. Canzone

Figura 4.8: Associando mandantes a Layers

Definindo o sistema de Aprovação No ETS existe um conceito de aprovação de CTS para a Produção. Usuários selecionados como aprovadores (que possuam uma autorização específica, descrita mais abaixo) podem selecionar as CTS que serão transportadas para a produção, através de uma transação específica. Para definir o sistema onde ocorrerão as aprovações, selecione um sistema – no nosso caso o QAS (vide figura 4.7) e selecione o menu Edit | System | Change.

Na janela que se abre, ative a opção Delivery After Confirmation, e em seguida clique no botão Procedure, conforme a figura 4.9.

Page 9: Transporte_automatico

The Basis Blue Book 30

Cristiano S. Canzone

Figura 4. 9 – Ativando o procedimento de aprovação de CTS

Na janela que se abrirá (vide figura 4.10), ative a opção To be approved by department. Após diversas simulações esta foi a melhor alternativa encontrada.

Figura 4.10 – Escolhendo uma estratégia de aprovação de CTS

Page 10: Transporte_automatico

The Basis Blue Book 31

Cristiano S. Canzone

Salvando e distribuindo as novas rotas Depois de terminar todo o trabalho, é necessário gravar as alterações e distribuí-las para os demais sistemas. Para isso, selecione o menu Configuration | Distribute and Activate (isso salva automaticamente). Na janela ilustrada na figura 4.11, digite um nome para a configuração e clique no botão Save. Na próxima janela, perguntando se deve-se distribuir e ativar em todos o sistemas, selecione YES.

Figura 4.11 – Salvando e distribuindo a configuração

Após salvar a configuração, o SAP tentará, automaticamente, ajustar as CTS existentes, incluindo-as nas rotas. Ao final deste processo, será exibido um log com as alterações efetuadas e aquelas que não foram possíveis. As CTS que não foram alteradas devem ser ajustadas manualmente, uma a uma, na transação SE10 (ou SE09, ou SE01).

Além disso, deve-se associar os mandantes às CTS preexistentes. Para isso, executar a transação STMS, menu Overview | Imports. Depois, selecionando cada sistema (um de cada vez), escolher o menu Import Queue | Display. Na fila de importação (talvez seja necessário dar um Refresh), selecionar as CTS e escolher o menu Request | Target Client | Set. Digite o número do mandante e salve. Isso deve ser feito para todas as CTS (as novas CTS, à medida em que forem liberadas, terão associação automática aos mandantes configurados).

Ativando os jobs de importação Para que a importação das CTS seja automática deve-se criar um job em cada sistema. Para isso, executar a transação STMS, menu Overview | Imports. Depois, selecionando cada sistema (um de cada vez), escolher o menu Import Queue | Display. Selecionar o menu Queue | Start Import (vide figura 4.12). Na guia Date/deadline, selecione At start time, escolha uma data e hora para o primeiro job e escolha o período de intervalo entre os jobs em Period (Defina um intervalo para que os jobs não sobrecarreguem o sistema nem gerem espaços muito grandes). Ainda é possível importar as CTS manualmente, como se fazia antigamente – no caso de importações emergenciais. Neste caso, deve-se procurar fazê-lo quando o job não estiver rodando, para evitar inconsistências.

Page 11: Transporte_automatico

The Basis Blue Book 32

Cristiano S. Canzone

Figura 4.12 – Criando um job de importação

Ainda é necessário criar um job (segundo a nota 313991) para ajustar as CTS no sistema virtual (VIR). Para isso, criar um job no sistema QAS (qualquer mandante), que deve ser executado na mesma periodicidade dos jobs de transporte para o PRD, entretanto de 1 a 5 minutos antes. O programa a ser executado neste job é o RSTMS_DIST_APPROVED_REQUESTS. Deve ser criada uma variante para selecionar o tipo de transporte. No nosso caso utilizamos a primeira opção (Transfer all approved requests).

Finalmente, deve-se criar um job no PRD, com o programa RSTMSTIQ e a variante SAP_LOC_GROUPS. Este job “puxa” os arquivos das requests aprovadas no QAS para os diretórios (data e cofiles) do PRD.

Aprovando CTS Para poder aprovar CTS, os usuários deverão ter em seu perfil a autorização S_CTS_ADMI com o valor QTEA.

Para chegar à rotina de aprovação, entrar na transação STMS, menu Overview | Imports. Depois selecionar o sistema QAS e escolher o menu Import Queue | Display. Depois menu Goto | QA Worklist.

Para aprovar, selecione a CTS, selecione o menu Request | Approve. Para rejeitar (as CTS que não devem ser transportadas DEVEM ser rejeitadas para que saiam da fila, senão esta fica cheia de lixo), selecionar o menu Request | Reject. É possível selecionar várias CTS, marcando a primeira e a última da fila com a tecla F6, ou uma a uma com a tecla F9.

Sequências de Importação Não é necessário preocupar-se com a sequência de importação das CTS que estiverem na fila no momento de execução de cada job. O SAP faz uma importação em massa, respeitando dependências entre as CTS, fazendo com que o transporte ocorra de maneira consistente. Os logs de cada CTS continuam existindo como antes, para o caso de necessidade de alguma consulta.

Mais informações sobre transportes Para maiores detalhes, consulte as notas 0313991, 0556734 e 0556941.

Page 12: Transporte_automatico

The Basis Blue Book 33

Cristiano S. Canzone

Interrompa qualquer transporte que estiver sendo executado. Se houver um job de transportes automáticos (Extended Transport System), derrube-o. Através da transação SM30, verifique se há alguma linha nas tabelas TROBJ e TRBAT. Se houver, apague. Tente transportar novamente.

Verifique a consistência do sistema de transportes executando o programa RSTPTEST através da transação SE38 (ou SA38).

Verifique se o job RDDIMPDP está rodando normalmente, no sistema destino. Este job roda por eventos. Caso o job não esteja rodando normalmente, agende-o executando (através da transação SE38 (ou SA38) o programa RDDNEWPP.

Se estiver recebendo uma mensagem parecida com Transport request too long, verifique se os parâmetros de transporte (na transação STMS ou no arquivo /usr/sap/trans/TPPARAM) NBUFFORM e TP_VERSION estão com valores 1 e maior ou igual a 262, respectivamente. Além disso, consulte a nota 303289.

Caso seja necessário transportar requests através do comando TP, no sistema operacional, deve-se inserir a request na fila com o comando ADD, importa-la com o comando IMPORT e excluí-la com o comando DEL. Vide sintaxe abaixo.

TP ADDTOBUFFER <CHANGE REQUEST> <SID>

TP DELFROMBUFFER <CHANGEREQUEST> <SID>

TP IMPORT <CHANGE REQUEST> <SID> CLIENT<CLIENT> [U0123689], onde

0: Default, 1: Ignore that the change request has already been imported, 2: Overwrite the originals, 3: Overwrite system-specific objects, 6: Overwrite objects in unconfirmed repairs, 8: Ignore restrictions based on table classification, 9: Ignore that the system is locked for this type of transport.