Quantcast
Channel: SCN : All Content - ABAP Connectivity
Viewing all 1442 articles
Browse latest View live

RFC SAPXPG_DBDEST_ fails

$
0
0

Hi,

 

In my system RFC SAPXPG_DBDEST_<SAPDBHOST> is getting failed. I have maintained all the entries correctly in sm59, still it is getting failed. When I checked dev_rd file I am getting error like "remshd: Account is disabled - see Account Administrator". Can any one tell me is this error related to my RFC fail?


Inbound Delivery: Inbound WHSCON IDoc with Batch Split - HowTo...?

$
0
0

Hello

 

We have another tricky problem to solve on our ERP 6.0 system.

 

My colleagues of Lindt UK create manually inbound deliveries (VL33N) which are replicated to the warehouse (DESADV IDoc -> TRADACOMS.ORDHDR).

When the goods arrive at the warehouse they send back a good receipts message (TRADACOMS.DLCHDR -> WHSCON IDoc).

In some cases we have a batch split because the goods have been put into different storage locations. Example:

- item 10: 200 Cases of product 4711, batch 10-2011,  in storage location '0001' (free available for Sale)

- item 10:     5 Cases of product 4711, batch 10-2011, in storage location '0004' (damaged)

 

I am aware that in the inbound WHSCON item 10 is a main position and the two actual batch split positions are sub-items (900001 & 900002 with HIPOS = '10'). I tried to used E1EDL19-QUALF = 'BAS' (= batch split) with the sub-items but failed so far to update the inbound delivery that I can see the batch split.

I have managed to get one sub-item but not 2 of them. Somehow the system aggregates the quantities for both sub-items into the single item that shows up in the inbound delivery.

 

When we send the inbound delivery to the warehouse the item looks like this:

- item 10: 200 Cases (no batch yet, Putaway quantity = 0, because these data are coming from the warehouse).

 

QUESTION: Has anybody else been faced with a similar (if not identical) problem and how did you solve it?

 

Thanks a lot in advance for your valuable input.

 

Regards

  Uwe

No batch input data for screen SAPLKEAK 0300

$
0
0


Hi All ,

 

I am getting "No batch input data for screen SAPLKEAK 0300 "  error while Posting a parked document.

When I checked the Park Document , I saw that Profitability Segment was missing.

Document is parked using standard FM  "PRELIMINARY_POSTING_FB01" after that BDC is executed to fill Profitability segment.

Both FM and BDC are written in a custom FM. This FM is scheduled in a Job to run everyday and Park all the available Documents .

Everything used to work fine for last 2 years but suddenly since last month I am starting getting this error.

It does not happen for all the documents . And for the document for which it happens, if I try to park and post it again using the same process . It works fine.

It looks as if something obstruct the normal parking process when SAP job is running but I am not able to find out the reason.

 

Any pointers would be appriciated.

Thanks ,

Rahul

running a DOS program before an ABAP program

$
0
0

Hello

we have Z_Order  ABAP program which load order to SAP, we need to run a DOS program to get file to the correct folder.

Is it possible to run this DOS program every time user run Z_Order program

Thanks

How to maintain segments for PORDCH03 (IDOC)

$
0
0

Hello Expert.

 

I need to be able to create and change PO data from text file. For this i parse data from files, then I manually maintain segments for idoc, and then I send it by CALL FUNCTION 'IDOC_INBOUND_ASYNCHRONOUS'. So, for PO create I have no problem it is working right. But for PO change i have an error 'Document does not exist'. I tried to maintain PO_NUMBER field of header segmet manually.

For example:  e1bpmepoheader-po_number = 'XXXXXXXXXX'.

 

Where 'XXXXXXXXX' - number of already existing PO in EKKO table. But I stell have this problem. Maybe you know what I am making wrong?

 

Best Regards,

Mikhail.

Data Dictionary details

$
0
0

Hi There,

 

