sexta-feira, 14 de março de 2014

STMS_QA Aprovação de Requisição

SAP: QA Approval Step configuration

 

Just a small configuration in STMS, hope it helps.


QA Approval step configuration



Go to STMS in Transport Domain Controller



 

Switch to change mode



Click on <SID> – the QA system, choose Edit – System – Change



 

Select Deliver After Confirmation in tab System Attributes



 

Click on Procedure



 

Click OK



Save and distribute configuration



 

Perform a test for approval



From DEV system create a new single role ZS_CTS_ADMIN, add the authorization object S_CTS_ADMI



And put * for Administration Tasks CTS_ADMFCT



Save and generate profile for the role



 

Create a transport request from the role



 

Release it fromSE01



 

Now transport the request into QUALITY system



 

To be able to import into Production, you will be ask for approval



From production system, go to transaction STMS_QA

 

Double click the icon to see the status of approval step

 

We have set 2 approval step need : Request owner and System Administrator

 

*To be able to do the approval, make sure 2 users have the profile from role with the authorization object S_CTS_ADMI



 

Select To be the approved by request owner



Then make sure the request is still selected, click Approve



 

Enter text for the approval



You will be asked to logon to QCR once

 

Now Double click the icon under St to see the status



 

Do the same step for “To be Approved by system Administrator”



When you finished all the approval steps, it will be available to import into PCR now



 

segunda-feira, 24 de fevereiro de 2014

Brincando com Android e SAP

Brincando com o Android......

 

Muito bakana esse mundo Android, principalmente a velocidade com o conhecimento sobre mobile vem acelerando as coisas..o mercado ...é a tecnologia sempre gerando demanda....

Dai....vem um desafio enviar mensagem (Push Notification via Android), aquelas mensagens que você recebe no seu celular na barra de notificação aquela onde te mostra o sinal do celular, o consumo da bateria, se chegou mensagem, ligação perdida, etc...etc...etc...

Bom, todas as plataformas, pelo que li, possuem esse tipo de serviço, mas aqui no caso só abordei a Android, porque para testar as outras teria que ter os devices próprios e também escrever uma aplicação para cada......Apesar de alguns frameworks como phonegap/cordova/aerogear dentre outros prometeram uma aplicação hibrida, ou seja, com javascript e html5, a aplicação funcione em todas as plataformas. (não acredito muito nessa mágica, mas também não desacredito)

Existem dezenas de server de terceiros que fornecem códigos exemplos dentre outros benefícios para que você (sua aplicação) use seu serviço e pague uma merreca por ele, neste caso o escolhido e o que funcionou foi o pushbots.com.

Para o envia das mensagens escolhemos a REST, comunicação simples e fácil via HTTP, para isso usamos uma app para o CHROME chamadaAdvanced REST Client, de uma conta no google e habilitação da API / serviço 
Google Cloud Messaging for Android, e claro de uma conta no server pushbots.com.

Não entrarei em detalhes aqui sobre a criação/habilitação do serviço no google, nem detalhes sobre o pushbots, a ideia é repassar o conhecimento sobre como funciona o mecanismo de envio de push notification.

Vamos aos passos:

1) Habilitar serviço/API no Google (a apple também possui a dela)




2) Criar uma conta no server pushbots.com

 


3)Baixar o modelo de projeto para android do site pushbots.com e realizar as respectivas alterações, salvar a aplicação no eclipse e mandar a app para seu device android.

 


ps: apaguei as referencia sobre projetos e outras chaves senão vira festa.....

Vamos ao funcionamento, até agora foi só o preparo para a coisa funcionar, longe de ser algo profissional, mas sim um curioso para matar a curiosidade de saber como as coisas funcionam.

1) Instalar a aplicação no seu android....tai um display da aplkicação no celular, o robo verde BugDroid  (pushbots). O que a aplicação faz, resgitra seu device no pushbots para recebimento de mensagens (Push Notifications)

 

 


 Depois do registro efetivado, não quer dizer que todo device android vai ser registrado, por algum motivo alguns não foram, porque?? nem procurei saber, talvez um antivirus no celular, ou problema de versão sei lá, isso agora não vem ao caso.

