SAPscript export to an external system.
Dear all,
I'm wondering if there are any ways to export a SAPscript which I would made in my company system to my client system. Knowing that those two systems have absolutely no physical links.
Best regards.
Nozome.
You can use report RSTXSCRP to download from your system and same report to upload the file on customer system.
Or put the form in a transport request with object
R3TR FORM <SCRIPTNAME> and release the request.
Ask the basis folks to get the data/ co files of this trnasport . Give these files to basis folks of customer system and ask them to import it into their system.
Cheers
Similar Messages
-
Material and Price export to an External System
I've a Problem, I will send Materials with sales Price from SAP to an external System. I will use the IDOC MATMAS01, but I can't send the price with it? Is that correct? How I can send the sales Price for each Material? Is it possible to send more than one Material (mass export) with MATMAS01 per process? Or I had to define a Product or Price Catalog?
Or is there a better way by using a BAPI for this use case? Which BAPI?
ThanksThanks for the answers, now I've two ways to implement that, first with IDOC MATMAS01 and Idoc COND_A with an enhancement VKOE0001 PRICING CONDITION. And the second one with the BAPI.
Which is the better way?
And how I create a BAPI for Material and Sales Price?
Thanks -
SE71, SAPScript export to other SAP system
Hi All,
Does anyone know how to extract and export form (SE71) from system A to system B?
Scenario:
SE71, form: ZF100_Check
My friend needs to design and develop same cheque printing functionality, and therfore, I wonder how can I extract and export my designed / developed form (SE71) out and save it locally, and then send to my friend, though email, etc and may be upload to his SAP system.
Does anyone have any idea on it?
Thanks and regards,
sbmelHi,
please search before asking your question. Your question has been answered multiple time her on SDN. Look for "SAP script download upload".
Cheers -
HUGE amount of data in flat file every day to external system
Hello,
i have to develop several programs to export all tables data in a flat file for external system ( EG. WEB).
I have some worries like if is possible by SAP export all KNA1 data that contains a lot of data in a flat file using the extraction:
SELECT * FROM KNA1 ITO TABLE TB_KNA1.
I need some advices about these kind of huge extractions.
I also have to extract from some tables, only the data changes, new record, and deleted records; to do this I thought of developing a program that every day extract all data from MARA and save the extraction in a custom table like MARA; the next day when the programs runs compare all data of the new extraction with the old extraction in the ZMARA table to understand the datachanges, new records or deleted record.. It's a righ approach? Can have problems with performance? Do you now other methods?
Thanks a lot!
Byeyou should not have a problem with this simple approach, transferring each row to the output file rather than reading all data into an internal table first:
open dataset <file> ...
select * from kna1 into wa_kna1
transfer wa_kna1 to <file>
endselect
close dataset <file>
Thomas -
Calling a web service in external system from SRM
Hi folks,
A web service is created in the external system and I need to access this web service from a BADI. Can you tell me how can I call this web service (the external system is giving me a URL) and how I'll get a return. Please let me know in detail.
Thanks,
PremPrem,
Hi. You can call the service via HTTP protocol. Pass them values (SET_DATA), and receive a response (GET_DATA), via xml/html.
In your code you would need to create the xml data to pass them, and evaluate the returned xml.
Process...
Data setup
1) Create the XML to send them
Working with the external service
2) Open the HTTP connection
2a) cl_http_client=>create_by_url (IF_HTTP_CLIENT)
2b) lr_client->authenticate
3) Call the to send them the XML
3a) lr_client->request->set_data
3b) lr_client->send
4) Call the lr_client->receive to return the response
5) Close the connection lr_client->close
Data evaluate
6) Evaluation the returned XML and process.
Hope this helps
Cheers
Rob
Code example below.. (There are loads of SAP examples depending on which release you are on).
Process the call to the HTTP client - logic copied from RSHTML01 *
Open IF_HTTP_CLIENT
call method cl_http_client=>create_by_url
exporting
url = l_url
importing
client = lr_client
exceptions
argument_not_found = 1
plugin_not_active = 2
internal_error = 3
others = 4.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
raising oops.
endif.
Authenticate the user
if not g_int_type-usr is initial.
move: g_int_type-usr to l_user,
g_int_type-password to l_password.
call method lr_client->authenticate
exporting
username = l_user
password = l_password.
endif.
Allow for Cookies
lr_client->propertytype_accept_cookie = lr_client->co_enabled.
Set the server protocol
select single gsval into l_server_protocol
from z77s0
where grpid = c_grpid
and semid = c_server_protocol.
if sy-subrc eq 0
and not l_server_protocol is initial.
move l_server_protocol to l_st_server_protocol.
call method lr_client->request->set_header_field
exporting
name = '~server_protocol'
value = l_st_server_protocol.
endif.
Send out the XML
Set body to XML data
lr_client->request->set_data( g_xxml ).
save_xml( i_role = cl_xml_document=>c_role_oreq ).
l_request_length = xstrlen( g_xxml ).
If Data is sent through then we need certain flags set
lr_client->request->set_header_field(
name = 'Content-Type'
value = zcl_tem_bsp=>c_xml_content ).
call method lr_client->request->set_header_field
exporting
name = '~request_method'
value = 'POST'.
Set length of string to the header fields
if not l_request_length is initial.
move l_request_length to l_st_request_length.
lr_client->request->set_header_field(
name = 'content-length'
value = l_st_request_length ).
endif.
Send the request
call method lr_client->send
exceptions
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3
http_invalid_timeout = 4
others = 5.
check_for_error 'Send'.
Receive the response
call method lr_client->receive
exceptions
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3
others = 4.
check_for_error 'Receive'.
Determined returned XML or HTML
g_xxml = lr_client->response->get_data( ).
Determine the header fields for failure validation
if lr_client->response->get_header_field( '~status_code' )
between 200 and 299.
save_xml( i_role = cl_xml_document=>c_role_ires ).
else.
l_status_code =
lr_client->response->get_header_field( '~status_code' ).
l_descript_1 =
lr_client->response->get_header_field( 'error' ).
l_descript_2 =
lr_client->response->get_header_field( 'errortext' ). -
Create Support Message from external system
HI experts,
I would like to change the Create Support Message screen(Menu->Help->Create Support Message) and add three fields namely: Category, Subject and Solution Number because currently these fields are not populated in the Service desk if I create message in this way unlike in using NOTIF_CREATE tcode where there are selection fields for these.
Also, I'm creating the support message from an external SAP system and the messsage is sent to the Solution Manager system. The NOTIF_CREATE tcode does not exist in the external system as well as the whole package DSWP.
Please let me know you rthoughts on this.
Thanks
EricHi guys,
Thanks for your answers... But is it possible to call transaction NOTIF_CREATE from an external system?
I have done something already so that those 3 fields will be automatically populated for a message sent from an external system.
I changed the screen and called FM BAPI_NOTIFICATION_CREATE(a remote enabled FM which is the one being used by transaction NOTIF_CREATE to create a message) inside FM BCOS_SEND_MSG.
I populated the category, subject and solution in the FM export parameters as well as the solution number in the sap data table. I put a destination also..
This FM calls another FM DNO_OW_CREATE_NOTIFICATION which is the one being used from the external system but do not cater the functionality to send the 3 fields that we need.
As you will notice, there are lots of standard objects that I've changed. =)
My problem now is that the system data sent is the same with the system data if you create the message using NOTIF_CREATE. Some system that were sent when a message is sent from an external system is missing but at least the sap system and client ID is sent. There is no external reference number also. But hopefullly, the users will accept it. Can't find any other solution to this.
Thanks,
Eric -
'Accept IDOC' from external system
Hi Experts, I am new to IDOCS. I have to update one already written function module to accept IDOC in SAP from external system. In the function module I see some IMPORT parameters like 'input_method' and 'mass_processing' and EXPORT parameters like 'workflow_result' , 'application_variable' , 'in_update_task', 'call_transaction_done' . Can someone tell me what are these parameters for ???.
input _method for method of data records update
Mass_processing for handling the large number of Idocs in single take
Workflow_result for hitting the results at last
'in_update_task' update the records in update mode
call_transaction_done' by using call transaction method it would post the records -
Get employee photo and display the photo in external system.
Hi,
We start to work with the portal....We want an application that display the employee photo..
The photo is the same one that appear in pa20/30...
We create the photos in OAAD and have a table repository.
How from here i can use this to build a RFC that return "data"..that from the external system we can show the photo,
Thanks.write a RFC which uses
'HR_IMAGE_EXISTS' to get the image document id and then use 'ALINK_RFC_TABLE_GET' to image in JPG format convert the returned RAW table to xstring format using SCMS_BINARY_TO_XSTRING pass the resulting xstring as the export parameter of this RFC .
portal application can now use this xsring to render the image.
Regards
Raja -
Employee photo - send to external system
Hi,
There is requirement that need to send employee photo from sap to the external system. How can I do this? Any function or sample code for this?REPORT ZHR_BDC_UPLOADPIC NO STANDARD PAGE HEADING LINE-SIZE 255.
INCLUDE
INCLUDE BDCRECX1.
I N T E R N A L T A B L E S
DATA : BEGIN OF IT_DATA OCCURS 0, RP50G-PERNR(8), " LIKE RP50G-PERNR,
RLGRAP-FILENAME(128),
END OF IT_DATA.
S T A R T - O F - S E L E C T I O N
START-OF-SELECTION.PERFORM OPEN_GROUP.
CALL FUNCTION 'UPLOAD'
EXPORTING
FILENAME = 'C:\PICTURE.TXT'
FILETYPE = 'DAT'
TABLES
DATA_TAB = IT_DATA
EXCEPTIONS
CONVERSION_ERROR = 1
INVALID_TABLE_WIDTH = 2
INVALID_TYPE = 3
NO_BATCH = 4
UNKNOWN_ERROR = 5
GUI_REFUSE_FILETRANSFER = 6
OTHERS = 7.
IF SY-SUBRC NE 0.
WRITE : / 'Unable to upload data'.
STOP.
ENDIF.
LOOP AT IT_DATA.
PERFORM BDC_DYNPRO USING 'OANEWCON' '0100'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'TOAOM-AR_OBJECT'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=NEW'.
PERFORM BDC_FIELD USING 'TOAOM-SAP_OBJECT'
'PREL'.
PERFORM BDC_FIELD USING 'TOAOM-AR_OBJECT'
'HRICOLFOTO'.
PERFORM BDC_DYNPRO USING 'SAPLSJ01' '0200'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'FIELD_VALUES-INPUT(02)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=OK'.
PERFORM BDC_FIELD USING 'FIELD_VALUES-INPUT(01)'
IT_DATA-RP50G-PERNR. "'10002'.
PERFORM BDC_FIELD USING 'FIELD_VALUES-INPUT(02)'
'0002'.
PERFORM BDC_DYNPRO USING 'SAPLOPTM' '0105'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'SAPB-SAPPOOLINF'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=OKAY'.
PERFORM BDC_FIELD USING 'SAPB-SAPPOOLINF'
IT_DATA-RLGRAP-FILENAME. "JPG'.
PERFORM BDC_TRANSACTION USING 'OAOH'.
clear IT_DATA-RLGRAP-FILENAME.
ENDLOOP.
PERFORM CLOSE_GROUP. -
Hi all,
Just have some questions and need your supports
- Is that possible to export metaverse objects to External system by using only FIM Sync (without outbound rule created on FIM portal). Seem that we need to create provisioning rules on extensions...?
- I see "the attribute flow" on MA but have no ideas what is different between them and the rule on outbound/inbound sync rule that be able to be created on FIM portal.
Thanks !Hello,
yes of course this is possible, it good old time (MIIS/ILM) this was the only way to sync attributes on objects, and its still possible and needed many times.
In order to create new objects in a connector space (and export them after that) you need to do provisioning with a mv rules extension, thats correct.
If all objects exists already in both data source you can simple let one MA project objects to MV and let the other joid, with approp. criterias in MA.
There are a lot of differences between sync rules and MA classic rules, see documentation on that.
One point is that classic rules can have also rules extension to handle attribute data on import and export, beside other things, while sync rules have OOB functions to do controldata flow.
https://technet.microsoft.com/en-us/library/ee534911%28v=ws.10%29.aspx
https://technet.microsoft.com/en-us/library/jj133850%28v=ws.10%29.aspx
https://technet.microsoft.com/en-us/library/ff686263%28v=ws.10%29.aspx
-Peter
Peter Stapf - ExpertCircle GmbH - My blog:
JustIDM.wordpress.com -
Hi,
I am try to establish a connection to the external system. I am using the FM "FTP_CONNECT" for connection in my ABAP program. But somehow I am not able to connect.
I am getting an error message saying "Attempting to connect to (HOSTname) fail".
I have checked user authorization and it seems everything is fine.
Do I need to pass gateway parameters in this FM as this is the external system (They are optional)? Currently I am not passing anything in all three gateway information.
CALL FUNCTION 'FTP_CONNECT'
EXPORTING USER = USER
PWD = PASSWORD
ACCT = ACCOUNT HOST = HOST
TRACE = FTP_TRACE
GUSER = ''
GPWD = ''
GHOST = ''
IMPORTING HANDLE = HANDLE
ERROR = CERROR
EXCEPTIONS SYSTEM_FAILURE = 1
COMMUNICATION_FAILURE = 2.
Appreciate your early response.
Thanks,
SamayHi Samay,
You need to setup RFC Destination (SM59). If you don't have authorization, please ask BASIS to help you. Otherwise please follow this steps.
When you define an RFC server program (usually an executable on a server) as RFC destination, you choose either 'START' or 'Registration'. 'Start' means the SAP application sending anything to this destination will trigger this program, while registration means this program will already be running (like a service) and have already registered itself to SAP server.
Once you have defined your RFC destination as of type 'registration', you should execute this exe with the syntax
"pgmname.exe -a<ProgramID>
-g<Gateway Host>
-x<Gateway Service>
" where programID shall be the same as the RFC destination name (I think) and gateway host and service is from the app server where you are registering this destination,
to have it started as a service and registered as the destination to the SAP server (which you can afterwards see in SMGW txn).
If you want this program to be started when something is sent to this RFC destination from SAP, make it of type 'START'.
Hope this will help.
Regards,
Ferry Lianto
Please reward points if helpful. -
Create activity from external system
Hi
What is meant by creating activity from external system.
I need to work on an enhancement which deals with function module to create activity that can be called from external systems e.g. on demand.
I am not sure what does that exactly mean?
Any pointers would be helpful.
Thanks
AlkaHi guys,
Thanks for your answers... But is it possible to call transaction NOTIF_CREATE from an external system?
I have done something already so that those 3 fields will be automatically populated for a message sent from an external system.
I changed the screen and called FM BAPI_NOTIFICATION_CREATE(a remote enabled FM which is the one being used by transaction NOTIF_CREATE to create a message) inside FM BCOS_SEND_MSG.
I populated the category, subject and solution in the FM export parameters as well as the solution number in the sap data table. I put a destination also..
This FM calls another FM DNO_OW_CREATE_NOTIFICATION which is the one being used from the external system but do not cater the functionality to send the 3 fields that we need.
As you will notice, there are lots of standard objects that I've changed. =)
My problem now is that the system data sent is the same with the system data if you create the message using NOTIF_CREATE. Some system that were sent when a message is sent from an external system is missing but at least the sap system and client ID is sent. There is no external reference number also. But hopefullly, the users will accept it. Can't find any other solution to this.
Thanks,
Eric -
Sending sapscript form to an external mail
i need to send sapscript form to an external mail like for example a yahoo mail from SAP. i need an ABAP code that performs this function. its urgent, please
1) REPORT PROGRAM - RSTXPDFT4 ,
FIRST GENERATE SPOOL REQUEST THEN DOWNLOAD SAPSCRIPT TO PDF FILE ON LOCAL PC.
2) copy this code to send this downloaded form to external mail -
*& Report ZGILL_SENDMAIL_PDF *
REPORT ZGILL_SENDMAIL_PDF .
INCLUDE ZGILL_INCMAIL. "SEE BELOW FOR INCLUDE PROGRAM CODE.
* DATA
DATA : itab LIKE tline OCCURS 0 WITH HEADER LINE.
DATA : file_name TYPE string.
data : path like PCFILE-PATH.
data : extension(5) type c.
data : name(100) type c.
* SELECTION SCREEN
PARAMETERS : receiver TYPE somlreci1-receiver lower case DEFAULT '[email protected]'.
PARAMETERS : p_file LIKE rlgrap-filename
OBLIGATORY DEFAULT 'C:TEMPSALARY_SLIP1.PDF'.
* AT SELECTION SCREEN
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
CLEAR p_file.
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = p_file.
* START-OF-SELECTION
START-OF-SELECTION.
PERFORM ml_customize USING 'Tst' 'Testing'.
PERFORM ml_addrecp USING receiver 'U'.
PERFORM upl.
PERFORM doconv TABLES itab objbin.
PERFORM ml_prepare USING 'X' extension name.
PERFORM ml_dosend.
SUBMIT rsconn01
WITH mode EQ 'INT'
AND RETURN.
* FORM
FORM upl.
file_name = p_file.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = file_name
filetype = 'BIN'
TABLES
data_tab = itab
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
path = file_name.
CALL FUNCTION 'PC_SPLIT_COMPLETE_FILENAME'
EXPORTING
complete_filename = path
* CHECK_DOS_FORMAT =
IMPORTING
* DRIVE =
EXTENSION = extension
NAME = name
* NAME_WITH_EXT =
* PATH =
EXCEPTIONS
INVALID_DRIVE = 1
INVALID_EXTENSION = 2
INVALID_NAME = 3
INVALID_PATH = 4
OTHERS = 5
ENDFORM. "upl
**********************iNCLUDE pROGRAM*********************************************
*& Include ZGILL_INCMAIL *
* Data
DATA: docdata LIKE sodocchgi1,
objpack LIKE sopcklsti1 OCCURS 1 WITH HEADER LINE,
objhead LIKE solisti1 OCCURS 1 WITH HEADER LINE,
objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
objbin LIKE solisti1 OCCURS 10 WITH HEADER LINE,
objhex LIKE solix OCCURS 10 WITH HEADER LINE,
reclist LIKE somlreci1 OCCURS 1 WITH HEADER LINE.
DATA: tab_lines TYPE i,
doc_size TYPE i,
att_type LIKE soodk-objtp.
DATA: listobject LIKE abaplist OCCURS 1 WITH HEADER LINE.
* FORM
FORM ml_customize USING objname objdesc.
*----------- Clear Variables
CLEAR docdata.
REFRESH objpack.
CLEAR objpack.
REFRESH objhead.
REFRESH objtxt.
CLEAR objtxt.
REFRESH objbin.
CLEAR objbin.
REFRESH objhex.
CLEAR objhex.
REFRESH reclist.
CLEAR reclist.
REFRESH listobject.
CLEAR listobject.
CLEAR tab_lines.
CLEAR doc_size.
CLEAR att_type.
*--------- Set Variables
docdata-obj_name = objname.
docdata-obj_descr = objdesc.
ENDFORM. "ml_customize
* FORM
FORM ml_addrecp USING preceiver prec_type.
CLEAR reclist.
reclist-receiver = preceiver.
reclist-rec_type = prec_type.
APPEND reclist.
ENDFORM. "ml_customize
* FORM
FORM ml_addtxt USING ptxt.
CLEAR objtxt.
objtxt = ptxt.
APPEND objtxt.
ENDFORM. "ml_customize
* FORM
FORM ml_prepare USING bypassmemory whatatt_type whatname.
IF bypassmemory = ''.
*--------- Fetch List From Memory
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = listobject
EXCEPTIONS
OTHERS = 1.
IF sy-subrc <> 0.
MESSAGE ID '61' TYPE 'E' NUMBER '731'
WITH 'LIST_FROM_MEMORY'.
ENDIF.
CALL FUNCTION 'TABLE_COMPRESS'
* IMPORTING
* COMPRESSED_SIZE =
TABLES
in = listobject
out = objbin
EXCEPTIONS
OTHERS = 1
IF sy-subrc <> 0.
MESSAGE ID '61' TYPE 'E' NUMBER '731'
WITH 'TABLE_COMPRESS'.
ENDIF.
ENDIF.
* Header Data
* Already Done Thru FM
* Main Text
* Already Done Thru FM
* Packing Info For Text Data
DESCRIBE TABLE objtxt LINES tab_lines.
READ TABLE objtxt INDEX tab_lines.
docdata-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).
CLEAR objpack-transf_bin.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = 'TXT'.
APPEND objpack.
* Packing Info Attachment
att_type = whatatt_type..
DESCRIBE TABLE objbin LINES tab_lines.
READ TABLE objbin INDEX tab_lines.
objpack-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objbin ).
objpack-transf_bin = 'X'.
objpack-head_start = 1.
objpack-head_num = 0.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = att_type.
objpack-obj_name = 'ATTACHMENT'.
objpack-obj_descr = whatname.
APPEND objpack.
* Receiver List
* Already done thru fm
ENDFORM. "ml_prepare
* FORM
FORM ml_dosend.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = docdata
put_in_outbox = 'X'
commit_work = 'X' "used from rel. 6.10
* IMPORTING
* SENT_TO_ALL =
* NEW_OBJECT_ID =
TABLES
packing_list = objpack
object_header = objhead
contents_bin = objbin
contents_txt = objtxt
* CONTENTS_HEX = objhex
* OBJECT_PARA =
* object_parb =
receivers = reclist
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8
IF sy-subrc <> 0.
MESSAGE ID 'SO' TYPE 'S' NUMBER '023'
WITH docdata-obj_name.
ENDIF.
ENDFORM. "ml_customize
* FORM
FORM ml_spooltopdf USING whatspoolid.
DATA : pdf LIKE tline OCCURS 0 WITH HEADER LINE.
*-------------- Call Function
CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = whatspoolid
TABLES
pdf = pdf
EXCEPTIONS
err_no_otf_spooljob = 1
OTHERS = 12.
*------------- Convert
PERFORM doconv TABLES pdf objbin.
ENDFORM. "ml_spooltopdf
* FORM
FORM doconv TABLES
mypdf STRUCTURE tline
outbin STRUCTURE solisti1.
*-------- Data
DATA : pos TYPE i.
DATA : len TYPE i.
*------------ Loop And Put Data
LOOP AT mypdf.
pos = 255 - len.
IF pos > 134. "length of pdf_table
pos = 134.
ENDIF.
outbin+len = mypdf(pos).
len = len + pos.
IF len = 255. "length of out (contents_bin)
APPEND outbin.
CLEAR: outbin, len.
IF pos < 134.
outbin = mypdf+pos.
len = 134 - pos.
ENDIF.
ENDIF.
ENDLOOP.
IF len > 0.
APPEND outbin.
ENDIF.
ENDFORM. "doconv
***********************INCLUDE END********************************* -
Exported Library to External HD, error in attempt to link to files on HD
Hello,
I recently began using lightroom and stored the files on the local drive of my macbook pro (current os) until I ran out of space. Exported the catalogue to an external HD, then deleted the files from the local drive. As I tried to import the .lrcat file associated with the export to the external HD and received this error:
"Can not import from this catalog at this time. The catalog is either in use by another copy of Lightroom or was closed improperly. If it was closed improperly, please consider doing an integrity check when opening."
I am not running LR on any other computers so I figure Lightroom was "closed improperly". However I cannot figure out what to do and tech support will not help me without the serial number which I cannot get as I am travelling. Any advice would be sincerely appreciated.
JordanIf you indeed exported the catalogue to the external drive, you don't need to import it. Simply double-click on the copy of the catalogue that's on your external drive.
By the way, your serial number is available in the Help/System info menu item.
Hal -
EDI - Outbound Accounting Posting Journals to External System
Hi Experts,
I have a requirement in which I have to outbound
Accouting Journals to an external system...
Does standard SAP support such a functionality.
I looked at the outbound process code and was unable
to find anything on accounting. (which does make sense...) I also noticed that journal entry transactions such as FB01 do not have output controls like SD or MM.
Would I not be able to utilize standard idocs in this case?Hi Rolmega,
Please refer the OSS note 616804 .That is exactly matching your requirement and guide you through out the development.
OSS note 616804.
Create a BAPI which can be used to create cash journal documents.
To do this, carry out the steps specified below in your system, or import the relevant Support Package.
1. In Transaction SE37, select the menu option 'Goto' -> 'Function Groups' -> 'Create group'. Create function group SAPLFCJ_BAPI with the short text 'BAPI for FI cash journal' and save it.
2. In Transaction SE37, create function module BAPI_CASHJOURNALDOC_CREATE in function group SAPLFCJ_BAPI in package CAJO with the short text 'Save FI cash journal documents' as a remote-enabled module.
a) Create the following function module documentation for the function module:
With BAPI BAPI_CASHJOURNALDOC_CREATE, you can save a document when you execute in the FI cash journal, in the same way as when you make an entry via the Interface Transaction FBCJ.
If the TESTRUN field is set, the system only carries out the checks and not the actual backup process when the database is updated.
If you want to save a cash journal document, the program that calls the BAPI has to execute the COMMIT WORK to update the document.
A document can contain several split rows.
You can post either expenses or receipts for each document. In other words, either the ITEMS-P_PAYMENTS or the ITEMS-P_RECEIPTS field has to be filled in all line items.
If the document contains several line items or entries in the control table, assigned net or tax base amounts are deleted.
The initiator has to assign the item number (ITEMS-POSITION_NUMBER) for all line items or for none.
If the initiator assigns one-time data, the item numbers (CPD_ITEMS-POSITION_NUMBER) have to correspond to the respective line item (ITEMS-POSITION_NUMBER). The same item number may be used in one one-time line item only.
If the extended withholding tax is active in the company code used, you can create only one line item and no split document for vendors or customers that are relevant for withholding tax.
The vendor has to be filled for all assigned rows of the withholding tax information (table WTAX_ITEMS).
If withholding tax information is to be assigned, the indicator for withholding tax type (WTAX_ITEMS-WTAXTYPE) has to be filled with a value that is defined in the vendor master record. In addition, the same indicator for the withholding tax type may be assigned in one line of the ITEMS table only. The system does not take into account the external item number for withholding tax information.
In the TAX_ITEMS table, the same tax code may be assigned in only one line.
If there are entries in the TAX_ITEMS table, every tax code or jurisdiction code of this table has to be assigned in at least one line of the ITEMS table or be able to be derived from the Customizing for the business transaction.
If, in Customizing, there are accounts and tax codes for interface transactions that are flagged as not ready for input, then the BAPI derives values that are transferred in the ITEMS table again and overwrites them if necessary.
A check recognizes that field HEADER-CHECK_NUMBER is filled when the BAPI is called.
You cannot use the BAPI to save a document in a cash journal if this cash journal is simultaneously blocked by another interface user or another BAPI initiator. When you execute the BAPI, the system also sets a block for other users.
The initiator of the BAPI can transfer additional field values via the EXTENSION_IN table and can process them further in a BADI called in the customer_function subroutine.
You cannot change saved documents or deposit checks.
a) Enter the following import parameters:
Parameter Name Type Associated Type Opt Pass Value Short text
HEADER LIKE BAPI_CJ_HEADER X Document header
Long text:
In the HEADER structure, you can assign the document header information of the cash journal document to be saved. Basically, the structure corresponds to the fields of the TCJ_DOCUMENTS table that are ready for input on the cash journal interface and which contain header information only.
TESTRUN LIKE BAPI2021_HELP X X Indicator for test run
TESTRUN without update
Long text:
If the TESTRUN field is set, the external structures transferred when the BAPI is called are assigned to the internal cash journal structures. The relevant checks are also carried out. However, no update occurs to save the document on the database.
b) Enter the following export parameters:
Parameter Name Type Associated Type Pass Value Short text
COMPANY_CODE LIKE BAPI_CJ_HEADER X Company code
-COMP_CODE
Long text:
The COMPANY_CODE parameter contains the company code of the saved cash journal document.
CASH_JOURNAL_NUMBER LIKE BAPI_CJ_HEADER Cash journal number
-CAJO_NUBMER
Long text:
The CASH_JOURNAL_NUMBER parameter contains the cash journal of the saved cash journal document.
FISCAL_YEAR LIKE BAPI_CJ_KEY X Fiscal year
-FISC_YEAR
Long text:
The FISCAL_YEAR parameter contains the fiscal year of the saved cash journal document, but it is only filled for check totals documents.
CASH_JOURNAL_DOC_NO LIKE BAPI_CJ_KEY X Document number
-POSTING_NUMBER cash journal document
Long text:
The CASH_JOURNAL_DOC_NO parameter contains the internal document number of the saved cash journal document.
c) Enter the following table parameters:
Parameter Name Type Associated Type Optional Short text
ITEMS LIKE BAPI_CJ_ITEMS Cash journal documentitems
Long text:
In the ITEMS table, you can assign the information for the line items of the cash journal document to be saved. Basically, the spaces in the table fields correspond to the fields of the TCJ_POSITIONS table that are ready for input on the cash journal interface and which contain item information only. You can assign several line items per document, in the same way as for the split lines that can be entered via the interface transaction.
TAX_ITMES LIKE BAPI_CJ_TAX_ITEMS X Cash journal tax items
Long text:
In the TAX_ITEMS table, you can assign tax information for the cash journal document to be saved. In this way, you can for example affect tax amounts derived from the system, in the same way as tax information is changed on the split window of the interface transaction.
CPD_ITEMS LIKE BAPI_CJ_CPD_ITEMS X One-time data
Long text:
In the CPD_ITEMS table, you can assign information for one-time customers or vendors that are contained in line items of the ITEMS table. Basically, the table fields correspond to the fields of the TCJ_CPD table, which are ready for input on the one-time window.
WTAX_ITEMS LIKE BAPI_CJ_WTAX_ITEMS X Withholding tax in the
cash journal document
Long text:
In the WTAX_ITEMS table, you can assign information on the extended withholding tax for a vendor that is contained in a line item of the CJ_ITEMS table. Basically, the table fields correspond to the fields of the TCJ_WTAX_ITEMS table, which can be changed the withholding tax window.
EXTENSION_IN LIKE BAPIPAREX X Container for
'Customer Exit'
Long text:
In the EXTENSION_IN parameter, you can transfer parameters that can be processed further in the BADI CJ_DOCUMENT, which the user of the BAPI BAPI_CASH_JOURNAL_CREATE has to implement.
For example, you can assign data to the TCJ_POSITIONS table in the form of Include CI_COBL or information profitability segments or real estate.
RETURN LIKE BAPIRET2 Return parameter
Long text:
In Table RETURN, the messages of the program are returned to the initiator of the BAPI.
d) Save and activate the changes.
1. Using Transaction SE11, create data type (structure) BAPI_CJ_HEADER in Package CAJO with the short description 'Cash journal document header for transfer to a BAPI'.
a) Via the 'Extras' menu option, select 'Cannot Be Enhanced' as the enhancement category.
b) Create the following fields:
Field Data element
COMP_CODE BUKRS
CAJO_NUMBER CJNR
CURRENCY WAERS
CURRENCY_ISO WAERS_ISO
DOC_DATE BLDAT
PSTNG_DATE BUDAT
REF_DOC_NO XBLNR1
BP_NAME CJBPNAME
ALLOC_NMBR DZUONR
TEXT1 CJDOCTEXT100
TEXT2 CJDOCTEXT30
CHECK_NUMBER SCKNR_EB
CHECK_ISSUER CJCHECKISSUER
BANK_KEY BANKK
BANK_ACCT BANKN
BANK_CTRY BANKS
BANK_CTRY BANKS
BANK_CTRY_ISO BANKS_ISO
SCBANK_IND LZBKZ
SUPCOUNTRY LANDL
SUPCOUNTRY_ISO LANDL_ISO
c) Save and activate the changes.
2. In Transaction SE11, create data type (structure) BAPI_CJ_ITEMS in Package CAJO with the short description 'Cash journal line item for transfer to a BAPI'.
a) Via the 'Extras' menu option, select 'Cannot Be Enhanced' as enhancement category.
b) Create the following fields:
Field Data element
POSITION_NUMBER CJBUZEI
TRANSACT_NUMBER CJTRANSNUMB
P_RECEIPTS BAPIWRBTR
P_PAYMENTS BAPIWRBTR
P_NET_AMOUNT BAPIWRBTR
H_NET_PAYMENT_WT BAPIWRBTR
GL_ACCOUNT HKONT
TAX_CODE MWSKZ
TAXJURCODE TXJCD
VENDOR_NO LIFNR
CUSTOMER KUNNR
POSITION_TEXT CJPOSTEXT
BUS_AREA GSBER
TR_PART_BA PARGB
TRADE_ID RASSC
CS_TRANS_T RMVCT
FUNC_AREA FKBER
CO_AREA KOKRS
COSTCENTER KOSTL
ACTTYPE LSTAR
ORDERID AUFNR
ORDER_ITNO CO_POSNR
CALC_MOTIVE BEMOT
COSTOBJECT KSTRG
CO_BUSPROC CO_PRZNR
PROFIT_CTR PRCTR
PART_PRCTR PPRCTR
WBS_ELEM PS_POSID
NETWORK NPLNR
ACTIVITY VORNR
ASSETMAINO BF_ANLN1
ASSETSUBNO BF_ANLN2
VALUEDATE BF_BZDAT
ASSETTRTYP BF_ANBWA
PLANT WERKS_D
VAL_TYPE BWTAR_D
MATERIAL MATNR
SALES_ORD KDAUF
SCHED_LINE KDEIN
S_ORD_ITEM KDPOS
FM_AREA FIKRS
FUNDS_CTR FISTL
CMMT_ITEM FIPOS
FUND BP_GEBER
FUNDS_RES KBLNR_FI
RES_ITEM KBLPOS
PERSON_NO PERNR_D
BUPLA BUPLA
SECCO SECCO
c) Save and activate the changes.
3. In Transaction SE11, create the data type (structure) BAPI_CJ_TAX_ITEMS in Package CAJO with the short description 'One-time data of cash journal line items for transfer to a BAPI'.
a) Via the 'Extras' menu option, select 'Cannot Be Enhanced' as the enhancement category.
b) Create the following fields:
Field Data element
TAX_CODE MWSKZ
AMT_TAX BAPITXBTR
AMT_BASE BAPIFWBAS
TAXJURCODE TXJCD
c) Save and activate the changes.
4. In Transaction SE11, create the data type (structure) BAPI_CJ_CPD_ITEMS in Package CAJO with the short description 'One-time data of cash journal line items for transfer to a BAPI'.
a) Via the 'Extras' menu option, select 'Cannot Be Enhanced' as the enhancement category
b) Create the following fields:
Field Data element
POSITION_NUMBER CJBUZEI
ANRED ANRED
NAME NAME1_GP
NAME_2 NAME2_GP
NAME_3 NAME3_GP
NAME_4 NAME4_GP
SOLE_PROP STKZN
REP_NAME REPRES
STREET STRAS_GP
POSTL_CODE PSTLZ
CITY ORT01_GP
COUNTRY LAND1_GP
COUNTRY_ISO LAND1_ISO
PO_BOX PFACH
POBX_PCD PSTL2
REGION REGIO
POBK_CURAC PSKTO
BANK_ACCT BANKN
BANK_NO BANKL
BANK_CTRY BANKS
BANK_CTRY_ISO BANKS_ISO
CTRL_KEY BKONT
BANK_REF BKREF
INSTR_KEY DTAWS
DME_IND DTAMS
TAX_NO_1 STCD1
TAX_NO_2 STCD2
TAX_NO_3 STCD3
TAX_NO_4 STCD4
SLS_PUR_TX STKZU
FITYP J_1AFITP_D
TAX_NO_TY J_1ATOID
EQUAL_TAX STKZA
SPRAS CHAR_LG_01
LANGU_ISO LAISO
BUS_TYPE GESTYP
IND_TYPE INDTYP
c) Save and activate your changes.
5. In Transaction SE11, create the data type (structure) BAPI_CJ_WTAX_ITEMS in Package CAJO with the short description 'Withholding tax in cash journal document for transfer to a BAPI'.
a) Via the 'Extras' menu option, select 'Cannot Be Enhanced' as the enhancement category.
b) Create the following fields:
Field Data element
POSITION_NUMBER CJBUZEI
VENDOR_NO LIFNR
WTAXTYPE WITHT
WT_WITHCD WT_WITHCD
W_TAX_BASE BAPIQSSHB
WI_TAX_AMT BAPIQBSHB
c) Save and activate the changes.
6. In Transaction SE11, create the data type (structure) BAPI_CJ_KEY in Package CAJO with the short description 'Key fields for cash journal documents'.
a) Via the 'Extras' menu option, select 'Cannot Be Enhanced' as the enhancement category.
b) Create the following fields:
Field Data element
FISC_YEAR GJAHR
POSTING_NUMBER CJBELNR
c) Save and activate the changes.
7. Using Transaction SE91, create the following messages for message class FCJ and select the 'Self-explanatory' field for each one:
a) 011: 'Document & & & was saved successfully.'
b) 012: 'Enter a gross amount.'
c) 013: 'Enter only the disbursement or incoming payment amount for each document.
d) 014: 'Enter the item numbers for all items or for none of them.'
e) 015: 'The number of tax items may not be larger than the number of items.'
f) 016: 'Only one tax item allowed per tax code/jurisdiction code.'
g) 017: 'Enter the item number for one-time items.'
h) 018: 'With several line items (split), do not enter any withholding tax items.'
i) 019: 'Business transaction without G/L account or tax code.'
j) 020: 'No line item with tax code/jurisdiction code of the tax item.'
k) 021: 'In company code & taxes without jurisdiction code.'
l) 022: 'Do not enter any tax item for posting indicator '3' (T007B-STBKZ)'
m) 023: 'Document could not be saved. Correct the errors listed'
n) 024: 'Business place + section code only with extended withholding tax.
o) 025: 'Net/tax base is deleted for several items or tax items'
p) 026: 'No line item corresponds to one-time item &.'
q) 027: 'Do not enter any withholding tax info if customer not w.tax-relevant'
r) 028: 'Do not enter any withholding tax info if vendor not w.tax-relevant'
s) 029: 'Do not enter any withholding tax info for G/L account posting.'
t) 030: 'Vendor in withholding tax information is not in line item.'
u) 031: 'Only one one-time item is allowed per item number.'
v) 032: 'Only one withholding tax item is allowed per withholding tax type.'
w) 033: 'Number of assigned withholding tax items deviates from master data.'
x) 034: 'No vendor required for business transaction.
y) 035: 'No customer required for business transaction.'
z) 036: 'Enter only receipts for checks.'
8. In Transaction SE37, call the FCJ_SAVE and FCJ_SAVE_DOCUMENT function modules in change mode.
a) Add import parameter I_XBAPI of TYPE BOOLEAN to these function modules. Select the Optional and Pass Value fields and enter the short text 'Indicator whether the call occurs from a BAPI'.
b) Also add the import parameters I_POSTING_NUMBER, LIKE, ISCJ_POSTINGS-POSTING_NUMBER for the function module FCJ_SAVE_DOCUMENT. Select the Optional and Pass Value fields.
c) Save and activate the changes.
9. In Transaction SE37, create the function module FCJ_SAVE_DOCUMENT_BALANCE_BAPI in the function group SAPLFCJ_PROCESS_MANAGER in Package CAJO with the short text 'Save cash journal document and balances for BAPI' as an update module with 'Start immed'.
a) Enter the following import parameters:
Parameter Name Type Associated Type Opt Pass Value
I_COMP_CODE LIKE TCJ_C_JOURNALS-COMP_CODE X
I_CAJO_NUMBER LIKE TCJ_C_JOURNALS-CAJO_NUMBER X
I_CURRENCY LIKE TCJ_DOCUMENTS-CURRENCY X
I_TYP TYPE CJTRANSTYP X
I_DISPLAY_PERIOD_LO LIKE SY-DATUM X
I_DISPLAY_PERIOD_HI LIKE SY-DATUM X
I_POSTING LIKE ISCJ_POSTINGS X
I_POSTING_NUMBER LIKE ISCJ_POSTINGS-POSTING_NUMBER X
b) Enter the following tables:
Parameter Name Type Associated Type
ITCJ_POSTINGS LIKE ISCJ_POSTINGS
ITCJ_WTAX_ITEMS LIKE TCJ_WTAX_ITEMS
ITCJ_SPLIT_POSTINGS LIKE ISCJ_POSTINGS
ITCJ_CPD LIKE TCJ_CPD
10. In Transaction SE18, define the BADI CJ_DOCUMENT. The corresponding interface is IF_EX_CJ_DOCUMENT.
The method has the following 'Changing' parameter: Parameter Type Associated Type
C_ITCJ_SPLIT_POSTINGS Type ISCJ_POSTINGS
C_ITCJ_SPLIT_TAXES Type ISCJ_POSTINGS
C_ITCJ_CPD Type TCJ_CPD
C_ITCJ_WTAX_ITEMS Type TCJ_WTAX_ITEMS
C_EXTENSION2 Type BAPIPAREX
C_RETURN Type BAPIRET2
You can use an implementation of this BADI to change the cash journal structures before the data check is processed.
1. Implement the attached corrections in your system.
2. In Transaction SE37, release the function module BAPI_CASHJORUNAL_DOC_CREATE via the menu path 'Function module' -> 'Release' -> 'Release'.
3. In Transaction SWO1, create the object type BUS2023.
a) Create the following key fields for the object type:
Key field Name Data type reference
CompanyCode Company Code TCJ_DOCUMENTS
-COMP_CODE
CashJournalNumber Cash Journal Number TCJ_DOCUMENTS
-CAJO_NUMBER
FiscalYear Fiscal Year TCJ_DOCUMENTS
-FISC_YEAR
CashJournalDocNo Cash Journal TCJ_DOCUMENTS
Document Number -POSTING_NUMBER
b) Create the 'Create' method synchronously and instance-independent as an 'API function' with the name BAPI_CASHJOURNALDOC_CREATE.
Create the following parameters for the method: Parameter Obj Type Imp. Man. Exp.
Header BUS2023 X X
Testrun BUS2023 X
CompanyCode BUS2023 X
CashJournalNumber BUS2023 X
FiscalYear BUS2023 X
CashJournalDocNo BUS2023 X
Items BUS2023 X X
TaxItems BUS2023 X
CPDItems BUS2023 X
WTaxItems BUS2023 X
ExtensionIn BUS2023 X
Return BUS2023 X
a) Create the 'ExistenceCheck' method synchronously and define the following source code:
begin_method existencecheck changing container.
DATA: l_mandt TYPE sy-mandt.
SELECT SINGLE mandt INTO l_mandt
FROM tcj_documents
WHERE comp_code = object-key-companycode
AND cajo_number = object-key-cashjournalnumber
AND fisc_year = space
AND posting_number = object-key-cashjournaldocno.
check sy-subrc <> 0.
exit_object_not_found.
end_method.
a) Under the menu option 'Goto' -> 'Documentation', define the following text for object type BUS2023:
A cash journal document is assigned to a cash journal and a company code.
It contains a unique document number from a company code-dependent number range interval that is independent of the number range interval of the G/L document. Cash journal documents are also numbered sequentially per company code and cash journal.
A cash journal document contains the offsetting entries for the G/L account of the cash journal in which G/L or person accounts are posted to for the business transaction.
You can save, delete, post or reverse a cash journal document. In the two last cases, there is a corresponding G/L document. This can be a receipt, a disbursement of cash, or the receipt of checks.
1. In Transaction BDBG, set up the IDOC processing for the object type BUS2023 and the method CREATE.
The function module for ALE outbound processing with data refining is ALE_CASHJOURNALDOC_CREATE.
The function module for ALE inbound processing is called IDOC_INPUT_CAJODOC_CREATE.
1. In Transaction 'SALE', maintain the ALE distribution. Here, maintain the steps generally required for a distribution process. Take into account the existing documentation of the operation. Execute the following steps for the BAPI used to save cash journal documents.
a) Maintain the distribution model under the path 'Model and Implement Business Processes' -> 'Maintain Distribution Model and Distribute Views'. The object name is 'CashJournalDoc' and the method name is 'Create'.
b) Execute the menu option 'Edit' -> 'Model view' -> 'Distribute' for the selected model view.
c) Select the path 'Model and Implement Business Processes' -> 'Partner Profiles and Time of Processing' -> 'Generate Partner Profiles'. (See corresponding documentation in document OALE_AUTOPARTN_BD82.) Enter the selected model view in the distribution model and the selected target system as the partner system.
2. To monitor the distribution of the IDOCs, use Transaction BD87 in both the sender system and the receiver system, and you can reach it via the path 'Tools' -> 'ALE' -> 'ALE Administration' -> 'Monitor' -> 'Status Monitor'. The relevant message type is CASHJOURNALDOC_CREATE.
Maybe you are looking for
-
I'm a new user of XML. I've a very important question: Is it possible create an XML file using some java package? If yes what package i must use? JDOM is the right product? Thanks
-
Need help with startup Sync issue with Photoshop Elements 8.0
When starting up Photoshop Elements 8.0 a brief dialog appears about sync space being filled up with options for Cancel or Proceed. This is then quickly covered up by the frame showing Survey/Show What's New/etc... cannot get back to dialog about syn
-
NOTHING IS WORKING to bring radio back
I didn't update my phone, I didn't change countries I didn't do absolutely anything; I was listening to it this morning and then I wanted to listen to it again this afternoon and it was just not there. Yes, I checked, iTunes Radio is available in my
-
Special G/L for customer and vendor
hi, sir how can we configure special gl for customer and vendor. pls know me in details. thanks you in advance
-
Trying to update my device software
I'm trying to update my device software. There is new software that's available for my BB 8900 but my wireless provider has the older version v4.6.1.250 I've tried to download from the BB website but fails to do so. Has anybody updated their curve 89