Is there any way to take the filed name from SAP data dictionary during run-time . I mean if i will execute a TA the field name , program name (like what shows pressing F1) all the details.

 

Any help is appreciated.

 

Regards,

Khagendra

Sreen gets cut in production client after sending a transport

$
0
0


Good Day,

 

after taking a transport to production the screen cut other columns but  on Development and qas is fine and the transport pass throught those client.

 

4-11-2014 9-37-30 AM.png

 

Please see production screenshot below.

 

4-11-2014 9-41-44 AM.png

 

 

Thank in advance

Process code for /DSD/HH_CREDITDATA

$
0
0

Good day gurus,

 

I am trying to load the credit master data for customers using the IDoc /DSD/HH_CREDITDATA but I cannot find the correct process code to assign in WE20 to get my IDocs processed.

 

Could you please advice?

 

Many thanks


Simple HTTP Send / Receive does not Work

$
0
0

Hello,

I am attempting to perform a simple HTTP Send/Receive using the SAP Interface IF_HTTP_CLIENT. For example to read a twitter feed.

I have no issues using a SICF entry for BSP pages such as   http://www.mysystemxxx.com:8000/sap/bc/bsp/sap/z_http/z_simple_http.xml to create some simple XML data, so internet connectivity is established..However when using ABAP to call out to the internet, I get communication errors when I attempt to receive data back...the error message is:

communication_error( receive )

code:    400  message:  ICM_HTTP_CONNECTION_FAILED

 

I attempted to use transaction SMICM (ICM monitor but cannot see any errors)...

Am I missing some setup and/or configuration to perform a call to the outside?

 

Thanks in advance for your reply..

Regards,

Steve

 


Sample HTTP program:

REPORT  z_http_example.

DATA: my_client TYPE REF TO if_http_client.

DATA: host_sf       TYPE string VALUE 'http://search.twitter.com/search.atom?q=jazz',
      uri           TYPE string VALUE 'http://search.twitter.com/search.atom?q=jazz',
      service_str   TYPE string VALUE '8000',
      timeout       TYPE i  VALUE 10,
      v_subrc       TYPE sysubrc,
      errortext     TYPE string. "used for error handling

START-OF-SELECTION.


  CALL METHOD cl_http_client=>create
    EXPORTING
      host               = host_sf
      service            = service_str
    IMPORTING
      client             = my_client
    EXCEPTIONS
      argument_not_found = 1
      internal_error     = 2
      plugin_not_active  = 3
      OTHERS             = 4.

* set http method GET
  CALL METHOD my_client->request->set_method(
    if_http_request=>co_request_method_get ).

* set request uri (/<path>[?<querystring>])
  cl_http_utility=>set_request_uri( request = my_client->request
                                 uri     = uri ).


* Send
  CALL METHOD my_client->send
    EXPORTING
      timeout                    = timeout
    EXCEPTIONS
      http_communication_failure = 1
      http_invalid_state         = 2
      http_processing_failed     = 3
      OTHERS                     = 4.
  IF sy-subrc <> 0.
    CALL METHOD my_client->get_last_error
      IMPORTING
        code    = v_subrc
        MESSAGE = errortext.
    WRITE: / 'communication_error( send )',
           / 'code: ', v_subrc, 'message: ', errortext.
    EXIT.
  ENDIF.

* receive
  CALL METHOD my_client->receive
    EXCEPTIONS
      http_communication_failure = 1
      http_invalid_state         = 2
      http_processing_failed     = 3
      OTHERS                     = 4.
  IF sy-subrc <> 0.
    CALL METHOD my_client->get_last_error
      IMPORTING
        code    = v_subrc
        MESSAGE = errortext.
    WRITE: / 'communication_error( receive )',
           / 'code: ', v_subrc, 'message: ', errortext.
    EXIT.
  ENDIF.

* close
  CALL METHOD my_client->close
    EXCEPTIONS
      http_invalid_state = 1
      OTHERS             = 2.