2) Envio das mensagens via REST, simplicidade em pessoa, assim eu defino o REST, sem complicação de XML, nem nada.....é o que o mundo de troca de informação precisava....alias ele já tinha só eu que ainda não conhecia....rsssss

 



3) só verificar a mensagem no device.......tai as imagens que não me deixam mentir...... Obrigado ao Leo Benedeti, pelo envio de tela.....e de me ajudar como cobaia das minhas experiencias.....valeu Leo!!!!1

 

detalhe dos dois robozinhos verdes no alto, na barra de notificação do android.....Abaixo a notificação........

 



Longe de ser algo profissional, não foi este o proposito, até que para isso devo percorrer ainda um longo trajeto para suportar uma aplicação robusta.]

Mas fica a ideia, de uma nova maneira de se comunicar com os empregados de uma empresa, com os diretores, CLIENTES.....etc...etc....o que a imaginação mandar....basta ter a ideia e implementar....

O que fala internet HTTP, fala REST, então o céu é o limite........


abs.

 

Cortesia do Ricardo BHZ

Componentes tabela interna em tempo de execução (How to get Internal Table Components at runtime)

Estava precisando para uma demanda, o nome dos campos de uma tabela interna em tempo de execução  e achei essa codificação a mais completa e simples para ser usada......com um resultado bem satisfatório.....

font: 
http://abap-explorer.blogspot.com.br/2010/01/how-to-get-internal-table-components-at.html

segue o código......


*&---------------------------------------------------------------------*
*& Report  ZTEST_INTERNAL_TAB_COMP
*&
*&---------------------------------------------------------------------*
*&***********DEMO Code for http://abap-explorer.blogspot.com/***********
*&
*&---------------------------------------------------------------------*
 report  ztest_internal_tab_comp line-size 100.type-pools: abap.
 *Declare the type of the internal table
types: begin of x_final,
 matnr type matnr,
 werks type werks_d,
 flag type c length 1,
 value type p length 10 decimals 2,end of x_final.
 data:*The Internal table whose components are to found
i_data type sorted table of x_final with unique key matnr,*Table to hold the components
tab_return type abap_compdescr_tab,*Work area for the component table
components like line of tab_return.
 *Call Perform to get the Int. Table Components
perform get_int_table_fields using    i_data
                            changing  tab_return.*Display Components
loop at tab_return into components.
  write: / components-namecomponents-type_kind,
           components-length,components-decimals.endloop.
 
 
 
 *&---------------------------------------------------------------------*
*&      Form  get_int_table_fields
*&---------------------------------------------------------------------*
*       Get the Components of an internal table
*----------------------------------------------------------------------*
*      -->T_DATA     text
*      -->T_RETURN   text
*----------------------------------------------------------------------*
form get_int_table_fields  using    t_data type any table
                           changing t_return type abap_compdescr_tab.
 
  data:
  oref_table type ref to cl_abap_tabledescr,
  oref_struc type ref to cl_abap_structdescr,
  oref_error type ref to cx_root,
  text type string.*Get the description of data object type
  try.
      oref_table ?=
      cl_abap_tabledescr=>describe_by_data( t_data ).
    catch cx_root into oref_error.
      text = oref_error->get_text( ).
      write: / text.
      exit.
  endtry.*Get the line type
  try.
      oref_struc ?= oref_table->get_table_line_type( ).
    catch cx_root into oref_error.
      text = oref_error->get_text( ).
      write: / text.
      exit.
  endtry.
 
  append lines of oref_struc->components to t_return.
 endform.                    " GET_INT_TABLE_FIELDS

 

Ricardo BHZ

sexta-feira, 21 de fevereiro de 2014

O SAP FALA COM VOCE!!!

*&---------------------------------------------------------------------*
*& Report  ZTESTEXXXX
*& O Sap fala com você!!!
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT  ZTESTEXXXX.
INCLUDE ole2incl.
DATA ole   TYPE ole2_object,
       voice 
TYPE ole2_object.
PARAMETERS p_text type string DEFAULT 'I love you and Im crazy for you'.
CREATE OBJECT voice 'SAPI.SpVoice'.
CALL METHOD OF voice 'Speak' ole
  
EXPORTING #1 p_text.