END-OF-SELECTION.

write: /1 'HTTP Call Complete!'.

Info record upload error

$
0
0

Hello All,

 

I am using batch input program 'RM06IBI0' to upload purchase info record data.I have maintained files for text also.but am getting the error 'No batch input data for screen SAPMM06I 0123'.Please let me know what could be the problem.

 

Thanks,

Rakesh.

ABAP Channels Part 3: Collaboration Scenario Using ABAP Messaging and ABAP Push Channels

$
0
0

ABAP Push Channel (APC) is the ABAP framework for supporting WebSockets in the ABAP engine. This framework is part of the ABAP Channels infrastructure, which is delivered with SAP NetWeaver AS ABAP 7.40 support package 2 (SP2) for simple tests and prototyping and released with 7.40 support package 5 (SP5).

 

The basic idea of the ABAP Channels (see figure 1.0) is the native support of interactive and collaborative scenarios based on event-driven architecture. The scope of ABAP Channels consists of the following communication channels:

  • ABAP Push channel for bi-directional communication with user agents via WebSockets in ABAP. In figure 1.0 the documents tagged with letter "P" mark the ABAP Push Channel communication paths.
  • Publish/subscribe infrastructure for exchange of messages between either user sessions (Session C => Session A) or user session and user agents (Session C => User Agent B) residing on different application servers via ABAP Messaging Channels. In figure 1.0 the documents tagged with letter "M" mark the ABAP Messaging Channels communication paths.

AC_Basic_Scenario.PNG

Figure 1.0: ABAP Channels supports eventing in ABAP

 

Most ABAP applications use polling techniques to achieve an even-driven communication. For pushing an event from an ABAP backend to a browser based user-agent like Web Dynpro, Business Server Pages (BSP) or WebGUI, a polling in multi-seconds interval against the ICM cacheis frequentlyused.This is a quitesystem resource consuming technique. In SAPGUI usually the timer control is used to detect an event in the back-end. One of the the main goals of  the ABAP Channel technology is to replace such inefficient eventing based on polling techniques.

 

The ABAP Channels supports the following use-cases:

  1. ABAP Push Channel(APC): The WebSocket integration in ABAP.
  2. ABAP Messaging Channel(AMC): Eventing framework for messages exchange between different ABAP sessions based on publish/subscribe channels.
  3. Collaboration scenario: UsingAPCandAMCto push messages from ABAP sessions to WebSocket clients by binding publish/subscribe channels to a WebSocket connection.


In this article we focus on the exchange of messages between WebSocket clients and ABAP sessions called Collaboration scenario using AMC and APC (see figure1.1).

amc_apc_collaboration_simple.gifFigure1.1: Message Flow in ABAP Channel Components

 

Collaboration of ABAP Messaging and Push Channels

The collaboration scenario (see figure 2.0) provides the possibility on the basis of publish/subscribe pattern of ABAP Messaging Channels to push messages from an ABAP session or from a WebSocket client (using ABAP Push Channel) to from publisher to subscribers of channels.

amc_apc_simple_v2.gif

  Figure 2.0: Simple interaction model of collaboration scenario.

 

One of the goals for the collaboration scenario is to overcome the manual refresh for an object list in the user-interfaces by introducing an “auto-update” or alternatively by using a notification pattern. This goalcan easily be reached by notifying the user-agent having a WebSocket connection to the ABAP system about the changes on objects displayed in the user-agent.

AMC_APC_complex.gif

Figure 2.1 illustrates the technical interaction model for pushing messages between a WebSocket

 

In order to pass an event from an ABAP session to a WebSocket client and vice-versa the publish/subscribe infrastructure of the ABAP Messaging Channels is used. As in the figure 2.1 depicted the APC frame with the binding manager interface offers the possibility to bind an AMC channel to the underlying WebSocket connection to act as message consumer (receiver) for the corresponding channel. After a successful binding to an AMC channel, here <application>/<channel>, any messages published to the channel will
be forwarded by the AMC broker to the WebSocket client using corresponding WebSocket connection.


Creating an ABAP Push and Messaging Channel Application for Collaboration Scenario
This section outlines the additional steps required to extend the existing APC application (see ABAP Channels Part 1: WebSocket Communication Using ABAP Push Channels [1]) and AMC application (see ABAP Channels Part 2: Publish/Subscribe Messaging Using ABAP Messaging Channels[2]) to create the collaboration scenario.

 

First, the APC applicationwill be extended:

  • In the existing APC application YCL_APC_WS_EXT_YAPC_WS_TESTthe coding of methodON_START (Figure 2.12 in [1]) will be replaced with coding to bind the
    WebSocket connection to the AMC application
    YAMC_TESTand channel“/ping”.


METHOD if_apc_ws_extension~on_start.

  TRY.
* bind the WebSocket connection to the AMC channel
   
DATA(lo_binding) = i_context->get_binding_manager( ).
    lo_binding
->bind_amc_message_consumer( i_application_id = 'YAMC_TEST'
                                                                                         i_channel_id     
= '/ping' ).
 
CATCH cx_apc_error INTO DATA(lx_apc_error).
    D
ATA(lv_message) = lx_apc_error->get_text( ).
   
MESSAGE lx_apc_error->get_text( ) TYPE 'E'.
 
ENDTRY
.

ENDMETHOD.

 

  • Same for methodON_MESSAGE (figure 2.15 in [1]). Here the received messages from WebSocket client are forwarded to the AMC application YAMC_TESTand channel“/ping”.

 

METHOD if_apc_ws_extension~on_message.

  DATA: lo_producer TYPE REF TO if_amc_message_producer_text.
 
TRY.
* retrieve the text message
   
DATA(lv_text) = i_message->get_text( ).
    lo_producer ?= cl_amc_channel_manager
=>create_message_producer(

                                                                                                 i_application_id = 'YAMC_TEST'
                                                                                                 i_channel_id      
= '/ping' ).
    lo_producer
->send( i_message = lv_text ).
 
CATCH cx_amc_error INTO DATA(lx_amc_error).
   
MESSAGE lx_amc_error->get_text( ) TYPE 'E'.
 
CATCH cx_apc_error INTO DATA(lx_apc_error).
   
MESSAGE lx_apc_error->get_text( ) TYPE 'E'.
  ENDTRY
.

ENDMETHOD.


  • In the next step the access rights will be maintained. For the AMC application YAMC_TEST and channel “ping” the activities “Receive via APC WebSocket” and Send”are referencing the implementation class YCL_APC_WS_EXT_YAPC_WS_TEST of APC application YAPC_WS_TEST. This is done in the AMC design time, transaction SAMC (figure 3.20 in [2]).

 

Open the definition of application YAMC_TEST and click Insert line (see figure 3.1).

fig_3.1.jpg

  Figure 3.1


Open the value help in the Authorized Program field (see figure 3.2).

fig_3.2.jpg

Figure 3.2

 

Insert the class YCL_APC_WS_EXT_YAPC_WS_TESTand click Accept (see figure 3.3).

fig_3.3.jpg

Figure 3.3

 

Select the entry C Receive via APC WebSocket (see figure 3.4).

fig_3.4.jpg

Figure 3.4

 

Insert additional line as above and select the entry S Send (see figure 3.5).

fig_3.5.jpg

Figure 3.5


Optionally a Virus Scan ID (outgoing) can be specified (see figure 3.6).

fig_3.6.jpg

Figure 3.6

 

Click Save (see figure 3.7).

fig_3.7.jpg

Figure 3.7

And Activate. (see figure 3.8).

fig_3.8a.gif

Figure 3.8

Click Continue .(see figure 3.9)..

fig_3.9.jpg

Figure 3.9

 

To test the application just press the Test icon (see figure 3.10).

fig_3.10.jpg

Figure 3.10

 

This action launches the Web Dynpro application WDR_TEST_APCin a browser (see figure 3.11) which supports the WebSocket protocol (RFC 6455) (e.g. Chrome version >= 16, Firefox version >= 11, Internet Explorer version >= 10 and Safari on iOS version >= 6). If it does not launch, double check the Web Dynpro service path /sap/bc/webdynpro/sap/wdr_test_apc" in the transaction SICFis active.


  fig_3.11.jpg

Figure 3.11

 

Just starts a second time the Web Dynpro test application for APC application YAMC_TEST in browser (see figure 3.12).After a successful connection setup any messages send in a browser will be received also by the second browser.

fig_3.12.jpg

Figure 3.12

 

Furthermore any report which apply any actions on the AMC application YAMC_TESTand channel“/ping” will be involved in the collaboration interaction. In other words the execution of the AMC send report YRS_AMC_SEND_MESSAGE(refer [2] figure 3.15) will lead to receiving the send message by the browser(see figure 3.13) 

 

fig_3.13.jpg

Figure 3.13

 

And the execution of the AMC receive report YRS_AMC_RECEIVE_MESSAGE (refer blog [2]figure 3.25) will lead to receiving the send message by the browser(see figure 3.14).

fig_3.14.jpg

Figure 3.14


 

Collaboration Scenario Security

The security of collaboration scenario is handled by the underlying APC and ac frameworks.

 

 

Collaboration Scenario Supportability

Whereas for AMC channels with the transaction SMAMC(refer blog [2] figure 4.0) canthe subscribed channels be monitored also here a navigation to the bound WebSocket connection in SMWS(see [1] ) transaction. The transaction SMWS provides also the total number of bound AMC channels per WebSocket  connection (see figure 4.0).

fig_4.0.jpg

Figure 4.0


The transaction SMAMC (see figure 4.1) shows the list of the AMC channels which are registered in sessions (Type “Session”) or in case of “Collaboration scenario” the WebSocket connections (Type is “WebSocket”) in the system as AMC consumers.

fig_4.1.jpg

Figure 4.1


 

Conclusion and outlook

This article showed the collaboration scenario based on AMC and APC for exchange of messages between different WebSocket clients. Currently the message exchange based on best/effort strategy and no guaranteed delivery is available. In a future article best practices will be outlined.    

Transfer IDOC Immed.

$
0
0

Hi

 

I’ve created a Z message type to transfer transactional data from SAP EEC6 to external system (MES) using iDOCs.

Distribution model was created and profiles were updated in WE20 (outbound parameters).

Radio button “Transfer IDOC Immed.” was also set.

 

When we create idocs, they are not transferred immediately. In BD87 they are assigned to status 30.

However, they are successfully transferred when using program RSEOUT00.

 

Why is setting “Transfer IDOC Immed.” ignored?

 

Thanks

W

fbcj transaction

$
0
0

Hi all,

As per my requirement in FBCJ transaction if i select entries and click on post button it will post the data only if document status  is 'SAVE' only.But in standard functionality not checks whether status is save or not it automatically save the record.Please resolve my problem.

 

 

 

Thanks&regards,

sairam..

Unexpected element -el=definitions ns=http://schemas.xmlsoap.org/wsdl/

IDOC structure - BASIC TYPE not visible in TIPCO adapter services

$
0
0

Hi friends,

 

Happy day wishes,

 

I have generated an IDOC in SAP but when viewing the structure from TIPCO adapter services , we cant able to see the IDOC structure .

 

is there any settings  avaiable  for this?

 

IDOC was released eventhough we cant view from TIPCO end.

 

please help with your views,

 

Thanks,

Guru


User-Exit/Badi for MD14 (At Save)

$
0
0

Good  Morning

 

i want to  an exit or badi for md14 when save planned order

User Profile Parameter ID KVS not work

$
0
0

Hi,

I've got some troubles with parameter id KVS. I set it in my user profile,

parameter = KVS    

value = B2   

description = Version (CO)

 

when I call report GPCQE53LSADXCC16KZ1R96N5156001, there are two fields with this parameter,

and their value remain "0" instead of "B2".

I need to put the parameter value on one of this two fields, how can I do?

 

Could someone help me?

 

thank you in advance,

Fede

RFC Destination TCP/IP - IDoc to Third Party in ECC

$
0
0

Hi,

 

We have requirement where we need to configure Idocs in SAP to send to Third Party System (JAVA application).

 

I have completed the IDoc Configuration (Distribution Model, Partner Profile, Port, RFC Destination)

 

RFC Destination is created of Type 'T' (TCP/IP) with Registered Server Program (Program ID).

 

Now I am able to created in IDocs successfully in SAP but it is not being delivered to the target system.  When I am testing the RFC Destination fails and it gives following error.

 

Do we need to maintain this program id in SAP somewhere OR third party application should maintain this on their end?

 

I have checked SMGW -> Logged On Clients, I am not seeing any entry for with this Program ID. Please advise.

 

Logon Connection Error

Error Details Error when opening an RFC connection

Error Details ERROR: program GFDO100 not registered

Error Details LOCATION: SAP-Gateway on host / sapgw10

Error Details DETAIL: TP GFDO100 not registered

Error Details COMPONENT: SAP-Gateway

Error Details COUNTER: 21930

Error Details MODULE: gwr3cpic.c

Error Details LINE: 1833

Error Details RETURN CODE: 679

Error Details SUBRC: 0

Error Details RELEASE: 720

Error Details TIME: Thu Apr  3 17:06:03 2014

Error Details VERSION: 2

 

Thanks,

CJ

Multiple iDocs in a single file

$
0
0

Hello,

I'm working on some integration to send a purchase order change file into SAP from BizTalk.  Everything works when we send every change as its own iDoc, or when we send all changes for a single PO in a single file, but when we try and include multiple iDocs in a single send, we get an error that it has to many elements.  The definition below is of the idocData element which indicates it can send more than one:

<xs:elementxmlns:q2="http://Microsoft.LobServices.Sap/2007/03/Types/Idoc/3/PORDCH03//711"minOccurs="1" maxOccurs="2147483647" name="idocData" nillable="true"type="q2:PORDCH03">

A sample of the file:

<?xml version="1.0"?>
<ns0:Send xmlns:ns3="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:ns2="http://Microsoft.LobServices.Sap/2007/03/Types/Idoc/Common/" xmlns:ns1="http://Microsoft.LobServices.Sap/2007/03/Types/Idoc/3/PORDCH03//711" xmlns:ns0="http://Microsoft.LobServices.Sap/2007/03/Idoc/3/PORDCH03//711/Send">
     <ns0:idocData>
        <ns1:EDI_DC40>
        ....
        </ns1:EDI_DC40>
        <ns1:E2PORDCH000GRP>
        ......
        </ns1:E2PORDCH000GRP>
    </ns0:idocData>
    <ns0:idocData>
        <ns1:EDI_DC40>
        ....
        </ns1:EDI_DC40>
        <ns1:E2PORDCH000GRP>
        ......
      
     </ns1:E2PORDCH000GRP>

    </ns0:idocData>
</ns0:Send>

LSMW Vendor CIN Update

$
0
0

Dear Experts,

 

In our setup we are only using FI-AP (No MM) we have enhanced field CIN in general section of vendor. Currently we wanted to update CIN information on all the vendors for which I created LSMW. I noticed that when batch map is created there is no information about CIN field. In recording I have selected this field. Not sure where I am going wrong?

 

Looking for your assistance. Thanks in advance!

 

B/R

Prashant Rane

 

Vendor Master - CIN Field

 

 

Method used in LSMW

 

Recording steps

 

Conversion data steps

 

No information on batch map

Viewing all 1442 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>